論文閱讀 | Is BERT Really Robust? A Strong Baseline for Natural Language Attack on Text Classification and Entailment


參考:NLP重鑄篇之對抗文本攻擊

[ 論文源碼: github ]

 

作者提出了一種對抗樣本生成算法TEXTFOOLER。

論文中,作者使用這種方法,對文本分類與文本蘊含兩種任務做了測試,成功的攻擊了這兩種任務的相關模型,包括:BERT,CNN,LSTM,ESIM等等。

 

問題定義

一個有效的樣本:和原樣本近似。

給定文本x,以及訓練好的模型F,F(x)=y,一個有效的對抗樣本要滿足:

其中是相似度函數,值域在[0,1],是最小相似度閾值。

 

TEXTFOOLER

論文的設定是黑盒模型,也就是說不知道模型的結構、參數、訓練數據,能夠知道的就是,輸入文本給模型然后得到輸出標簽以及相關置信度得分。
論文中生成對抗樣本主要包含兩個步驟:詞語重要性排序,詞語轉換

 

 

 

因為是黑盒,作者通過這種方式來算重要性。其中,X\wi = {w1, . . . , wi−1, wi+1, . . . wn},  就是去掉wi這個詞,觀察去掉wi前后的分數置信度的變化程度

在過濾停用詞時,去掉了the when more這種,使用的是NLTK2 和 spaCy3 庫。

 

詞語轉換

論文作者認為,一個好的詞語轉換機制需要滿足3個條件:

跟原詞有相近的語義,

跟上下文比較融洽,

能讓模型做出錯誤的預測。

同義詞提取:論文作者根據【1】中的詞向量,獲取所有跟詞wi最接近的N個且consine相似度大於一個閾值的詞,以此作為候選詞。N與閾值的大小都會影響到候選詞的數量,論文實驗中,將N設置為50,閾值設置為0.7。

詞性檢查:在候選詞中,只保留與wi詞性相同的詞。

語義相似度檢查:使用候選詞中每個詞替換原詞wi,得到對抗樣本x adv,論文使用UES【2】將句子編碼向量化,然后計算與原句子向量之間的consine相似度,如果相似度大於閾值,則保留這個候選詞。

獲取對抗樣本:如果還有候選詞,且存在候選詞改動后的樣本使得模型預測標簽與原標簽不一致,那么選擇語義相似度最大的一個詞生成對抗樣本;否則,我們選擇一個詞,其改變之后讓模型對原標簽的置信度最低,將原詞替換為此詞,並根據重要性排序選擇下一個詞重復第二步(詞語轉換)。

 

 

 根據算法生成的對抗樣本示例:

 

 語義相似度還是挺高的。

 

實驗

實驗選擇了兩種文本任務:文本分類,文本蘊含,使用的相關數據集為:

 

實驗中分別為兩個任務選擇了三個模型,模型的原始准確率如下:

 

 

結果

 

其中Original Accuracy表示原測試集准確性,After-Attack Accuracy表示對抗樣本的准確性,% Perturbed Words表示對抗樣本與原樣本相比擾動的比例,Semantic Similarity表示對抗樣本與原樣本的相似度,Query Number表示使用模型F的次數(論文中未明確說明),m/mm中m表示匹配mm表示不匹配。
論文中結論顯示,成功地攻擊了兩種文本任務,使用低於20%的擾動率,將模型的准確率降低到15%以下;且觀察到一個簡單結果:模型的准確率越高,就越難被攻擊。

降低了好多。

 

 

人工評價:

論文作者隨機抽取了MR與SNLI個100個對抗樣本,進行人工評價(1-5分),結果表明對抗樣本與原樣本在語法上相近,絕大部分情況都有相同的屬性,且他們之間的感知差異較小。

 

 

討論分析

可遷移性

論文作者使用一個模型生成的對抗樣本去測試另外一個模型,結果表明這樣生成的樣本也會使其他模型一定程度上降低准確性。

對抗訓練

論文中使用生成的對抗樣本與原訓練集一起重新訓練模型,結果表明新得到的模型比原模型更難收到攻擊,具有更好的魯棒性。

錯誤分析

論文作者認為,他們的對抗樣本容易收到三種類型的錯誤影響:詞義歧義,語法錯誤,任務敏感的內容變換。

總結

在黑盒模型的情況下,以及在文本分類和文本蘊含任務中,該論文成功進行了對當前最優的模型的對抗攻擊。實驗表明,該論文提出的TEXTFOOLER方法能夠生成有效的對抗樣本,並且大部分都是人類易讀的,且語法與語義上與原文本相似。

論文之外

在實際工作中,使用bert類模型做中文文本分類與文本蘊含任務的時候,也遇到了模型魯棒性的問題,增加或刪除一個字詞,甚至只是一個標點符號,都可能會改變模型最終結果,這種修改導致模型結果不一致的可能性大概在3-4%(作者的任務中)。反過來說,如果解決這種及其微小擾動的魯棒性問題,是不是直接可以提升模型准確率3-4個點?

論文也給了代碼,感覺很棒棒,之后想用在比賽中的對抗訓練中試一試!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM