劉曉娜 王愷 王成德 徐彥強(qiáng)
摘? 要:高校在對(duì)貧困生的資助過(guò)程中,為保證公開(kāi)、公平,會(huì)獲取相關(guān)學(xué)生很多關(guān)鍵性隱私數(shù)據(jù),如貧困原因、生源所在地、家庭收入、家庭成員、在校消費(fèi)等敏感隱私數(shù)據(jù)。同時(shí)資助的結(jié)果又要求必須公開(kāi)以保證管理過(guò)程的公正性。針對(duì)高校對(duì)貧困生數(shù)據(jù)發(fā)布中的公開(kāi)與隱私保護(hù)之間的矛盾,提出了一種基于GDK-means的隱私保護(hù)方法。在該算法下,在K-means聚類的基礎(chǔ)上,對(duì)生成的簇進(jìn)行簇內(nèi)泛化,來(lái)對(duì)發(fā)布的敏感數(shù)據(jù)進(jìn)行去隱私化處理,以達(dá)到用戶隱私保護(hù)的目的,同時(shí)量化了處理所帶來(lái)的信息丟失度。經(jīng)理論分析和實(shí)驗(yàn),驗(yàn)證了采用GDK-means算法,在保證數(shù)據(jù)可用性的前提下,可實(shí)現(xiàn)數(shù)據(jù)發(fā)布中較好的隱私保護(hù)性。
關(guān)鍵詞:貧困生資助;分布式聚類;隱私保護(hù);K-means算法
中圖分類號(hào):TP311.13;G647? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):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? 引? 言
高校在對(duì)生活困難學(xué)生認(rèn)定時(shí),主要標(biāo)準(zhǔn)就是家庭條件困難和在校期間生活簡(jiǎn)樸。其中評(píng)定時(shí)需要收集學(xué)生在校日常消費(fèi)數(shù)據(jù),以及影響家庭經(jīng)濟(jì)狀況的有關(guān)因素開(kāi)展認(rèn)定工作,如家庭收入、家庭負(fù)擔(dān)、特殊群體、生源地、突發(fā)狀況、學(xué)生食堂和教育超市消費(fèi)等數(shù)據(jù),以供對(duì)學(xué)生進(jìn)行資助和相關(guān)等級(jí)認(rèn)定,并在完成評(píng)定后需要對(duì)學(xué)生的部分信息進(jìn)行公示,才能保證整個(gè)評(píng)定過(guò)程公平、可靠。但是,這些原始數(shù)據(jù)中通常包含很多的個(gè)人隱私信息,如果不經(jīng)過(guò)任何處理就直接發(fā)布,勢(shì)必會(huì)造成嚴(yán)重的隱私泄露,從而導(dǎo)致困難身份披露和屬性披露,使得善意的助學(xué)行為變成對(duì)困難學(xué)生的心理傷害,甚至?xí)档筒糠掷щy學(xué)生的參與度,從而降低了資助的善意效力。而且,保證數(shù)據(jù)的私密性和保證數(shù)據(jù)的效用又是相互矛盾的。采用傳統(tǒng)的數(shù)據(jù)匿名、擾亂、添加噪聲等,均不能很好地解決這方面的問(wèn)題。因此,如何在數(shù)據(jù)發(fā)布中保證個(gè)人敏感信息不被泄露,避免各種隱私攻擊,同時(shí)保證發(fā)布數(shù)據(jù)具有較高效用是當(dāng)前面臨的一個(gè)重大挑戰(zhàn)[1]。同時(shí),由于隱私數(shù)據(jù)的特殊性,數(shù)據(jù)庫(kù)表中各個(gè)字段的不同數(shù)據(jù),需要具有完全不同的隱私敏感度,在發(fā)布過(guò)程中對(duì)這部分?jǐn)?shù)據(jù)的隱私保護(hù)需求也各不相同,即數(shù)據(jù)的敏感度與數(shù)據(jù)組自身的獨(dú)特性也有關(guān)系?,F(xiàn)有數(shù)據(jù)收集和發(fā)布中的隱私保護(hù)方案,大多數(shù)未充分考慮需要對(duì)隱私數(shù)據(jù)進(jìn)行垂直分級(jí),即個(gè)性化隱私需求的情況。另一方面,極端相反的過(guò)度保護(hù)現(xiàn)象,也可造成可用數(shù)據(jù)的丟失,從而使得資助的評(píng)定過(guò)程失去了部分原始數(shù)據(jù)的支撐,降低了公平性?;陔[私數(shù)據(jù)發(fā)布過(guò)程的保護(hù),就是要從學(xué)生數(shù)據(jù)的個(gè)體角度出發(fā),考慮數(shù)據(jù)敏感度因素,真正實(shí)現(xiàn)個(gè)性化隱私保護(hù),同時(shí)實(shí)現(xiàn)原始數(shù)據(jù)的使用價(jià)值。基于以上原則,就要求在學(xué)生資助的整個(gè)評(píng)定、公布過(guò)程中,采用的數(shù)據(jù)發(fā)布算法,不僅要保證對(duì)學(xué)生消費(fèi)數(shù)據(jù)的充分利用,更要在保證挖掘結(jié)果和用戶數(shù)發(fā)布后,在不泄露用戶隱私的前提下,使脫敏后的數(shù)據(jù)具有可用性。
1? 隱私數(shù)據(jù)發(fā)布保護(hù)
關(guān)于信息發(fā)布的隱私保護(hù)方面的研究還處在起步階段,目前的解決技術(shù)主要有以下3種。
1.1? 匿名保護(hù)
數(shù)據(jù)發(fā)布為保護(hù)個(gè)人資料,通常將ID、姓名等能標(biāo)識(shí)該用戶的顯性屬性字段進(jìn)行了刪除和加密,但惡意數(shù)據(jù)獲取者往往可根據(jù)已發(fā)布數(shù)據(jù)中的相關(guān)知識(shí)背景,如專業(yè)、年級(jí)、籍貫等其他數(shù)據(jù)庫(kù)中取得的數(shù)據(jù)進(jìn)行鏈接,從而可推導(dǎo)出隱私數(shù)據(jù),尤其是一些特殊的數(shù)據(jù),如青海、軟件、19級(jí),這三個(gè)字段數(shù)據(jù)在數(shù)據(jù)庫(kù)表中均非關(guān)鍵字屬性,但由于某些取值的獨(dú)特性,如籍貫青海生源的學(xué)生如果人數(shù)較少,那么在非顯性屬性字段的情況下,仍能造成隱私的泄露。
1.2? 對(duì)原始數(shù)據(jù)進(jìn)行擾亂
分布式系統(tǒng)中數(shù)據(jù)發(fā)布時(shí),其標(biāo)示符字段會(huì)被刪除,但通過(guò)記錄關(guān)聯(lián)技術(shù),將準(zhǔn)標(biāo)示字段與知識(shí)背景匹配后,則可推理出用戶身份,從而獲得用戶隱私數(shù)據(jù)。在目前已有算法中,已驗(yàn)證可保持結(jié)果的統(tǒng)計(jì)特性,但是該方法通常會(huì)破壞掉數(shù)據(jù)的完整性和真實(shí)性,導(dǎo)致需進(jìn)一步對(duì)其中的數(shù)據(jù)丟失度與可用性進(jìn)行分析,在實(shí)際應(yīng)用中很難達(dá)到數(shù)據(jù)可用與隱私保護(hù)兩者之間的平衡。
1.3? 安全多方計(jì)算
安全多方計(jì)算采用密碼學(xué)技術(shù)來(lái)解決用戶的隱私問(wèn)題,在無(wú)可信第三方的情況下,要求多個(gè)參與方共同但獨(dú)立的計(jì)算一個(gè)目標(biāo)函數(shù)。該過(guò)程需構(gòu)造多方安全協(xié)議,算法難度大。并且需要嚴(yán)格要求每一方僅獲取自己的計(jì)算結(jié)果,其他方的輸入數(shù)據(jù)在整個(gè)過(guò)程中不能交互。該方法會(huì)消耗過(guò)多的計(jì)算資源,實(shí)現(xiàn)難度大,實(shí)際應(yīng)用較少。
2? 基于匿名發(fā)布的聚類算法
為解決上述3種方法的不足,近期提出了一些基于匿名發(fā)布的聚類算法,如K-means(K-均值算法)、DK-means(分布式均值聚類)、PPDK-means(安全多方計(jì)算均值聚類)等,這些算法主要基于集中式數(shù)據(jù)庫(kù)進(jìn)行設(shè)計(jì),主要通過(guò)一個(gè)橫向劃分表來(lái)實(shí)現(xiàn)分布式數(shù)據(jù)的隱私保護(hù)[2]。
其中K-means算法是一種較為經(jīng)典的基于距離的聚類算法,k代表要分的組數(shù),可由用戶預(yù)先給定。組之間數(shù)據(jù)的通過(guò)組內(nèi)元素的相似性劃分,采用距離作為相似性的評(píng)價(jià)指標(biāo),即認(rèn)為某一個(gè)數(shù)據(jù)距離核中心對(duì)象的距離越大,其數(shù)據(jù)獨(dú)特性就越強(qiáng),由該值暴露整體數(shù)據(jù)的可能性就越大。該距離可根據(jù)實(shí)際要求,選用歐幾里得距離、明科夫斯基距離和余弦距離等。K-means算法核心思想是各聚類本身盡可能地緊湊,而各聚類之間盡可能地分開(kāi),通過(guò)迭代尋找k個(gè)類簇的一種劃分方案,使得用這k個(gè)類簇的均值來(lái)代表相應(yīng)各類樣本時(shí)所得的總體誤差最小,其求解過(guò)程非常直觀簡(jiǎn)單[3]。具體實(shí)現(xiàn)步驟如下:
1)創(chuàng)建一初始模糊偽劃分k個(gè)點(diǎn)。
2)利用模糊偽劃分,計(jì)算每個(gè)簇的質(zhì)心。
3)對(duì)全局?jǐn)?shù)據(jù)集中的每一個(gè)數(shù)據(jù)點(diǎn),計(jì)算質(zhì)心與數(shù)據(jù)點(diǎn)的距離,將數(shù)據(jù)點(diǎn)分配到距離最近的簇分組。
4)對(duì)每一個(gè)簇,計(jì)算簇中所有點(diǎn)的均值,并將均值作為新的質(zhì)心。
5)重復(fù)以上2)~4)步驟,直到簇的質(zhì)心不再改變。
K-means按照如上步驟將相同一類的數(shù)據(jù)聚集后,在組內(nèi)聚集的基礎(chǔ)上,按照所屬類型發(fā)布,即可有效減少數(shù)據(jù)的隱私度。本文在上述算法的基礎(chǔ)上,提出了一種用遺傳算法來(lái)提高K-maens數(shù)據(jù)發(fā)布計(jì)算效率的GDK-means方法。在具體實(shí)現(xiàn)時(shí),針對(duì)已有大學(xué)生信息數(shù)據(jù)的垂直劃分?jǐn)?shù)據(jù)庫(kù),在K-means算法的基礎(chǔ)上,加入遺傳算法來(lái)修改聚類中心,采用歐幾里得距離確定系列數(shù)據(jù)的K個(gè)劃分,使得各數(shù)據(jù)之間的差異最小,且各簇集之間數(shù)據(jù)差異明顯,減少相互之間的關(guān)聯(lián)。在大數(shù)據(jù)體量下,該算法具有一定的可伸縮性和高效性,并且計(jì)算復(fù)雜度僅為O(t)數(shù)量級(jí),具體為O(NKt),其中N為數(shù)據(jù)表中數(shù)據(jù)項(xiàng)個(gè)數(shù),t為迭代次數(shù)[4]。
3? GDK-means算法與模型建立
GDK-means為一個(gè)使用遺傳算法來(lái)實(shí)現(xiàn)K步聚類分類的過(guò)程,它通過(guò)遺傳算法中的過(guò)程來(lái)對(duì)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行選取,以生成一個(gè)隱藏用戶標(biāo)識(shí)數(shù)據(jù)的發(fā)布數(shù)據(jù)庫(kù)。選擇出最合適的隱私保護(hù)技術(shù),可以有效地衡量和評(píng)價(jià)對(duì)隱私信息的保護(hù)程度,可對(duì)資助學(xué)生信息表中,按數(shù)據(jù)特征和應(yīng)用需求來(lái)使用。一般按照以下條件對(duì)數(shù)據(jù)進(jìn)行選擇:簇內(nèi)數(shù)據(jù)的相異度最小,達(dá)到聚類的目標(biāo)函數(shù);所選數(shù)據(jù)帶來(lái)的信息丟失量是最小[4]。
3.1? 數(shù)據(jù)標(biāo)準(zhǔn)化
令P為當(dāng)前分布式數(shù)據(jù)庫(kù)中節(jié)點(diǎn)個(gè)數(shù),使用聚類方法將數(shù)據(jù)點(diǎn)到原型的聚類Dij作為優(yōu)化的目標(biāo)函數(shù),利用函數(shù)拘束極值的方法對(duì)迭代運(yùn)算調(diào)整規(guī)則,即使用聚類方法將節(jié)點(diǎn)劃分為clt1,clt2,…,cltm等m個(gè)互不相交的簇[5]。
3.2? 衡量信息敏感度
從信息理論的角度來(lái)看,自信息是用來(lái)衡量單個(gè)事件所含的信息量,即事件發(fā)生的概率與事件中包含的信息量先關(guān),同步變化[6]。因此,學(xué)生資助信息發(fā)布數(shù)據(jù)中,每個(gè)敏感屬性上某個(gè)特定值出現(xiàn)的頻率越低,就意味著該值獨(dú)特性越強(qiáng),會(huì)因此泄露出更多的信息,如上述舉例中的生源籍貫地,該取值在某些時(shí)候具有特殊獨(dú)一性的情況。那么對(duì)該屬性字段的敏感度賦值就應(yīng)該越高。因此,可引入自信息概念,來(lái)度量敏感屬性中不同敏感值的敏感度。
其中,設(shè)數(shù)據(jù)表T中,各屬性字段敏感值的敏感度s的取值,設(shè)其在自信息上發(fā)生的概率記為Pr[s],則其敏感度定義為:
3.3? 衡量信息丟失量
可以用被保護(hù)的隱私信息仍然被發(fā)現(xiàn)或者預(yù)測(cè)出來(lái)的可能性來(lái)衡量[7]。信息丟失量Breach = P真實(shí)數(shù)據(jù)所占的比例×P真實(shí)數(shù)據(jù)被識(shí)別出來(lái)的概率 + P非真實(shí)數(shù)據(jù)所占的比例×P非真實(shí)數(shù)據(jù)被識(shí)別出來(lái)的概率×P非真實(shí)數(shù)據(jù)被還原的概率。
設(shè)學(xué)生數(shù)據(jù)隱私破壞區(qū)間寬度BreachWidth,如果原始數(shù)據(jù)x落到區(qū)間[x1,x2]上的概率為c%,則稱區(qū)間[x1,x2]是置信度為c%的隱私破壞區(qū)間,而該區(qū)間的寬度(x2?x1)就定義了置信度為c%的隱私破壞區(qū)間寬度,該值需小于等于k。
3.4? 生成簇集合
基于以上的隱私保護(hù)模型以及衡量信息丟失量的方法,提出以下基于K-means隱私保護(hù)基礎(chǔ)上的GDK-means生成簇方法。借助MATLAB中的F_JIR.m庫(kù),使該算法一次生成一個(gè)簇,并向簇中添加數(shù)據(jù),當(dāng)前簇中節(jié)點(diǎn)度達(dá)到k時(shí),在產(chǎn)生新的簇來(lái)表達(dá)數(shù)據(jù),直至無(wú)新的數(shù)據(jù)加入。
具體過(guò)程描述如下:
輸入:局部數(shù)據(jù)集{DB1,DB2,…,DBP},聚簇個(gè)數(shù)k。
輸出:k個(gè)聚簇。
Step1? 以隨機(jī)值初始化找到一個(gè)原始個(gè)體Si;
Step2? 以Si為初始種群Q(1)主站點(diǎn),隨機(jī)產(chǎn)生k個(gè)初始聚簇中心
Step3? While(未達(dá)到聚類目標(biāo)函數(shù)E)
{對(duì)每一個(gè)節(jié)點(diǎn)Si,(i∈1,p)
Receive({C1,C2,…,Ck});/*接收簇中心*/
利用遺傳算法中的目標(biāo)函數(shù)方法計(jì)算得到個(gè)體的適應(yīng)值;
對(duì)于局部數(shù)據(jù)集DBi計(jì)算到所有全局聚簇中心的距離;}
Step4? while(數(shù)據(jù)項(xiàng)! = null)
{取出運(yùn)行得到的數(shù)據(jù)集中的某個(gè)字段;
取出查詢數(shù)據(jù)集中需要字段的值;
按選擇策略和個(gè)體適應(yīng)值大小從Q(n)中選擇下一代再生個(gè)體;
設(shè)定交叉概率值q1和變異概率q2,對(duì)本代中的再生個(gè)體進(jìn)行遺傳交叉、數(shù)據(jù)變異等操作,生成最新一代的族群Q(n + 1);
重新按照目標(biāo)函數(shù)來(lái)計(jì)算新一代族群Q (n + 1)中的個(gè)體適應(yīng)值;}
Step5 用最接近目標(biāo)適應(yīng)值即數(shù)據(jù)最近原則確定當(dāng)前Si所屬聚簇;
Step6收集各站點(diǎn)所有的局部聚類信息后,修改新的目標(biāo)聚類函數(shù)E;
Step7 直至目標(biāo)函數(shù)E穩(wěn)定,或達(dá)到一定的迭代次數(shù),算法結(jié)束。
4? 模擬實(shí)驗(yàn)
為了驗(yàn)證本文提出的算法的性能,使用資助學(xué)生的現(xiàn)有數(shù)據(jù),并將其納入模型進(jìn)行模擬實(shí)驗(yàn)。實(shí)驗(yàn)所用計(jì)算機(jī)CPU為Intel core i7,8 GB內(nèi)存,64位Windows 10操作系統(tǒng),軟件借助MATLAB。在實(shí)驗(yàn)中,實(shí)驗(yàn)數(shù)據(jù)集信息如表1所示。原始數(shù)據(jù)Student1、Student2、Student3、Student4是往年資助數(shù)據(jù)集,在這三組基礎(chǔ)數(shù)據(jù)上,采用數(shù)據(jù)標(biāo)準(zhǔn)化,組合后得到數(shù)據(jù)樣本集DataSet_1- DataSet_4。其中,DataSet_1服從均勻分布,聚類之間的劃分清晰;數(shù)據(jù)樣本集DataSet_2服從高斯分布并包含噪聲數(shù)據(jù)點(diǎn);數(shù)據(jù)樣本集DataSet_3根據(jù)歐氏距離排序,三個(gè)聚類之間存在部分重疊;數(shù)據(jù)樣本集DataSet_4服從高斯分布,五個(gè)簇之間存在綁定現(xiàn)象;最后四項(xiàng)是添加一些噪聲后的數(shù)據(jù)集。
實(shí)驗(yàn)中隨機(jī)從數(shù)據(jù)庫(kù)中抽取500條記錄,分別采用DK-means算法與文中所提出的GDK-means進(jìn)行數(shù)據(jù)丟失量與執(zhí)行效率的比較,其結(jié)果如圖1和圖2所示,明顯可見(jiàn)采用GDK-means算法分析后的數(shù)據(jù)丟失量更小,執(zhí)行時(shí)間更小,具有更好的效率。
通過(guò)實(shí)驗(yàn),可以看出:
1)圖1中,信息丟失量隨著k的增加而變大。
2)確定的k個(gè)劃分平均方差最小,對(duì)大的數(shù)據(jù)集比較高效。
3)聚類的運(yùn)算時(shí)間有所降低,時(shí)間復(fù)雜度為O(Nkt)。
4)用戶可以根據(jù)自己的隱私保護(hù)需求來(lái)設(shè)定迭代次數(shù)和改變k的值,來(lái)定義可承受的數(shù)據(jù)丟失量。
5? 結(jié)? 論
本文針對(duì)貧困學(xué)生數(shù)據(jù)發(fā)布中信息披露與隱私保護(hù)之間的矛盾,提出了一種基于GDK means的隱私保護(hù)方法。在該算法下,對(duì)學(xué)生信息數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行劃分,對(duì)其中的敏感字段進(jìn)行聚類分析,并量化了這一過(guò)程中的數(shù)據(jù)丟失量,同時(shí)有利于在實(shí)現(xiàn)隱私保護(hù)的同時(shí),提高數(shù)據(jù)統(tǒng)計(jì)的有效性。敏感數(shù)據(jù)可以在K-means聚類的基礎(chǔ)上在集群內(nèi)進(jìn)行泛化,從而對(duì)發(fā)布的數(shù)據(jù)進(jìn)行去隱私,從而達(dá)到用戶隱私保護(hù)的目的。通過(guò)理論分析和實(shí)驗(yàn),驗(yàn)證了GDK-means算法在保證數(shù)據(jù)可用性的前提下,可以在數(shù)據(jù)發(fā)布中實(shí)現(xiàn)更好的隱私保護(hù),運(yùn)行過(guò)程對(duì)數(shù)據(jù)來(lái)說(shuō)公平而高效,為安全有效的發(fā)布學(xué)生隱私信息數(shù)據(jù)提供了可行的解決方案。
參考文獻(xiàn):
[1] 宋海娜.數(shù)據(jù)收集與發(fā)布中的分級(jí)隱私保護(hù)關(guān)鍵技術(shù)研究 [D].北京:北京郵電大學(xué),2021.
[2] 葉青.隱私保護(hù)輕度量化度量技術(shù)研究 [D].南京:東南大學(xué),2019.
[3] 嚴(yán)加展,陳華,李陽(yáng).改進(jìn)的模糊C-均值聚類有效性指標(biāo) [J].計(jì)算機(jī)工程與應(yīng)用,2020,56(9):156-161.
[4] 張可鏵,成衛(wèi)青.基于空間動(dòng)態(tài)劃分的差分隱私聚類算法 [J].計(jì)算機(jī)工程與應(yīng)用,2021,57(2):97-103.
[5] 劉越.K-means聚類算法的改進(jìn) [D].桂林:廣西師范大學(xué),2016.
[6] 王延軍.基于模糊聚類分析的教學(xué)評(píng)估 [J].甘肅高師學(xué)報(bào),2022,27(5):34-36.
[7] 王海燕,崔文超,許佩迪,等.Canopy在劃分聚類算法中對(duì)K選取的優(yōu)化 [J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2020,58(3):634-638.
作者簡(jiǎn)介:劉曉娜(1980—),女,漢族,甘肅慶陽(yáng)人,講師,碩士,研究方向:軟件理論、隱私保護(hù)。
收稿日期:2023-01-28
基金項(xiàng)目:甘肅省高等學(xué)校創(chuàng)新基金項(xiàng)目(2020B-256)