国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

圖深度學(xué)習(xí)攻擊模型綜述

2022-03-04 05:35:32任一支李澤龍袁理鋒朱婭妮吳國華
信息安全學(xué)報(bào) 2022年1期
關(guān)鍵詞:攻擊者擾動(dòng)梯度

任一支, 李澤龍, 袁理鋒, 張 禎, 朱婭妮, 吳國華

杭州電子科技大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 杭州 中國 310018

1 引言

隨著人工智能的不斷發(fā)展, 深度學(xué)習(xí)模型被廣泛地應(yīng)用在不同的領(lǐng)域中, 例如語音識(shí)別, 圖像識(shí)別, 文本翻譯等。圖深度學(xué)習(xí)是深度學(xué)習(xí)在圖結(jié)構(gòu)數(shù) 據(jù)領(lǐng)域中的重要研究方向, 但在將數(shù)據(jù)建模為由點(diǎn)和邊組成的圖結(jié)構(gòu)的社交網(wǎng)絡(luò)、推薦系統(tǒng)等領(lǐng)域, 其應(yīng)用仍然面臨諸多安全問題。惡意用戶通過攻擊圖深度學(xué)習(xí)模型往往能獲得巨大的經(jīng)濟(jì)利益。例如在金融欺詐檢測的場景中, 由于交易行為通常發(fā)生在高信譽(yù)用戶之間, 因此信用評估模型往往利用此規(guī)律評估用戶的信用度。而低信用的欺詐者通過與其他高信用者進(jìn)行交易, 可使模型誤判欺詐者信譽(yù)度, 并騙取高額信貸[1]; 在恐怖分子檢測的場景下, 警方利用已認(rèn)定恐怖分子間的通話記錄來推斷嫌疑人的身份。如兩個(gè)恐怖分子與一個(gè)嫌疑人都與某用戶進(jìn)行過通話, 則警方會(huì)認(rèn)為, 嫌疑人大概率是恐怖分子。而嫌疑人可通過隱藏共同通話記錄躲過模型的檢測。因此, 解決圖深度學(xué)習(xí)模型的安全問題十分有意義。

現(xiàn)有圖深度學(xué)習(xí)安全性問題研究主要包括攻擊研究和防御研究。攻擊研究模擬對真實(shí)系統(tǒng)的攻擊過程, 目的是發(fā)現(xiàn)系統(tǒng)中潛在的安全威脅; 防御研究則是針對常見的攻擊, 設(shè)計(jì)訓(xùn)練健壯模型的方法。攻擊研究作為防御研究的前置步驟, 對后續(xù)的模型安全性的評估和防御工作有重大影響。與深度學(xué)習(xí)領(lǐng)域的攻擊研究相比, 圖深度學(xué)習(xí)攻擊研究具有一定的特殊性, 主要是攻擊手段和攻擊模型構(gòu)建方法的區(qū)別。從攻擊手段看, 圖深度學(xué)習(xí)攻擊多采用對圖結(jié)構(gòu)數(shù)據(jù)中的點(diǎn)、邊進(jìn)行操作, 修改整體數(shù)據(jù)結(jié)構(gòu)進(jìn)而間接影響節(jié)點(diǎn)的特征的手段。而深度學(xué)習(xí)則是通過直接對數(shù)據(jù)的特征向量進(jìn)行操作, 以達(dá)到攻擊效果。從攻擊模型構(gòu)建方法來看, 構(gòu)建圖深度學(xué)習(xí)的攻擊模型難度更大, 因?yàn)樾薷墓?jié)點(diǎn)/邊本質(zhì)上是一種離散的操作, 因此通常需要將離散的選擇問題連續(xù)化并構(gòu)建攻擊模型, 而這是一般的深度學(xué)習(xí)攻擊模型構(gòu)建過程中不需要考慮的。圖深度學(xué)習(xí)攻擊的特殊性也給該領(lǐng)域的研究帶來困難與挑戰(zhàn)。由于圖數(shù)據(jù)呈現(xiàn)離散的狀態(tài)(數(shù)據(jù)由節(jié)點(diǎn)表示, 數(shù)據(jù)之間的關(guān)系由連邊表示), 因此在圖深度學(xué)習(xí)攻擊研究中, 最大的難點(diǎn)在于如何將節(jié)點(diǎn)(邊)的選擇表示為能對圖深度學(xué)習(xí)模型損失函數(shù)造成影響的連續(xù)模型, 即如何將離散的鄰接矩陣建模到連續(xù)的損失函數(shù)中。

自2018年Zügner等[2]提出圖深度學(xué)習(xí)模型對抗的概念以來, 研究者們提出大量針對不同場景的攻擊方法[3]。本文匯總現(xiàn)有圖深度學(xué)習(xí)模型攻擊的工作, 提出了一個(gè)統(tǒng)一的、全面的圖深度學(xué)習(xí)攻擊分析理論框架。理論框架有助于研究者能夠快速理清、重現(xiàn)攻擊模型, 并便于研究者設(shè)計(jì)新的攻擊模型。

針對圖深度學(xué)習(xí)中對抗性攻擊問題, 本文首先介紹了不同圖結(jié)構(gòu)數(shù)據(jù)。然后, 對圖深度學(xué)習(xí)模型攻擊分析理論框架的結(jié)構(gòu)進(jìn)行詳細(xì)介紹, 并圍繞框架中預(yù)備階段、攻擊算法設(shè)計(jì)階段、攻擊實(shí)施階段, 對現(xiàn)有的攻擊方法進(jìn)行了分析。最后, 對攻擊模型中常用的數(shù)據(jù)集進(jìn)行匯總, 并對圖深度學(xué)習(xí)對抗領(lǐng)域現(xiàn)有的挑戰(zhàn)以及未來可能存在的研究點(diǎn)進(jìn)行總結(jié)。

2 圖結(jié)構(gòu)數(shù)據(jù)分類

圖結(jié)構(gòu)數(shù)據(jù)G=(V,E)被定義為由節(jié)點(diǎn)集和連邊集構(gòu)成的網(wǎng)絡(luò)。根據(jù)節(jié)點(diǎn)和邊的特點(diǎn)可將圖劃分為以下類型:

同構(gòu)圖與異構(gòu)圖:同構(gòu)圖與異構(gòu)圖[4]根據(jù)圖的結(jié)構(gòu)特征進(jìn)行劃分。同構(gòu)圖是指在整張圖中僅有一種類型的節(jié)點(diǎn)和連邊; 異構(gòu)圖指在整張圖中包含多種類型的節(jié)點(diǎn)和連邊。

動(dòng)態(tài)圖和靜態(tài)圖:動(dòng)態(tài)圖和靜態(tài)圖[5]根據(jù)圖是否隨時(shí)間變化進(jìn)行區(qū)分。靜態(tài)圖是指節(jié)點(diǎn)和邊不會(huì)隨著時(shí)間的變化改變; 動(dòng)態(tài)圖是指在不同時(shí)刻, 節(jié)點(diǎn)或者邊的分布不相同。

有向圖和無向圖:有向圖和無向圖[5]根據(jù)圖中連邊是否存在指向關(guān)系進(jìn)行劃分。有向圖指連邊存在方向, 比如在微博中存在的單向關(guān)注關(guān)系; 無向圖是指連邊不存在方向, 如社交網(wǎng)絡(luò)中, 用戶之間的好友關(guān)系。

有權(quán)圖和無權(quán)圖:有權(quán)圖和無權(quán)圖[5]根據(jù)圖中連邊是否等價(jià)進(jìn)行劃分。有權(quán)圖也稱為加權(quán)圖, 指連邊具有權(quán)重的圖; 無權(quán)圖是連邊不具備權(quán)重的圖。通常, 有權(quán)圖中的邊可根據(jù)不同權(quán)重進(jìn)行區(qū)分; 而無權(quán)圖中的邊彼此之間并無差別。

3 通用圖模型攻擊流程框架

本文通過對現(xiàn)有圖深度學(xué)習(xí)模型攻擊的工作進(jìn)行匯總分析, 提出了一個(gè)有助于研究者設(shè)計(jì)攻擊模型進(jìn)行參考的圖深度學(xué)習(xí)模型攻擊分析理論框架(如圖3所示)。該框架將攻擊過程分為三個(gè)階段: 預(yù)備階段, 攻擊算法設(shè)計(jì)階段和攻擊實(shí)施階段。

圖3 圖深度學(xué)習(xí)模型攻擊分析理論框架 Figure 3 Graph deep learning model attack analysis theoretical framework

3.1 預(yù)備階段

預(yù)備階段是執(zhí)行攻擊前, 攻擊者整合必要信息的階段。在該階段中, 攻擊者需要對目標(biāo)模型和攻擊者自身進(jìn)行評估。其中, 目標(biāo)模型的評估工作包括對目標(biāo)模型架構(gòu)、目標(biāo)模型訓(xùn)練方法等信息的整理; 攻擊者自身的評估工作包含對攻擊者知識(shí)水平的評估以及對攻擊者能力的評估。

3.1.1 目標(biāo)模型評估

1) 目標(biāo)模型的架構(gòu)

一般的深度學(xué)習(xí)中, 可以將模型的架構(gòu)分為2種: 基于Pipeline的模型架構(gòu)和基于端到端的模型架構(gòu)[6]。

(1) Pipeline架構(gòu): 此類架構(gòu)將問題分解為多個(gè)子任務(wù), 并針對每個(gè)子任務(wù)設(shè)計(jì)不同的模型, 最終得到原始任務(wù)結(jié)果。見圖1所示。

圖1 Pipeline架構(gòu)模型 Figure 1 Pipeline architecture

(2) 端到端架構(gòu): 此類架構(gòu)使用一個(gè)模型解決原始任務(wù), 模型的輸出就是最終結(jié)果。見圖2所示。

圖2 端到端架構(gòu)模型 Figure 2 End to end architecture

在攻擊研究中, 由于Pipeline架構(gòu)模型由多個(gè)子模型組成, 因此成功干擾其中一個(gè)子模型便能對整體結(jié)果產(chǎn)生巨大影響, 執(zhí)行攻擊的難度相對較小。而端到端模型僅包含一個(gè)模型, 攻擊者的入手角度有限, 攻擊難度更大。

2) 目標(biāo)模型的訓(xùn)練方法

根據(jù)訓(xùn)練模型包含標(biāo)簽的情況, 目標(biāo)模型采用不同的訓(xùn)練方法, 分別為: 監(jiān)督學(xué)習(xí), 無監(jiān)督學(xué)習(xí)和半監(jiān)督學(xué)習(xí)[7]。

(1) 監(jiān)督學(xué)習(xí): 利用包含標(biāo)簽的樣本訓(xùn)練模型。典型的監(jiān)督學(xué)習(xí)任務(wù)是回歸任務(wù)和分類任務(wù)。

(2) 無監(jiān)督學(xué)習(xí): 利用無標(biāo)簽且類別不同的樣本訓(xùn)練模型, 由模型生成樣本的標(biāo)簽。典型的無監(jiān)督學(xué)習(xí)任務(wù)是聚類任務(wù)。

(3) 半監(jiān)督學(xué)習(xí): 利用包含標(biāo)簽和無標(biāo)簽的樣本共同學(xué)習(xí)模型, 無標(biāo)簽樣本通過模型生成對應(yīng)的標(biāo)簽。典型的半監(jiān)督學(xué)習(xí)任務(wù)包括回歸任務(wù)和分類任務(wù)。

