劉曉娜 王愷 王成德 徐彥強



摘? 要:高校在對貧困生的資助過程中,為保證公開、公平,會獲取相關學生很多關鍵性隱私數據,如貧困原因、生源所在地、家庭收入、家庭成員、在校消費等敏感隱私數據。同時資助的結果又要求必須公開以保證管理過程的公正性。針對高校對貧困生數據發布中的公開與隱私保護之間的矛盾,提出了一種基于GDK-means的隱私保護方法。在該算法下,在K-means聚類的基礎上,對生成的簇進行簇內泛化,來對發布的敏感數據進行去隱私化處理,以達到用戶隱私保護的目的,同時量化了處理所帶來的信息丟失度。經理論分析和實驗,驗證了采用GDK-means算法,在保證數據可用性的前提下,可實現數據發布中較好的隱私保護性。
關鍵詞:貧困生資助;分布式聚類;隱私保護;K-means算法
中圖分類號:TP311.13;G647? 文獻標識碼:A? 文章編號:2096-4706(2023)11-0030-04
Research on a College Information Privacy-Protection Method for Poor Students
Based on GDK-means
LIU Xiaona1, WANG Kai1, WANG Chengde1, XU Yanqiang2
(1.Lanzhou University of Arts and Science, Lanzhou? 730000, China; 2.Lanzhou Institute of Technology, Lanzhou? 730050, China)
Abstract: In the process of providing financial aid to poor students, colleges and universities obtain a lot of key private data about the students in order to ensure openness and fairness, such as the reason for poverty, the location of the student's origin, family income, family members, school spending and other sensitive private data. At the same time, the results of financial aid must be made public to ensure the fairness of the management process. A privacy-protection method based on GDK-means is proposed to address the contradiction between disclosure and privacy-protection in the release of data on poor students in colleges and universities. Under this algorithm, the published sensitive data can be de-privatised by intra-cluster generalisation of the generated clusters on the basis of K-means clustering to achieve the purpose of user privacy-protection, while quantifying the degree of information loss caused by the processing. After theoretical analysis and experiments, it is verified that the use of GDK-means algorithm can achieve better privacy-protection in data publishing under the premise of ensuring data availability.
Keywords: financial aid for poor students; distributed clustering; privacy-protection; K-means algorithm
0? 引? 言
高校在對生活困難學生認定時,主要標準就是家庭條件困難和在校期間生活簡樸。其中評定時需要收集學生在校日常消費數據,以及影響家庭經濟狀況的有關因素開展認定工作,如家庭收入、家庭負擔、特殊群體、生源地、突發狀況、學生食堂和教育超市消費等數據,以供對學生進行資助和相關等級認定,并在完成評定后需要對學生的部分信息進行公示,才能保證整個評定過程公平、可靠。但是,這些原始數據中通常包含很多的個人隱私信息,如果不經過任何處理就直接發布,勢必會造成嚴重的隱私泄露,從而導致困難身份披露和屬性披露,使得善意的助學行為變成對困難學生的心理傷害,甚至會降低部分困難學生的參與度,從而降低了資助的善意效力。而且,保證數據的私密性和保證數據的效用又是相互矛盾的。采用傳統的數據匿名、擾亂、添加噪聲等,均不能很好地解決這方面的問題。因此,如何在數據發布中保證個人敏感信息不被泄露,避免各種隱私攻擊,同時保證發布數據具有較高效用是當前面臨的一個重大挑戰[1]。同時,由于隱私數據的特殊性,數據庫表中各個字段的不同數據,需要具有完全不同的隱私敏感度,在發布過程中對這部分數據的隱私保護需求也各不相同,即數據的敏感度與數據組自身的獨特性也有關系。現有數據收集和發布中的隱私保護方案,大多數未充分考慮需要對隱私數據進行垂直分級,即個性化隱私需求的情況。另一方面,極端相反的過度保護現象,也可造成可用數據的丟失,從而使得資助的評定過程失去了部分原始數據的支撐,降低了公平性。基于隱私數據發布過程的保護,就是要從學生數據的個體角度出發,考慮數據敏感度因素,真正實現個性化隱私保護,同時實現原始數據的使用價值。基于以上原則,就要求在學生資助的整個評定、公布過程中,采用的數據發布算法,不僅要保證對學生消費數據的充分利用,更要在保證挖掘結果和用戶數發布后,在不泄露用戶隱私的前提下,使脫敏后的數據具有可用性。
1? 隱私數據發布保護
關于信息發布的隱私保護方面的研究還處在起步階段,目前的解決技術主要有以下3種。
1.1? 匿名保護
數據發布為保護個人資料,通常將ID、姓名等能標識該用戶的顯性屬性字段進行了刪除和加密,但惡意數據獲取者往往可根據已發布數據中的相關知識背景,如專業、年級、籍貫等其他數據庫中取得的數據進行鏈接,從而可推導出隱私數據,尤其是一些特殊的數據,如青海、軟件、19級,這三個字段數據在數據庫表中均非關鍵字屬性,但由于某些取值的獨特性,如籍貫青海生源的學生如果人數較少,那么在非顯性屬性字段的情況下,仍能造成隱私的泄露。
1.2? 對原始數據進行擾亂
分布式系統中數據發布時,其標示符字段會被刪除,但通過記錄關聯技術,將準標示字段與知識背景匹配后,則可推理出用戶身份,從而獲得用戶隱私數據。在目前已有算法中,已驗證可保持結果的統計特性,但是該方法通常會破壞掉數據的完整性和真實性,導致需進一步對其中的數據丟失度與可用性進行分析,在實際應用中很難達到數據可用與隱私保護兩者之間的平衡。
1.3? 安全多方計算
安全多方計算采用密碼學技術來解決用戶的隱私問題,在無可信第三方的情況下,要求多個參與方共同但獨立的計算一個目標函數。該過程需構造多方安全協議,算法難度大。并且需要嚴格要求每一方僅獲取自己的計算結果,其他方的輸入數據在整個過程中不能交互。該方法會消耗過多的計算資源,實現難度大,實際應用較少。
2? 基于匿名發布的聚類算法
為解決上述3種方法的不足,近期提出了一些基于匿名發布的聚類算法,如K-means(K-均值算法)、DK-means(分布式均值聚類)、PPDK-means(安全多方計算均值聚類)等,這些算法主要基于集中式數據庫進行設計,主要通過一個橫向劃分表來實現分布式數據的隱私保護[2]。
其中K-means算法是一種較為經典的基于距離的聚類算法,k代表要分的組數,可由用戶預先給定。組之間數據的通過組內元素的相似性劃分,采用距離作為相似性的評價指標,即認為某一個數據距離核中心對象的距離越大,其數據獨特性就越強,由該值暴露整體數據的可能性就越大。該距離可根據實際要求,選用歐幾里得距離、明科夫斯基距離和余弦距離等。K-means算法核心思想是各聚類本身盡可能地緊湊,而各聚類之間盡可能地分開,通過迭代尋找k個類簇的一種劃分方案,使得用這k個類簇的均值來代表相應各類樣本時所得的總體誤差最小,其求解過程非常直觀簡單[3]。具體實現步驟如下:
1)創建一初始模糊偽劃分k個點。
2)利用模糊偽劃分,計算每個簇的質心。
3)對全局數據集中的每一個數據點,計算質心與數據點的距離,將數據點分配到距離最近的簇分組。
4)對每一個簇,計算簇中所有點的均值,并將均值作為新的質心。
5)重復以上2)~4)步驟,直到簇的質心不再改變。
K-means按照如上步驟將相同一類的數據聚集后,在組內聚集的基礎上,按照所屬類型發布,即可有效減少數據的隱私度。本文在上述算法的基礎上,提出了一種用遺傳算法來提高K-maens數據發布計算效率的GDK-means方法。在具體實現時,針對已有大學生信息數據的垂直劃分數據庫,在K-means算法的基礎上,加入遺傳算法來修改聚類中心,采用歐幾里得距離確定系列數據的K個劃分,使得各數據之間的差異最小,且各簇集之間數據差異明顯,減少相互之間的關聯。在大數據體量下,該算法具有一定的可伸縮性和高效性,并且計算復雜度僅為O(t)數量級,具體為O(NKt),其中N為數據表中數據項個數,t為迭代次數[4]。
3? GDK-means算法與模型建立
GDK-means為一個使用遺傳算法來實現K步聚類分類的過程,它通過遺傳算法中的過程來對節點數據進行選取,以生成一個隱藏用戶標識數據的發布數據庫。選擇出最合適的隱私保護技術,可以有效地衡量和評價對隱私信息的保護程度,可對資助學生信息表中,按數據特征和應用需求來使用。一般按照以下條件對數據進行選擇:簇內數據的相異度最小,達到聚類的目標函數;所選數據帶來的信息丟失量是最小[4]。
3.1? 數據標準化
令P為當前分布式數據庫中節點個數,使用聚類方法將數據點到原型的聚類Dij作為優化的目標函數,利用函數拘束極值的方法對迭代運算調整規則,即使用聚類方法將節點劃分為clt1,clt2,…,cltm等m個互不相交的簇[5]。
3.2? 衡量信息敏感度
從信息理論的角度來看,自信息是用來衡量單個事件所含的信息量,即事件發生的概率與事件中包含的信息量先關,同步變化[6]。因此,學生資助信息發布數據中,每個敏感屬性上某個特定值出現的頻率越低,就意味著該值獨特性越強,會因此泄露出更多的信息,如上述舉例中的生源籍貫地,該取值在某些時候具有特殊獨一性的情況。那么對該屬性字段的敏感度賦值就應該越高。因此,可引入自信息概念,來度量敏感屬性中不同敏感值的敏感度。
其中,設數據表T中,各屬性字段敏感值的敏感度s的取值,設其在自信息上發生的概率記為Pr[s],則其敏感度定義為:
3.3? 衡量信息丟失量
可以用被保護的隱私信息仍然被發現或者預測出來的可能性來衡量[7]。信息丟失量Breach = P真實數據所占的比例×P真實數據被識別出來的概率 + P非真實數據所占的比例×P非真實數據被識別出來的概率×P非真實數據被還原的概率。
設學生數據隱私破壞區間寬度BreachWidth,如果原始數據x落到區間[x1,x2]上的概率為c%,則稱區間[x1,x2]是置信度為c%的隱私破壞區間,而該區間的寬度(x2?x1)就定義了置信度為c%的隱私破壞區間寬度,該值需小于等于k。
3.4? 生成簇集合
基于以上的隱私保護模型以及衡量信息丟失量的方法,提出以下基于K-means隱私保護基礎上的GDK-means生成簇方法。借助MATLAB中的F_JIR.m庫,使該算法一次生成一個簇,并向簇中添加數據,當前簇中節點度達到k時,在產生新的簇來表達數據,直至無新的數據加入。
具體過程描述如下:
輸入:局部數據集{DB1,DB2,…,DBP},聚簇個數k。
輸出:k個聚簇。
Step1? 以隨機值初始化找到一個原始個體Si;
Step2? 以Si為初始種群Q(1)主站點,隨機產生k個初始聚簇中心
Step3? While(未達到聚類目標函數E)
{對每一個節點Si,(i∈1,p)
Receive({C1,C2,…,Ck});/*接收簇中心*/
利用遺傳算法中的目標函數方法計算得到個體的適應值;
對于局部數據集DBi計算到所有全局聚簇中心的距離;}
Step4? while(數據項! = null)
{取出運行得到的數據集中的某個字段;
取出查詢數據集中需要字段的值;
按選擇策略和個體適應值大小從Q(n)中選擇下一代再生個體;
設定交叉概率值q1和變異概率q2,對本代中的再生個體進行遺傳交叉、數據變異等操作,生成最新一代的族群Q(n + 1);
重新按照目標函數來計算新一代族群Q (n + 1)中的個體適應值;}
Step5 用最接近目標適應值即數據最近原則確定當前Si所屬聚簇;
Step6收集各站點所有的局部聚類信息后,修改新的目標聚類函數E;
Step7 直至目標函數E穩定,或達到一定的迭代次數,算法結束。
4? 模擬實驗
為了驗證本文提出的算法的性能,使用資助學生的現有數據,并將其納入模型進行模擬實驗。實驗所用計算機CPU為Intel core i7,8 GB內存,64位Windows 10操作系統,軟件借助MATLAB。在實驗中,實驗數據集信息如表1所示。原始數據Student1、Student2、Student3、Student4是往年資助數據集,在這三組基礎數據上,采用數據標準化,組合后得到數據樣本集DataSet_1- DataSet_4。其中,DataSet_1服從均勻分布,聚類之間的劃分清晰;數據樣本集DataSet_2服從高斯分布并包含噪聲數據點;數據樣本集DataSet_3根據歐氏距離排序,三個聚類之間存在部分重疊;數據樣本集DataSet_4服從高斯分布,五個簇之間存在綁定現象;最后四項是添加一些噪聲后的數據集。
實驗中隨機從數據庫中抽取500條記錄,分別采用DK-means算法與文中所提出的GDK-means進行數據丟失量與執行效率的比較,其結果如圖1和圖2所示,明顯可見采用GDK-means算法分析后的數據丟失量更小,執行時間更小,具有更好的效率。
通過實驗,可以看出:
1)圖1中,信息丟失量隨著k的增加而變大。
2)確定的k個劃分平均方差最小,對大的數據集比較高效。
3)聚類的運算時間有所降低,時間復雜度為O(Nkt)。
4)用戶可以根據自己的隱私保護需求來設定迭代次數和改變k的值,來定義可承受的數據丟失量。
5? 結? 論
本文針對貧困學生數據發布中信息披露與隱私保護之間的矛盾,提出了一種基于GDK means的隱私保護方法。在該算法下,對學生信息數據庫中的數據進行劃分,對其中的敏感字段進行聚類分析,并量化了這一過程中的數據丟失量,同時有利于在實現隱私保護的同時,提高數據統計的有效性。敏感數據可以在K-means聚類的基礎上在集群內進行泛化,從而對發布的數據進行去隱私,從而達到用戶隱私保護的目的。通過理論分析和實驗,驗證了GDK-means算法在保證數據可用性的前提下,可以在數據發布中實現更好的隱私保護,運行過程對數據來說公平而高效,為安全有效的發布學生隱私信息數據提供了可行的解決方案。
參考文獻:
[1] 宋海娜.數據收集與發布中的分級隱私保護關鍵技術研究 [D].北京:北京郵電大學,2021.
[2] 葉青.隱私保護輕度量化度量技術研究 [D].南京:東南大學,2019.
[3] 嚴加展,陳華,李陽.改進的模糊C-均值聚類有效性指標 [J].計算機工程與應用,2020,56(9):156-161.
[4] 張可鏵,成衛青.基于空間動態劃分的差分隱私聚類算法 [J].計算機工程與應用,2021,57(2):97-103.
[5] 劉越.K-means聚類算法的改進 [D].桂林:廣西師范大學,2016.
[6] 王延軍.基于模糊聚類分析的教學評估 [J].甘肅高師學報,2022,27(5):34-36.
[7] 王海燕,崔文超,許佩迪,等.Canopy在劃分聚類算法中對K選取的優化 [J].吉林大學學報:理學版,2020,58(3):634-638.
作者簡介:劉曉娜(1980—),女,漢族,甘肅慶陽人,講師,碩士,研究方向:軟件理論、隱私保護。
收稿日期:2023-01-28
基金項目:甘肅省高等學校創新基金項目(2020B-256)