李 靜,趙青杉,高 媛
(1. 忻州師范學院計算機系,山西 忻州 034000;2. 中北大學大數據學院,山西 太原 030051)
在網絡信息發達的現代社會,基于網絡技術與信息采集設備獲取的海量數據極具價值,以這些數據為基礎挖掘不同領域狀態,實現數據共享成為當今時代數據應用的流行趨勢[1,2]。但數據共享技術在為使用者帶來便利的同時也存在一定風險[3],易導致使用者自身隱私信息被他人窺探,成為他人獲取不法利益的工具。針對此問題,部分研究學者提出隱私保護數據查詢理念,成為數據共享領域的一大熱點。
文獻[4]提出大數據環境中交互式查詢差分隱私保護方法。引入數據關聯性分析方法,降低冗余信息量。利用交替方向乘子法建立查詢負載矩陣,并對其進行分解處理。采用自適應加噪技術產生差分隱私保護所需要的合理數量的噪聲,實現大數據交互式查詢差分隱私保護。文獻[5]提出基于混合型位置大數據的差分隱私聚類方法。采用KD-medoids降維聚類算法,預處理混合型位置大數據,實現大數據位置信息的提取與記錄。利用鄰近搜索,得到聚類中心點,并對其進行k聚類簇劃分,加入Laplace噪聲,使其滿足差分隱私。但是,異常傳統方法雖然具有較好的隱私數據保護性能,但傳統研究主要集中于交互式查詢,導致非交互式查詢存在耗時較長的問題。
針對這一問題,研究基于機器學習的大數據隱私非交互式查詢方法,在非交互式查詢過程中有機結合機器學習和差分隱私,利用預測模型獲取滿足差分隱私標準的查詢結果,并通過實驗分析驗證該方法的實際應用效果。
基于機器學習[6,7]的大數據隱私非交互式查詢方法可通過三個主要步驟實現:
1)在大數據集A中,基于關聯規則挖掘其中數據包含的關聯程度,設定閾值,選取關聯程度低于閾值的數據記錄,構建大數據特征集W;
2)選取K-means聚類算法劃分特征集,獲取查詢集f(W),采用自適應噪聲添加算法在查詢集內加入拉普拉斯噪聲,獲取符合差分隱私標準的查詢集(W);
3)利用f(W)和(W)構建訓練樣本集,采用機器學習算法中的線性回歸算法對其進行訓練,生成預測模型,在其中輸入A內的初始數據,得到符合差分隱私保護的查詢結果集合。
針對A,采用FP-growth關聯分析算法挖掘其中數據包含的關聯程度[8],實現流程如圖1所示。

圖1 數據關聯程度挖掘流程
數據關聯程度挖掘流程可歸納為5個環節,具體描述如下:
環節1:整體掃描A,得到頻繁項候選集Ap;
環節2:依照最小支持度在Ap內選取數據,生成頻繁模式樹;
環節3:對頻繁模式樹進行剪枝;
環節4:在上一環節基礎上獲取前綴路徑集合Az;
環節5:基于Az得到數據關聯程度。
將數據關聯程度與預先設定的閾值φ相比,選取關聯程度低于φ的數據記錄,構建W。
2.2.1 K-means聚類算法
針對W={Wi|i=1,2,…,n},采用K-means聚類算法劃分W,以Cj(j=1,2,…,k)和cj(j=1,2,…,k)分別描述聚類的k個類別和初始聚類中心,cj表達式如下

(1)
式(1)內,n表示W內特征數據數量。
利用式(2)確定數據wi與數據wj間的歐氏距離d(wi,wj):

(2)
采用K-means聚類算法的迭代過程將W內特征數據劃分至不同簇內[9],令目標函數H最小化,由此得到具有獨立性與緊密性的簇。

(3)
K-means聚類算法具體實現過程如下:
1)設定輸入與輸出
輸入:k與W={Wi|i=1,2,…,n},輸出:符合H最小化的k個簇;
2)確定cj
在W={Wi|i=1,2,…,n}內的n個特征數據內隨機確定k個cj;
3)迭代進行(4)與(5)內容,至H固定;
4)依照各特征數據的均值,確定各特征數據同k個cj之間的d值,依照權重下限值再次劃分相應特征數據;
5)確定各聚類均值。
基于以上過程獲取f(W)。
2.2.2 基于密度的初始聚類中心算法
采用基于密度的初始聚類中心點算法確定K-means聚類算法中的k個cj。利用式(4)確定W={Wi|i=1,2,…,n}內全部特征數據的密度:

(4)
式中,σ為初始聚類中心點集合。
利用式(5)確定密度最大的特征數據:
wmax=max{wi|wi∈W,i=1,2,…,n}
(5)
以wmax為第一個初始聚類中心,將其引入M內,得到M=M∪{wmax},同時在W內清除此特征數據,依據半徑r確定wmax鄰域中全部的特征數據,在W內清除這些特征數據。在此基礎上再次利用式(5)確定密度最大的特征數據,直至初始聚類中心達到k個。
2.2.3 自適應噪聲添加算法
為保護查詢結果的隱私性,需在f(W)內添加滿足拉普拉斯分布的噪聲[10]。但特殊數據具有較高靈敏度,直接添加噪聲將造成數據喪失可用性,因此需采用自適應地噪聲添加算法。大數據非交互式查詢結果的隱私保護水平由隱私保護預算ε描述,ε值與隱私保護水平和噪聲添加量之間均表現為反比例相關。基于此依照高適用性的ε值能夠同時確定隱私保護水平和噪聲添加量。