三種學(xué)習(xí)方法的區(qū)別在于: 監(jiān)督學(xué)習(xí)僅利用包含標(biāo)記的樣本訓(xùn)練模型; 無監(jiān)督學(xué)習(xí)僅利用不包含標(biāo)簽的樣本訓(xùn)練模型; 半監(jiān)督學(xué)習(xí)同時(shí)利用兩種數(shù)據(jù)訓(xùn)練模型。多數(shù)的應(yīng)用場景中只知道部分?jǐn)?shù)據(jù)的標(biāo)簽信息, 因此半監(jiān)督學(xué)習(xí)方法的適用性更加貼合真實(shí)場景。

3.1.2 攻擊者自身評估

攻擊者自身評估指攻擊者對自身知識(shí)水平和數(shù)據(jù)操作能力的評估。攻擊者自身評估結(jié)果影響攻擊算法設(shè)計(jì)階段中的擾動(dòng)生成方法, 自身知識(shí)水平影響擾動(dòng)生成方式; 操作能力影響攻擊模型中的擾動(dòng)類型和攻擊策略。

1) 攻擊者能力評估

通常認(rèn)為攻擊效果與受到影響的節(jié)點(diǎn)/連邊數(shù)量呈正相關(guān)。根據(jù)攻擊者操作目標(biāo)數(shù)由少到多, 將攻擊者能力劃分為單節(jié)點(diǎn)、部分節(jié)點(diǎn)、全部節(jié)點(diǎn)。

(1) 單節(jié)點(diǎn)

單節(jié)點(diǎn)攻擊者對數(shù)據(jù)的操作權(quán)限最小, 只能改變圖數(shù)據(jù)中某一特定節(jié)點(diǎn)的屬性或者拓?fù)淝闆r。如在社交網(wǎng)絡(luò)推薦中, 攻擊者不能操作其他用戶, 只能通過改變自身的連邊干擾預(yù)測模型。由于僅能操作單個(gè)節(jié)點(diǎn), 攻擊者通常會(huì)在圖中尋找最具影響力的節(jié)點(diǎn)進(jìn)行攻擊[8]。

(2) 部分節(jié)點(diǎn)

部分節(jié)點(diǎn)攻擊者對數(shù)據(jù)操作能力大于單節(jié)點(diǎn)攻擊者, 其能操作圖中部分節(jié)點(diǎn)和連邊構(gòu)成的子圖。一般來說, 可操作的子圖包含目標(biāo)節(jié)點(diǎn)在內(nèi)的n跳鄰居, 攻擊者在該子圖中尋找代價(jià)最小的目標(biāo)集合作為擾動(dòng)樣本[9]。

(3) 全節(jié)點(diǎn)

全節(jié)點(diǎn)攻擊者對數(shù)據(jù)操作能力最大, 能操作全圖中的節(jié)點(diǎn)或邊。全節(jié)點(diǎn)攻擊者需要在一定的代價(jià)內(nèi), 從全圖中選擇出的最佳的對抗樣本。

通常, 攻擊者不具備對全圖的操作能力, 因此單節(jié)點(diǎn)攻擊和部分節(jié)點(diǎn)攻擊最貼近真實(shí)攻擊場景。由于操作節(jié)點(diǎn)個(gè)數(shù)受到限制, 大多數(shù)單節(jié)點(diǎn)攻擊和部分節(jié)點(diǎn)攻擊得到的是局部優(yōu)解。而全節(jié)點(diǎn)攻擊利用全圖的信息并從中尋找全局最優(yōu)解, 因此其造成的破壞也最大。但從執(zhí)行難度來看, 單點(diǎn)攻擊和部分節(jié)點(diǎn)攻擊成本更小, 攻擊者更容易達(dá)到攻擊的限制條件, 使其威脅更大。

2) 攻擊者知識(shí)水平評估

本文將攻擊者的知識(shí)水平從低到高分為黑盒攻擊、灰盒攻擊、白盒攻擊。

(1) 黑盒攻擊

黑盒攻擊(Black-box attack, BA)者掌握的知識(shí)最少。在黑盒知識(shí)水平下, 攻擊者不清楚模型架構(gòu)、參數(shù)及訓(xùn)練數(shù)據(jù)等信息, 只能獲取少量的模型反饋信息。Dai等[1]將黑盒攻擊進(jìn)一步劃分為實(shí)用黑盒攻擊(Practical black-box attack, PBA)和限制黑盒攻擊(Restrict black-box attack, RBA)。實(shí)用黑盒攻擊指攻擊者僅了解模型的輸出結(jié)果, 其中了解各類標(biāo)簽輸出概率的實(shí)用黑盒攻擊稱為概率黑盒攻擊(Confidence practical black-box attack, PBA-C), 了解輸出標(biāo)簽的黑盒攻擊稱為離散黑盒攻擊(Discrete practical black-box attack, PBA-D)。限制黑盒攻擊指攻擊者僅了解有限的模型輸出反饋。

(2) 灰盒攻擊

灰盒攻擊(Gray-box attack, GA)者掌握知識(shí)多于黑盒攻擊者。灰盒知識(shí)水平下, 攻擊者掌握目標(biāo)模型的部分信息。根據(jù)攻擊者掌握的模型細(xì)節(jié)及數(shù)據(jù)情況可分為兩種: 一是攻擊者掌握部分模型細(xì)節(jié)。如文獻(xiàn)[2]中, 攻擊者清楚模型架構(gòu)及部分參數(shù)細(xì)節(jié), 但不掌握訓(xùn)練數(shù)據(jù); 二是攻擊者掌握模型的訓(xùn)練數(shù)據(jù), 文獻(xiàn)[10]將其進(jìn)一步劃分為掌握全部訓(xùn)練數(shù)據(jù)和掌握部分訓(xùn)練數(shù)據(jù)。

(3) 白盒攻擊

白盒攻擊(White-box attack, WA)者掌握最多的模型知識(shí)。白盒知識(shí)水平下, 攻擊者充分了解目標(biāo)模型的細(xì)節(jié)及訓(xùn)練數(shù)據(jù)。攻擊者能利用模型結(jié)構(gòu), 參數(shù)和訓(xùn)練過程等信息設(shè)計(jì)有針對性的攻擊方法。目標(biāo)模型對白盒攻擊者是透明的, 因此攻擊者能采用的攻擊策略也最豐富。

綜合來看, 黑盒攻擊執(zhí)行難度最大, 威脅性也最大。由于其不需要攻擊者掌握過多的模型知識(shí)和數(shù)據(jù)便能達(dá)到攻擊效果, 多數(shù)的攻擊者都能利用黑盒攻擊方法干擾模型。相對的, 白盒攻擊的效果最好, 但攻擊需求知識(shí)最多。因此, 真實(shí)場景下很少出現(xiàn)白盒攻擊者。同時(shí), 通常將白盒攻擊者假設(shè)為模型建立者, 攻擊目的是提升模型的魯棒性而非影響真實(shí)系統(tǒng)的運(yùn)行, 因此白盒攻擊的威脅性相比于灰盒/黑盒攻擊更低。灰盒攻擊的難度和威脅性介于兩者之間。

3.2 攻擊算法設(shè)計(jì)階段

攻擊算法設(shè)計(jì)階段是圖深度學(xué)習(xí)攻擊分析理論框架的核心。攻擊者根據(jù)預(yù)備階段的信息設(shè)計(jì)攻擊模型特征, 并利用模型特征對一般攻擊表示進(jìn)行修改, 得到特定場景下的攻擊模型。攻擊模型特征包含擾動(dòng)類型, 攻擊策略以及擾動(dòng)生成方法。攻擊者結(jié)合對圖的操作能力設(shè)計(jì)擾動(dòng)類型和攻擊策略; 依據(jù)自身知識(shí)水平設(shè)計(jì)擾動(dòng)生成方法。

3.2.1 算法特征設(shè)計(jì)

1) 擾動(dòng)類型

攻擊者通過向數(shù)據(jù)中添加不同擾動(dòng)進(jìn)行攻擊。依據(jù)擾動(dòng)類別的不同, 可將攻擊分為圖拓?fù)涔?、?jié)點(diǎn)特征攻擊和混合攻擊。

(1) 圖拓?fù)涔?/p>

圖拓?fù)涔糁? 攻擊者專注于修改圖中的連邊來污染數(shù)據(jù)。依據(jù)攻擊者對邊的操作行為進(jìn)行劃分, 分為加邊, 減邊和重寫三種攻擊方式。

加邊會(huì)改變節(jié)點(diǎn)的度、中心性等統(tǒng)計(jì)特征, 而添加固定的連邊也會(huì)使得模型梯度上升, 如Wu等[11]攻擊GCN模型, 提出一種基于梯度積分的攻擊方法, 通過向圖中添加使梯度上升最大的連邊, 減緩GCN模型損失函數(shù)的梯度的下降速度。加邊攻擊的策略設(shè)計(jì)相對簡單, 同時(shí)對攻擊者的權(quán)限要求相對較低, 攻擊策略的可解釋性也比較好。但一旦添加的連邊數(shù)量比較大時(shí), 會(huì)顯著改變圖中的某些統(tǒng)計(jì)特征, 在抵抗基于統(tǒng)計(jì)特征的檢測中加邊攻擊表現(xiàn)較差。

減邊能切斷與鄰居節(jié)點(diǎn)之間的消息傳遞從而降低節(jié)點(diǎn)間的相似性。如Sun等[12]在論文合著網(wǎng)絡(luò)上的減邊攻擊, 通過刪除橋接不同社區(qū)的連邊, 使得目標(biāo)節(jié)點(diǎn)之間的相似性從0.67下降到0.37。類似地, 加邊、減邊也能影響梯度下降的速度, 如Chen等[13]通過刪除GCN模型中對梯度下降貢獻(xiàn)最大的邊, 使得模型的損失下降過程變慢, 影響模型效果。相比于加邊攻擊, 減邊攻擊的執(zhí)行效率要更高一些, 因?yàn)槎鄶?shù)的圖數(shù)據(jù)都是稀疏的, 已知的連邊數(shù)量遠(yuǎn)遠(yuǎn)小于未知的連邊數(shù)量, 故減邊攻擊候選的擾動(dòng)空間通常小于加邊攻擊。當(dāng)然, 減邊攻擊同樣存在容易被防御模型檢測的缺點(diǎn)。

