綜述:圖數據上的對抗攻擊與防禦

閱讀更多,歡迎關注公衆號:論文收割機(paper_reader)
原文鏈接:綜述:圖數據上的對抗攻擊與防禦

 

Sun, Lichao, Ji Wang, Philip S. Yu, and Bo Li. "Adversarial Attack and Defense on Graph Data: A Survey." arXiv preprint arXiv:1812.10528 (2018).

最新論文列表(持續更新)

 

引言


 

我們去年在公衆號中第一時間介紹了KDD 2018(Best Paper)[1] 和 ICML 2018 [2] 中兩篇關於在圖數據(Graph Data)上攻擊和防禦的論文。可以預見的是,在圖數據上面的對抗攻擊將成爲近兩年數據挖掘和機器學習研究的熱點話題。

 

今天,我們將結合一篇最近在Arxiv上發表的圖數據對抗攻擊綜述(文首引用),來對目前發表的文章做一個總結和概括,希望讀者能對這個問題有一個比較宏觀的理解。(點擊文末閱讀原文獲取綜述鏈接)

 

背景


 

在機器學習領域,對抗樣本和對抗訓練的概念通過2014年Ian Goodfellow提出的對抗生成網絡被大家熟知。早期的對抗訓練方法主要是應用在圖像,語音和文本數據。因爲這些數據是連續的,對抗的樣本和噪音比較容易產生。並且,對抗生成網絡在一些視覺和文本任務中比原來方法有了顯著地進步。

 

最近兩年,隨着深度學習的思想被應用到圖數據中,對於圖的研究從原來的傳統模型逐漸轉移到了表示學習(representation learning)上面。大家發現,其實圖數據在工業和學術界中非常常見,任何的關係數據都可以用圖來建模,最常見的應用便是推薦系統和知識圖譜。更有人指出,圖數據是人工智能的基石。

 

把對抗思想應用到圖數據是一個自然的過程,而且其在具體應用場景中也有廣泛的案例,例如在在線社交網絡中,水軍賬戶通過關注正常賬戶,發佈日常內容,來降低自己在社交網絡的中可疑度,從而避免被檢測到而封號。

 

2018年的KDD [1] 和 ICML [2] 兩篇文章掀開了圖數據對抗攻擊與防禦研究的大幕。到2019年四月,已經有將近五篇的後續研究文章出現在Arxiv和ICLR中,在最近公佈結果的IJCAI,KDD和 ICML中,相信能看到更多關於這個話題的論文。

 

下面,我將介紹如何定義圖數據上的對抗攻擊,攻擊的約束,攻擊的目標,攻擊方法以及防禦方法。

 

圖1:圖數據對抗攻擊基本流程 [1]

 

定義及約束


 

圖數據對抗攻擊的定義是:給定一個圖(節點和邊),通過修改這個圖,使得這種修改在不被察覺到情況下,能夠降低算法(例如節點分類和鏈接預測)在圖數據上面的表現

 

和優化問題相似,攻擊方的目標是在一定約束的條件下最大可能地干擾算法的表現。在KDD 2018 [1]的文章中,作者將圖被修改之後帶來的變化定義爲perturbations(擾動)即攻擊者對圖數據的攻擊後的擾動必須滿足與一些約束。例如,我們加邊或者減邊不能太多條,要保持圖的基本結構等等,這是對抗攻擊實現的前提。

 

具體來說有兩種類型的擾動:

 

  1. 維持結構的擾動(Structure-preserving Perturbation):加減節點和邊會改變一些圖的結構屬性,例如度分佈,節點中心性。其本質都是對邊(Link)的改變。所以新產生的對抗樣本要保持這些結構屬性的變化在一定範圍內。目前大部分文章都是這種類型的攻擊;

     

  2. 維持屬性的擾動(Attribute-preserving Perturbation):第二種擾動是通過修改節點屬性特徵來實現,所以攻擊者要保證這些屬性不能發生明顯變化,我們可以通過衡量節點(邊)特徵向量的相似度來維持特徵的穩定性。去年KDD [1] 的文章就攻擊了節點的屬性特徵。

 