圖2所示為自適應噪聲添加流程。

圖2 自適應噪聲添加流程
基于以上過程獲取實際查詢集f(W)與符合差分隱私標準的查詢集(W),利用f(W)和(W)構建訓練樣本集T=〈f(W),(W)〉,采用機器學習算法中的線性回歸算法對其進行訓練,生成預測模型,利用該模型預測查詢結果。
利用基于機器學習算法的隱私保護預測模型獲取大數據隱私非交互查詢結果的具體過程如下:
設定輸入為大數據特征集的查詢集f(W)、符合差分隱私標準的查詢集(W)、ε值和大數據集A;設定輸出為隱私非交互式查詢結果集。
1)利用f(W)和(W)構建訓練樣本集T=〈f(W),(W)〉;
2)利用線性回歸算法訓練T=〈f(W),(W)〉,生成預測模型;
3)在所獲取的預測模型內輸入大數據集;
4)獲取大數據隱私非交互式查詢結果f(A)。
實驗為驗證本文所研究基于機器學習的大數據隱私非交互式查詢研究方法在實際查詢應用中的應用效果,以某購物網站數據庫內2020年7月、8月和9月的銷售數據為實驗數據,分別構建三個初始大數據集,分別命名為7月數據集、8月數據集和9月數據集,各數據集內每一個數據均表示一次商品銷售行為。實驗設計之初,為兼顧本文方法并行性與可擴展性等性能的驗證,選取分布式集群式實驗方法。同時為確保實驗過程中的網絡時延無差異,實驗過程在相同網絡環境下進行。在開源的Hadoop系統中驗證本文方法的應用性能,實驗所得具體結果如下所示。
針對實驗所使用的三個大數據集,即7月數據集、8月數據集和9月數據集,設置最小支持度,確定各數據集的關聯關系,所獲得結果通過表1描述。

表1 各數據集關聯關系分析結果
分析表1得到,采用所提方法分析各數據集后,數據集內數據量呈現不同程度的降低趨勢,由此說明采用關聯關系能夠顯著降低大數據隱私非交互查詢過程中的數據計算壓力,節約大量時間與空間。同時分析表1還能得到,在最小支持度值分別為0.2、0.4、0.8和1.5的條件下,三個數據集的數據量均在最小支持度值為0.4的條件下降低幅度最顯著,由此在實際應用過程中,可將本文方法中的最小支持度值設定為0.4。
本文方法中為確保查詢結果的隱私性,在查詢過程中引入了噪聲。數據效用性分析的主要目的是判斷本文方法所獲取的大數據隱私非交互式查詢結果受噪聲干擾的程度。分析過程中為進一步說明本文方法的數據效用性能,以文獻[4]方法和文獻[5]方法為對比方法,以平均絕對誤差為指標,對比本文方法與對比方法所獲取的大數據隱私非交互式查詢結果精度,平均絕對誤差值與查詢結果精度之間具有反比例相關性,即平均絕對誤差值越低,方法所得到的查詢結果精度越高。設定隱私保護預算值取值范圍為0.1—1。本文方法與兩種對比方法查詢結果精度對比結果如圖3所示。

圖3 數據效用性分析結果
分析圖3得到,在三個數據集內,隨著隱私保護預算值逐漸提升,本文方法與兩種對比方法所獲取的查詢結果平均絕對誤差值均呈現不同程度的下降趨勢,但在三個數據集內,本文方法所獲取的查詢結果平均絕對誤差值均低于兩種對比方法。
在圖3(a)內,在隱私保護預算值取值為0.3的條件下,本文方法的平均絕對誤差值為89項,文獻[4]方法和文獻[5]方法的平均絕對誤差值分別為231項和174項;在隱私保護預算值取值為0.6的條件下,本文方法的平均絕對誤差值為20項,文獻[4]方法和文獻[5]方法的平均絕對誤差值分別為110項和64項;在隱私保護預算值取值為1.0的條件下,本文方法的平均絕對誤差值為4項,文獻[4]方法和文獻[5]方法的平均絕對誤差值分別為12項和23項。在圖3(b)與圖3(c)內不同隱私保護預算值條件下同樣能夠表現出本文方法所得到的查詢結果精度優勢。這是由于本文方法在保護查詢結果隱私性過程中采用添加噪聲的方式,未損耗隱私保護預算。
同時本文方法中的隱私保護預算值反映了本文方法的隱私保護性能,在該值逐漸提升的條件下,本文方法所得到的查詢結果精度逐漸提升,說明隱私保護程度越低,本文方法所得到的查詢結果精度越高,即所得到的查詢結果數據效應性更高。
本文針對以往普遍使用的隱私數據查詢方法中存在的部分缺陷,研究基于機器學習的大數據隱私非交互式查詢方法。本文方法以機器學習問題取代數據查詢問題,通過機器學習算法中的線性回歸算法構建預測模型,獲取符合差分隱私標準的查詢結果。并通過實驗驗證了本文方法的可應用性。
下一步研究工作主要針對查詢記錄內容類別屬性的劃分,基于查詢記錄的類別屬性差異優化本文方法,可在確保本文方法查詢結果精度基礎上,提升大數據集收斂速度。