汪可馨
(安徽理工大學 計算機科學與工程學院,安徽 淮南 232001)
文本對抗樣本的存在降低了基于深度神經網絡的分類模型魯棒性和安全性[1],但對文本對抗樣本的研究有助于建立針對此類攻擊的檢測防御工作,提高文本分類模型的魯棒性和安全性。目前的文本對抗攻擊研究根據擾動粒度可分為字符級攻擊、詞級攻擊和句級攻擊。詞級攻擊因其在攻擊效果和樣本質量等方面表現(xiàn)更好而受到更多關注。現(xiàn)有的詞級攻擊方法主要有白盒條件下基于梯度的攻擊和黑盒條件下基于重要性的攻擊。Papernot等[2]提出白盒條件下基于梯度的攻擊方法,該方法雖然在LSTM模型上達到很高的攻擊成功率,但所生成的對抗樣本的語法錯誤率也非常高。Sato等[3]提出iAdv-Text,通過在嵌入空間中使用余弦相似度限制擾動的方向找到輸入文本中單詞的替換詞,減少了拼寫和語法錯誤。Wang等[4]提出快速梯度投影方法(FGPM),將詞替換引起的分類置信度變化近似為梯度大小與原詞和其同義詞在梯度方向上投影距離的乘積,從而選出最優(yōu)替換詞。以上基于白盒條件下的攻擊雖然可以達到很好的攻擊效果,但在實際生活中應用較少,日常使用較多的是黑盒條件下基于重要性的攻擊。
為了避免基于梯度的方法應用于文本領域的局限性,Alzantot等[5]提出一種基于遺傳算法的詞級黑盒攻擊方法來生成語義和語法相似的對抗樣本,解決了離散文本的生成和搜索難題。Ren等[6]提出概率加權詞顯著性方法(PWWS),該方法雖然保持了很低的詞替換率,但低詞替換率不等價于高語義相似度,不能保證產生最優(yōu)的結果。Jin等[7]提出一種有效攻擊BERT模型的黑盒攻擊方法TEXTFOOL。但以上研究大都針對英文文本,語言不同使得針對英文文本的方法不能直接應用到中文數據上。因此,王文琦等[8]提出一種針對中文文本的詞級黑盒攻擊方法WordHanding,該方法生成的對抗樣本雖然可以表達原始文本的意思,但視覺上的擾動太大,影響了對抗樣本的質量。仝鑫等[9]也提出一種基于重要性的中文文本對抗樣本生成方法CWordAttacker,采用定向詞刪除評分機制,確定關鍵詞后使用繁體、拼音替換等多種攻擊策略生成與原句語義一致的對抗樣本。以上基于黑盒條件的研究雖取得很好的成果,但攻擊效果和對抗樣本質量仍有提升空間,尤其先前的工作容易忽視語義相似性的約束和評估。
本文在前人探索的基礎上,提出一種新的在黑盒條件下基于同義詞替換的詞級文本對抗攻擊方法,基于分類概率變化為單詞找到最佳同義詞且保證詞性相同,再根據語義相似度確定最優(yōu)的對抗樣本,在保證攻擊成功率的同時最大化了與原始樣本的語義相似性,滿足詞匯、語法和語義的約束,最后通過使用所生成的對抗樣本進行對抗訓練,提高了模型的魯棒性,使模型能夠有效防御此類攻擊。
給定一個包含r個輸入樣本的輸入空間X和一個包含k個可能輸出標簽的輸出空間Y,x=w1w2…wi…wn表示由n個單詞組成的輸入樣本,x∈X,wi∈D,D表示包含輸入樣本中所有可能單詞的字典,Y={y1,y2,…,yk},分類器F需要學習一個從輸入樣本x∈X到正確標簽ytrue∈Y的映射f:X→Y。在文本分類任務中,分類器F可以根據最大后驗概率將輸入樣本x正確分類為ytrue,即
(1)
式中:P(yi|x)表示分類器F將輸入樣本x映射到標簽yi的概率,概率最大的標簽即為正確標簽ytrue。
攻擊者通過在x上添加一個不易察覺的擾動Δx生成對抗樣本xadv,使分類器F輸出錯誤標簽,即
(2)
則對抗樣本xadv的定義為
xadv=x+Δx,
(3)
一個高質量的對抗樣本在攻擊效果好的同時需要令擾動足夠小以使人無法察覺,這就要求文本對抗樣本滿足詞匯、語法和語義約束。具體而言,就是不能出現(xiàn)單詞拼寫錯誤,語法必須正確,原始樣本的語義不應發(fā)生顯著變化。本文方法基于同義詞替換,避免出現(xiàn)單詞拼寫錯誤,滿足了詞匯約束,過濾停用詞,再為其余非停用詞的單詞找到詞性相同的替換詞,保證語法正確,滿足了語法約束,按照分類概率變化程度排序“原詞-替換詞”,保證攻擊性能,最后根據語義相似度進行數輪單詞替換,決定最終的對抗樣本,最大化與原始樣本的語義相似度,滿足了語義約束。算法流程如圖1所示。
圖1 對抗樣本生成流程
1.2.1 過濾停用詞
過濾停用詞是自然語言處理中的一個預處理方法,停用詞是指文本中所含信息很少的單詞,如冠詞、介詞、代詞、連詞等。停用詞在人類語言中大量存在,但所含的信息量卻很少,刪除這些詞可以關注文本中更重要的信息,并且會減小數據集的大小,從而提高效率。鑒于對效率的考慮,本文方法只保留名詞、動詞、形容詞和副詞,而將其他詞性的單詞都設置為停用詞,特別指出,專有名詞也被設置為停用詞,如人名、地名、國家名等。
1.2.2 選擇替換詞
(4)
1.2.3 排序“原詞-替換詞”
(5)
為保證最大化語義相似度,僅使用此排序前25%的單詞進行下一步的單詞替換。
1.2.4 單詞替換
為進行實證評估,在兩個目標模型上用兩個流行數據集進行了試驗,比較本文方法與其他攻擊方法所生成的對抗樣本對模型分類準確度的影響及與原始樣本的語義相似度,用來評估方法的攻擊效果和對抗樣本質量,并進行對抗訓練,驗證其防御效果。
實驗所使用的數據集是AG’s News和DBPedia。AG’s News是一個多類的新聞分類數據集,分為4個類:World、Sports、Business和Sci/Tech,每個類包括30 000個訓練樣本和1 900個測試樣本。DBPedia數據集是通過從DBPedia 2014中挑選14個不重疊的類構建而成的,包括Company、Athlete、Artist、OfficeHolder等類別,分別從這14個類中隨機選擇40 000個訓練樣本和5 000個測試樣本進行實驗。
模型采用的是卷積神經網絡(CNN)和循環(huán)神經網絡(RNN)。具體而言,實驗使用了文獻[11]中的CNN模型,該模型由3個卷積層、1個dropout層和1個最終的全連接層組成,卷積層中的濾波器大小分別為5、4、3。RNN模型使用的是長短期記憶網絡模型(LSTM),該模型將CNN的3個卷積層替換為3個LSTM層,每個層有128個單元。為了評估本文方法的攻擊效果,將其與PWWS和FGPM兩種方法進行對比,這兩種方法都是基于同義詞替換的文本對抗攻擊方法,其中PWWS是黑盒攻擊,F(xiàn)GPM是白盒攻擊。
從對抗樣本的模型分類準確度和與原樣本的語義相似度2個方面評估攻擊的性能。兩種模型對原始樣本和基于AG’s News和DBPedia數據集不同攻擊方法生成的對抗樣本的分類準確度如表1 所示。攻擊方法越有效,模型的分類準確度下降得越多。結果表明,與PWWS和FGPM相比,在4種情況下,本文方法最大程度降低了模型的分類準確度,在AG’s News上平均降低了61.95%,在DBPedia上平均降低了60.5%。
表1 不同分類方法的分類準確度
不同方法生成的對抗樣本與原始樣本的語義相似度如表2所示。語義相似度的計算方法與1.2中用到的方法相同,使用TF-IDF模型將預處理后的樣本轉換為TF-IDF向量,再計算向量之間的余弦相似度,即得到樣本之間的語義相似度。結果表明,與PWWS和FGPM的相比,本文方法所生成的對抗樣本與原始樣本的語義相似度在AG’s News上平均高7.85%,在DBPedia上平均高6.93%,不僅保證了詞匯和語法的正確,也最大程度保留了語義。
表2 不同方法的語義相似度
使用本文方法在CNN模型上基于AG’s News數據集生成的對抗樣本實例如表3所示。括號前的單詞是原始樣本中被替換的詞,括號內的單詞是替換詞。
表3 對抗樣本實例
防御對抗攻擊的目標是建立一個強大的深度神經網絡模型來很好地處理各種已知和未知的對抗攻擊技術。在現(xiàn)有的研究中,主流的防御策略可分為對抗樣本檢測和模型增強,對抗樣本檢測是指根據觀察到的細微差異直接區(qū)分對抗樣本和合法輸入,文本領域中通常采用的是拼寫檢查[12],用來防御字符級攻擊。模型增強包括更新模型參數或修改模型架構,例如對抗訓練[13]和添加額外的層。
本文采用對抗訓練評估本文方法對提高模型魯棒性的作用。對抗訓練通常是將生成的對抗樣本加入到訓練集中,重新訓練模型,從而提高模型的泛化能力和魯棒性,使模型在被對抗樣本攻擊時仍能保持較高分類準確度。為了驗證本文方法所生成的對抗樣本通過對抗訓練是否有助于提高分類模型的魯棒性,使用本文方法在CNN模型上基于AG’s News數據集生成4 000個對抗樣本作為集合A,從集合A中隨機抽取一定數量的對抗樣本加入到原始訓練集中,重新訓練該模型,再用本文方法、PWWS、FGPM對重新訓練后的模型進行攻擊,如果模型相較于對抗訓練之前分類準確度有所提高,即說明本文方法可以有效防御對抗攻擊。如圖2所示,橫坐標表示從集合A中抽取加入到原始訓練集中的對抗樣本的數量,縱坐標表示經過對抗訓練的模型對不同攻擊方法生成的對抗樣本的分類準確度,在對抗樣本數量為1 000個時,模型被本文方法攻擊即可以保持82%的分類準確度,且在對抗樣本數量為3 000個時分類準確度最高,為84%。另外在用其他方法攻擊時,也可以達到最高76%和68%的分類準確度,相較于未進行對抗訓練分別提高了38.5%和30.5%。結果表明,用本文方法生成的對抗樣本進行對抗訓練可以提高模型的魯棒性,使模型有效防御對抗攻擊。
圖2 對抗訓練后分類準確度
針對文本分類任務提出一種生成對抗樣本的有效方法,基于分類概率變化為單詞選擇最佳同義詞作為替換詞,再由語義相似度決定最優(yōu)的對抗樣本。實驗表明,生成的對抗樣本可以大大降低文本分類的準確度,并與原始樣本保持高語義相似度,滿足詞匯、語法的約束,使人難以察覺擾動,與其他方法相比具有顯著優(yōu)勢。最后通過對抗訓練試驗,提高了模型的魯棒性,可使垃圾郵件過濾、虛假新聞檢測等應用有效防御此類攻擊。不足之處是本文方法更適用于短文本,對于長文本效率較低。