重寫攻擊(Rewrite attack, RA)指對圖中的連邊同時(shí)執(zhí)行增加、刪除操作, 其增減連邊的數(shù)量可以相同。2018年, Waniek等[14]提出一種可擴(kuò)展的啟發(fā)式重寫攻擊ROAM。ROAM將攻擊過程描述為兩個(gè)步驟, 首先刪除目標(biāo)節(jié)點(diǎn)與其度數(shù)最大的鄰居節(jié)點(diǎn)間的連邊, 之后建立目標(biāo)節(jié)點(diǎn)與其度數(shù)最小的k–1個(gè)鄰居節(jié)點(diǎn)間的連邊。在2019年, Chen等[15]提出針對社區(qū)檢測的啟發(fā)式攻擊, 每輪攻擊中對一階鄰居節(jié)點(diǎn)間的連邊進(jìn)行成對增減。同年, Ma等[16]改進(jìn)一階鄰居選擇策略, 利用強(qiáng)化學(xué)習(xí)選擇需要修改的一階和二階鄰居連邊替代僅修改目標(biāo)節(jié)點(diǎn)一階鄰居的連邊, 提升了攻擊的隱蔽性。Takahashi等[17]進(jìn)一步優(yōu)化鄰居的選擇過程, 提出一種修改m階鄰居的拓?fù)浣Y(jié)構(gòu)的方法POISONPROBE。POISONPROBE通過構(gòu)建內(nèi)外層循環(huán)函數(shù)和參數(shù)化的方法, 將連邊選擇問題連續(xù)化為可利用梯度求解的連續(xù)優(yōu)化問題。其中, 內(nèi)層循環(huán)在一組參數(shù)控制下尋找局部的較小擾動(dòng); 外層循環(huán)外循環(huán)通過使用二進(jìn)制搜索迭代地更新全局控制參數(shù)λ, 當(dāng)全局控制參數(shù)λ小于定值時(shí)輸出擾動(dòng)結(jié)果。重布線增減的連邊數(shù)量也可以不同, 如文獻(xiàn)[1,13]等選擇每一輪模型中對梯度影響最大的連邊作為候選擾動(dòng), 每一輪修改的連邊數(shù)量并不固定。重寫攻擊通過減小加邊、減邊對統(tǒng)計(jì)特征的干擾, 克服了加邊、減邊方法容易被檢測的困難, 提升了攻擊的隱蔽性。但是重寫攻擊的時(shí)間成本顯著增加, 攻擊者需要同時(shí)從加邊、減邊的候選集合中選擇的擾動(dòng), 其復(fù)雜度是加邊、減邊策略之和。

(2) 節(jié)點(diǎn)特征攻擊

節(jié)點(diǎn)特征攻擊中, 攻擊者專注于修改圖中節(jié)點(diǎn)的特征來污染數(shù)據(jù)集。在圖深度學(xué)習(xí)中, 節(jié)點(diǎn)特征嵌入完成前, 其表現(xiàn)形式通常為離散矩陣X∈ { 0, 1}N×D, 攻擊者可直接翻轉(zhuǎn)對應(yīng)位置的特征值達(dá)成攻擊目的[10]; 嵌入完成后, 離散的特征矩陣轉(zhuǎn)化為連續(xù)形式X∈?N×K, 攻擊者可以直接在連續(xù)值上添加擾動(dòng)來進(jìn)行攻擊[18]。特征攻擊的策略更加直接, 但是其可解釋性也更差, 難以在真實(shí)場景中得到應(yīng)用。即使可以找到實(shí)際應(yīng)用場景, 但很少有攻擊者能直接操作數(shù)據(jù)中節(jié)點(diǎn)本身的特征, 除非該攻擊者具備極高的權(quán)限, 因此該假設(shè)在實(shí)際攻擊中幾乎不能成立。

(3) 混合攻擊

混合攻擊中, 攻擊者結(jié)合圖拓?fù)渑c節(jié)點(diǎn)特征來增強(qiáng)攻擊效果。根據(jù)是否修改已經(jīng)存在的連邊, 可將混合攻擊分為兩種: 一是注入節(jié)點(diǎn), 攻擊者構(gòu)造注入節(jié)點(diǎn)的連邊和特征, 并添加到原始圖中。如Hou等[19]針對異構(gòu)圖上的異常節(jié)點(diǎn)檢測問題提出HG-ATTACK方法, 通過構(gòu)造輔助軟件并將其注入到軟件下載異構(gòu)圖中, 使得檢測模型無法識(shí)別目標(biāo)惡意軟件。二是直接在原始圖上選擇連邊和節(jié)點(diǎn)特征進(jìn)行修改。如Wang等[20]提出的Greedy和Greedy-GAN方法。Greedy方法通過計(jì)算候選連邊和特征對梯度上升的影響, 貪婪地選擇對梯度影響最大的節(jié)點(diǎn)特征和連邊, 翻轉(zhuǎn)后作為擾動(dòng)注入原始圖數(shù)據(jù)。Greedy-GAN借鑒GAN的思維對Greedy進(jìn)行改進(jìn), 在Greedy模型的基礎(chǔ)上添加了生成器和檢測器模型, 由Greedy生成的擾動(dòng)送至檢測器模型進(jìn)行真假判斷, 在生成器和檢測器的博弈過程中提升生成節(jié)點(diǎn)特征的真實(shí)性。Zou等[21]研究了文獻(xiàn)[22]中拋出的針對黑盒逃逸場景的圖注入攻擊問題(GIA), 提出一種節(jié)點(diǎn)注入攻擊方法TDGIA來提升攻擊效果。TDGIA設(shè)計(jì)了拓?fù)淙毕葸呥x擇模塊和用于注入節(jié)點(diǎn)屬性生成的平滑對抗優(yōu)化模塊解決GIA黑盒逃逸問題。拓?fù)淙毕葸呥x擇模塊利用原始圖的拓?fù)渎┒磥頇z測對攻擊最有效的已知節(jié)點(diǎn), 然后在該節(jié)點(diǎn)周圍注入一定數(shù)量虛假節(jié)點(diǎn)。平滑對抗優(yōu)化模塊定義了一個(gè)損失函數(shù)來優(yōu)化節(jié)點(diǎn)的特征, 以最小化受害GNN模型的性能。TDGIA相比于先前的節(jié)點(diǎn)注入方法, 解決了黑盒逃逸場景設(shè)置下, 投毒攻擊方法效果不佳和無法處理大規(guī)模圖數(shù)據(jù)的問題。同時(shí), TDGIA針對頂級防御模型也有較好的效果。混合攻擊的優(yōu)勢在于, 攻擊者添加極少的注入節(jié)點(diǎn)或者修改少數(shù)連邊和節(jié)點(diǎn)特征就能對結(jié)果造成比較大的影響, 在攻擊某個(gè)特定目標(biāo)節(jié)點(diǎn)時(shí)表現(xiàn)優(yōu)秀。特別是注入節(jié)點(diǎn)攻擊, 攻擊者能自由控制注入數(shù)量, 使得攻擊具備可伸縮性, 同時(shí)保證原始圖中已有連接關(guān)系不會(huì)被破壞。但當(dāng)擾動(dòng)限制較小時(shí), 對受害模型整體效果的影響還有待考證, 且攻擊者需要同時(shí)構(gòu)建(計(jì)算)對結(jié)果影響較大的連邊和特征, 計(jì)算復(fù)雜度較高。

總結(jié)三種攻擊擾動(dòng)類型各自的特點(diǎn): a)圖拓?fù)涔糁? 加邊、減邊會(huì)破壞原始圖結(jié)構(gòu)中的統(tǒng)計(jì)特征(如連邊的總數(shù)), 容易基于此特征檢測到攻擊, 而重寫攻擊面對統(tǒng)計(jì)特征檢測方法的隱蔽性更高; b)節(jié)點(diǎn)特征攻擊對權(quán)限要求較高, 在真實(shí)的攻擊場景下難以執(zhí)行; c)混合攻擊策略中, 在原始圖上尋找候選擾動(dòng)的代價(jià)較大。而注入節(jié)點(diǎn)攻擊代價(jià)較小且具備可伸縮性, 且能保證原始圖中已有連接關(guān)系不會(huì)被破壞, 但構(gòu)建虛假節(jié)點(diǎn)特征和連邊的計(jì)算復(fù)雜度較高。

2) 攻擊策略

攻擊者需要根據(jù)自身操作能力選擇合適的攻擊目標(biāo)。依據(jù)操作目標(biāo), 將攻擊策略分為直接操作和間接操作。

(1) 直接操作

直接操作是指攻擊者將擾動(dòng)直接添加到目標(biāo)節(jié)點(diǎn)上。即攻擊者可以通過直接修改測試節(jié)點(diǎn)的特征[23]; 或修改目標(biāo)節(jié)點(diǎn)的連邊關(guān)系[13], 誤導(dǎo)模型對某節(jié)點(diǎn)的預(yù)測結(jié)果。

(2) 間接操作

間接操作是指攻擊者將擾動(dòng)添加到目標(biāo)節(jié)點(diǎn)的鄰居上, 利用圖中節(jié)點(diǎn)間的信息傳遞, 使目標(biāo)節(jié)點(diǎn)受到干擾。根據(jù)鄰居節(jié)點(diǎn)的選擇情況, 可分為操作一階鄰居和操作多階鄰居。如文獻(xiàn)[24]對一階鄰居的拓?fù)浣Y(jié)構(gòu)執(zhí)行重寫攻擊; 文獻(xiàn)[16-17]對m階鄰居拓?fù)浣Y(jié)構(gòu)重寫攻擊, 提升了攻擊的隱蔽性。

直接操作的缺陷在于, 攻擊目標(biāo)往往是受到嚴(yán)密保護(hù)的重要節(jié)點(diǎn), 使得直接攻擊容易被發(fā)現(xiàn)。間接操作攻擊有效利用圖模型中的信息傳遞的特性, 解決了對布防節(jié)點(diǎn)添加擾動(dòng)的問題, 同時(shí)提升了攻擊的隱蔽性。

3) 擾動(dòng)生成方法

擾動(dòng)生成方法影響模型求解最佳擾動(dòng)的效率及計(jì)算難度?,F(xiàn)有工作中, 依據(jù)不同的攻擊者知識(shí)水平, 可將擾動(dòng)生成方法分為兩類: 基于梯度和基于非梯度的擾動(dòng)生成方法:

(1) 基于梯度的擾動(dòng)生成方法

基于梯度的方法適用于白盒攻擊場景, 或灰盒攻擊中, 攻擊者能訓(xùn)練一個(gè)替代模型來進(jìn)行攻擊的場景。在圖深度學(xué)習(xí)中, 模型訓(xùn)練的本質(zhì)是參數(shù)順著損失函數(shù)梯度下降的方向更新的過程, 因此攻擊者計(jì)算對抗樣本對目標(biāo)模型梯度的影響, 并選擇影響梯度下降結(jié)果的擾動(dòng)。