攻擊方法和類別


 

從計算機安全研究角度來說,對抗攻擊不是一個新的話題,因爲對抗攻擊本來就是計算機安全研究的一個傳統研究方向和研究手段。在對圖數據攻擊方法進行分類時,我們利用計算機安全研究的術語,將其分爲投毒(poisoning)攻擊和逃脫(evasion)攻擊:

 

  • 投毒攻擊(Poisoning Attack):新產生的對抗樣本將被用於新算法的訓練,形象地來說,攻擊者對算法的訓練集進行投毒,從而影響訓練好的算法在未被污染的測試集上面的表現;

 

  • 逃脫攻擊(Evasion Attack):新產生的對抗樣本只存在測試集中,算法將在未被污染的訓練集上訓練。攻擊者的目標是讓對抗樣本影響原來訓練好的算法在測試集的表現。

 

根據圖數據的特點,我們還可以圖數據對抗攻擊任務分爲三類:

 

  1. 節點相關的任務(Node-related Task):對節點分類任務還有對節點嵌入(node embedding)的攻擊都屬於節點層面的攻擊,其目的是讓分類器分錯,降低其精確率或者召回率。因爲節點分類是目前圖數據的主要任務,因此大部分圖數據對抗攻擊論文都有研究到節點分類任務;

     

  2. 鏈接相關的任務(Link-related Task):鏈接預測(Link Prediction)是圖數據上面的另一個主要任務,推薦系統,知識圖譜,社交網絡都用到它。對於鏈接層面的攻擊,主要目的讓算法預測到錯的鏈接目標;

     

  3. 全圖相關的任務(Graph-related Task):全圖相關的任務主要是對整個圖的分類,常見於對生物結構的分類任務。一般是學習圖整體結構的低維嵌入,然後進行分類。這方面的對抗攻擊研究還比較少,可參考[3]。

 

還是借鑑計算機安全研究的方法,我們可以根據攻擊者掌握的信息,對攻擊方法進行另一個維度的分類:

 

  1. 白盒攻擊(White Box Attack):攻擊者掌握對方系統的所有信息,包括使用何種方法,算法輸出結果,計算中的梯度等等。這種場景是指當攻擊者完全攻入目標系統的時候;

     

  2. 灰盒攻擊(Grey Box Attack):攻擊只掌握一部分信息便可以發動攻擊,這種攻擊比白盒攻擊更具有危害,因爲攻擊者不需要完全攻破目標系統就可以發動攻擊。在研究中,我們可以針對具體任務和場景,對灰盒攻擊再進一步細分類別;

     

  3. 黑盒攻擊(Black Box Attack):攻擊者只能查詢到有限的攻擊結果,對目標系統的機制完全不瞭解。這種攻擊難度最大,對與防禦方的危害也最大。

     

根據攻擊者的目標,我們又可以將攻擊分爲:

 

  1. 可用性攻擊(Availability Attack):攻擊者的目標是降低整個系統的表現,例如整體的精確度,召回率等等;

     

  2. 完整性攻擊(Integrity Attack):攻擊者的目標是降低對於特定熱任務或者對象的表現,對整體表現不要求。例如,在好友推薦任務(鏈路預測)中,攻擊者可以讓算法無法預測到特定兩個人之間的好友關係。

 

圖2:對鏈接預測任務的攻擊流程示意圖 [9]

 

總結與展望


 

通過上面的介紹,我們對圖數據上的的對抗攻擊有了基本認識。目前的工作中,[2] 通過強化學習研究圖神經網絡的對抗攻擊,[1] 研究了傳統模型和深度模型在圖數據上的對抗攻擊,而且是第一篇研究屬性圖(Attribute Graph)的文章。[4] 從對抗攻擊的方法研究了圖數據上聚類算法的安全性。[5,6] 研究了鏈接預測任務上的對抗攻擊。我們可以看到,之前大部分研究都是基於深度模型,最近在Arxiv上面,[7] 提出了傳統圖模型上的對抗攻擊,並將其用一個優化問題定義。

 

