本發(fā)明屬于圖數(shù)據(jù)應(yīng)用領(lǐng)域,涉及一種基于模擬圖性質(zhì)推斷攻擊過(guò)程的防御方法。
背景技術(shù):
1、在當(dāng)今社會(huì)中,許多數(shù)據(jù)都以圖數(shù)據(jù)的形式呈現(xiàn),例如藥物化合物中的原子可以被視作圖數(shù)據(jù)中的節(jié)點(diǎn),而原子之間的化學(xué)鍵可以用圖數(shù)據(jù)中的邊來(lái)表示。再如在醫(yī)院的數(shù)據(jù)庫(kù)中,病人的身份信息和健康狀況可以視作圖數(shù)據(jù)中的節(jié)點(diǎn),而病人的醫(yī)療記錄可以看做是圖中的邊。而這些以圖結(jié)構(gòu)存儲(chǔ)的數(shù)據(jù)常常蘊(yùn)含著巨大的商業(yè)價(jià)值或者包含個(gè)人的隱私信息,一旦圖數(shù)據(jù)在應(yīng)用時(shí)部分信息或者結(jié)構(gòu)泄露,將帶來(lái)嚴(yán)重的危害。例如藥物公司開(kāi)發(fā)的藥物化合物中的部分化學(xué)鍵(圖的邊)或者結(jié)構(gòu)遭到攻擊者推斷,將對(duì)藥物公司的知識(shí)產(chǎn)權(quán)造成威脅。又例如個(gè)人的醫(yī)療記錄如果遭到攻擊者推斷,則會(huì)對(duì)個(gè)人的隱私安全造成極大的侵害。因此,對(duì)于圖數(shù)據(jù)在應(yīng)用時(shí)可能遭受到的攻擊和侵害需要引起人們的重視。
2、目前,對(duì)于圖結(jié)構(gòu)數(shù)據(jù)的應(yīng)用已經(jīng)滲透于社會(huì)的許多領(lǐng)域(如:社交網(wǎng)絡(luò),金融網(wǎng)絡(luò),醫(yī)療記錄,分子化合物的開(kāi)發(fā)等)。而目前最為常用且最為高效的處理、分析圖結(jié)構(gòu)數(shù)據(jù)的技術(shù)是圖神經(jīng)網(wǎng)絡(luò)(gnns)。圖神經(jīng)網(wǎng)絡(luò)通過(guò)深度學(xué)習(xí)技術(shù)將原始圖數(shù)據(jù)轉(zhuǎn)化為易于存儲(chǔ)、處理、分析的圖嵌入向量(graph?embedding),進(jìn)而再將這些圖嵌入向量用于下游任務(wù)的分析(如:圖分類(lèi)任務(wù)等等)。然而在利用圖神經(jīng)網(wǎng)絡(luò)處理、分析圖數(shù)據(jù)時(shí),一旦攻擊者竊取到中間過(guò)程的圖嵌入向量,攻擊者可以通過(guò)圖嵌入向量蘊(yùn)含的信息反向推斷出原始圖數(shù)據(jù)的部分性質(zhì)(如圖的節(jié)點(diǎn)數(shù)、圖的邊數(shù)、圖密度等等)。這種圖嵌入向量可能泄露給攻擊者的場(chǎng)景在實(shí)際應(yīng)用中是存在的,例如google公司提供的the?embedding?project服務(wù),用戶可以通過(guò)提供給平臺(tái)圖嵌入向量,平臺(tái)返回相應(yīng)的圖性質(zhì)給使用用戶。
3、目前基于圖嵌入向量對(duì)于相應(yīng)的原始圖數(shù)據(jù)進(jìn)行推斷攻擊的攻擊過(guò)程絕大部分需要一個(gè)輔助數(shù)據(jù)集,且要求該輔助數(shù)據(jù)集與訓(xùn)練目標(biāo)圖神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)集分布相同。雖然,這種攻擊方式由于需要高質(zhì)量且數(shù)據(jù)量大的輔助數(shù)據(jù)集導(dǎo)致實(shí)施困難,但從實(shí)際應(yīng)用角度出發(fā),這種風(fēng)險(xiǎn)依然存在,并且在面對(duì)該種攻擊手段時(shí)并沒(méi)有對(duì)應(yīng)的預(yù)防手段,因此,針對(duì)圖數(shù)據(jù)的防御方法有待研究。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明的目的在于提供一種基于模擬圖性質(zhì)推斷攻擊過(guò)程的防御方法,為了更加關(guān)注于在輔助集缺失的情況下(即更廣泛、更符合實(shí)際的場(chǎng)景)的圖性質(zhì)推斷攻擊,本發(fā)明模擬了一個(gè)基于圖嵌入的、無(wú)需額外輔助數(shù)據(jù)集的圖性質(zhì)推斷攻擊過(guò)程,并且針對(duì)此模擬過(guò)程提出了針對(duì)性的基于圖嵌入擾動(dòng)技術(shù)的防御方法,以對(duì)可能的圖性質(zhì)推斷攻擊進(jìn)行預(yù)防。
2、為達(dá)到上述目的,本發(fā)明提供如下技術(shù)方案:
3、一種基于模擬圖性質(zhì)推斷攻擊過(guò)程的防御方法,其至少包括以下步驟:
4、s1、模擬攻擊者建立一個(gè)無(wú)數(shù)據(jù)圖知識(shí)蒸餾模型框架,結(jié)合框架中的教師圖編碼器和學(xué)生圖編碼器對(duì)其內(nèi)的圖數(shù)據(jù)生成器進(jìn)行訓(xùn)練;
5、s2、通過(guò)訓(xùn)練完成的圖數(shù)據(jù)生成器生成圖數(shù)據(jù)集,并從圖數(shù)據(jù)集中得到彼此對(duì)應(yīng)的圖性質(zhì)以及圖嵌入向量集,根據(jù)彼此對(duì)應(yīng)的圖性質(zhì)以及圖嵌入向量集對(duì)圖性質(zhì)推斷攻擊網(wǎng)絡(luò)進(jìn)行訓(xùn)練;
6、s3、從攻擊者的角度竊取目標(biāo)圖嵌入向量,并將其輸入圖性質(zhì)推斷攻擊網(wǎng)絡(luò)得到目標(biāo)圖的圖性質(zhì)數(shù)據(jù);
7、s4、通過(guò)模擬圖性質(zhì)推斷攻擊過(guò)程篩選出易遭受推斷攻擊的目標(biāo)圖,并對(duì)篩選出的目標(biāo)圖進(jìn)行預(yù)防御處理。
8、進(jìn)一步,在步驟s1中,模擬攻擊者的角度建立圖數(shù)據(jù)生成器其具體包括:
9、s11、構(gòu)建一個(gè)無(wú)數(shù)據(jù)圖知識(shí)蒸餾模型框架,所述模型框架中包括教師圖編碼器學(xué)生圖編碼器以及圖數(shù)據(jù)生成器其中,教師圖編碼器為能夠直接訪問(wèn)的圖編碼器,學(xué)生圖編碼器為模擬攻擊者構(gòu)建的圖編碼器,其中,在白盒條件下構(gòu)建的學(xué)生圖編碼器與教師圖編碼器結(jié)構(gòu)相同,在黑盒條件下構(gòu)建的學(xué)生編碼器相較于教師圖編碼器的結(jié)構(gòu)更單一、參數(shù)量更??;
10、s12、采用圖數(shù)據(jù)生成器生成圖數(shù)據(jù),其包括:
11、s121、從標(biāo)準(zhǔn)正態(tài)分布中抽樣一個(gè)隨機(jī)向量將其輸入圖數(shù)據(jù)生成器得到一個(gè)用矩陣表示的圖數(shù)據(jù)其中n表示該圖中的節(jié)點(diǎn)數(shù)量,h表示節(jié)點(diǎn)的特征向量維度;
12、s122、計(jì)算圖的鄰接矩陣:a=σ(mmt),其中,σ(·)為logistic?sigmoid函數(shù);
13、s123、從攻擊者的角度設(shè)定閾值τ,將鄰接矩陣a中的每個(gè)數(shù)值由[0,1]轉(zhuǎn)化為{0,1},表示為:其中,aij表示鄰接矩陣a中的值;
14、s13、訓(xùn)練圖數(shù)據(jù)生成器從標(biāo)準(zhǔn)正態(tài)分布中不斷抽樣得到若干隨機(jī)向量,將若干隨機(jī)向量集合輸入圖數(shù)據(jù)生成器得到圖數(shù)據(jù)集,將圖數(shù)據(jù)集分別輸入教師圖編碼器學(xué)生圖編碼器通過(guò)教師圖編碼器以及學(xué)生圖編碼器的輸出差異對(duì)圖數(shù)據(jù)生成器和學(xué)生圖編碼器進(jìn)行訓(xùn)練。
15、進(jìn)一步,在步驟s13中,采用min-max的對(duì)抗訓(xùn)練方式對(duì)學(xué)生圖編碼器和圖數(shù)據(jù)生成器進(jìn)行訓(xùn)練,其表示為:
16、
17、其中,表示衡量和輸出差異的知識(shí)蒸餾常用的損失函數(shù)kl,kl散度表示為d(p||q),其代表當(dāng)用概率分布q來(lái)擬合真實(shí)分布p時(shí)產(chǎn)生的信息損失:
18、
19、其中,p和q分別代表兩個(gè)概率分布,x代表概率分布中的事件,kl散度的值越小,表示兩個(gè)概率分布越相似;值越大,表示兩個(gè)概率分布越不相似;
20、在對(duì)抗訓(xùn)練過(guò)程中運(yùn)用反向傳播算法進(jìn)行信息傳播,在黑盒和白盒條件下反向傳播的路徑不同,黑盒條件下,反向傳播的梯度流通過(guò)學(xué)生圖編碼器白盒條件下,反向傳播的梯度流通過(guò)教師圖編碼器
21、進(jìn)一步,在步驟s2中,從攻擊者的角度出發(fā),實(shí)施以下步驟:
22、s21、利用訓(xùn)練完成的圖數(shù)據(jù)生成器生成一個(gè)圖數(shù)據(jù)集將該圖數(shù)據(jù)集中的每個(gè)圖數(shù)據(jù)輸入圖性質(zhì)提取模塊統(tǒng)計(jì)計(jì)算得到相應(yīng)的圖性質(zhì):圖的節(jié)點(diǎn)數(shù)量圖的邊數(shù)量圖密度
23、s22、通過(guò)圖數(shù)據(jù)生成器生成的圖數(shù)據(jù)集輸入教師圖編碼器輸出得到圖嵌入向量集將相應(yīng)的圖嵌入向量與提取得到的圖性質(zhì)進(jìn)行配對(duì),得到訓(xùn)練數(shù)據(jù)集:
24、s23、將得到的訓(xùn)練數(shù)據(jù)集輸入gpi-net訓(xùn)練模塊,通過(guò)監(jiān)督學(xué)習(xí)的訓(xùn)練方式,訓(xùn)練得到圖性質(zhì)推斷攻擊網(wǎng)絡(luò)gpi-net
25、進(jìn)一步,在步驟s3中,模擬攻擊者竊取目標(biāo)圖的嵌入向量,將竊取所得的目標(biāo)圖嵌入向量etarget輸入訓(xùn)練完成的圖性質(zhì)推斷攻擊網(wǎng)絡(luò)gpi-net中,推斷出原始相應(yīng)圖數(shù)據(jù)的圖性質(zhì):圖的節(jié)點(diǎn)數(shù)量圖的邊數(shù)量圖密度
26、進(jìn)一步,在步驟s4中,根據(jù)實(shí)際提取的圖的節(jié)點(diǎn)數(shù)量圖的邊數(shù)量圖密度和模擬攻擊獲取的:圖的節(jié)點(diǎn)數(shù)量圖的邊數(shù)量圖密度篩選出容易遭受推斷攻擊的目標(biāo)圖,從防御者的角度對(duì)篩選出的容易被推斷攻擊的目標(biāo)圖進(jìn)行預(yù)防御,其中,預(yù)防御手段為:在使用圖應(yīng)用過(guò)程中產(chǎn)生的圖嵌入etarget時(shí),采用圖嵌入向量擾動(dòng)技術(shù)對(duì)圖嵌入向量進(jìn)行處理。
27、進(jìn)一步,在步驟s4中,圖嵌入向量擾動(dòng)技術(shù)至少包括:向量通道值保留法:將一個(gè)圖嵌入向量中的各個(gè)通道值排序ei=(a1,a2,…,an-1,an),其中a1>a2>…>an-1>an,按照此順序保留前序預(yù)設(shè)比例的通道值,其余通道值置為零;向量通道值精度調(diào)整法:將一個(gè)圖嵌入向量中的各個(gè)通道值精度調(diào)整;添加噪聲擾動(dòng)法:將一個(gè)圖嵌入向量ei=(a1,a2,…,an-1,an)中加入高斯噪聲。
28、本發(fā)明的有益效果在于:
29、本發(fā)明通過(guò)模擬攻擊者的推斷攻擊過(guò)程,通過(guò)無(wú)數(shù)據(jù)-圖知識(shí)蒸餾模型框架的訓(xùn)練,圖數(shù)據(jù)生成器能夠生成多樣化的圖數(shù)據(jù),有助于提升后續(xù)圖性質(zhì)推斷攻擊模型的泛化能力,使其更加適應(yīng)實(shí)際應(yīng)用場(chǎng)景,能夠提前預(yù)測(cè)潛在的攻擊風(fēng)險(xiǎn)。
30、本發(fā)明針對(duì)預(yù)測(cè)的潛在推斷攻擊風(fēng)險(xiǎn)提出圖嵌入擾動(dòng)技術(shù)(ge-t、ge-r、ge-n),其能夠有效改變圖嵌入向量的特征,使得攻擊者難以通過(guò)反向推斷獲取準(zhǔn)確的原始圖數(shù)據(jù)性質(zhì),從而降低推斷攻擊的成功率,顯著提高對(duì)圖嵌入向量泄露的防御能力。
31、本發(fā)明的其他優(yōu)點(diǎn)、目標(biāo)和特征在某種程度上將在隨后的說(shuō)明書(shū)中進(jìn)行闡述,并且在某種程度上,基于對(duì)下文的考察研究對(duì)本領(lǐng)域技術(shù)人員而言將是顯而易見(jiàn)的,或者可以從本發(fā)明的實(shí)踐中得到教導(dǎo)。本發(fā)明的目標(biāo)和其他優(yōu)點(diǎn)可以通過(guò)下面的說(shuō)明書(shū)來(lái)實(shí)現(xiàn)和獲得。