Dai等[1]最早采用梯度方法求解擾動(dòng), 提出RL-S2V和GradArgmax算法。假設(shè)攻擊者具備白盒知識(shí)水平, 在模型的訓(xùn)練過程中計(jì)算梯度變化矩陣, 對梯度變化影響最大的一組邊進(jìn)行增刪。為了優(yōu)化計(jì)算效率及效果, 后續(xù)研究者對梯度方法進(jìn)行逐步優(yōu)化。Xu等[25]提出PGD攻擊方法, 結(jié)合譜圖理論、一階優(yōu)化和穩(wěn)健(最小-最大)優(yōu)化的理論, 將梯度投影到一個(gè)連續(xù)的空間中, 通過優(yōu)化離散梯度的近似表示對梯度計(jì)算過程進(jìn)行優(yōu)化, 解決了梯度飽和帶來的次優(yōu)解問題。Xu等[26]為解決攻擊GNN模型時(shí)計(jì)算離散梯度困難的問題, 提出GTA攻擊方法, 每次選擇n條邊替代全圖邊的梯度計(jì)算, 大大降低了梯度更新計(jì)算的復(fù)雜度。Bojchevski等[27]針對半監(jiān)督節(jié)點(diǎn)嵌入方法(如Deepwalk、隨機(jī)游走等)模型不連續(xù)造成的梯度計(jì)算困難問題, 提出一種通用攻擊方法。該方法首先利用半監(jiān)督模型的嵌入過程將攻擊模型中的雙層優(yōu)化問題轉(zhuǎn)化成單層優(yōu)化問題。再通過將嵌入矩陣通過SVD分解為鄰接矩陣及兩個(gè)特征矩陣, 并將分解結(jié)果帶入單層優(yōu)化模型并將其轉(zhuǎn)化為一個(gè)線性優(yōu)化問題。最后通過計(jì)算鄰接矩陣的變化求解使得最大化的擾動(dòng)連邊。Gupta等[28]對Bojchevski的攻擊方法進(jìn)行了改進(jìn), 提出VIKING攻擊方法簡化模型并提升了攻擊效率, 同時(shí)提升了攻擊效果。他們通過自定義一個(gè)與鄰接矩陣相關(guān)聯(lián)的影響力函數(shù)求解增刪連邊對節(jié)點(diǎn)嵌入結(jié)果的影響, 將原本的雙層優(yōu)化問題轉(zhuǎn)化為最大化影響力的問題。VIKING在限制修改連邊數(shù)量的約束下, 在每輪影響力計(jì)算中翻轉(zhuǎn)影響力最大的連邊, 使得嵌入模型效果變差。Wang等[29]提出一種近似快速梯度符號的算法, 通過將GCN模型的損失函數(shù)近似為0-1線性特征和邊緣0-1向量的關(guān)系, 通過梯度最小化新的損失函數(shù)得到近似解, 從而解決離散梯度計(jì)算困難問題。Wu等[11]對離散優(yōu)化問題的梯度計(jì)算過程進(jìn)行優(yōu)化, 提出一種基于梯度積分的選擇擾動(dòng)邊的方法。使用梯度積分可以準(zhǔn)確計(jì)算翻轉(zhuǎn)離散邊或特征引起的模型變化, 與先前攻擊模型使用的迭代方法相比, 大大提高了節(jié)點(diǎn)和邊緣選擇的效率和準(zhǔn)確性。Zhu等[30]認(rèn)為基于圖的異常檢測系統(tǒng)OddBall在實(shí)際應(yīng)用中存在脆弱性。他們提出一種基于梯度的攻擊方法BinarizedAttack, 目的是通過操作圖拓?fù)浣Y(jié)構(gòu)提升OddBall系統(tǒng)對節(jié)點(diǎn)異常得分值計(jì)算的誤差。BinarizedAttack借鑒了BNN的思想, 為圖中的每條邊/非邊關(guān)聯(lián)了一個(gè)離散和一個(gè)連續(xù)的決策變量, 兩個(gè)決策變量分別在前向傳播和反向傳播中起作用。在前向傳遞中, 離散決策變量用于評估目標(biāo)函數(shù); 在反向傳播中, 首先根據(jù)分?jǐn)?shù)梯度更新連續(xù)決策變量, 然后相應(yīng)地更新離散決策變量。BinarizedAttack設(shè)計(jì)的這種新的梯度下降計(jì)算方法, 很好的解決了離散的雙層優(yōu)化問題難以計(jì)算和計(jì)算結(jié)果過于復(fù)雜的問題。Chen等[31]提出一種基于梯度動(dòng)量的攻擊方法MGA, 通過求解梯度的方向動(dòng)量替代以梯度的絕對值選擇擾動(dòng)邊, 解決了結(jié)果陷入局部最優(yōu)的問題。MGA的框架利用原始網(wǎng)絡(luò)來訓(xùn)練代理GCN模型, 之后為損失函數(shù)計(jì)算每個(gè)鏈路的梯度并計(jì)算動(dòng)量。選擇梯度動(dòng)量絕對值最大更新原始網(wǎng)絡(luò)并迭代計(jì)算, 直到達(dá)到擾動(dòng)代價(jià)上限。對于動(dòng)態(tài)圖上的攻擊研究空缺, Chen等[32]提出一種針對動(dòng)態(tài)網(wǎng)絡(luò)鏈路預(yù)測任務(wù)的攻擊的方法, 計(jì)算來自不同時(shí)間節(jié)點(diǎn)的動(dòng)態(tài)網(wǎng)絡(luò)嵌入梯度信息, 貪婪選擇梯度絕對值最大的連邊翻轉(zhuǎn), 通過在歷史圖數(shù)據(jù)上添加擾動(dòng), 完成對動(dòng)態(tài)圖的攻擊。Geisler[33]等發(fā)現(xiàn), 先前的圖深度學(xué)習(xí)攻擊模型普遍會(huì)利用鄰接矩陣, 這造成這些方法無法在實(shí)際的大規(guī)模圖數(shù)據(jù)上使用。為了解決這個(gè)問題, 他們提出了兩種基于一階優(yōu)化的不使用鄰接矩陣的攻擊方法GANG和PR-BCD。GANG通過在目標(biāo)節(jié)點(diǎn)周圍注入節(jié)點(diǎn), 執(zhí)行基于約束梯度的優(yōu)化, 以確定給定代價(jià)下的最佳擾動(dòng)邊, 并采用PGD優(yōu)化新節(jié)點(diǎn)的初始特征(隨機(jī)采樣)。PR-BCD基于隨機(jī)塊坐標(biāo)下降(R-BCD)在現(xiàn)有節(jié)點(diǎn)之間添加/刪除邊, 將增刪邊的問題建模為L0范數(shù)PGD和隨機(jī)塊坐標(biāo)下降(R-BCD)的自適應(yīng)組合的問題, 在每輪迭代中保留候選搜索空間, 并對其余部分重新采樣進(jìn)行次輪迭代。Miller等[34]提出了最短路徑攻擊問題, 即攻擊者意圖通過刪除最少的邊, 使得兩個(gè)目標(biāo)節(jié)點(diǎn)之間的最短路徑能通過某條期望路徑。他們將NP難的路徑切割轉(zhuǎn)化成加權(quán)集覆蓋問題, 并提出兩個(gè)最小化總代價(jià)的優(yōu)化方法PATHA- TTACK-Greedy和PATHATTACK-LP求解優(yōu)化問題。PATHATTACK-Greedy通過迭代添加最具成本效益的子集(每個(gè)成本中未覆蓋元素?cái)?shù)量最多的子集)尋找候選連邊集合; PATHATTACK-LP將整數(shù)約束放寬為實(shí)數(shù)并對結(jié)果進(jìn)行四舍五入, 解決了離散域上的優(yōu)化求解困難。Tian等[35]的研究發(fā)現(xiàn)FGA和NETTACK存在忽略注入節(jié)點(diǎn)之間的互相影響, 在固定的擾動(dòng)預(yù)算下, 不能保證所有目標(biāo)節(jié)點(diǎn)的全局攻擊成功率的問題。針對該問題, 他們提出改進(jìn)方法P-FGA和P-NETTACK。兩個(gè)改進(jìn)方法應(yīng)用了節(jié)點(diǎn)過濾機(jī)制, 從目標(biāo)節(jié)點(diǎn)集中過濾掉那些被成功攻擊的節(jié)點(diǎn), 同時(shí)在提取常見擾動(dòng)后, 還利用隨機(jī)的擾動(dòng)補(bǔ)充攻擊預(yù)算。同時(shí), 還利用新的損失函數(shù)CW-loss代替FGA中CE-loss, 并將代理損失的最大總和作為新的目標(biāo)函數(shù), 以支持P-FGA和P-NETTACK集成統(tǒng)一的并行計(jì)算框架。Zhan等[36]研究了Mettack等傳統(tǒng)灰、黑盒圖深度學(xué)習(xí)攻擊模型的特點(diǎn), 發(fā)現(xiàn)傳統(tǒng)方法存在需要訪問訓(xùn)練數(shù)據(jù)以建立攻擊模型的缺陷。他們提出首個(gè)在不訪問訓(xùn)練數(shù)據(jù)的情景下的梯度攻擊方法BBGA。BBGA利用譜聚類生成的偽標(biāo)簽來訓(xùn)練代理模型, 解決了不能訪問訓(xùn)練數(shù)據(jù)的真實(shí)標(biāo)簽問題。同時(shí), BBGA采用一種k-折貪婪策略, 將所有節(jié)點(diǎn)分為k組, 并定義每對節(jié)點(diǎn)的元梯度標(biāo)準(zhǔn)差和為連邊的貪婪分?jǐn)?shù), 每輪迭代中選擇貪婪分?jǐn)?shù)最大的邊作為候選邊, 解決了大多數(shù)傳統(tǒng)攻擊不能將擾動(dòng)均勻分布到原始的訓(xùn)練數(shù)據(jù)中的問題。

基于梯度的求解方法能夠保證得到局部最優(yōu)解甚至全局最優(yōu)解, 就攻擊效果而言是所有方法中最好的。但是基于梯度的方法也存在一定限制。首先基于梯度的方法要求攻擊者具備能支撐建立損失函數(shù)的知識(shí), 要求相對較高。其次, 在建立梯度模型的過程中存在比較多的困難, 如離散問題連續(xù)化和離散優(yōu)化問題求解, 雖然已經(jīng)有較多的研究者對這些挑戰(zhàn)進(jìn)行研究并提出應(yīng)對方法, 但是大多數(shù)解決方案得到的是近似結(jié)果, 仍然存在一定誤差。同時(shí), 梯度計(jì)算的困難程度還和數(shù)據(jù)規(guī)模呈正比, 這就意味著, 一般規(guī)模數(shù)據(jù)下采用梯度方法的復(fù)雜度還是可以接受的, 一旦數(shù)據(jù)規(guī)模增大, 其復(fù)雜度會(huì)呈現(xiàn)指數(shù)級增長, 而這對于現(xiàn)實(shí)場景中日趨龐大的圖數(shù)據(jù)規(guī)模顯然是一個(gè)巨大的難題。

(2) 基于非梯度的擾動(dòng)生成方法

基于非梯度的攻擊適用于黑盒攻擊場景, 或在灰盒攻擊中, 攻擊者無法建立替代模型進(jìn)行攻擊的場景。攻擊者通常采用啟發(fā)式、遺傳算法或強(qiáng)化學(xué)習(xí)的方法替代計(jì)算梯度來求解擾動(dòng)集合。

a) 啟發(fā)式方法

圖深度學(xué)習(xí)模型攻擊中, 啟發(fā)式方法通常指根據(jù)圖的統(tǒng)計(jì)特征構(gòu)造擾動(dòng)樣本。如改變度分布, 降低兩個(gè)節(jié)點(diǎn)之間的相似度, 進(jìn)而影響模型結(jié)果。

