一文读懂文本处理中的对抗训练
作者丨WenZe、Leo
單位丨追一科技AI Lab研究員
背景與研究意義
深度學(xué)習(xí)技術(shù)的快速發(fā)展,大幅提升了眾多自然語言處理任務(wù)(比如文本分類,機器翻譯等)的效果,越來越多的深度學(xué)習(xí)模型被用于現(xiàn)實生活中。但是深度學(xué)習(xí)模型本質(zhì)上的黑箱屬性,也為實際應(yīng)用帶來了潛在的風(fēng)險。
早在 2014 年,Szegedy et al. [1] 發(fā)現(xiàn)只要對深度學(xué)習(xí)模型的輸入添加一些微小的擾動就能輕易改變模型的預(yù)測結(jié)果。后續(xù)的研究將該種擾動稱之為對抗擾動,擾動后的輸入稱為對抗樣本,將輸入對抗樣本誤導(dǎo)模型的這一過程稱為對抗攻擊。深度學(xué)習(xí)模型遭遇對抗攻擊時所表現(xiàn)出的脆弱性,給實際應(yīng)用帶來了極大的風(fēng)險。自然語言處理的應(yīng)用比如文本分類、情感分類、問答系統(tǒng)、推薦系統(tǒng)等也都受到了對抗攻擊的威脅 [2]。?
在上述背景下,已經(jīng)有大量的研究集中于提升深度學(xué)習(xí)模型對于對抗攻擊的魯棒性(也稱為對抗防御),其中對抗訓(xùn)練是其中的主要方法之一。本文對文本處理中的對抗訓(xùn)練進行初步的梳理和總結(jié)。?
本文接下來先介紹對抗訓(xùn)練及其相關(guān)概念的基本定義,這一部分重點闡述的對抗擾動的基本特征及對應(yīng)產(chǎn)生擾動的基本方法,由于對抗訓(xùn)練最早開始于圖像處理中,其在圖像領(lǐng)域中的進展也領(lǐng)先于文本,因此本文第三部分結(jié)合其在圖像處理領(lǐng)域的研究進展,詳細介紹了對抗攻擊的基本類型與代表方法,然后簡單介紹我們最近在文本分類和魯棒性上做的實踐,最后進行總結(jié)。
基本定義與概念
本章節(jié)介紹對抗訓(xùn)練 [3] 及相應(yīng)的基本概念,此段內(nèi)容主要源于文獻 [2]。對抗訓(xùn)練指的是在模型的訓(xùn)練過程中構(gòu)建對抗樣本并將對抗樣本和原始樣本混合一起訓(xùn)練模型的方法,換句話說就是在模型訓(xùn)練的過程中對模型進行對抗攻擊從而提升模型對于對抗攻擊的魯棒性(也稱為防御能力)。可以說不同的對抗攻擊方式?jīng)Q定了不同的對抗訓(xùn)練方法。因此文本中的不同對抗攻擊方式是本文闡述的重點,簡單的對抗攻擊示列如圖 1。
▲?圖1.?簡單的對抗攻擊示列(圖片來自https://zhuanlan.zhihu.com/p/37260275)
如圖 1 所示(左圖為原始樣本,中間為添加的對抗擾動,右圖為構(gòu)造的對抗樣本),可以看出在加入對抗擾動后原始的圖片被誤判(雪山變識別成了狗,河豚被識別成了螃蟹),但是人眼并不能夠明顯發(fā)現(xiàn)原圖和對抗樣本的差異,更不會產(chǎn)生如此離譜的判斷。?
可以看出對抗攻擊指的是在模型原始輸入上添加對抗擾動構(gòu)建對抗樣本從而使模型產(chǎn)生錯誤判斷的過程。而在這一過程中,對抗擾動的選擇和產(chǎn)生是關(guān)鍵。對抗擾動指的是在模型輸入上添加能夠誤導(dǎo)模型輸出的微小變動(圖 1 中間部分)。
雖然不同的文章對于對抗擾動的定義略有不同,但是一般來說對抗擾動具有兩個特點:?
1. 擾動是微小的甚至是肉眼難以觀測到的(圖 1 中間部分);?
2. 添加的擾動必須有能力使得模型產(chǎn)生錯誤的輸出(圖 1 右側(cè)部分)。?
為了滿足上述特點,已有大量研究集中于如何產(chǎn)生有效的對抗擾動。不同于圖像領(lǐng)域,連續(xù)值的擾動直接添加到原始輸入矩陣中,在文本處理中添加的擾動可以是離散的也可以是連續(xù)的,一般來說離散擾動指的是直接對輸入文本字符進行微小修改(如圖 2),連續(xù)擾動一般指的是直接在輸入文本中的詞向量矩陣中添加的擾動 [4]。文本處理中的離散擾動示列如圖 2:
▲?圖2.?文本處理中的離散擾動示列(圖片來自于[5])
如圖 2 所示,part1 指的是原始的輸入文本,part2 指的是對原始數(shù)據(jù)進行離散擾動后的文本,雖然只有少量字符被修改但是模型產(chǎn)生了完全不同的輸出。?
在文本處理中,對抗擾動的特征 1 要求添加擾動后產(chǎn)生的對抗樣本與原樣本在語義上保持一致,即添加的擾動應(yīng)該盡量不改變原始句子的語義。因此,需要一個測度來衡量擾動前后文本的差異。下面簡單介紹一些在相關(guān)文獻中已經(jīng)存在的測度方式(主要參考自 [2])。?
1. 余弦相似度(Cosine similarity)是基于詞向量的語義相似度計算方法,余弦距離更注重兩個向量之間的方向差異。 兩個矢量的方向越一致,相似性越大。該方法的局限性在于詞向量的維度必須相同。兩個給定詞向量,他們的余弦相似度計算如下:
2.?歐式距離(Euclidean Distance)在文本處理中歐式距離主要應(yīng)用于連續(xù)擾動的情況。給定兩個詞向量與,他們的歐式距離計算如下式:
3. 字移動距離(WMD),是 Earth Mover's Distance (EMD) 的變體,它可以通過計算從一個文檔到另一個文檔嵌入詞行進距離來衡量兩個文本文檔之間的差異。也就是說,WMD 可以量化文本之間的語義相似性。 同時,歐幾里德距離也被用于計算 WMD。
4. Jaccard 相似系數(shù),給定兩個集合 A 和 B,Jaccard 相似系數(shù)定義如下式,值越接近與 1,表明兩者越相似。在文本處理中,交集就是兩者中的相同詞,并集就是所有非重復(fù)詞的集合。
5. 編輯距離(Edit Distance)是一種通過將字符串轉(zhuǎn)換為另一個字符串來測量最小修改的方法。 它的值越高,兩個字符串越不相似。?
在上述五種測度中,余弦距離、歐式距離和 WMD 基于詞向量計算,主要適用于連續(xù)擾動的情況,Jaccard 相似系數(shù),編輯距離可以直接基于文本字符來計算,主要適用于離散擾動的情況。?
為了滿足對抗擾動的基本特征 2,常用的方法有基于梯度的方法 [3],直接優(yōu)化的方法 [1] 等。其中基于梯度的方法一般是計算損失函數(shù)對于輸入x的梯度dL/dx, 對計算的梯度進行相應(yīng)變換(Goodfellow 2014. [3], Kurakin A, Goodfellow I 2016. [6], Carlini N, Wagner D. 2017. [7])從而產(chǎn)生擾動 r。
直接優(yōu)化的方法,一種是直接修改訓(xùn)練目標以達到攻擊目的(比如以分類器遭遇對抗樣本時分類出錯為目標),通過梯度優(yōu)化等方式直接找到對抗樣本 x_,同時為了滿足特征 1,最小化對抗樣本與原始樣本的距離。
文本中的對抗攻擊
對抗攻擊可以按照不同的依據(jù)分為不同的類別,按對原始模型的訪問權(quán)限不同可分為:黑盒攻擊與白盒攻擊。白盒攻擊指的是攻擊者可以完全訪問目標模型,他們可以了解模型的架構(gòu),參數(shù)和權(quán)重。黑盒攻擊指的是攻擊者很少或根本沒有關(guān)于目標模型的知識,他們無法對其進行探測。在這種情況下,攻擊者通常訓(xùn)練自己的模型并利用對抗性樣本的可轉(zhuǎn)移性來進行攻擊。當然,白盒和黑盒攻擊都無法改變模型和訓(xùn)練數(shù)據(jù)。
按攻擊目的,可分為目標攻擊和非目標攻擊,目標攻擊指的是生成的對抗樣本希望被模型錯分到某個特定的類別上。非目標攻擊指的是對抗樣本只要能讓模型分錯就行,不論錯分到哪個類別都可以。本文主要闡述對抗攻擊中的非目標攻擊方法(接下來的內(nèi)容主要參考自?[2])。?
不同于圖像領(lǐng)域,文本數(shù)據(jù)的離散特性使得眾多研究集中于直接對文本序列進行對抗攻擊(對文本序列進行,增刪,修改等)。
其中 Papernot et al. [8] 首先開始研究文本序列中對抗樣本的問題,提出了在遞歸神經(jīng)網(wǎng)絡(luò)(RNN)上產(chǎn)生對抗性輸入序列。他們利用計算圖展開 [9] 來估算輸入序列的正向?qū)?shù) [10],即雅可比矩陣。然后對于輸入的每個單詞,在上述雅可比張量上使用快速梯度符號法(FGSM)[3] 來計算得到擾動。
同時,為了解決修改后的詞向量映射問題,他們構(gòu)建了一個特殊的字典用以選擇單詞來替換原單詞,其中,該替換操作有一個約束,就是替換前后的符號差異要最接近 FGSM 的結(jié)果。盡管對抗擾動輸入序列可以使 LSTM 模型出現(xiàn)錯誤,但輸入序列的單詞是隨機選擇的,可能存在語法錯誤。?
samanta et al. [11] 引入了三個修改策略,即插入,替換和刪除。在盡可能保留輸入的語義的前提下,用這些策略生成對抗樣本。這些修改策略針對的是那些如果刪除后會對分類結(jié)果產(chǎn)生很大影響的重要單詞。因此,作者利用 FGSM 來驗證每一個單詞在文本中的貢獻,然后以貢獻度的遞減順序來定位重要單詞。
除了刪除之外,插入和替換都需要包括同義詞,拼寫錯誤和流派特殊關(guān)鍵詞在內(nèi)的候選池來提供幫助。因此,在實驗中,作者為每個單詞建立了一個候選池。但是,這樣會消耗大量時間,而且事實上,輸入文本中很多最重要的單詞可能沒有候選池。?
Gao et al. [12] 提出了算法 DeepWordBug 用以誤導(dǎo) DNN 網(wǎng)絡(luò),不同于前面兩者,DeepWordBug 適用于黑盒攻擊的情境,算法分為兩階段,首先第一階段是確定哪些重要的 token 要進行改變,第二階段是產(chǎn)生難以被檢測到的擾動。 第一階段的計算過程如下:
是輸入的第 i 個單詞,F 是計算置信度的函數(shù)。隨后,類似如交換,替換,刪除和插入等修改策略被應(yīng)用于重要的 token,這樣就得到更好的對抗樣本。 同時,為了保持這些對抗樣本的可讀性,作者使用了編輯距離作為約束測度。?
除了上述直接加在文本序列上的對抗擾動方法外,還可以通過在詞向量上添加連續(xù)擾動的方式進行對抗攻擊。Sato et al. [4] 直接在 embedding 空間對輸入文本上做手腳,用這種方法得到的對抗樣本也可以對目標模型進行影響從而導(dǎo)致錯誤分類。
這種方法的核心思想在于搜索最大化損失函數(shù)的方向向量權(quán)重,總體參數(shù) W 如下:
其中,是從每個輸入詞向量生成的擾動,是從 embedding 空間中一個詞到另一個的詞的方向向量。因為上式非常難以計算,因此作者用下式替代:
iAdvT 的損失函數(shù)定義為基于在整個訓(xùn)練數(shù)據(jù)集 D 上的優(yōu)化問題,即最小化目標函數(shù):
與 Miyato et al. [13] 對比,該方法限定了擾動的方向并以此找到預(yù)定義詞表中的替代詞而不是未知詞來替換原詞。 因此,它通過對抗性訓(xùn)練提高了對抗性例子的可解釋性。 同時,作者還利用了余弦相似性來選擇更好的擾動。?
相似的,Gong et al. [14] 也尋求在 embedding 空間中加入對抗擾動。但是他們的方法是基于梯度的。盡管作者使用 WMD 來衡量干凈數(shù)據(jù)和對抗樣本的相似性,但生成結(jié)果的可讀性較差。?
由上述,目前來說文本中的對抗攻擊主要分為在文本序列上的離散擾動以及直接作用在詞向量矩陣上的連續(xù)擾動。最近我們在調(diào)研了這些方法之后,也在文本分類上做出了初步的嘗試,且取得了不錯的效果。
我們的實驗
實驗采用的文本對抗攻擊方式為白盒非目標攻擊,構(gòu)造的擾動是直接基于詞向量矩陣的連續(xù)擾動。我們分別在文本分類和魯棒性上進行實驗。?
文本分類實驗數(shù)據(jù)來自中文公開數(shù)據(jù)集 ifeng,是 2006-2016 年間鳳凰網(wǎng)上的新聞文章,每篇選取前幾個段落,數(shù)據(jù)集有 5 個新聞頻道(channel),每個頻道(channel)包含的文章數(shù)相等,訓(xùn)練集為 80 萬,測試集為 5 萬。
為了降低訓(xùn)練時間,對原訓(xùn)練集進行了采樣。在兩個采樣訓(xùn)練集中,每個類別的數(shù)據(jù)量分別為原數(shù)據(jù)量的 5% 和 10%,未改變數(shù)據(jù)原有分布,實驗數(shù)據(jù)基本信息如下表:
▲?表1.?分類實驗數(shù)據(jù)基本信息
實驗方法主要參考自文獻 [13][15],實驗結(jié)果如下表:
▲?表2. 文本分類實驗對比結(jié)果
上表中,Baseline 為現(xiàn)有的分類模型,Baseline+ADT 指的是在現(xiàn)有分類模型的基礎(chǔ)上加上對抗訓(xùn)練之后的模型,實驗對比指標為分類精度。如上表所示在加入對抗訓(xùn)練后在不同測試集上均有不同程度的提升,其中在小數(shù)據(jù)集(Ifeng 4000)上提升相對更明顯。?
此外我們還進行了模型魯棒性的測試,我們對測試文本進行微小變動(同義詞替換,語氣詞增刪等),觀察變動前后模型預(yù)測結(jié)果是否一致。若結(jié)果越一致,則魯棒性越好。即魯棒性是衡量模型在改動前后預(yù)測結(jié)果是否一致的評價指標。
對于改動前后的文本,模型預(yù)測結(jié)果一致則正確數(shù)目加一,最終的評價指標為正確數(shù)目除以總的測試集數(shù)目。實驗數(shù)據(jù)是人為構(gòu)造的分類數(shù)據(jù),最終魯棒性對比結(jié)果如下表:
▲?表3.?魯棒性實驗對比結(jié)果
由上表,在不同訓(xùn)練集合訓(xùn)練出來的模型在加入對抗訓(xùn)練后相對于現(xiàn)有 baseline 在魯棒性的測試上均有不同程度的提高。
總結(jié)
本文介紹了文本中對抗擾動,對抗樣本,對抗攻擊,對抗訓(xùn)練等基本概念,簡單介紹了對抗擾動的特點,不同的對抗擾動產(chǎn)生方法。介紹了對抗攻擊的基本類型,結(jié)合實列簡單介紹了代表性的對抗攻擊方法,最后說明了我們最近在文本對抗訓(xùn)練上做的簡單實踐。
筆者也是近期才開始相關(guān)工作,受限于筆者自身的知識水平,難免會有遺漏、說明不當以及錯誤之處,希望讀者能夠批評指正。文本中的對抗訓(xùn)練是一個大的知識框架,本文只是簡單的給大家做初步介紹,如果大家感興趣建議大家閱讀最近的一篇綜述 [2],該文章思路清晰,對文本中的對抗攻擊和防御進行了系統(tǒng)全面的介紹,本文中的很多內(nèi)容也都是借鑒上面的,推薦大家閱讀。
本文只是簡單介紹,并沒有針對某一算法進行詳細說明,隨著自身工作的深入后面有時間會將論文中的具體算法進行實踐并寫出來分享給大家。
參考文獻
[1] C. Szegedy, W. Zaremba, I. Sutskever, J. Bruna, D. Erhan, I. J. Goodfellow, and R. Fergus, “Intriguing properties of neural networks,” in Proceedings of the International Conference on Learning Representations, 2014.?
[2] Wang, W., Wang, L., Tang, B., Wang, R., & Ye, A. (2019). A survey on Adversarial Attacks and Defenses in Text, 1–13. Retrieved from http://arxiv.org/abs/1902.07285?
[3] I. J. Goodfellow, J. Shlens, and C. Szegedy, “Explaining and harnessing adversarial examples,” in Proceedings of the International Conference on Learning Representations, 2015.?
[4] M. Sato, J. Suzuki, H. Shindo, and Y. Matsumoto, “Interpretable adversarial perturbation in input embedding space for text,” in International Joint Conference on Artificial Intelligence (IJCAI), 2018.?
[5] J. Gao, J. Lanchantin, M. L. Soffa, and Y. Qi, “Black-box generation of adversarial text sequences to evade deep learning classifiers,” in IEEE Security and Privacy Workshops (SPW). IEEE, 2018.?
[6] Kurakin A, Goodfellow I, Bengio S. Adversarial examples in the physical world. arXiv preprint arXiv:1607.02533, 2016.?
[7] Carlini N, Wagner D. Towards evaluating the robustness of neural networks//Security and Privacy (SP), 2017 IEEE Symposium on. IEEE, 2017: 39-57.?
[8] N. Papernot, P. McDaniel, A. Swami, and R. Harang, “Crafting adversarial input sequences for recurrent neural networks,” in IEEE Military Communications Conference, 2016, p. 4954.?
[9] P. J.Werbos, “Generalization of backpropagation with application to a recurrent gas market model,” Neural Networks, vol. 1, no. 4, pp. 339–356, 1988.?
[10] N. Papernot, P. McDaniel, S. Jha, M. Fredrikson, Z. B. Celik, and A. Swami, “The limitations of deep learning in adversarial settings,” in IEEE European Symposium on Security and Privacy. IEEE, 2016.?
[11] S. Samanta and S. Mehta, “Towards crafting text adversarial samples,” 2017, arXiv preprint arXiv:1707.02812.?
[12] J. Gao, J. Lanchantin, M. L. Soffa, and Y. Qi, “Black-box generation of adversarial text sequences to evade deep learning classifiers,” in IEEE Security and Privacy Workshops (SPW). IEEE, 2018.?
[13] T. Miyato, A. M. Dai, and I. Goodfellow, “Adversarial training methods for semi-supervised text classification,” in Proceedings of the International Conference on Learning Representations, 2017.?
[14] Z. Gong, W. Wang, B. Li, D. Song, and W.-S. Ku, “Ad- versarial texts with gradient methods,” 2018, arXiv preprint arXiv:1801.07175.?
[15] Singh Sachan, D., Zaheer, M., & Salakhutdinov, R. (2019). Revisiting LSTM Networks for Semi-Supervised Text Classification via Mixed Objective Function. Retrieved from www.aaai.org.
點擊以下標題查看往期內(nèi)容推薦:?
ACL 2019 | 基于知識增強的語言表示模型
圖神經(jīng)網(wǎng)絡(luò)綜述:模型與應(yīng)用
ICLR 2019最佳論文 | 用有序神經(jīng)元表達層次結(jié)構(gòu)
F-Principle:初探理解深度學(xué)習(xí)不能做什么
復(fù)旦大學(xué)邱錫鵬:詞法、句法分析研究進展綜述
基于小樣本學(xué)習(xí)的意圖識別冷啟動
從CNN視角看在自然語言處理上的應(yīng)用
自然語言處理中的語言模型預(yù)訓(xùn)練方法
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢??答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)習(xí)心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標準:
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學(xué)校/工作單位+學(xué)歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認每篇文章都是首發(fā),均會添加“原創(chuàng)”標志
? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機),以便我們在編輯發(fā)布時和作者溝通
?
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學(xué)術(shù)平臺。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
▽ 點擊 |?閱讀原文?| 獲取最新論文推薦
總結(jié)
以上是生活随笔為你收集整理的一文读懂文本处理中的对抗训练的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 岗位推荐 | 微软AI Researc
- 下一篇: 站在BERT肩膀上的NLP新秀们:XLM