基于機器學習的集成隱私保護方法
【技術領域】
[0001] 本發(fā)明涉及計算機科學技術領域,更具體地說,本發(fā)明涉及一種基于機器學習的 集成隱私保護方法。
【背景技術】
[0002] 機器學習是研究怎樣使用計算機模擬或實現(xiàn)人類學習活動的應用科學。它關心的 主要問題是:計算機程序如何隨著經(jīng)驗積累自動提高性能。20世紀80年代以來,機器學習作 為實現(xiàn)人工智能的一種主要途徑,引起了廣泛的興趣并成為人工智能學科的中心課題之 一。近年來,機器學習發(fā)展迅速,一些針對特定學習任務的算法不斷提出,關于學習理論的 認識也開始逐步形成。隨著機器學習技術的日益成熟,它開始在商業(yè)、工業(yè)、科學研究等各 個領域得到廣泛的應用,例如商務智能、信息檢索、計算機視覺、自動車輛駕駛等。機器學習 中的集成學習基于訓練數(shù)據(jù)建立若干個有差異的個體學習器,然后將它們各自的預測結果 進行整合以作為最終預測結果。
[0003] 為了防止個人隱私信息的泄漏,在數(shù)據(jù)發(fā)布前需要對其在準標識符上的屬性值作 數(shù)據(jù)概化處理,以消除鏈接攻擊,實現(xiàn)在共享中對敏感屬性的匿名保護。概化處理增加了屬 性值的不確定性,不可避免地會造成一定的信息損失。
[0004] 雖然數(shù)據(jù)庫在所有領域都有廣泛的應用,但是不同領域的應用場景卻千差萬別。 不僅數(shù)據(jù)的表現(xiàn)形式、存儲方式、數(shù)量、更新頻率等都各不相同,而且隱私信息的表現(xiàn)形式、 數(shù)量往往也是不同的。因此,眾多領域和現(xiàn)實應用,都急切需要一種符合其實際情況和特 點、針對性強、效率/效果優(yōu)的隱私保護方法。
[0005] 但是,目前為止信息損失是隱私保護所帶來的不幸后果之一。為了實現(xiàn)隱私保護 目的,有各種隱私保護匿名技術,其中有概化技術、壓縮技術、Anatomy技術等等,這些不同 的匿名技術給用戶呈現(xiàn)了不同的經(jīng)過匿名化處理后的數(shù)據(jù)。同時,帶來了信息損失,一般而 言,隱私保護要求的力度越大,信息損失也就越大,數(shù)據(jù)的可用性也就越低。
【發(fā)明內容】
[0006] 本發(fā)明所要解決的技術問題是針對現(xiàn)有技術中存在上述缺陷,提供一種機器學習 中的集成學習的思想的匿名化技術,能夠從實際的可操作性出發(fā)實現(xiàn)匿名化隱私保護。
[0007] 為了實現(xiàn)上述技術目的,根據(jù)本發(fā)明,提供了一種基于機器學習的集成隱私保護 方法,包括:
[0008] 第一步驟:利用多個k_匿名算法生成覆蓋數(shù)據(jù)庫的原表的覆蓋集,其中所述原表 由多個元組組成;
[0009] 第二步驟:去除覆蓋集中多余的元組以得到元組集;其中,對覆蓋集中多個相同元 組進行部分刪除以使得僅僅保留多個相同元組中的一個元組,由此使得元組集中不存在重 復的元組。
[0010] 優(yōu)選地,覆蓋集中的每個元組集的大小都是在k和2k_l之間,k是正整數(shù)。
[0011] 優(yōu)選地,所述第一步驟包括:首先由多個k-匿名算法各自獨立生成元組集,并且利 用這些元組集組成總集合,隨后從總集合中選擇部分元組集以組成覆蓋集。
[0012] 優(yōu)選地,在所述第一步驟中,針對屬于總集合的每個元組集計算比率,所述比率是 用NCP函數(shù)度量的元組集的信息損失除以該元組集貢獻的元組數(shù)量,然后從中挑選比率最 低的元組集加入覆蓋集。
[0013] 優(yōu)選地,所述第二步驟包括:將覆蓋集的元組集映射到原表的元組上;如果特定元 組同時出現(xiàn)在覆蓋集的第一元組集與第二元組集中,如果第一元組集與第二元組集的大小 都等于k,則將第一元組集與第二元組集合并出新的第二元組集,并且把第一元組集置空, 同時新的第二元組集到原表的映射,去除第一元組集到原表的映射。
[0014]優(yōu)選地,如果第一元組集與第二元組集的大小沒有都等于k,則從第一元組集與第 二元組集中比較大的一個中去掉所述特定元組。
[0015] 本發(fā)明將機器學習中的集成學習的思想引入到隱私保護算法中,尤其是數(shù)據(jù)庫信 息的隱私保護,把從多個匿名算法中得到的數(shù)據(jù)表,進行集成,能夠在原來算法的基礎上降 低概化帶來的數(shù)據(jù)信息損失。
【附圖說明】
[0016] 結合附圖,并通過參考下面的詳細描述,將會更容易地對本發(fā)明有更完整的理解 并且更容易地理解其伴隨的優(yōu)點和特征,其中:
[0017] 圖1示意性地示出了根據(jù)本發(fā)明優(yōu)選實施例的基于機器學習的集成隱私保護方法 的流程圖。
[0018] 需要說明的是,附圖用于說明本發(fā)明,而非限制本發(fā)明。注意,表示結構的附圖可 能并非按比例繪制。并且,附圖中,相同或者類似的元件標有相同或者類似的標號。
【具體實施方式】
[0019] 為了使本發(fā)明的內容更加清楚和易懂,下面結合具體實施例和附圖對本發(fā)明的內 容進行詳細描述。
[0020] 本發(fā)明基本的思想是集成多個k_匿名算法的優(yōu)點,先從各個算法的結果集中挑選 "好"的元組集(Ql-groups),然后對多出來的元組進行修剪,最后生成滿足k-匿名的表。 [0021]圖1示意性地示出了根據(jù)本發(fā)明優(yōu)選實施例的基于機器學習的集成隱私保護方法 的流程圖。
[0022] 如圖1所示根據(jù)本發(fā)明優(yōu)選實施例的基于機器學習的集成隱私保護方法包括:
[0023] 第一步驟S1:利用多個k-匿名算法生成覆蓋數(shù)據(jù)庫的原表T的一個滿足(k,2k_l)_ 覆蓋的覆蓋集,其中所述原表T由多個元組組成;其中,指的是"覆蓋集中的每個元組集的大 小都是在k和2k-l之間",其中k是正整數(shù)。例如,原表T是SAL(結構化查詢語言,Structured Query Language)^:。
[0024] 第二步驟S2:去除覆蓋集中多余的元組以得到元組集;即,對覆蓋集中多個相同元 組進行部分刪除以使得僅僅保留多個相同元組中的一個元組,由此使得元組集中不存在重 復的元組。
[0025] 〈第一步驟 Sl>
[0026]在【具體實施方式】中,對于第一步驟SI,可以執(zhí)行下述處理:
[0027]首先由多個k-匿名算法各自獨立生成元組集(Ql-groups),并且利用這些元組集 組成總集合Q,隨后從總集合Q中選擇部分元組集以組成覆蓋集S。
[0028]例如,從總集合Q中選擇部分元組以組成覆蓋集S的步驟可由下述算法GEN-C0VER 實現(xiàn)。
[0029]
[0030] 算法GEN-C0VER目的是從總集合Q中挑選出"好"的