最簡單的啟發(fā)式攻擊通過在節(jié)點(diǎn)之間隨機(jī)增刪連邊來改變圖的拓?fù)浣Y(jié)構(gòu), 或隨機(jī)修改節(jié)點(diǎn)特征。如Chen等[15]攻擊社區(qū)檢測模型, 通過隨機(jī)增刪原始圖數(shù)據(jù)的連邊, 改變模型社區(qū)劃分結(jié)果。同時(shí), 他們提出針對不同目標(biāo)的攻擊方法CDA和DBA。CDA的攻擊目標(biāo)為社區(qū)中的隨機(jī)節(jié)點(diǎn), 刪除與本社區(qū)中節(jié)點(diǎn)相連的邊, 增加與其他社區(qū)中節(jié)點(diǎn)的連邊; DBA攻擊目標(biāo)為社區(qū)中的度數(shù)最大的節(jié)點(diǎn), 其增刪連邊的策略和CDA相同。結(jié)果顯示兩種方法都降低了社區(qū)檢測模型的準(zhǔn)確率。Xuan等[37]對無標(biāo)度網(wǎng)絡(luò)的分類模型進(jìn)行攻擊, 結(jié)合節(jié)點(diǎn)度數(shù)量和度分布設(shè)計(jì)了兩種攻擊策略DILR和DALR。首先根據(jù)度大小將節(jié)點(diǎn)分為三檔, DILR刪除度最大的一檔節(jié)點(diǎn)與隨機(jī)節(jié)點(diǎn)之間的連邊, 并在兩個(gè)隨機(jī)二檔節(jié)點(diǎn)間添加連邊; DALR保證擾動(dòng)添加前后網(wǎng)絡(luò)的度仍然服從冪律分布, 刪除大度節(jié)點(diǎn)之間的連邊, 同時(shí)選擇度數(shù)較小的節(jié)點(diǎn)添加連邊。然而, 實(shí)際攻擊場景下, 攻擊者掌握的知識(shí)非常有限, Hussain等[38]提出一種基于結(jié)構(gòu)的攻擊方法Structack來解決這一問題。他們考慮更實(shí)際的攻擊場景, 并假設(shè)攻擊者僅具備圖數(shù)據(jù)的結(jié)構(gòu)知識(shí), 探究節(jié)點(diǎn)的度中心性和最短路徑相似度對GNN分類模型的影響。Hussain通過歸一化理論將節(jié)點(diǎn)的度中心性和最短路徑相似度建模到GNN模型中并通過計(jì)算梯度得到兩者對GNN模型的影響程度, 結(jié)果表明低度中心性和低最短路徑相似度節(jié)點(diǎn)更能影響GNN的準(zhǔn)確率。依據(jù)此結(jié)論, Structack攻擊方法即為低中心性以及低相似度的節(jié)點(diǎn)之間添加虛假連邊。

啟發(fā)式的方法通常從圖數(shù)據(jù)的統(tǒng)計(jì)特征出發(fā), 并對統(tǒng)計(jì)特征(如度、中心性、相似性等)存在特殊性的節(jié)點(diǎn)或邊進(jìn)行操作, 這令啟發(fā)式攻擊方式比較依賴圖數(shù)據(jù)的分布。一旦圖數(shù)據(jù)的分布發(fā)生比較明顯的變化, 啟發(fā)式方法的效果也會(huì)下降, 因此啟發(fā)式攻擊的可遷移性弱。但啟發(fā)式攻擊的優(yōu)點(diǎn)在于算法簡單, 往往能在很短的時(shí)間內(nèi)生成大量的擾動(dòng)樣本, 在一些大規(guī)模的圖數(shù)據(jù)上也能有不錯(cuò)的表現(xiàn)。

b) 基于遺傳算法

圖深度學(xué)習(xí)模型攻擊中, 基于遺傳算法生成擾動(dòng)即, 上一輪生成的擾動(dòng)作為親代, 交換擾動(dòng)生成子代擾動(dòng), 并通過評價(jià)函數(shù)篩選出符合條件的結(jié)果。

Dai等[1]最早將遺傳算法用于求解擾動(dòng), 提出GeneticAlg算法。GeneticAlg算法選擇能夠增加目標(biāo)函數(shù)損失的子圖作為候選親代, 子代樣本保留親代樣本中相交的部分, 同時(shí)隨機(jī)選擇兩親代間不相交的部分作為剩余填充。GeneticAlg的突變部分則是采用概率隨機(jī)變化的策略, 即交換的節(jié)點(diǎn)對中的一個(gè)以一定概率變化為親代節(jié)點(diǎn)序列中的隨機(jī)一個(gè)節(jié)點(diǎn)。迭代計(jì)算直到達(dá)到代價(jià)上限輸出最后一輪中保留的子代作為攻擊擾動(dòng)。Chen等[15]針對社區(qū)檢測提出Q-ATTACK攻擊方法, 將擾動(dòng)邊組合作為遺傳算法中的親代基因, 以模塊度Q作為適應(yīng)性的評價(jià)函數(shù)。模塊度Q較低的親代擾動(dòng)樣本得以保留, 并交換單點(diǎn)基因產(chǎn)生新的子代擾動(dòng)樣本。為了防止解陷入局部最優(yōu), Q-ATTACK中提供三種變異方式: 鏈接刪除、鏈接添加變異和鏈接重寫。鏈接刪除和鏈接添加屬于單獨(dú)變異, 鏈接重寫則是共同變化, 且三種突變以相等的概率發(fā)生, 并用總突變率來控制。Chen等[9]對Q-ATTACK算法進(jìn)行拓展與改進(jìn), 在不同對抗目標(biāo)下采用不同的評價(jià)標(biāo)準(zhǔn): 節(jié)點(diǎn)度變化衡量單目標(biāo)攻擊結(jié)果的適應(yīng)性; “度變化+熵變化”衡量對整體模型的可用性攻擊結(jié)果的適應(yīng)性。同時(shí)提出了一種非對稱交換遺傳因子的方法, 增加了親代對抗樣本產(chǎn)生子代對抗樣本的種類, 使得對抗樣本生成更加靈活。Yu等[39]針對提出了一種歐幾里德距離攻擊(Euclid Distance Attack, EDA), 旨在直接干擾嵌入空間中向量之間的距離。EDA采用遺傳算法求解擾動(dòng)樣本集, 使用空間中向量距離的相對變化來構(gòu)造適應(yīng)度k。EDA篩選k值較大的擾動(dòng)樣本作為親代, 通過單點(diǎn)交換規(guī)則生成子代, 大大提升攻擊的隱蔽性。

基于遺傳算法的方法對圖數(shù)據(jù)統(tǒng)計(jì)特征的破壞相對較小, 能夠有效規(guī)避常規(guī)的檢測模型。同時(shí), 遺傳算法計(jì)算效率和啟發(fā)式方法類似, 收斂速度快。但基于遺傳算法在數(shù)據(jù)規(guī)模較大時(shí), 候選親代數(shù)量會(huì)出現(xiàn)指數(shù)級增長, 使得計(jì)算復(fù)雜度增大。

c) 基于強(qiáng)化學(xué)習(xí)的方法

圖深度學(xué)習(xí)攻擊中利用強(qiáng)化學(xué)習(xí)生成擾動(dòng), 通常將當(dāng)前狀態(tài)定義為當(dāng)前已有的擾動(dòng)樣本集, 動(dòng)作定義為添加特定擾動(dòng), 對應(yīng)獎(jiǎng)勵(lì)則與目標(biāo)模型結(jié)果關(guān)聯(lián)。強(qiáng)化學(xué)習(xí)生成擾動(dòng)的過程可以描述為, 利用動(dòng)作(添加特定擾動(dòng))更新當(dāng)前狀態(tài)(擾動(dòng)樣本集), 添加擾動(dòng)使模型準(zhǔn)確度下降則獲得獎(jiǎng)勵(lì)。

Dai等[1]最早將強(qiáng)化學(xué)習(xí)應(yīng)用于攻擊圖嵌入模型。攻擊模型輸入原始圖數(shù)據(jù), 強(qiáng)化學(xué)習(xí)的狀態(tài)對應(yīng)階段t生成的擾動(dòng)樣本; 動(dòng)作為增加/刪除連邊; 獎(jiǎng)勵(lì)與預(yù)測節(jié)點(diǎn)標(biāo)簽相關(guān)。若預(yù)測標(biāo)簽與原始標(biāo)簽不同則得到正向的激勵(lì), 相同則得到負(fù)向的激勵(lì)。算法將選擇擾動(dòng)分解為兩個(gè)動(dòng)作, 每個(gè)動(dòng)作選擇原始圖中的一個(gè)節(jié)點(diǎn)。Ma等[16]將重寫攻擊的過程視為在圖數(shù)據(jù)上的離散馬爾可夫決策過程, 并提出一種強(qiáng)化學(xué)習(xí)的方法ReWatt求解決策結(jié)果。ReWatt中, 狀態(tài)被定義為生成擾動(dòng)結(jié)果之前的所有中間結(jié)果, 動(dòng)作定義為刪除一階鄰居連邊, 增加二階鄰居連邊的重寫操作。ReWatt使用GCN來學(xué)習(xí)每個(gè)中間狀態(tài)的節(jié)點(diǎn)和邊緣嵌入, 在執(zhí)行一步重寫操作之后, 查詢黑盒分類器以獲得下個(gè)中間狀態(tài)的預(yù)測損失, 將其與當(dāng)前狀態(tài)的損失進(jìn)行比較以獲得獎(jiǎng)勵(lì), 直到獎(jiǎng)勵(lì)達(dá)到最大值輸出最終擾動(dòng)。Sun等[40]基于貪婪策略行注入攻擊, 并將RL-S2V算法的兩步選擇優(yōu)化為三步選擇: 第一步為選擇注入節(jié)點(diǎn); 第二步為選擇原始節(jié)點(diǎn)并添加連邊; 第三步為選擇注入節(jié)點(diǎn)的標(biāo)簽。

強(qiáng)化學(xué)習(xí)是最近幾年興起的機(jī)器學(xué)習(xí)鄰域, 該方法對求解離散優(yōu)化問題有很好的效果?;趶?qiáng)化學(xué)習(xí)的攻擊方法在不同的受害模型上都有較好的表現(xiàn), 因此該類方法遷移性最高。然而, 強(qiáng)化學(xué)習(xí)的方法需要攻擊者構(gòu)建代理模型, 雖然對模型知識(shí)的要求小于基于梯度的方法, 但還是高于啟發(fā)式和遺傳算法。同時(shí), 強(qiáng)化學(xué)習(xí)的動(dòng)作選擇空間限制了其計(jì)算效率和處理離散優(yōu)化問題的規(guī)模, 當(dāng)圖規(guī)模較大時(shí), 動(dòng)作選擇空間隨之增大, 尋優(yōu)過程復(fù)雜度增加, 造成強(qiáng)化學(xué)習(xí)方法求解真實(shí)場景中過大圖數(shù)據(jù)時(shí)速度慢的問題。

總結(jié)梯度與非梯度方法的特點(diǎn): a)基于梯度的方法的優(yōu)勢在于能保證結(jié)果的局部最優(yōu)性。其缺點(diǎn)在于, 對攻擊者的知識(shí)水平和權(quán)限要求較高, 要求攻擊者有能力重建目標(biāo)模型的損失函數(shù)。因此, 攻擊者的目標(biāo)通常是尋找到網(wǎng)絡(luò)數(shù)據(jù)中比較敏感的節(jié)點(diǎn)加以保護(hù)。由于真實(shí)攻擊場景中很難獲得完備的知識(shí)及權(quán)限, 基于梯度的方法求解擾動(dòng)比較困難。b)基于非梯度的方法的優(yōu)勢在于可遷移性好, 且算法相對簡單, 計(jì)算復(fù)雜度更低。缺陷在于: 多數(shù)啟發(fā)式算法和基于遺傳算法的方法, 通過圖的統(tǒng)計(jì)特征選擇擾動(dòng), 隱蔽性較差。特別是啟發(fā)式的方法, 還存在遷移性較差的問題。而基于強(qiáng)化學(xué)習(xí)的方法雖然具備較好遷移性, 但動(dòng)作選擇空間比較大, 尋優(yōu)的過程相對復(fù)雜。

