自從對抗攻擊(Adversarial Attack)在影象識別網路上被發現之後,神經網路的應用安全成了一個熱議的話題。這裡介紹 SysML 2019大會兩篇有關神經網路安全性的論文。第一篇討論對抗攻擊在離散輸入的泛化定義,並將其應用於文件處理的網路上,第二篇討論對抗攻擊和常用的網路壓縮的關係。
SysML簡介:SysML,全名為 System and Machine Learning,其目標群體是計算機系統和機器學習的交叉研究。會議由史丹佛大學的研究人員牽頭,致力於發展這兩方面領域的新的交集,包括機器學習在計算機系統應用上的實踐方法和設計概念,以及與實踐相結合的新的機器學習方法和理論。
宣告:本文的所有圖片和公式都來自於原論文。
論文 1: 離散對抗攻擊和次模函式的優化以及在文字分類中的應用
論文:DISCRETE ADVERSARIAL ATTACKS AND SUBMODULAR OPTIMIZATION WITH APPLICATIONS TO TEXT CLASSIFICATION
作者:Qi Lei, Lingfei Wu. 等等
來源地址 https://www.sysml.cc/doc/2019/79.pdf
1. 背景知識
對抗攻擊:對用於影象識別的神經網路的攻擊。
神經網路可以成功地識別左圖為熊貓。但是通過在原圖上新增人眼難以分辨的噪音之後,神經網路以高置信率識別右圖為長臂猿。圖片來自於 https://openai.com/blog/adversarial-example-research/
對抗攻擊威脅了現存的神經網路的應用安全。如果通過影象識別的銀行,或者自動駕駛系統被惡意攻擊,後果將不堪設想。所以如何防禦對抗攻擊,以及是否還存在其他形式的對抗攻擊,都是很重要的研究問題。
本文解決的問題:常見的對抗攻擊一般是用於影象識別的神經網路,他們的輸入是一個矩陣。這篇文章將對抗攻擊泛化到離散集網路, 討論並實現了對抗攻擊在離散集輸入神經網路中的應用。此框架適用的應用型別如下表所示:
處理離散集資料的神經網路包括很多常用的文字識別,病毒程式鑑定和惡意網站鑑定。
2. 方法
處理離散資料的神經網路:通常,離散資料會被轉換成特徵向量,比如 bag of words 演算法。下圖,一個句子「I like to eat lunch in this cafe」轉化成為特徵向量之後,輸入卷積/或是迴圈神經網路,然後網路輸出計算結果。
3. 問題建立
離散資料的對抗攻擊可以抽象成一個優化問題。在輸入的意義不變的情況下,尋找別的特徵向量集來替代當前的特徵向量集,同時最大化網路對攻擊物件的輸出,使得網路識別對抗樣本為攻擊物件,與此同時不改變輸入的語義。本文把最抽象的這類問題總結為 Problem 1,又證明 problem 1 是一個 NP hard 的問題。
4. 對問題的轉化
如果假設神經網路函式光滑的話,classification function 就可以被泰勒展開。
Problem 1 可以放鬆成 Problem 2,是一個可以在多項式時間 (polynomial time) 解決的問題。
由於 Classification function 是被泰勒展開的,對於 Problem 2 的優化只關心相近的資訊,但是像詞嵌入 (word embedding) 這類的預處理,近義詞不一定在向量表示裡互相接近,所以傳統的梯度演算法效果並不好。
但是另外一個有用的方法就是假設對於文字處理的神經網路是一個次模函式。來自百度百科的直觀理解是,「次模函式是一個集合函式,隨著輸入集合中元素的增加,增加單個元素到輸入集合導致的函式增量的差異減小」。作者證明了用於語言識別的神經網路:WCNN 與 RNN 都是次模函式。
由於在問題一的定義下,f 是一個單調遞增的函式,加之 f 的次模函式屬性,問題轉化成在模的限制下最大化一個單調遞增的次模函式,這種問題可以很好的用貪婪演算法尋找近似的最優解。
5. 語言識別網路的對抗攻擊
對抗攻擊在本文的定義:在不改變文字語義的情況下,替換文字詞彙而導致神經網路的誤判。
本文采取的方法是對一句話的多個詞語進行替換,在不改變語義的情況下,讓識別文字的神經網路誤判。示例見下圖:
5.1 語句和詞語的同意義轉換
在尋找同意義的語句替換時,既要保持語義相近,又要保持語法自然。為了保持語義相近,該研究用 WMD(word mover distance) 作為語義相似度的衡量標準。
作者在語法自然方面使用了以下限制條件:
x' 是 x 的對抗攻擊語句。也就是說,新的替換語句 x'的概率與原語句的概率應該是相近的。
5.2 結合梯度貪婪演算法,本文的攻擊演算法如下:
在演算法一中,文件的句子被拆開,分別用特徵向量表達。line 3 中把向量特徵表達的句子找到句義想近的句集,同時保持 word mover distance 小於臨界值。再使用演算法二尋找替換的句子。之後將句子拆成詞語,用特徵向量表達,在 WMD 低於臨界值,而且句法不變的情況下,產生相鄰的詞語集,再用演算法三替換句子中的詞語。
演算法二中,用貪婪演算法尋找同意義的句子,在轉換過的句子數小於臨界值的時候,在保持網路判斷始終是攻擊判斷的情況下替換成同意義的句子。
演算法三中,通過梯度資訊找到一系列從詞義相近集裡的詞語,在保持網路判斷不變的情況下,替換語句裡的詞語。
6. 實驗與結果
這種攻擊演算法先後用於 WCNN 與 LSTM,並在三個任務上做了實驗:
1. 甄別文件是否為假新聞(News),
2. 甄別垃圾郵件,
3. 從 Yelp 裡的文字評論判斷使用者給幾顆星。
此外,作者又把這個方法和另一個方法(kuleshov et. al. 2018)進行了比較,結果如下:
可見通過文件同語義替換,該方法可以把原先網路識別準確性從大於 90% 降到 50% 以下,同時該方法也優於其對比方法。
另外,作者還對比了攻擊成功率和替換語句多少的關係。可見替換句子越多,句子裡的詞語替換越多,攻擊的成功概率就越大。
為了確保演算法替換過的語句相比較原語句不會對人類讀者造成歧義,作者把攻擊語句給人類閱讀進行對比試驗,相比於神經網路,人類可以很好地區分文件的意義,結果如下:
總結
該論文給出了一個對待離散輸入網路的攻擊方法,把它轉換成一個優化問題,並且證明了用於文字識別的網路函式的次模性,指出貪婪演算法可以很好的近似最優解。並且成功地將這個攻擊應用在了文字識別的網路上。
分析師評論
以往對抗攻擊大多用於影象識別網路,這篇文章用了一個更廣泛的對抗攻擊的定義,指出一個用於文字處理的網路也可以進行對抗攻擊。此方法較為新穎,它把矩陣輸入泛化到離散集輸入,因而衍生出許多相關應用,並不侷限於語言處理。
論文 2:理解對抗攻擊與神經網路壓縮之間的關係
To Compress or Not to Compress: Understanding the Interactions between Adversarial Attacks and Neural Network Compression.
作者: Yiren Zhao, Ilia Shumalov 等等。
來源連結: https://www.sysml.cc/doc/2019/127.pdf
1. 介紹
由於神經網路的引數量巨大,在工程實踐中,尤其是在硬體的處理上,大量的引數需要被壓縮,剪枝&量化 (pruning & quantization) 是兩種常用的神經網路壓縮方式。作者模擬了黑客攻擊神經網路的幾種方式,其中包括對經過引數壓縮的神經網路進行攻擊,因此這篇文章的主要貢獻是系統的討論了壓縮和對抗攻擊的關係。
2. 相關知識
2.1 pruning(剪枝)
這是一種常見的縮減引數的方法,經常應用於神經網路從軟體到硬體的轉換中。簡單的說,pruning 就是在各個引數之外加一個 mask operation,比如以下公式:
一種常見的 mask 的作用就是把臨界值\alpha 以下的引數變為 0. 這種方法被稱為 one-shot-pruning,可以把常見的 Alexnet 引數含量減少 9 倍以上。
比 one-shot-pruning 更優的方法叫做 dynamical network surgery,也就是設一個上限和下限。
上限和下限中間的引數可以繼續進行學習和調整。這種方法可以使壓縮率更大。本文正是採用了這種 pruning 方法。
2.2 量化
顧名思義,就是把原先用 32 位元表示的引數量用更少的位元來表示。有文獻指出,將原 32 位元的引數用稍小精度的」low precision fix point number」表示之後,比如 8 位元,網路的識別準確率沒有大的變化。但是對於儲存有限的硬體來說,這種量化的方法可以大大地提高網路的應用效能。
3. 對於威脅的模擬
根據假設黑客的攻擊模式,作者列出了以下的三種情況。
情況 1. 黑客通過對壓縮過的網路模型進行攻擊,再把攻擊應用於別的壓縮過的網路。
情況 2. 黑客對原模型製造的神經網路進行攻擊,再把攻擊應用於壓縮過的網路。
情況 3. 黑客對壓縮過的神經網路進行攻擊,再把攻擊應用於原網路。
下圖表示情況一和情況三:
3.1 神經網路模型與壓縮方法
本文使用 LeNet5 對 MNIST 手寫數字的識別,和 CifarNet 對於 CIFAR10 影象資料的識別。
對於壓縮方法,本文使用了 fine-grained pruning,並且對引數和 activation 都進行了量化。
3.2 對抗方法:
本文使用了三種最常見的攻擊方法:I-FGSM, I-FGM, 和 Deepfool.
4. 結果
4.1 pruning 和攻擊的關係
作者指出:
1. 如果對 slightly pruned 的網路的攻擊可以成功地攻擊原網路,反之亦然。
2. 對於 heavily pruned 的網路的攻擊難以轉換成原網路的攻擊,但是 heavily pruned 的網路的識別準確率也大大地下降。
3. 對於原網路的攻擊可以成功地轉換成對 pruning 處理過網路的攻擊。這種情況下準確性大大提高,而且 transferability 也最小化。
4.2 量化和攻擊的關係:
作者指出:
1. 當 bit-width 高的時候,對量化的網路攻擊可以轉移到對原網路的攻擊,反之亦然。
2. 當 bit-width 低的時候,對量化的網路攻擊更難以轉換到對原網路的攻擊。
3. 作者認為,量化啟用函式改變了 CNN 的特徵空間,從而使得攻擊更加難以轉移到原網路
總結
這篇文章主要是實驗性地對神經網路壓縮和對抗攻擊的關係進行了研究,對於機器學習模型的安全性研究具有重要意義。pruning 減少了網路的引數密度,對於用原網路作出的攻擊有較小防禦性,對引數和啟用函式的大幅度量化也能使攻擊的轉移性變小。但是總地來說,黑客如果對大多數現有應用中的高 bit-width 壓縮過的網路進行攻擊,可以成功的攻擊原網路或者是別的壓縮過的網路。
分析師簡介:Shuchen 目前在圖賓根大學人工智慧研究所與馬克斯普朗克智慧系統做研究實習,專案研究如何使深度神經網路的影象識別更接近於人類的視覺識別。本科物理,計算神經碩士。主要研究興趣在於尋找生物學習的的計算模型。歡迎交流。