白伍彤 陳蘭香
(福建師范大學(xué)數(shù)學(xué)與信息學(xué)院 福建 福州 350117)(福建省網(wǎng)絡(luò)安全與密碼技術(shù)重點(diǎn)實(shí)驗(yàn)室 福建 福州 350117)
國(guó)務(wù)院辦公廳于2016年6月頒發(fā)的《關(guān)于促進(jìn)和規(guī)范健康醫(yī)療大數(shù)據(jù)應(yīng)用發(fā)展的指導(dǎo)意見》(下簡(jiǎn)稱為《意見》)指出國(guó)家重要的基礎(chǔ)性戰(zhàn)略資源是健康醫(yī)療大數(shù)據(jù),健康醫(yī)療大數(shù)據(jù)相關(guān)應(yīng)用的發(fā)展將為健康醫(yī)療模式帶來深刻改變,為健康醫(yī)療大數(shù)據(jù)的發(fā)展定下基調(diào)。
2016年10月,中共中央、國(guó)務(wù)院印發(fā)了《“健康中國(guó)2030”規(guī)劃綱要》,提出要加強(qiáng)并推進(jìn)基于區(qū)域人口健康信息的醫(yī)療大數(shù)據(jù)開放挖掘和各類應(yīng)用體系的建設(shè)?!兑庖姟分兄赋?,針對(duì)法律法規(guī)和隱私安全問題,要求完善數(shù)據(jù)開放共享支撐服務(wù)體系,針對(duì)健康醫(yī)療數(shù)據(jù)安全體系加快建設(shè),同時(shí)對(duì)于人口健康醫(yī)療信息的工程技術(shù)、內(nèi)容安全等多方面進(jìn)行規(guī)劃制定以確保各類關(guān)鍵信息以及核心系統(tǒng)的安全可控與穩(wěn)定[1]。
從隱私保護(hù)的角度來說,隱私的主體是單個(gè)用戶,只有涉及到某個(gè)特定用戶的敏感信息才叫隱私,如果是發(fā)布群體用戶的信息(一般叫聚集信息)不算泄露隱私。因此,充分利用并挖掘大數(shù)據(jù)的價(jià)值可以不需要涉及到任何用戶的個(gè)人隱私。
在健康醫(yī)療大數(shù)據(jù)領(lǐng)域即是如此,利用這些大數(shù)據(jù)對(duì)于優(yōu)化資源配置、提供臨床決策與精準(zhǔn)醫(yī)學(xué)研究等方面具有重要的價(jià)值,但怎樣合理合法地利用這些數(shù)據(jù)的同時(shí)又能保障用戶的隱私信息,是當(dāng)前亟待解決的問題。
針對(duì)傳統(tǒng)隱私保護(hù)模型存在的問題,本文提出利用基于Laplace機(jī)制與指數(shù)機(jī)制的差分隱私保護(hù)方法,對(duì)健康醫(yī)療數(shù)據(jù)中的數(shù)值型與非數(shù)值型數(shù)據(jù)提供高強(qiáng)度的隱私保護(hù)。通過大量的實(shí)驗(yàn)分析,針對(duì)差分隱私保護(hù)參數(shù)ε對(duì)數(shù)據(jù)的可用性與隱私保護(hù)水平兩者的平衡進(jìn)行評(píng)估,得到不同類型的健康醫(yī)療數(shù)據(jù)的適當(dāng)?shù)膮?shù)取值。
早在20世紀(jì)80年代初,Cox[2]首次提出了匿名化的概念,并指出這種方法可應(yīng)用于隱私信息的保護(hù)。Sweeney[3]提出k-匿名(k-anonymity)模型的數(shù)據(jù)匿名化隱私保護(hù)方法,考慮的是數(shù)據(jù)擁有者想與其他用戶共享其私有數(shù)據(jù),但是不能泄露他的身份的應(yīng)用場(chǎng)景。針對(duì)這個(gè)問題,他們通過泛化與分解等方式對(duì)原始私有數(shù)據(jù)進(jìn)行匿名化處理,有效地解決了隱私保護(hù)的問題。k-匿名模型的核心思想是:所發(fā)布的數(shù)據(jù)中任意一條記錄(也稱之為一個(gè)等價(jià)類)都被要求與另外的至少k-1條記錄是不可區(qū)分的,則稱該系統(tǒng)提供k-匿名保護(hù)。在k-匿名處理后的數(shù)據(jù)被攻擊者獲得的同時(shí)會(huì)至少得到不同的k個(gè)記錄數(shù)據(jù),這樣便使得攻擊者即使通過攻擊得到了數(shù)據(jù),但其也無法做出相應(yīng)的準(zhǔn)確判斷。該匿名模型中隱私保護(hù)的強(qiáng)度被表示為參數(shù)k,隨著k值的增大,隱私保護(hù)的強(qiáng)度也隨之增強(qiáng),但因此會(huì)使得更多的信息丟失,數(shù)據(jù)的可用性也會(huì)越來越低。
Machanavajjhala等[4]在研究中發(fā)現(xiàn)了k-匿名模型中存在著對(duì)于敏感屬性未進(jìn)行有效制約的不足,因此攻擊者就可以通過背景知識(shí)攻擊以及一致性攻擊等多種不同方法來推斷出數(shù)據(jù)中的敏感信息與某個(gè)人之間的關(guān)系來得到攻擊者所關(guān)心的個(gè)人隱私數(shù)據(jù),這導(dǎo)致了數(shù)據(jù)記錄中的個(gè)人隱私信息發(fā)生泄露。例如攻擊者使用一致性攻擊時(shí),當(dāng)一個(gè)攻擊者獲得了k-匿名化數(shù)據(jù),當(dāng)被攻擊者所處的記錄中都是患有某一類傳染疾病的病人,那么攻擊者很輕易做出被攻擊者是確定患有此類傳染疾病的判斷。那么為了防止這種一致性攻擊,Machanavajjhala等對(duì)于k-匿名模型進(jìn)行改進(jìn),提出了新的隱私保護(hù)模型:l-多樣性(l-diversity),它保證了任意一個(gè)等價(jià)類中的敏感屬性都至少有l(wèi)個(gè)內(nèi)容不同的值,一定程度上避免了敏感屬性所取值單一的情形。
針對(duì)l-多樣性模型在一些特殊情況下不適用的問題,Li等[5]提出了t-近鄰(t-closeness)模型,它對(duì)準(zhǔn)標(biāo)識(shí)符屬性與敏感信息的全局分布之間的聯(lián)系進(jìn)行了約束限定,將特定敏感信息與半標(biāo)識(shí)列屬性之間的聯(lián)系減弱了,這樣便使得對(duì)敏感信息的分布信息進(jìn)行屬性泄露攻擊的可能性有所減少,但同時(shí)也會(huì)使得信息有一定程度的丟失。
所有匿名機(jī)制試圖盡量減少信息丟失,然而這種嘗試卻為攻擊提供了漏洞,Wong等[6]稱之為“最小性”攻擊,他們提出的m-機(jī)密性(m-confidentiality)模型可以在較小的開銷和信息丟失情況下抵制此類攻擊。
然而k-匿名模型及其改進(jìn)方法存在兩個(gè)主要的缺陷:(1) 這些模型總是因?yàn)樾滦凸舴椒ǖ某霈F(xiàn)而需要不斷改進(jìn),從而陷入一個(gè)無休止的循環(huán)中;(2) 該類型的模型對(duì)攻擊者的攻擊模型和背景知識(shí)給出了過多的些許在現(xiàn)實(shí)中不完全成立的假設(shè),所以攻擊者是可以找到多種不同的攻擊方法進(jìn)行攻擊以達(dá)到其竊取隱私信息的目的。其根本原因是對(duì)于其隱私保護(hù)的水平無法通過嚴(yán)格有效的方法得到證明,同時(shí)無法定量地分析其隱私保護(hù)水平。
因此,找到一種魯棒性更好的新的隱私保護(hù)模型,使得它能夠在攻擊者所掌握最大背景知識(shí)的條件下抵御不同形式的攻擊就是研究者需要解決的問題。差分隱私保護(hù)模型就是在這樣的需求下提出的。
差分隱私(Differential Privacy,DP)在2006年時(shí)被微軟研究院的Dwork[7]提出,這是一種新的隱私保護(hù)模型。此方法定義了一個(gè)嚴(yán)格的隱私保護(hù)模型,在數(shù)據(jù)中加入干擾噪聲來保護(hù)數(shù)據(jù)中的用戶隱私。如此,即便假設(shè)攻擊者已經(jīng)獲得了最大背景知識(shí)的攻擊條件之下,也無法獲得記錄的隱私信息數(shù)據(jù);同時(shí)對(duì)隱私保護(hù)水平給出了嚴(yán)格的數(shù)學(xué)證明和量化評(píng)估方法,給出了一個(gè)數(shù)學(xué)描述來測(cè)量一個(gè)擾動(dòng)機(jī)制究竟能夠帶來多大程度上的保密性。這解決了傳統(tǒng)隱私保護(hù)模型中的一些缺陷。此后,還給出了差分隱私保護(hù)模型的綜述[8]。
因差分隱私保護(hù)模型相較于其他模型的諸多優(yōu)勢(shì),使其引起了計(jì)算機(jī)科學(xué)、密碼學(xué)等諸多領(lǐng)域的關(guān)注和研究,成為了當(dāng)前隱私保護(hù)的研究熱點(diǎn),也迅速地取代了一些傳統(tǒng)的隱私保護(hù)模型。
差分隱私保護(hù)基于數(shù)據(jù)失真技術(shù)將某種特定分布的隨機(jī)噪聲添加進(jìn)需要處理的數(shù)據(jù)集中,進(jìn)而得到被擾動(dòng)后的新的數(shù)據(jù)集來達(dá)到對(duì)數(shù)據(jù)隱私保護(hù)的目的。因?yàn)閿?shù)據(jù)集的大小對(duì)所加入的噪聲強(qiáng)度不影響,噪聲量只與全局敏感度相關(guān),因此即便是大型的數(shù)據(jù)集,使用差分隱私也只需通過添加較為少量的噪聲干擾就可以使數(shù)據(jù)集得到很好的隱私保護(hù)。差分隱私中常用的兩種機(jī)制有拉普拉斯Laplace機(jī)制[9]和指數(shù)exponential機(jī)制[10]。
文獻(xiàn)[11]將差分隱私模型相比于傳統(tǒng)隱私模型的優(yōu)勢(shì)進(jìn)行了分析,并針對(duì)差分隱私的基礎(chǔ)理論和差分隱私在數(shù)據(jù)分享等應(yīng)用的研究進(jìn)行了綜述。文獻(xiàn)[12-13]對(duì)差分隱私在數(shù)據(jù)發(fā)布與數(shù)據(jù)分析兩個(gè)領(lǐng)域的應(yīng)用進(jìn)行了綜述。文獻(xiàn)[14]介紹了本地化差分隱私的原理與特性,并對(duì)本地化差分隱私保護(hù)技術(shù)進(jìn)行綜述。文獻(xiàn)[15-16]對(duì)差分隱私的基礎(chǔ)理論和目前的研究進(jìn)展進(jìn)行了綜述。
傳統(tǒng)隱私保護(hù)模型以及差分隱私保護(hù)模型的研究成果豐碩,但是在健康醫(yī)療領(lǐng)域,關(guān)于隱私保護(hù)的有效方案還比較缺乏。特別地,具有量化特征以及強(qiáng)隱私保護(hù)特點(diǎn)的差分隱私保護(hù)機(jī)制也存在一個(gè)弱點(diǎn):由于對(duì)于背景知識(shí)的假設(shè)很強(qiáng),需要在數(shù)據(jù)的查詢結(jié)果中添加進(jìn)大量的隨機(jī)數(shù)據(jù),這使得數(shù)據(jù)的可用性大大降低。為了在數(shù)據(jù)隱私保護(hù)強(qiáng)度與可用性之間取得平衡,本文對(duì)差分隱私保護(hù)參數(shù)ε對(duì)數(shù)據(jù)隱私保護(hù)強(qiáng)度與可用性的影響進(jìn)行評(píng)估,通過實(shí)驗(yàn)分析給出不同類型的健康醫(yī)療數(shù)據(jù)的適當(dāng)?shù)摩湃≈怠?/p>
本文使用的符號(hào)定義如表1所示。
表1 符號(hào)說明
對(duì)于一個(gè)隨機(jī)算法S,PS為S所有可能輸出的集合,對(duì)于任意的兩個(gè)相鄰數(shù)據(jù)集D和D′及PS的任意子集AS,滿足:
Pr[S(D)∈AS]≤exp(ε)Pr[M(D′)∈AS]
(1)
則稱算法S滿足ε-差分隱私。在這個(gè)定義中,當(dāng)某個(gè)數(shù)據(jù)記錄發(fā)生變化時(shí),數(shù)據(jù)庫的統(tǒng)計(jì)分析結(jié)果對(duì)于此變化是不敏感的,意味著在數(shù)據(jù)集中單條記錄的存在與否對(duì)計(jì)算結(jié)果的影響可忽略不計(jì),所以攻擊者無法通過向數(shù)據(jù)庫遞交多次查詢后根據(jù)返回結(jié)果而獲取個(gè)體隱私信息。
差分隱私算法針對(duì)不同的數(shù)據(jù)類型可以使用不同的實(shí)現(xiàn)機(jī)制,在最常用的兩種機(jī)制中Laplace機(jī)制常用于記錄中數(shù)值型數(shù)據(jù)的隱私保護(hù),指數(shù)機(jī)制則常用于對(duì)非數(shù)值型數(shù)據(jù)進(jìn)行處理。
2.2.1Laplace機(jī)制
Laplace機(jī)制是將服從Laplace分布的噪聲數(shù)據(jù)添加在輸出結(jié)果上,使得原始數(shù)據(jù)發(fā)生一定的擾動(dòng),使得接收者無法分辨在兩個(gè)相鄰的數(shù)據(jù)集D和D′上所產(chǎn)生的輸出結(jié)果的差異,其定義如下。
給定函數(shù)f:D→Rd,若算法S的輸出滿足式(2),則稱S滿足ε-差分隱私。
(2)
(3)
Laplace機(jī)制的概率密度函數(shù)如圖1所示,在不同參數(shù)的Laplace分布中,隱私保護(hù)參數(shù)ε越小,隱私保護(hù)水平越高,數(shù)據(jù)的可用性就越低。當(dāng)ε=0時(shí),算法S輸出的結(jié)果則不能反映出有關(guān)數(shù)據(jù)集的任何有用信息。
圖1 Laplace機(jī)制的概率密度函數(shù)
2.2.2指數(shù)機(jī)制
(4)
指數(shù)機(jī)制中參數(shù)q對(duì)于單個(gè)記錄的敏感性低,其函數(shù)敏感性公式如式(5)所示。
(5)
針對(duì)健康醫(yī)療數(shù)據(jù)的高敏感性特征,根據(jù)數(shù)據(jù)類型對(duì)數(shù)據(jù)加入不同類型的噪聲對(duì)數(shù)據(jù)進(jìn)行一定程度的擾動(dòng)。但是在加入噪聲過程中要平衡數(shù)據(jù)的可用性與安全性,使得發(fā)布后的數(shù)據(jù)在依然保留整體統(tǒng)計(jì)信息可用性的前提下保護(hù)單個(gè)用戶的隱私信息。本文提出的基于差分隱私保護(hù)的健康醫(yī)療數(shù)據(jù)保護(hù)方案的數(shù)據(jù)處理框架如圖2所示。
圖2 基于差分隱私的數(shù)據(jù)處理框架
首先將健康醫(yī)療數(shù)據(jù)庫中直接關(guān)聯(lián)個(gè)體用戶的敏感內(nèi)容,如姓名、身份證號(hào)及電話等個(gè)體標(biāo)識(shí)信息去除。然后將數(shù)據(jù)分為數(shù)值型與非數(shù)值型數(shù)據(jù)兩類,數(shù)值型數(shù)據(jù)采用Laplace機(jī)制,非數(shù)值型數(shù)據(jù)則采用指數(shù)機(jī)制,分別對(duì)數(shù)據(jù)添加噪聲。為了同時(shí)保證數(shù)據(jù)的可用性和安全性,進(jìn)一步平衡設(shè)置了誤差參數(shù)δ和滿足誤差的統(tǒng)計(jì)個(gè)數(shù)θ,通過控制δ和θ的取值來滿足在不同數(shù)據(jù)集上對(duì)可用性和安全性的不同需求。為了保護(hù)數(shù)據(jù)的機(jī)密性,數(shù)據(jù)以加密形式存儲(chǔ),當(dāng)數(shù)據(jù)發(fā)布給使用者時(shí),使用者根據(jù)授權(quán)解密數(shù)據(jù),然后對(duì)加了噪聲的數(shù)據(jù)進(jìn)行分析處理。
在使用Laplace機(jī)制和指數(shù)機(jī)制時(shí),需要根據(jù)數(shù)據(jù)的用途設(shè)置隱私保護(hù)參數(shù)ε以平衡數(shù)據(jù)可用性和隱私保護(hù)程度。
為了對(duì)健康醫(yī)療數(shù)據(jù)的隱私保護(hù)強(qiáng)度與可用性進(jìn)行評(píng)估,我們對(duì)數(shù)值型與非數(shù)值型兩類健康醫(yī)療數(shù)據(jù)設(shè)計(jì)了Laplace機(jī)制與指數(shù)機(jī)制分別對(duì)數(shù)據(jù)進(jìn)行基于差分隱私的保護(hù),按對(duì)不同數(shù)據(jù)的安全性和可用性需求進(jìn)一步設(shè)定誤差參數(shù)δ(即處理前后統(tǒng)計(jì)數(shù)之差與原數(shù)據(jù)比值)和滿足誤差的統(tǒng)計(jì)個(gè)數(shù)θ,同時(shí)引入皮爾遜相關(guān)系數(shù)來進(jìn)一步判定數(shù)據(jù)在處理前后的相似度來保障處理后數(shù)據(jù)的可用性(0.8~1.0極強(qiáng)相關(guān))。我們以身體質(zhì)量指數(shù)(Body Mass Index,BMI)和年齡作為數(shù)值型數(shù)據(jù)的案例,對(duì)其應(yīng)用Laplace機(jī)制添加噪聲;而非數(shù)值型數(shù)據(jù)則以性別為例,對(duì)其應(yīng)用指數(shù)機(jī)制加入噪聲,然后將處理后的數(shù)據(jù)加密后發(fā)布,使數(shù)據(jù)使用者得到數(shù)據(jù)后解密再進(jìn)行相關(guān)的數(shù)據(jù)統(tǒng)計(jì)分析。
在針對(duì)不同類型的數(shù)據(jù)使用差分隱私處理時(shí),因?yàn)椴罘蛛[私的定義表明對(duì)于隱私保護(hù)參數(shù)ε的取值與對(duì)原始數(shù)據(jù)的擾動(dòng)影響程度成反比,即對(duì)隱私保護(hù)參數(shù)的取值越小,加入原始數(shù)據(jù)的噪聲量越大,對(duì)于原始數(shù)據(jù)的擾動(dòng)也就越大。對(duì)于健康醫(yī)療數(shù)據(jù)而言,要求數(shù)據(jù)在用于數(shù)據(jù)分析時(shí)的統(tǒng)計(jì)結(jié)果波動(dòng)不大的同時(shí)使數(shù)據(jù)的隱私得到保護(hù),即數(shù)據(jù)的可用性和安全性都有保障,因而對(duì)于隱私保護(hù)參數(shù)ε數(shù)值的設(shè)置就需要根據(jù)數(shù)據(jù)的不同來進(jìn)行調(diào)整以達(dá)到較好的效果。
針對(duì)數(shù)值型數(shù)據(jù)的Laplace機(jī)制的處理算法如算法1所示,因?yàn)樗惴ú捎肞ython語言實(shí)現(xiàn),因此其算法的偽代碼中有Python中的常用函數(shù),其中np是Python的一個(gè)運(yùn)算函數(shù)庫,random()表示生成隨機(jī)數(shù)函數(shù),按所設(shè)置的Δf和ε隨機(jī)生成噪聲,將噪聲添加在原始數(shù)據(jù)中得到加噪數(shù)據(jù),同時(shí)判斷經(jīng)過噪聲處理后的數(shù)據(jù)是否滿足了δ和θ預(yù)先設(shè)定的要求。
算法1Laplace機(jī)制擾動(dòng)算法
輸入:數(shù)據(jù)庫中的數(shù)值域age,BMI,ε,δ和θ。
輸出:加入噪聲的age_d和BMI_d。
2)u1=np.random.random(),
u2=np.random.random()
//生成取值范圍為[0,1)的隨機(jī)浮點(diǎn)數(shù)u1和u2
3) ifu1≤0.5
noise_value=-λ*np.log(1-u2)
else
noise_value=λ*np.log(u2)
4)age_d=age+noise_value1;(ε=ε1)
BMI_d=BMI+noise_value2;(ε=ε2)
5) pearson(age,age_d)
pearson(BMI,BMI_d)
6)θ1=0
ifδ1>δandδ2>δ
數(shù)據(jù)處理誤差不符合要求
else
θ1=θ1+1
ifθ1≥θand 0.8 處理前后數(shù)據(jù)相似度很高且數(shù)據(jù)處理滿足要求 else 數(shù)據(jù)處理未滿足要求 ε=ε+0.01 Laplace() 針對(duì)非數(shù)值型數(shù)據(jù)的指數(shù)機(jī)制的處理算法如算法2所示,健康醫(yī)療數(shù)據(jù)中非數(shù)值型域比較多,在這里以個(gè)體性別為例。算法中round()表示取指定位數(shù)的小數(shù),random_pick()表示以指定概率從列表中取值。通過δ和θ的判斷來檢驗(yàn)處理后的數(shù)據(jù)能否達(dá)到處理要求。 算法2指數(shù)機(jī)制擾動(dòng)算法 輸入:數(shù)據(jù)庫中的非數(shù)值域gender,ε,δ,θ。 輸出:加入噪聲的gender_d。 1) setsum=0,Δq,ε 3)exponents_list: exponents_list.append(math.exp(expo)) //將各項(xiàng)對(duì)應(yīng)的expo存入exponents_list 4)sum=exponents_list[0]+exponents_list[1] foriinexponents_list 5)some_list=[′female′,′male′] disease_list=dict[disease] 6)gender_d=random_pick(some_list,disease_list) 7) pearson(age,age_d) pearson(BMI,BMI_d) 8)θ1=0 ifδ3>δ 數(shù)據(jù)處理誤差不符合要求 else θ1=θ1+1 ifθ1≥θand 0.8 處理前后數(shù)據(jù)相似度很高且數(shù)據(jù)處理滿足要求 else 數(shù)據(jù)處理未滿足要求 ε=ε+0.01 Exponential() 對(duì)數(shù)據(jù)進(jìn)行加噪處理后,再利用常用對(duì)稱加密算法,比如AES對(duì)加噪數(shù)據(jù)加密,密文數(shù)據(jù)就可以發(fā)布。而用戶要想利用這些發(fā)布的數(shù)據(jù),仍然要從數(shù)據(jù)持有者得到授權(quán)才可以得到密文數(shù)據(jù)并解密數(shù)據(jù)進(jìn)行分析,對(duì)密文數(shù)據(jù)的授權(quán)不是本文的研究重點(diǎn),利用已有的數(shù)據(jù)授權(quán)方法即可。 實(shí)驗(yàn)部分我們?cè)?4位Windows 10操作系統(tǒng)個(gè)人電腦上使用MATLAB R2016b軟件進(jìn)行了數(shù)值模擬,個(gè)人電腦具有16 GB的隨機(jī)存取存儲(chǔ)器(RAM)和2.20 GHz的Intel Core i7- 6650U CPU。數(shù)據(jù)為存儲(chǔ)在MySQL數(shù)據(jù)庫中的11 640條健康醫(yī)療數(shù)據(jù)記錄(數(shù)據(jù)集來源: (1) https://archive.ics.uci.edu/ml/index.php; (2) https://github.com/susanli2016/Machine-Learning-with-Python數(shù)據(jù)量為4 019條)。同時(shí)根據(jù)不同的數(shù)據(jù)我們測(cè)試了不同的隱私保護(hù)參數(shù)ε取值對(duì)于數(shù)據(jù)安全性和可用性的差別。在實(shí)驗(yàn)中為能夠細(xì)致地保障數(shù)據(jù)處理后可用性和安全性,將隱私保護(hù)參數(shù)ε的變化幅度分別進(jìn)行設(shè)置。因非數(shù)值型分組只有男性和女性兩種,組中數(shù)據(jù)量相較于數(shù)值型較多,在ε數(shù)值較小時(shí)統(tǒng)計(jì)后的數(shù)據(jù)差異較小,因此將對(duì)非數(shù)值型數(shù)據(jù)隱私保護(hù)參數(shù)變化幅度設(shè)置為0.001(指數(shù)機(jī)制),在數(shù)值型數(shù)據(jù)分組中,因分組較多,每個(gè)分組中的部分?jǐn)?shù)據(jù)量會(huì)較小,在參數(shù)ε設(shè)置較小的情況下會(huì)出現(xiàn)數(shù)據(jù)波動(dòng)很大而導(dǎo)致數(shù)據(jù)可用性不高,所以將數(shù)值型數(shù)據(jù)的隱私保護(hù)參數(shù)變化幅度設(shè)置為0.01(Laplace機(jī)制)。實(shí)驗(yàn)中ε的初始值設(shè)定為中間量0.5,依次根據(jù)調(diào)整幅度進(jìn)行測(cè)試以找到安全性與可用性的一個(gè)平衡。再根據(jù)進(jìn)行實(shí)驗(yàn)的數(shù)據(jù)分析將實(shí)驗(yàn)中誤差參數(shù)δ設(shè)為20%,數(shù)值型和非數(shù)值型數(shù)據(jù)根據(jù)不同區(qū)間劃分后的統(tǒng)計(jì)個(gè)數(shù)分別為30、12,因分組后部分組內(nèi)數(shù)據(jù)較少,在進(jìn)行數(shù)據(jù)處理時(shí)數(shù)據(jù)波動(dòng)情況相較于其他分組較大,故而將滿足誤差的統(tǒng)計(jì)個(gè)數(shù)θ分別設(shè)置為20、10以保證數(shù)據(jù)的可用性較好。數(shù)據(jù)發(fā)布者可以根據(jù)對(duì)于不同數(shù)據(jù)的不同需求對(duì)ε、δ、θ進(jìn)行設(shè)定和處理來達(dá)到對(duì)于不同數(shù)據(jù)使用者的數(shù)據(jù)隱私保護(hù)通用性。 根據(jù)性別分類在ε=0.005, 0.004, 0.003與0.002時(shí)的加噪前后的疾病統(tǒng)計(jì)分布如圖3表示。分別在性別為男與女情況下采用不同ε時(shí)的數(shù)據(jù)加噪前后的疾病統(tǒng)計(jì)分布,經(jīng)過多次實(shí)驗(yàn)測(cè)試發(fā)現(xiàn)與年齡數(shù)據(jù)處理不同的是當(dāng)ε=0.005時(shí),我們得到的擾動(dòng)后的數(shù)據(jù)統(tǒng)計(jì)結(jié)果與原始數(shù)據(jù)的統(tǒng)計(jì)結(jié)果十分相近,而當(dāng)ε=0.002時(shí),其統(tǒng)計(jì)結(jié)果誤差非常大。 (a) 男性 (b) 女性圖3 按性別在不同ε取值下加噪前后的疾病統(tǒng)計(jì)分布 根據(jù)BMI數(shù)據(jù)在ε=0.36, 0.3, 0.2與0.1時(shí)的加噪前后的疾病統(tǒng)計(jì)分布如圖4所示,分別統(tǒng)計(jì)在BMI<18.5,BMI取值為18.5~23.9、24.0~26.9、27.0~29.9,以及BMI≥30的不同條件下數(shù)據(jù)加噪前后的疾病統(tǒng)計(jì)分析結(jié)果分布。 (a) BMI小于18.5 (b) BMI介于18.5~23.9 (c) BMI介于24.0~26.9 (d) BMI介于27.0~29.9 (e) BMI大于30圖4 BMI在不同ε取值下加噪前后的疾病統(tǒng)計(jì)分布 在實(shí)驗(yàn)對(duì)比測(cè)試中發(fā)現(xiàn)當(dāng)ε=0.36時(shí)統(tǒng)計(jì)結(jié)果與原始數(shù)據(jù)統(tǒng)計(jì)結(jié)果逼近且數(shù)據(jù)的安全性也得到了保障,當(dāng)ε=0.1時(shí)統(tǒng)計(jì)結(jié)果的波動(dòng)十分明顯,尤其是在BMI小于18.5的數(shù)據(jù)上非常明顯。原因可能是因?yàn)樾∮?8.5的統(tǒng)計(jì)數(shù)據(jù)量過少而添加的噪聲過大。 根據(jù)年齡數(shù)據(jù)在ε=0.33, 0.2, 0.1與0.05時(shí)的加噪前后的疾病統(tǒng)計(jì)分布如圖5所示,分別統(tǒng)計(jì)在年齡小于20歲、年齡在20~39歲、40~59歲、60~79歲,以及年齡大于80歲的不同條件下數(shù)據(jù)加噪前后的疾病統(tǒng)計(jì)分析結(jié)果分布。 (a) 年齡小于20 (b) 年齡介于20~39 (c) 年齡介于40~59 (d) 年齡介于60~79 (e) 年齡大于等于80圖5 年齡在不同ε取值下加噪前后的疾病統(tǒng)計(jì)分布 可以看出,當(dāng)ε=0.33時(shí)統(tǒng)計(jì)結(jié)果與原始數(shù)據(jù)統(tǒng)計(jì)結(jié)果相近,當(dāng)ε=0.05時(shí)數(shù)據(jù)的統(tǒng)計(jì)結(jié)果波動(dòng)較大,尤其當(dāng)年齡小于20歲和大于80歲時(shí),疾病的數(shù)據(jù)差異非常明顯,統(tǒng)計(jì)誤差較大,原因可能與原始數(shù)據(jù)統(tǒng)計(jì)量較小和添加的噪聲過大有關(guān)。 按差分隱私的定義,當(dāng)ε取值越小對(duì)原數(shù)據(jù)所添加的噪聲值越大,數(shù)據(jù)的安全性越高,但可用性會(huì)降低。實(shí)驗(yàn)中我們研究了不同的隱私保護(hù)參數(shù)ε的取值對(duì)于統(tǒng)計(jì)結(jié)果的影響程度,通過圖3-圖5的對(duì)比實(shí)驗(yàn)發(fā)現(xiàn)在按性別分類統(tǒng)計(jì)時(shí)ε取值為0.005時(shí)、在按BMI分類統(tǒng)計(jì)時(shí)ε取值為0.36時(shí)、在按年齡分類統(tǒng)計(jì)時(shí)ε取值為0.33時(shí)加噪后的數(shù)據(jù)誤差較小,故而安全性和可用性相對(duì)較好。 本節(jié)對(duì)以上方案的時(shí)間開銷進(jìn)行對(duì)比,按性別、BMI、年齡不同屬性進(jìn)行差分隱私保護(hù)時(shí)的時(shí)間開銷如圖6所示。其中:斜線填充表示性別數(shù)據(jù)為不同ε取值時(shí)的時(shí)間開銷,最大時(shí)間開銷是7.858 s,最小時(shí)間開銷是7.835 s;深灰填充表示BMI數(shù)據(jù)為不同ε取值時(shí)的時(shí)間開銷,最大時(shí)間開銷是0.299 s,最小時(shí)間開銷是0.296 s;白色填充表示年齡數(shù)據(jù)為不同ε取值時(shí)的時(shí)間開銷,最大時(shí)間開銷是0.305 s,最小時(shí)間開銷是0.290 s。因?yàn)閷?duì)隱私保護(hù)參數(shù)的取值和采用的加噪機(jī)制不同,時(shí)間開銷也有所不同,但從實(shí)驗(yàn)數(shù)據(jù)可以看出,不同隱私保護(hù)參數(shù)取值時(shí)的時(shí)間開銷差異比較小。 圖6 性別、BMI、年齡不同屬性在不同ε取值時(shí)的時(shí)間開銷 本文提出一種基于差分隱私的可根據(jù)不同隱私保護(hù)需求進(jìn)行不同參數(shù)設(shè)定的健康醫(yī)療數(shù)據(jù)隱私保護(hù)方法,該種方法的優(yōu)點(diǎn)在于相較于傳統(tǒng)的隱私保護(hù)方法,在當(dāng)攻擊者擁有強(qiáng)大背景知識(shí)的情況下差分隱私依舊能夠有效地保護(hù)隱私信息,同時(shí)它嚴(yán)謹(jǐn)?shù)慕y(tǒng)計(jì)學(xué)模型對(duì)隱私保護(hù)強(qiáng)度進(jìn)行量化,從而可以較好地在隱私保護(hù)強(qiáng)度與可用性之間進(jìn)行權(quán)衡。我們通過針對(duì)不同類型的數(shù)據(jù)使用不同的差分隱私機(jī)制對(duì)其進(jìn)行加噪處理,同時(shí)根據(jù)數(shù)據(jù)類型的不同選取控制隱私保護(hù)參數(shù)ε的取值使得數(shù)據(jù)在可用性和安全性上取得一個(gè)相對(duì)的平衡,控制誤差參數(shù)δ和滿足誤差的統(tǒng)計(jì)個(gè)數(shù)θ的取值以保證數(shù)據(jù)的可用性和安全性更進(jìn)一步依據(jù)處理需求的得到平衡。在數(shù)據(jù)采取不同的機(jī)制進(jìn)行差分隱私處理之后,數(shù)據(jù)擁有者可把處理后的數(shù)據(jù)發(fā)布給數(shù)據(jù)使用者用于數(shù)據(jù)挖掘相關(guān)的分析研究。通過實(shí)驗(yàn)分析發(fā)現(xiàn),在誤差參數(shù)δ和數(shù)值型與非數(shù)值型數(shù)據(jù)滿足誤差的統(tǒng)計(jì)個(gè)數(shù)θ的取值分別為20%、20和10的要求下,對(duì)于年齡字段的ε取值為0.33,對(duì)于BMI字段ε的取值為0.36,對(duì)于性別字段ε的取值為0.005時(shí),在數(shù)據(jù)的可用性和安全性上有個(gè)相對(duì)好的平衡。該方法改變對(duì)原始數(shù)據(jù)的擾動(dòng)程度進(jìn)而平衡數(shù)據(jù)的可用性和安全性,使得發(fā)布后的醫(yī)療數(shù)據(jù)在仍舊保留整體信息可研究性的前提下保護(hù)數(shù)據(jù)擁有者的隱私。未來的研究工作將探究健康醫(yī)療數(shù)據(jù)共享時(shí)動(dòng)態(tài)數(shù)據(jù)的隱私保護(hù)方法。4 實(shí)驗(yàn)結(jié)果與性能分析
4.1 實(shí)驗(yàn)結(jié)果
4.2 性能分析
5 結(jié) 語