3.2.2 攻擊算法建立

其中 ()f·表示的不同的圖深度學(xué)習(xí)模型(如圖分類模型、圖預(yù)測模型、圖嵌入模型等)。

需要注意的是, 攻擊中不僅需要保證攻擊的可行性, 還需要保證隱蔽性。即通過差異計(jì)算函數(shù)Q得到擾動(dòng)添加前后圖數(shù)據(jù)之間差異值, 當(dāng)差異值小于定值ε時(shí), 則認(rèn)為攻擊足夠隱蔽:

另一個(gè)保證隱蔽性的方法是, 規(guī)定一個(gè)攻擊代價(jià)Δ, 擾動(dòng)總和小于代價(jià)Δ時(shí), 則認(rèn)為攻擊不會(huì)被發(fā)現(xiàn):

攻擊者生成新的攻擊模型, 首先確定一般表示中的圖深度學(xué)習(xí)模型, 然后將模型特征轉(zhuǎn)化為約束條件, 整合約束條件便得到新場景下的攻擊模型。

3.3 攻擊實(shí)施階段

攻擊實(shí)施階段, 攻擊者選擇攻擊執(zhí)行的時(shí)間, 并在攻擊結(jié)束后, 結(jié)合目標(biāo)模型的任務(wù)對攻擊進(jìn)行評估。

3.3.1 執(zhí)行攻擊

不同時(shí)刻添加擾動(dòng)會(huì)造成不同結(jié)果。依據(jù)攻擊時(shí)目標(biāo)模型所處的訓(xùn)練階段, 將攻擊劃分為投毒攻擊(Poison attack, PA), 逃逸攻擊(Evasion attack, EA)和組合攻擊(Combination attack, CA)。

1) 投毒攻擊

投毒攻擊是指攻擊者在模型訓(xùn)練完成前進(jìn)行攻擊。投毒攻擊者向訓(xùn)練數(shù)據(jù)集中注入擾動(dòng), 利用“污染”數(shù)據(jù)集訓(xùn)練模型。如Wang等[20]向推薦系統(tǒng)數(shù)據(jù)集中添加虛假評分?jǐn)?shù)據(jù), 提升了目標(biāo)商品的推薦度; Wu等[11]增刪訓(xùn)練數(shù)據(jù)中的連邊并利用污染數(shù)據(jù)訓(xùn)練模型, 使模型準(zhǔn)確率降低; Zhang等[41]攻擊知識(shí)圖譜嵌入模型, 替換知識(shí)圖譜訓(xùn)練數(shù)據(jù)中三元組的首尾實(shí)體, 改變實(shí)體的嵌入表示, 進(jìn)而降低實(shí)體預(yù)測模型的準(zhǔn)確度。

2) 逃逸攻擊

逃逸攻擊是指攻擊者在模型訓(xùn)練完成后向測試數(shù)據(jù)中添加擾動(dòng), 使得污染的測試數(shù)據(jù)在模型上結(jié)果出錯(cuò)。由于擾動(dòng)添加在測試數(shù)據(jù)集中, 逃逸攻擊仍使用“干凈”數(shù)據(jù)集訓(xùn)練目標(biāo)模型, 不會(huì)對模型本身造成影響。Chen等[13]攻擊圖嵌入模型, 構(gòu)造擾動(dòng)測試樣本在原模型中得到錯(cuò)誤嵌入表示, 并降低下游的節(jié)點(diǎn)分類準(zhǔn)確度; Zhang等[18]意圖規(guī)避基于圖的惡意代碼檢測, 將惡意代碼視為由語義信息組成的圖數(shù)據(jù), 向惡意代碼中注入空語義, 使得惡意代碼逃避檢測。

3) 組合攻擊

組合攻擊是指攻擊者向訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)中同時(shí)注入擾動(dòng)來影響模型結(jié)果。Hou等[19]攻擊基于圖的惡意軟件檢測模型, 不僅向原始的訓(xùn)練數(shù)據(jù)圖中添加“輔助”惡意節(jié)點(diǎn), 還對測試樣本中的惡意軟件的特征和結(jié)構(gòu)特征進(jìn)行修改, 使得檢測模型誤判惡意軟件為正常軟件。Zhang等[42]研究了圖分類中的后門攻擊(Backdoor attack, BA), 通過構(gòu)造一個(gè)特殊結(jié)構(gòu)的子圖(觸發(fā)器)并賦予標(biāo)簽, 將其注入訓(xùn)練數(shù)據(jù)中, 模型會(huì)學(xué)習(xí)觸發(fā)器與標(biāo)簽的對應(yīng)關(guān)系。將觸發(fā)器插入測試樣本, 使得分類模型將測試樣本分類為特定的類別。Xi等[43]也探究了圖分類上的后門攻擊, 并證明后門攻擊在隱蔽性上有很好的表現(xiàn)。

從不同角度進(jìn)行分析, 三種攻擊各有優(yōu)勢: a)影響范圍來看, 逃逸攻擊本質(zhì)上不改變模型, 攻擊只會(huì)改變添加擾動(dòng)的測試樣本的結(jié)果; 投毒攻擊和組合攻擊會(huì)改變模型, 影響范圍更大, 威脅也更大; b)從攻擊操作的復(fù)雜程度看, 投毒攻擊屬于一種“一勞永逸”的攻擊方式, 而逃逸攻擊、組合攻擊需要攻擊者在每次攻擊前向目標(biāo)注入擾動(dòng), 相對與投毒攻擊執(zhí)行過程更加繁瑣; c)從攻擊執(zhí)行條件上看, 由于獲得訓(xùn)練數(shù)據(jù)的代價(jià)較大, 因此投毒和組合攻擊花費(fèi)的代價(jià)更大; d)從攻擊的隱蔽性來看, 投毒攻擊使大量測試樣本結(jié)果出現(xiàn)偏差, 攻擊容易被察覺; 逃逸攻擊和組合攻擊針對特定樣本攻擊, 攻擊不易察覺; e)從攻擊效果上來看, 多標(biāo)簽分類任務(wù)中, 大部分投毒、逃逸攻擊不能使目標(biāo)被分類為指定類別, 而組合攻擊中的后門攻擊能誤導(dǎo)模型將目標(biāo)分類為指定類別。

3.3.2 攻擊效果評估

攻擊完成后, 攻擊者需要對攻擊結(jié)果進(jìn)行評估, 以評判對抗樣本的優(yōu)劣。從適用范圍來看, 可將評價(jià)指標(biāo)劃分為通用指標(biāo)和特殊指標(biāo)。

1) 通用指標(biāo)

(1) 攻擊成功率

攻擊成功率(Attack success rate, ASR)表示成功的攻擊次數(shù)占全部攻擊次數(shù)的比例, 主要用來衡量攻擊算法生成的擾動(dòng)效果好壞。攻擊成功率越高表示攻擊算法效果越好。攻擊成功率是圖對抗研究中應(yīng)用最多的評估指標(biāo)之一, 計(jì)算表達(dá)式為

其中Nsuccess-att表示攻擊成功的對抗樣本數(shù)量,Nall-att表示所有對抗樣本數(shù)量。

(2) 目標(biāo)模型準(zhǔn)確率

模型準(zhǔn)確率(Accuracy)表示結(jié)果正確的樣本數(shù)占全部測試樣本數(shù)量的比例, 用來衡量攻擊目標(biāo)模型效果的好壞, 目標(biāo)模型的準(zhǔn)確率越低證明攻擊越有效。計(jì)算表達(dá)式為

其中TP和TN分別表示真正例和真負(fù)例的數(shù)量,FP和FN分別表示假正例和假負(fù)例的數(shù)量。

(3) 平均擾動(dòng)連接數(shù)量

平均擾動(dòng)數(shù)量(Average modified links, AML)表示攻擊成功的情況下, 修改連邊數(shù)量的平均值。該指標(biāo)引用與圖拓?fù)涔糁? 主要用來衡量攻擊代價(jià)。AML的值越高則攻擊者成功執(zhí)行攻擊需要的代價(jià)越大。計(jì)算表達(dá)式為:

其中nsuccess表示攻擊成功的對抗樣本修改的連邊數(shù),NG′表示對抗樣本的數(shù)量。

(4)F1值

F1值(Macro-F1)表示精確率(Precision)和召回率(Recall)的加權(quán)平均。不同模型的F1值能衡量不同的攻擊性能。如Wang等[20]以虛假節(jié)點(diǎn)檢測器的F1值衡量攻擊的隱蔽性, 檢測器的F1值越高則擾動(dòng)的隱蔽性越好; Yu等[39]用目標(biāo)模型的F1值衡量擾動(dòng)的攻擊效果, 目標(biāo)模型的F1值越低則攻擊效果越好; Hou等[19]利用惡意軟件檢測器的F1值衡量模型攻擊效果, 其F1值越小則攻擊效果越好。F1值的計(jì)算表達(dá)式為:

其中TP和TN分別表示真正例和真負(fù)例的數(shù)量;FP和FN分別表示假正例和假負(fù)例的數(shù)量。

(5) 分類邊界

分類邊界(Classification margin, CM)表示節(jié)點(diǎn)被分類為正確類別的概率與被分類為錯(cuò)誤類別的最大概率之差。對分類模型來說,CM越大證明分類準(zhǔn)確度越高; 對攻擊者來說,CM的值總和越小則攻擊效果越好。分類邊界計(jì)算表達(dá)式為:

其中c表示目標(biāo)節(jié)點(diǎn)的真實(shí)標(biāo)簽,Z0,vc*表示圖模型分類正確的概率。分類邊界的值可以小于0, 此時(shí)表示節(jié)點(diǎn)被錯(cuò)誤分類。

(6) 分類錯(cuò)誤率

分類錯(cuò)誤率(Misclassification rate, MR)表示分類錯(cuò)誤的樣本個(gè)數(shù)占全部測試樣本的比例。對攻擊者來說, 目標(biāo)模型的分類錯(cuò)誤率越高則攻擊效果越好。文獻(xiàn)[11,23,25,29,27,44]采用此指標(biāo)衡量擾動(dòng)效果。分類錯(cuò)誤率的計(jì)算表達(dá)式為[23]:

其中Nmisclass表示錯(cuò)誤分類的樣本數(shù)量,Nall表示全部測試樣本數(shù)量。

(7)AUC值

AUC值表示ROC曲線下的面積, 用于衡量目標(biāo)模型效果。圖深度學(xué)習(xí)模型中,AUC值越接近1, 則模型效果越好。文獻(xiàn)[45-47]利用AUC值來衡量擾動(dòng)對目標(biāo)模型的攻擊效果,AUC值越低攻擊效果越好。Lin[47]等攻擊基于GCN的鏈路預(yù)測模型, 并將AUC值下降到0.1以下。