在今年的ICLR中,去年KDD Best Paper的作者,又有一篇圖對抗攻擊的文章被接收,是今年ICLR唯一接收的圖對抗攻擊的文章 [8]。這篇文章使用元學習(meta learning)的方法,對節點分類任務的訓練過程進行攻擊。該文章表示,新的攻擊方法在極小的擾動下便可以大大降低圖卷積網絡(GCN)的表現。

 

在今年ICLR沒有接收的文章中,還有利用對抗生成網絡(GAN)生成相近的特徵空間,從而產生對抗樣本;也有對節點嵌入進行攻擊的文章。具體大家可以在文首的綜述原文中查看。

 

在已有的大部分研究中,對於擾動以及約束的定義基本上基於概念和模型,缺乏可解釋性以及與實際應用的聯繫。而且大部分攻擊模型只採用一種約束條件,由此產生的對抗樣本很容易被另外一個新的指標檢測到。而且在現有工作中,大部分指提出了攻擊方法,很少有研究防禦方法。

 

對於未來的研究,可以更多的探究更具實際價值的攻擊方法和防禦方法。根據上面到各種攻擊方法和種類,有很多的方面還沒有被探究。在一些屬性圖例如異質信息網絡(Heterogeneous Information Network)研究也有待探索。正如上段提到的,考慮多種約束的攻擊與防禦也是一個很好的研究方向。目前針對傳統圖模型算法例如隨機遊走(Random Walk),信度傳播(Belief Propagation)的對抗攻擊還很少,這也是一個未來的研究方向。

 

在今年IJCAI,KDD 和 ICML 的接收論文公佈後,本公衆號還會獻上最新的關於圖數據對抗攻擊與防禦研究的解讀,敬請期待。

 

Reference


 

[1] Zügner, Daniel, Amir Akbarnejad, and Stephan Günnemann. "Adversarial attacks on neural networks for graph data." In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, pp. 2847-2856. ACM, 2018.

[2] Dai, Hanjun, Hui Li, Tian Tian, Xin Huang, Lin Wang, Jun Zhu, and Le Song. "Adversarial Attack on Graph Structured Data." In International Conference on Machine Learning, pp. 1123-1132. 2018.

[3] Duvenaud, David K., Dougal Maclaurin, Jorge Iparraguirre, Rafael Bombarell, Timothy Hirzel, Alán Aspuru-Guzik, and Ryan P. Adams. "Convolutional networks on graphs for learning molecular fingerprints." In Advances in neural information processing systems, pp. 2224-2232. 2015.

[4] Chen, Yizheng, Yacin Nadji, Athanasios Kountouras, Fabian Monrose, Roberto Perdisci, Manos Antonakakis, and Nikolaos Vasiloglou. "Practical attacks against graph-based clustering." In Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, pp. 1125-1142. ACM, 2017.

[5] Jinyin Chen, Ziqiang Shi, Yangyang Wu, Xuanheng Xu, and Haibin Zheng. Link prediction adversarial attack. arXiv preprint arXiv:1810.01110, 2018.

[6] Sun, Mingjie, Jian Tang, Huichen Li, Bo Li, Chaowei Xiao, Yao Chen, and Dawn Song. "Data poisoning attack against unsupervised node embedding methods." arXiv preprint arXiv:1810.12881 (2018).

[7] Wang, Binghui, and Neil Zhenqiang Gong. "Attacking Graph-based Classification via Manipulating the Graph Structure." arXiv preprint arXiv:1903.00553 (2019).

[8] Zügner, Daniel, and Stephan Günnemann. "Adversarial Attacks on Graph Neural Networks via Meta Learning" arXiv preprint arXiv:1902.08412 (2019).

[9] Sun, Mingjie, Jian Tang, Huichen Li, Bo Li, Chaowei Xiao, Yao Chen, and Dawn Song. "Data poisoning attack against unsupervised node embedding methods." arXiv preprint arXiv:1810.12881 (2018).

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章