吳翼騰 劉 偉 于洪濤* 操曉春
①(信息工程大學(xué) 鄭州 450002)
②(中國科學(xué)院信息工程研究所信息安全國家重點(diǎn)實(shí)驗(yàn)室 北京 100093)
圖結(jié)構(gòu)數(shù)據(jù)和節(jié)點(diǎn)的語義屬性數(shù)據(jù)有效結(jié)合,可以自然而完整地表達(dá)現(xiàn)實(shí)數(shù)據(jù)。類似于圖數(shù)據(jù)庫區(qū)別于傳統(tǒng)關(guān)系型數(shù)據(jù)庫,在存儲個體信息的同時,還有效建立了個體之間的聯(lián)系。圖神經(jīng)網(wǎng)絡(luò)也區(qū)別于經(jīng)典深度學(xué)習(xí)模型和傳統(tǒng)復(fù)雜網(wǎng)絡(luò)模型,它的主要特色是可以對語義屬性數(shù)據(jù)和圖數(shù)據(jù)統(tǒng)一表達(dá)建模,解決了傳統(tǒng)研究中語義屬性數(shù)據(jù)和圖數(shù)據(jù)割裂的問題。圖神經(jīng)網(wǎng)絡(luò)不僅在鏈路預(yù)測、節(jié)點(diǎn)分類等復(fù)雜網(wǎng)絡(luò)任務(wù),還在語義解析、視覺問答等自然語言處理任務(wù)和計(jì)算機(jī)視覺任務(wù)中展現(xiàn)了令人信服的性能[1,2],是一類極具競爭力的深度學(xué)習(xí)模型[3]。
最新研究表明備受關(guān)注的圖神經(jīng)網(wǎng)絡(luò)容易受到對抗攻擊安全威脅[4]。2018年Zügner等人[5]首次提出圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network, GNN)的對抗攻擊。圖神經(jīng)網(wǎng)絡(luò)的對抗攻擊研究逐漸活躍于Conference and Workshop on Neural Information Processing Systems[6], International World Wide Web Conference[7], International Conference on Machine Learning[8]等頂級學(xué)術(shù)會議。
本文認(rèn)為,與對抗攻擊直接關(guān)聯(lián)的研究應(yīng)該始于20世紀(jì)70年代的統(tǒng)計(jì)診斷[9–11]。統(tǒng)計(jì)診斷系統(tǒng)研究了實(shí)際數(shù)據(jù)與既定模型之間的偏離,用于分析輸入數(shù)據(jù)擾動對統(tǒng)計(jì)推斷的影響[12]。對抗攻擊指有目的地對輸入數(shù)據(jù)施加微小擾動,使模型輸出錯誤的預(yù)測結(jié)果[13,14]。可見,對抗攻擊和統(tǒng)計(jì)診斷的理論本質(zhì)相同,同屬于模型安全問題的攻防兩方面研究。
然而現(xiàn)有研究未注意到對抗攻擊與統(tǒng)計(jì)診斷之間的聯(lián)系,得出與統(tǒng)計(jì)診斷經(jīng)典成果相似或相同的研究結(jié)論。例如圖神經(jīng)網(wǎng)絡(luò)對抗攻擊的經(jīng)典文獻(xiàn)[15],根據(jù)攻擊方法,作者從實(shí)驗(yàn)中得出有效攻擊的原因是擾動后的數(shù)據(jù)誘導(dǎo)圖神經(jīng)網(wǎng)絡(luò)訓(xùn)練出不良參數(shù)的結(jié)論。文獻(xiàn)[16]系統(tǒng)研究了圖神經(jīng)網(wǎng)絡(luò)對抗攻擊的參數(shù)差異假設(shè),認(rèn)為擾動前后圖神經(jīng)網(wǎng)絡(luò)的訓(xùn)練參數(shù)差異是形成有效攻擊的重要因素之一。這些針對對抗攻擊的研究結(jié)論與統(tǒng)計(jì)診斷中局部影響分析模型的基本假設(shè)一致。
局部影響分析是統(tǒng)計(jì)診斷最著名的研究成果之一,是Cook首先提出的一種很一般的統(tǒng)計(jì)診斷方法,適用于各種統(tǒng)計(jì)模型[11,12]。局部影響分析的基本假設(shè)是:對于異常點(diǎn)或強(qiáng)影響點(diǎn),輸入數(shù)據(jù)的微小擾動會對模型訓(xùn)練參數(shù)帶來較大影響[17]。鑒于文獻(xiàn)[15]“攻擊后的圖神經(jīng)網(wǎng)絡(luò)得到的訓(xùn)練參數(shù)較差”的實(shí)證研究結(jié)論、文獻(xiàn)[16]提出的“參數(shù)差異是實(shí)施有效攻擊的重要機(jī)理”,與局部影響分析模型的基本假設(shè)相吻合,本文考慮將局部影響分析模型引入圖神經(jīng)網(wǎng)絡(luò)對抗攻擊。與統(tǒng)計(jì)診斷的研究目標(biāo)相反,選擇擾動影響大的數(shù)據(jù)點(diǎn)實(shí)施攻擊,使得重訓(xùn)練的圖神經(jīng)網(wǎng)絡(luò)模型輸出錯誤預(yù)測結(jié)果。
圖神經(jīng)網(wǎng)絡(luò)對抗攻擊領(lǐng)域引入局部影響分析有以下難點(diǎn):一是需針對圖神經(jīng)網(wǎng)絡(luò)場景重新推導(dǎo)擾動篩選公式;二是直接使用局部影響分析模型的主對角元法[12]實(shí)施擾動篩選計(jì)算量大,需對公式進(jìn)一步簡化,并采用更加有效的擾動篩選算法。本文的主要工作如下:
(1) 將統(tǒng)計(jì)診斷的局部影響分析模型引入圖神經(jīng)網(wǎng)絡(luò)對抗攻擊。針對目標(biāo)圖神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu),推導(dǎo)出局部影響分析模型中參數(shù)差異度量公式。為降低主對角元法的時間和空間復(fù)雜度,得出基于攻擊梯度的擾動篩選近似公式。
(2) 引入文獻(xiàn)[18]中圖神經(jīng)網(wǎng)絡(luò)對抗攻擊行之有效的投影梯度下降 (Projected Gradient Descent,PGD)算法更新擾動。并通過實(shí)驗(yàn)驗(yàn)證了所提攻擊方法的有效性,進(jìn)一步說明了局部影響分析模型的合理性。
本文研究非指定目標(biāo)、數(shù)據(jù)投毒攻擊,并基于增刪連邊的擾動策略建立局部影響分析模型。非指定目標(biāo)攻擊不指定具體的1個或幾個攻擊目標(biāo),需要使測試集的準(zhǔn)確率整體下降;投毒攻擊指允許圖卷積網(wǎng)絡(luò)對污染的訓(xùn)練數(shù)據(jù)重新訓(xùn)練,重訓(xùn)練的圖卷積網(wǎng)絡(luò)在測試集的準(zhǔn)確率仍然下降。文獻(xiàn)[15, 18]建立了圖神經(jīng)網(wǎng)絡(luò)非指定目標(biāo)投毒攻擊模型。投毒攻擊通常分為對抗訓(xùn)練和投毒攻擊兩個過程。在對抗訓(xùn)練階段,圖神經(jīng)網(wǎng)絡(luò)基于當(dāng)前擾動數(shù)據(jù)進(jìn)行正向訓(xùn)練。在投毒攻擊階段,圖神經(jīng)網(wǎng)絡(luò)基于訓(xùn)練好的模型實(shí)施攻擊,因此投毒攻擊屬于雙層優(yōu)化問題。
本節(jié)建立圖神經(jīng)網(wǎng)絡(luò)對抗攻擊的局部影響分析模型。首先推導(dǎo)出局部影響分析模型的擾動篩選公式;然后根據(jù)擾動篩選公式的物理意義和表達(dá)形式對其簡化;最后從文獻(xiàn)[18]中引入投影梯度下降算法實(shí)施擾動篩選。
局部影響分析模型的主要思想是,訓(xùn)練數(shù)據(jù)擾動后損失函數(shù)會發(fā)生改變,通過比較擾動前后損失函數(shù)之間的差異進(jìn)行擾動篩選。通過研究文獻(xiàn)[11, 12, 22]可以得出結(jié)論,局部影響分析模型的核心是將模型參數(shù)視作擾動的函數(shù),而不是將參數(shù)視為與擾動無關(guān)的、獨(dú)立于擾動之外的變量。這將應(yīng)用于損失距離的推導(dǎo),是實(shí)施有效攻擊的關(guān)鍵。
首先定義損失距離,用以衡量擾動后與擾動前損失函數(shù)的變化量。
定義 (損失距離)
設(shè)圖神經(jīng)網(wǎng)絡(luò)式(1)采用梯度下降法訓(xùn)練
定理表明,原本需要對鄰接矩陣A的N×N個元素逐一擾動得到A?,對N×N次擾動使用式(5)重新訓(xùn)練圖神經(jīng)網(wǎng)絡(luò)式(1),并根據(jù)式(4)計(jì)算損失距離LD?,F(xiàn)不需要對圖神經(jīng)網(wǎng)絡(luò)重訓(xùn)練,而只需針對N×N個擾動計(jì)算N×N次矩陣乘法如式(7)。由于擾動類型為增刪連邊,根據(jù)式(8),向量vec(D)第i個元素為1或者–1,其他元素均為0而沒有擾動。損失距離的2階近似式(7)L DII(A?)反映了第i個分量擾動對于損失函數(shù)的影響,其值越大擾動影響也越大。因此可選擇擾動影響較大的擾動點(diǎn)實(shí)施攻擊。
對于 LDII(A?)的 計(jì)算,容易看出,若v ec(D)的第i個元素非零,其他元素為零,則L DII(A?)的值等于影響矩陣F的第i個主對角元素。因此可直接取出影響矩陣F的主對角元素進(jìn)行擾動篩選。即局部影響分析模型中擾動篩選的經(jīng)典方法,主對角元法[12]。
根據(jù)3.1節(jié)分析,基于局部影響分析的對抗攻擊方法主要關(guān)心影響矩陣F的主對角元素,而與其他元素?zé)o關(guān)。若能直接計(jì)算F的主對角元素而忽略其他元素,將會使時間和空間復(fù)雜度進(jìn)一步降低為原來的1/N。
分析式(9)影響矩陣F的物理意義。由于F=G?2W L(W0)GT, 而G表示參數(shù)W*(A?)對 vec(A?)各個元素的偏導(dǎo)數(shù),刻畫了v ec(A?)各個元素擾動對參數(shù)矩陣W*(A?)的影響。而F的第i個主對角元則表示 vec(A?) 第 i個元素擾動對參數(shù)W*(A?)各元素影響的加權(quán)和,加權(quán)矩陣為?2W L(W0)。
基于以上分析,局部影響分析的主要方法是計(jì)算參數(shù)對各個元素擾動的偏導(dǎo)數(shù)并進(jìn)行擾動篩選??紤]將式(9)的主對角元法簡化,直接根據(jù)F的物理意義定義參數(shù)矩陣W*(A?)的范數(shù)d如式(11)所示,并計(jì)算d對A?的各個元素的偏導(dǎo)數(shù),得到攻擊梯度矩陣
根據(jù)3.1節(jié)和3.2節(jié)的結(jié)論,基于局部影響分析的圖神經(jīng)網(wǎng)絡(luò)對抗攻擊模型可以表述為如下約束優(yōu)化問題
(2) 采用解決簡單連續(xù)約束優(yōu)化問題的投影梯度下降算法,先進(jìn)行通常的梯度下降,再對更新的連續(xù)取值的A?′矩陣作投影,以保證擾動總量滿足1Tvec(A?′-A)≤δ的約束條件。
(3) 最后將擾動后連續(xù)取值的A?′還 原為{0,1}取值的鄰接矩陣A?。
根據(jù)以上分析,本文提出的基于局部影響分析模型的圖神經(jīng)網(wǎng)絡(luò)對抗攻擊算法如表1所示。
表1 基于局部影響分析模型的圖神經(jīng)網(wǎng)絡(luò)對抗攻擊算法
分析表中的實(shí)驗(yàn)數(shù)據(jù),可以得出以下結(jié)論:
(1) 采用隨機(jī)增刪連邊的方式Random無法實(shí)現(xiàn)有效的投毒攻擊。有效的投毒攻擊需要針對模型結(jié)構(gòu)或訓(xùn)練方法設(shè)計(jì)加擾方式。
(2) 雖然k = 1時圖神經(jīng)網(wǎng)絡(luò)SGC未受擾動時的模型預(yù)測準(zhǔn)確率相比k = 2時低,但是模型的魯棒性更高,在同樣的擾動比例下k = 2時更易受到對抗攻擊威脅。原因可以從SGC模型公式(1)中分析得出:k = 2時,由于需要計(jì)算矩陣L?的平方,相當(dāng)于將擾動影響進(jìn)一步放大,模型更加脆弱。
(3) 經(jīng)典攻擊方法Mettack相比Min-max有更好的攻擊效果。原因主要是Mettack采用的攻擊梯度求解思想與本文基于局部影響分析模型的攻擊梯度求解思想類似,將參數(shù)視為擾動的函數(shù)而非獨(dú)立變量,Min-max在每輪攻擊中將參數(shù)視為固定常數(shù)。將參數(shù)視為擾動的函數(shù)這一觀點(diǎn)早已在統(tǒng)計(jì)診斷中發(fā)展并實(shí)踐,這也是本文將對抗攻擊研究溯源至統(tǒng)計(jì)診斷的原因之一。
(4) 基于局部影響分析模型的攻擊方法能有效提高攻擊性能。當(dāng)k = 1時攻擊效果相比經(jīng)典方法有1%左右的提升;k = 2時相比經(jīng)典方法攻擊效果提升為2%~5%。將本文所提方法與Min-max相比,控制擾動篩選算法采用投影梯度下降算法不變,區(qū)別為攻擊梯度的求解方式,本文采用局部影響分析模型的式(12)求解攻擊梯度。實(shí)驗(yàn)結(jié)果表明本文所提方法更具有效性,實(shí)驗(yàn)結(jié)果支持了局部影響分析模型引入圖神經(jīng)網(wǎng)絡(luò)對抗攻擊的合理性。
表2 數(shù)據(jù)集統(tǒng)計(jì)特性
表3 本文方法與其他攻擊方法的對比(%)
為進(jìn)一步比較不同方法的實(shí)驗(yàn)結(jié)果,說明不同擾動量對攻擊效果的影響,其他實(shí)驗(yàn)條件不變,采用1%~5%的擾動并記錄準(zhǔn)確率下降的平均值,并繪制曲線如圖1所示。
圖1 不同擾動量的攻擊效果對比
總體而言,本文所提攻擊方法具有更好的攻擊效果,在4個數(shù)據(jù)集上對于不同k值幾乎均超過經(jīng)典方法Mettack和Min-max。實(shí)驗(yàn)結(jié)果支持了本文引入局部影響分析模型的合理性、本文所提攻擊方法的有效性。
為進(jìn)一步驗(yàn)證本文所提攻擊方法對不同圖神經(jīng)網(wǎng)絡(luò)的可擴(kuò)展性,采用上述實(shí)驗(yàn)(k = 2時)中各個攻擊方法生成的投毒訓(xùn)練數(shù)據(jù),作為圖卷積神經(jīng)網(wǎng)絡(luò)GCN(Graph Convolutional Network)[26]和網(wǎng)絡(luò)表示學(xué)習(xí)方法DeepWalk[27]+多類邏輯回歸分類器的輸入,對比兩種方法在節(jié)點(diǎn)分類任務(wù)上的準(zhǔn)確率?;?%的擾動,保持其他實(shí)驗(yàn)條件不變,得到表4的實(shí)驗(yàn)數(shù)據(jù)。
表4 投毒數(shù)據(jù)用于攻擊其他圖學(xué)習(xí)模型
實(shí)驗(yàn)結(jié)果表明,對于與本文直接攻擊的目標(biāo)圖神經(jīng)網(wǎng)絡(luò)SGC原理相近的GCN模型,攻擊效果具有較好的擴(kuò)展性,本文所提的基于局部影響分析模型的攻擊方法均取得較理想的攻擊效果。對于網(wǎng)絡(luò)表示學(xué)習(xí)方法DeepWalk,基于SGC模型得到的投毒數(shù)據(jù)在Polblogs數(shù)據(jù)集和Cora數(shù)據(jù)集的攻擊效果較好;而在Cora_ml和Citeseer數(shù)據(jù)集上的攻擊表現(xiàn)一般。一方面,由于DeepWalk獲得節(jié)點(diǎn)向量表示的原理與SGC或GCN模型存在較大差異,投毒數(shù)據(jù)的遷移性減弱。另一方面,DeepWalk在節(jié)點(diǎn)分類任務(wù)的初始準(zhǔn)確率普遍較低,尤其在Cora_ml,Cora和Citeseer數(shù)據(jù)集明顯低于SGC或GCN模型,因此基于較高初始準(zhǔn)確率獲得的投毒擾動容易被較低的初始預(yù)測準(zhǔn)確率淹沒,從而不易體現(xiàn)投毒數(shù)據(jù)的攻擊性能。
因圖神經(jīng)網(wǎng)絡(luò)應(yīng)用廣泛,其安全問題備受關(guān)注。本文關(guān)注到對抗攻擊與統(tǒng)計(jì)學(xué)經(jīng)典分支統(tǒng)計(jì)診斷的聯(lián)系,把統(tǒng)計(jì)診斷的重要成果局部影響分析模型引入圖神經(jīng)網(wǎng)絡(luò)對抗攻擊。推導(dǎo)出局部影響分析模型的擾動篩選公式—損失距離的2階近似。該式的物理意義是擾動對模型訓(xùn)練參數(shù)的影響度量。結(jié)合損失距離2階近似公式的物理意義和其表達(dá)形式,定義攻擊梯度作為擾動篩選的近似公式,使模型復(fù)雜度降低為原來的1/N。爾后引入投影梯度下降算法進(jìn)行擾動篩選,并設(shè)計(jì)了基于局部影響分析模型的完整攻擊算法。實(shí)驗(yàn)結(jié)果支持了局部影響分析模型的合理性和攻擊方法的有效性。
局部影響分析模型是一類較廣泛的擾動分析模型,不僅適用于本文的增刪連邊攻擊,也適用于特征擾動、節(jié)點(diǎn)注入、標(biāo)簽翻轉(zhuǎn)等其他攻擊類型,后續(xù)工作可針對不同攻擊類型作進(jìn)一步推廣。局部影響分析模型還可擴(kuò)展至圖像、文本等其他數(shù)據(jù)類型的對抗樣本研究。