(8) 歸一化互信息量

歸一化互信息量(Normalized mutual information, NMI)結(jié)合互信息和信息熵, 計(jì)算出兩個(gè)聚落之間的相似度。在社區(qū)檢測任務(wù)中, NMI的值越大則社區(qū)檢測模型效果越好。對攻擊者來說, NMI的值越小則攻擊效果越好。文獻(xiàn)[9,15,39]等對社區(qū)檢測模型進(jìn)行攻擊, 其結(jié)果都顯示能將NMI的值降低至0.5以下。計(jì)算表達(dá)式為[15]:

其中H(A) 和H(B)分別表示A和B的信息熵,I(A,B)為兩社區(qū)的互信息。直觀上,A和B越相似, 互相能提供的有用信息越多,H(A|B)越小。

2) 其他指標(biāo)

(1) 添加的虛假節(jié)點(diǎn)的數(shù)量

添加虛假節(jié)點(diǎn)數(shù)量(Add fake node num, AFNN)用來描述攻擊代價(jià)大小, 值越小則攻擊者的代價(jià)越小, 應(yīng)用于添加虛假節(jié)點(diǎn)的攻擊方法[20]。

(2) 攻擊隱蔽性度量

攻擊隱蔽性度量由三個(gè)指標(biāo)組成, 分別為: 平均距離相對變化(Relative change of average distance, ΔL)、平均聚類系數(shù)相對變化(Relative change of average clustering coefficient,CΔ )、對角線距離的相對變化(Relative change of diagonal distance,DΔ )[37]。三個(gè)指標(biāo)均能表示擾動(dòng)添加前后圖結(jié)構(gòu)的變化程度, 主要用于衡量針對無標(biāo)度網(wǎng)絡(luò)的攻擊的隱蔽性。三個(gè)指標(biāo)越小表示添加擾動(dòng)前后圖結(jié)構(gòu)的變化越小, 攻擊越隱蔽。Xuan等[37]在無標(biāo)度網(wǎng)絡(luò)的攻擊中, 利用上述三個(gè)指標(biāo)控制擾動(dòng)連邊的數(shù)量。

平均距離相對變化表示擾動(dòng)添加前后最短路徑長度的平均值之差, 與原始網(wǎng)絡(luò)最短路徑長度平均值的比值。計(jì)算表達(dá)式為[37]:

其中n表示圖中節(jié)點(diǎn)個(gè)數(shù),di,j表示節(jié)點(diǎn)vi,vj之間的最短路徑。

平均聚類系數(shù)相對變化表示擾動(dòng)添加前后平均聚類系數(shù)之差, 與原始網(wǎng)絡(luò)平均聚類系數(shù)的比值, 反映了節(jié)點(diǎn)鄰居之間的緊密程度。計(jì)算表達(dá)式為[37]:

其中ik和iE分別表示節(jié)點(diǎn)iv的鄰居節(jié)點(diǎn)數(shù)量和鄰居連接數(shù)量。

對角線距離相對變化表示擾動(dòng)添加前后對角線距離之差與原始對角線距離的比值。其計(jì)算表達(dá)式為[37]:

其中ddi,j表示鄰接矩陣A中元素i,j到主對角線的距離。

(3) 正精度下降

正精度下降(Benign accuracy drop, BAD)應(yīng)用于后門攻擊中[43]。該指標(biāo)表示分別使用污染前后數(shù)據(jù)訓(xùn)練模型, 兩模型在無污染的測試數(shù)據(jù)上精確度的差距。該指標(biāo)用于衡量注入攻擊的隱蔽性, 越小則證明后門攻擊隱蔽性越好。

(4) 度平均值差異

度平均值差異(Average degree difference, ADD)表示攻擊前后測試樣本節(jié)點(diǎn)度的平均值之差。該指標(biāo)應(yīng)用在后門攻擊中[43], 用于衡量注入攻擊的隱蔽性, 其值越小證明后門攻擊隱蔽性越好。

(5) 節(jié)點(diǎn)選擇成功率

節(jié)點(diǎn)選擇成功率(Success rate with node selection, SRNS)表示將擾動(dòng)添加到多跳鄰居中, 與隨機(jī)添加擾動(dòng)后, 目標(biāo)模型的召回率之差[17]。該指標(biāo)適用于多階鄰居的攻擊場景, 用于衡量攻擊效果, 其值越低表示多階擾動(dòng)的效果越好。

(6) 分類準(zhǔn)確率變化

分類準(zhǔn)確率變化(Change in classification accuracy, CCA)表示攻擊前后目標(biāo)模型分類準(zhǔn)確率之差[48], 用于衡量針對分類任務(wù)的攻擊效果, 變化率越大則證明攻擊效果越好。

(7) 損失變化

損失變化(Loss change)表示攻擊后目標(biāo)模型的損失提升程度。變化程越大則攻擊效果越好[49]。

(8) 相似度分?jǐn)?shù)

相似度分?jǐn)?shù)(Similarity score, SS)表示節(jié)點(diǎn)向量之間的距離, 該指標(biāo)通常用于衡量對節(jié)點(diǎn)嵌入模型的攻擊效果。在攻擊中, 兩正(負(fù))例間的相似度下降, 或正負(fù)例間的相似度上升都能體現(xiàn)攻擊的有效性。Sun等[12]對基于圖嵌入的鏈路預(yù)測模型進(jìn)行攻擊, 改變目標(biāo)節(jié)點(diǎn)周圍的拓?fù)浣Y(jié)構(gòu), 提升了正例、負(fù)例節(jié)點(diǎn)間相似度導(dǎo)致預(yù)測出錯(cuò)。

(9) 攻擊時(shí)間

攻擊時(shí)間(Attack time, AT)一般用來衡量算法復(fù)雜度。文獻(xiàn)[47,50]對傳統(tǒng)的攻擊方法進(jìn)行改進(jìn), 從攻擊時(shí)間上證明新方法的優(yōu)勢。

(10) 模塊化度量Q

模塊化度量Q[15](Modularity Q)表示社區(qū)內(nèi)連邊eii(端點(diǎn)位于同一社區(qū))與跨社區(qū)連邊(端點(diǎn)位于不同社區(qū))數(shù)量平方2a的差。在針對社區(qū)檢測模型的攻擊中, 模塊度Q越小, 表示模型劃分的結(jié)構(gòu)越不穩(wěn)定, 則攻擊效果越好。計(jì)算攻擊表示為[15]:

(11) 單個(gè)對抗樣本生成時(shí)間

單個(gè)對抗樣本生成時(shí)間(Generating time in seconds per-sample, GTSP)用來衡量生成對抗樣本的效率。惡意代碼檢測模型的攻擊場景中, 單個(gè)樣本生成時(shí)間越短, 則固定時(shí)間內(nèi)生成的對抗樣本越多, 說明攻擊者的攻擊能力越強(qiáng)[18]。

(12) 修改特征平均數(shù)量

修改特征平均數(shù)量(Average number of features inserted, ANFI)表示在攻擊成功的情況下, 修改節(jié)點(diǎn)特征的數(shù)量的平均值。其值越小則攻擊者花費(fèi)的代價(jià)越小[18], 則攻擊模型設(shè)計(jì)越合理。

(13)M1和M2

M1和M2[51]都表示節(jié)點(diǎn)被分類到其他社區(qū)中的概率。在規(guī)避社區(qū)檢測模型的場景中, 兩項(xiàng)指標(biāo)越大則目標(biāo)節(jié)點(diǎn)隱藏程度越高, 攻擊效果越好。計(jì)算表達(dá)式為[51]:

其中C+表示目標(biāo)社區(qū)的節(jié)點(diǎn)集合,iG表示其他類別的社區(qū)。

(14)Hit@10

Hit@10表示推薦列表前10位中出現(xiàn)目標(biāo)商品的用戶數(shù)量與全部用戶數(shù)量之比。Fang等[52]攻擊Top-K類型的推薦系統(tǒng), 通過在普通用戶周圍注入惡意用戶, 大大提升了目標(biāo)商品的Hit@10。Zhang等[41]研究了基于知識(shí)圖譜嵌入的實(shí)體預(yù)測攻擊, 對于每個(gè)訓(xùn)練三元組(h,r,t), 使用其他實(shí)體作為候選項(xiàng)來替換h或t。預(yù)測階段Hit@10值越小則嵌入效果越差, 攻擊越成功。計(jì)算表達(dá)式為:

其中Nlist,vt∈top-10(list)表示推薦列表包含目標(biāo)節(jié)點(diǎn)vt的用戶數(shù)量,Nall-list表示所有用戶數(shù)量。所有指標(biāo)及文獻(xiàn)見表 1所示。

表1 圖深度學(xué)習(xí)攻擊模型評價(jià)指標(biāo) Table 1 The evaluation of deep learning based graph

4 常用數(shù)據(jù)集介紹

根據(jù)圖深度學(xué)習(xí)模型任務(wù), 可將常用數(shù)據(jù)集劃分至分類任務(wù), 鏈路預(yù)測任務(wù), 其他任務(wù)三大類任務(wù)中。分類任務(wù)旨在利用模型得到節(jié)點(diǎn)或圖的標(biāo)簽, 因此分類任務(wù)的數(shù)據(jù)集重點(diǎn)關(guān)注節(jié)點(diǎn)或子圖的類別數(shù)量的相關(guān)信息; 鏈路預(yù)測任務(wù)旨在求解圖中兩節(jié)點(diǎn)之間存在連邊的概率, 數(shù)據(jù)集的重點(diǎn)關(guān)注節(jié)點(diǎn)和連邊的數(shù)量; 其他任務(wù)中包括推薦任務(wù)、社區(qū)檢測、頂點(diǎn)提名等, 數(shù)據(jù)集的重要特征視不同任務(wù)有所區(qū)別。從現(xiàn)有的工作來看, 分類任務(wù)和鏈路預(yù)測任務(wù)是當(dāng)前的研究熱點(diǎn)。

數(shù)據(jù)集中, Cora[57]、Citeseer[57]、Pol.Blogs[58]被廣泛應(yīng)用于分類任務(wù)的評估中, 同時(shí)一些鏈路預(yù)測任務(wù)也使用了Cora和Citeseer數(shù)據(jù)集。Reddit[59]數(shù)據(jù)集包含大量的用戶和評論, 且用戶的類別標(biāo)簽足夠豐富, 可應(yīng)用于節(jié)點(diǎn)/圖分類任務(wù), 文獻(xiàn)[60]還將其應(yīng)用于輿情控制問題中。BA模型生成的無標(biāo)度網(wǎng)絡(luò)數(shù)據(jù)被用于圖分類任務(wù)[37]和鏈路預(yù)測問題[50]中。Twitter和Facebook數(shù)據(jù)集是社交網(wǎng)絡(luò)中常用的數(shù)據(jù)集, 可用于分類問題和鏈路預(yù)測任務(wù)中。KarateClub[61]、Dolphin[62]、Football Network[63]、Email-Eucore Network[64]是典型的社區(qū)檢測任務(wù)數(shù)據(jù)集。數(shù)據(jù)集對應(yīng)任務(wù)及文章見表 2所示。

表2 圖深度學(xué)習(xí)模型常用數(shù)據(jù)集 Table 2 Dataset of deep learning based graph

5 現(xiàn)有挑戰(zhàn)與未來展望

5.1 現(xiàn)有挑戰(zhàn)

現(xiàn)有的圖深度學(xué)習(xí)攻擊問題研究中, 攻擊者仍然面臨一些難以解決的難題。

1) 擾動(dòng)的隱蔽性及評價(jià)標(biāo)準(zhǔn)

當(dāng)前攻擊研究的挑戰(zhàn)之一是確保擾動(dòng)具備足夠的隱蔽性。在圖像領(lǐng)域中, 攻擊者通過限定像素值變化的范圍來保證對抗的隱蔽性。而對于離散的圖結(jié)構(gòu)數(shù)據(jù), 現(xiàn)有工作通過約束擾動(dòng)或采用預(yù)定義分布的方法[2]解決攻擊的隱蔽性問題。約束擾動(dòng)是指, 限制擾動(dòng)連邊/特征的數(shù)量。直觀來說, 當(dāng)添加擾動(dòng)的數(shù)量規(guī)模足夠小, 則就可以認(rèn)為擾動(dòng)足夠隱蔽。預(yù)定義分布是指攻擊者添加擾動(dòng)后不破壞原始數(shù)據(jù)的統(tǒng)計(jì)分布特征(如冪律分布等)。但兩種方案仍存在一定限制: 約束擾動(dòng)多采用人為定義的方法, 缺乏一定的數(shù)據(jù)支撐; 預(yù)定義分布在理論上有效果, 但有研究證明真實(shí)的數(shù)據(jù)服從不同的分布特征[65], 人為假設(shè)的分布規(guī)律同實(shí)際的圖數(shù)據(jù)分布特征可能不同。同時(shí), 由于擾動(dòng)類型的不同, 攻擊者在保證隱蔽性時(shí), 攻擊代價(jià)的衡量標(biāo)準(zhǔn)不相同, 也是當(dāng)前面臨的挑戰(zhàn)。

2) 擾動(dòng)添加的離散優(yōu)化問題

在圖深度學(xué)習(xí)模型的攻擊研究中, 受限于擾動(dòng)的離散性, 如何合理表示擾動(dòng)對梯度的影響, 以及利用梯度尋優(yōu)的過程存在挑戰(zhàn)。擾動(dòng)的離散性是指, 攻擊者只能選擇添加/刪除連邊或節(jié)點(diǎn)特征。雖然傳統(tǒng)的對抗攻擊方法FGSM[66]和C&W[67]的方法在連續(xù)空間域(如圖像、文本)上有比較好的表現(xiàn), 但不能直接應(yīng)用在離散優(yōu)化問題的求解上。此外, 即使定義出了梯度表示, 在大規(guī)模的圖數(shù)據(jù)中該問題往往是NP難的。因此, 如何轉(zhuǎn)化離散優(yōu)化問題, 簡化計(jì)算也是目前研究的面臨的困難之一。

3) 黑盒/灰盒攻擊研究較少

真實(shí)場景中的攻擊多是黑盒和灰盒攻擊。由于黑盒/灰盒攻擊在尋找最優(yōu)攻擊節(jié)點(diǎn)/連邊的問題上存在一定限制, 目前多數(shù)研究仍假設(shè)攻擊者掌握白盒知識(shí)。黑盒攻擊的研究還不夠深入, 其建模與求解過程仍存在相當(dāng)?shù)奶魬?zhàn)。

4) 擾動(dòng)添加后的再訓(xùn)練問題

投毒攻擊中, 如何解決模型重訓(xùn)練代價(jià)過大是當(dāng)前研究者們需要重點(diǎn)考慮的問題之一。逃逸攻擊不需要對原始模型做出修改, 因此假設(shè)模型是靜態(tài)的。但投毒攻擊在模型訓(xùn)練過程中發(fā)生, 對抗樣本注入后可能會(huì)對目標(biāo)模型訓(xùn)練結(jié)果產(chǎn)生影響, 攻擊者必須對模型進(jìn)行重新訓(xùn)練[68]。若圖的規(guī)模較大或目標(biāo)模型的訓(xùn)練過程較復(fù)雜, 則重訓(xùn)練會(huì)消耗巨大的計(jì)算資源, 增加攻擊者的攻擊成本。因此, 如何擺脫重訓(xùn)練的帶來的問題, 是攻擊者們需要解決的難題。

5.2 未來展望

未來工作中, 我們可以將圖深度學(xué)習(xí)與以下問題或方法進(jìn)行結(jié)合, 進(jìn)一步解決不同應(yīng)用場景下的特殊問題。主要包括:

1) 多種約束共同作用

未來工作中, 攻擊者應(yīng)當(dāng)考慮結(jié)合離散域和原始圖的分布特征制定攻擊模型的約束條件。目前大多數(shù)攻擊者通過改變目標(biāo)節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)來進(jìn)行攻擊, 且僅從離散域約束來保證隱蔽性。文獻(xiàn)[10]中提出, 若不考慮添加擾動(dòng)后度分布的變化, 則會(huì)導(dǎo)致攻擊隱蔽性的降低。則在擾動(dòng)約束設(shè)計(jì)上, 不僅在離散域上限制修改連邊(特征)的數(shù)量, 保證在不同規(guī)模的數(shù)據(jù)集上攻擊的伸縮性; 同時(shí), 在擾動(dòng)添加后, 結(jié)合度、節(jié)點(diǎn)中心性、節(jié)點(diǎn)的特征分布等指標(biāo)衡量攻擊前后圖數(shù)據(jù)的差異, 并以此作為額外的約束, 保證擾動(dòng)后圖數(shù)據(jù)能規(guī)避統(tǒng)計(jì)分析檢測。兩方面共同考慮使得攻擊更加隱蔽。

2) 轉(zhuǎn)化離散問題

圖對抗中, 數(shù)據(jù)離散問題帶來的挑戰(zhàn)是, 擾動(dòng)對目標(biāo)模型的梯度影響很難定義。這直接影響擾動(dòng)生成的計(jì)算難度。將離散問題進(jìn)行合理轉(zhuǎn)化能有效緩解計(jì)算難度, 如將離散的選擇過程抽象為連續(xù)優(yōu)化問題, 即利用連邊選擇概率替代原本的0/1選擇; 也可利用近似梯度來替代離散域上的梯度變化; 或考慮繞過計(jì)算梯度, 采用基于啟發(fā)式的方法來求解。

同時(shí), 對于全圖的離散優(yōu)化問題, 已有研究證明可以利用局部圖來表達(dá)全圖的結(jié)構(gòu)特征[88], 據(jù)此可將全圖優(yōu)化轉(zhuǎn)化為局部圖優(yōu)化問題, 不僅能減少梯度計(jì)算的規(guī)模, 同時(shí)為未掌握全圖信息的攻擊者提供攻擊機(jī)會(huì)。

3) 遷移攻擊

目前, 多數(shù)研究假設(shè)攻擊者掌握白盒知識(shí), 在真實(shí)場景下假設(shè)很難成立??赏ㄟ^建立替代模型, 并在替代模型上進(jìn)行攻擊, 將得到的對抗樣本遷移到目標(biāo)模型上。特別是在黑盒攻擊場景下, 如何利用更少的知識(shí)構(gòu)建更合理、更貼近原目標(biāo)模型的替代模型, 是未來遷移攻擊中需要不斷優(yōu)化的問題。

4) 結(jié)合增量學(xué)習(xí)

機(jī)器學(xué)習(xí)中, 增量學(xué)習(xí)模式解決了重訓(xùn)練的困境, 降低了模型更新對時(shí)間和空間的消耗。而在圖深度學(xué)習(xí)攻擊問題中, 投毒攻擊在模型的訓(xùn)練過程中向訓(xùn)練數(shù)據(jù)中添加新擾動(dòng), 本質(zhì)問題類似批量訓(xùn)練困境。未來工作中, 結(jié)合增量學(xué)習(xí)構(gòu)建攻擊模型, 學(xué)習(xí)新添加的數(shù)據(jù)對原始模型的影響, 減小計(jì)算代價(jià)是非常值得研究的問題。

5) 不同結(jié)構(gòu)的圖數(shù)據(jù)

現(xiàn)有的對抗工作大部分是針對靜態(tài)圖進(jìn)行的, 相對于靜態(tài)圖表示, 動(dòng)態(tài)圖考慮了時(shí)序信息, 在諸如交通信息[89]、網(wǎng)絡(luò)節(jié)點(diǎn)異常檢測[90]等現(xiàn)實(shí)場景中表現(xiàn)更好。雖然動(dòng)態(tài)圖包含比靜態(tài)圖更多的信息, 但也因此增加了對抗的難度, CTDNE[91]、JODIE[92]等方法證明動(dòng)態(tài)圖上同樣存在一定的安全隱患, 但由于現(xiàn)有的研究證明還不夠充分, 因此未來的研究重點(diǎn)之一是在動(dòng)態(tài)圖上的對抗問題。

異構(gòu)圖比同構(gòu)圖更復(fù)雜, 其將實(shí)際系統(tǒng)抽象成圖中不同類型的節(jié)點(diǎn), 以對應(yīng)真實(shí)場景中類型各異、彼此交互的組件?,F(xiàn)有的異構(gòu)圖研究從2011年Sun等的研究[93]起發(fā)展至今, 已經(jīng)在網(wǎng)絡(luò)表示上有了大量成果[94-101]。異構(gòu)圖增加了圖結(jié)構(gòu)的復(fù)雜度, 也給攻擊者帶來更多的機(jī)會(huì)。基于同構(gòu)圖的傳統(tǒng)手段在異構(gòu)圖上的有效性, 仍值得驗(yàn)證。同時(shí), 復(fù)雜的圖結(jié)構(gòu)表明攻擊具備更多的策略選擇, 如何在規(guī)模更大的組合中挑選最有的擾動(dòng), 也是值得深入的問題。

猜你喜歡
攻擊者擾動(dòng)梯度
Bernoulli泛函上典則酉對合的擾動(dòng)
一個(gè)改進(jìn)的WYL型三項(xiàng)共軛梯度法
基于微分博弈的追逃問題最優(yōu)策略設(shè)計(jì)
一種自適應(yīng)Dai-Liao共軛梯度法
(h)性質(zhì)及其擾動(dòng)
一類扭積形式的梯度近Ricci孤立子
正面迎接批判
愛你(2018年16期)2018-06-21 03:28:44
小噪聲擾動(dòng)的二維擴(kuò)散的極大似然估計(jì)
有限次重復(fù)博弈下的網(wǎng)絡(luò)攻擊行為研究
用于光伏MPPT中的模糊控制占空比擾動(dòng)法
武山县| 台中县| 乌兰县| 桑日县| 英德市| 舞钢市| 新巴尔虎右旗| 福鼎市| 博湖县| 揭西县| 普安县| 陇西县| 赣州市| 枝江市| 登封市| 衢州市| 天祝| 会宁县| 阜平县| 石景山区| 汉沽区| 资源县| 武夷山市| 霍林郭勒市| 军事| 新兴县| 多伦县| 廉江市| 榆社县| 清远市| 中阳县| 潮州市| 尼勒克县| 绍兴县| 南乐县| 五指山市| 景东| 巴里| 芜湖市| 昌乐县| 岳西县|