?背景:
?Deep Learning-based Text Understanding (DLTU)簡介:
基于深度學(xué)習(xí)的文本理解(DLTU)廣泛運用于問答、機(jī)器翻譯和文本分類,情感分析(eg 電影評論分類)、有害內(nèi)容檢測(諷刺、諷刺、侮辱、騷擾和辱罵內(nèi)容)等安全敏感應(yīng)用中。
DLTU天生容易受到對抗性文本攻擊,在對抗性文本攻擊中,惡意制作的文本會觸發(fā)目標(biāo)DLTU系統(tǒng)和服務(wù)行為不當(dāng)。
本文的target:
提出TEXTBUGGER,一種用于生成對抗性文本(對抗攻擊,是一種攻擊,不是對攻擊進(jìn)行對抗)的通用攻擊框架。并且本文進(jìn)一步討論了緩解此類攻擊的可能防御機(jī)制以及攻擊者的潛在對策,為進(jìn)一步的研究指明了方向。
過往技術(shù)的局限性:
現(xiàn)有的對抗樣本研究工作主要在圖像領(lǐng)域,特別在圖像分類領(lǐng)域成功率很高,擾動通??梢允谷祟惖母兄獛缀鯚o法察覺。文本領(lǐng)域的對抗攻擊會更加復(fù)雜,在文本領(lǐng)域,微小的擾動通常是清晰可見的,替換單個單詞可能會徹底改變句子的語義?,F(xiàn)有的針對圖像的攻擊算法不能直接應(yīng)用于文本,需要研究新的攻擊技術(shù)和相應(yīng)的防御方法。
過往的生成對抗文本機(jī)制:
通過用詞匯表外的單詞替換單詞來生成對抗性文本?
局限性 :(i)計算效率不高,(ii)它們是在白盒環(huán)境下設(shè)計的,(iii)它們需要人工干預(yù),和/或(iv)它們針對特定的NLP模型設(shè)計的,沒有進(jìn)行全面評估。
??常見對機(jī)器學(xué)習(xí)模型的攻擊:
·causative attacks: ? manipulate the training data to mislead the classfier
·exploratory attacks:craft?malicious testing instances (adversarial examples) so as to
evade a given classifier.?
本文的TEXTBUGGER算法原理:
·TEXTBUGGER可以在白盒和黑盒設(shè)置下有效和高效地生成保留效用(即對人類讀者保持其原始含義)的對抗文本的框架。
· 我們要對抗攻擊一個分類器,這個分類器是一個文本分類器,我們的目的是要干擾它,讓他生成一個錯誤的分類結(jié)果。
·下面的白盒和黑盒攻擊最大的不同是因為黑盒攻擊,我們無法得知分類器的內(nèi)部結(jié)構(gòu),在計算單詞重要性的時候,在不知道分類模型參數(shù)和結(jié)構(gòu),我們要克服這個困難,所以在白盒的算法上我們的黑盒算法做了變化。
1.白盒算法
???????
·通過計算分類器的雅可比矩陣找到重要的單詞
?注:x為給定文本x?= (x1, x2,?· · ·?, xN?),N表示輸入文本中的單詞總數(shù),xi是單詞i?th(第i個單詞) ,j 為1.....k, k為分類器預(yù)測的類別總數(shù)
?·bug生成
我們要求生成的對抗句子在視覺和語義上與原始句子相似,以便人類理解。因此,我們考慮了兩種擾動
? ? ? ? ·字符級擾動
如果我們故意拼錯了重要的單詞,我們可以很容易地將這些重要的單詞轉(zhuǎn)換為“未知”(即不在字典中的單詞)。在深度學(xué)習(xí)建模中,未登錄的單詞將被映射到“未知”的嵌入向量,這種簡單的策略可以有效地迫使文本分類模型表現(xiàn)錯誤。
? ? ? ? ·單詞級的擾動
通過在嵌入空間中搜索最近鄰得到的幾個單詞,替換后可以愚弄分類器。并且,我們發(fā)現(xiàn)在一些詞嵌入模型(如word2vec)中,語義相反的詞(如“最差”和“更好”)在文本中具有高度的語法相似度,因此“更好”將被認(rèn)為是“最差”的最近鄰居。然而,將‘worst ‘改為‘better ‘將完全改變輸入文本的情感。
? ? ? ? ·TEXTBUGGER提出了5種bug生成方法: (1)插入:在單詞3中插入一個空格。一般來說,英語中的單詞是用空格分割的。因此,我們可以通過在單詞中插入空格來欺騙分類器。(2)刪除:隨機(jī)刪除除單詞的首尾字符外的一個字符。(3)交換:隨機(jī)交換單詞中相鄰的兩個字母,但不改變第一個或最后一個字母4。這在快速輸入時很常見,而且很容易實現(xiàn)。(4) substitution?- c (SubC):用視覺上相似的字符替換(例如,用‘0 ‘替換‘o ‘,用‘1‘替換‘l ‘,用‘@ ‘替換‘a(chǎn) ‘)或鍵盤上相鄰的字符(例如,用‘n‘替換‘m ‘)。(5)?Substitute-W (Sub-W):在上下文感知的詞向量空間中,將一個詞替換為其近鄰topk。在Table I中給出了幾個替代示例。
·根據(jù)置信度的變化情況選擇最優(yōu)的bug
即選擇對真實類置信度降低幅度最大的bug。
·判斷
我們將單詞替換為最優(yōu)bug以獲得新的文本x?′ 。如果分類器給新文本一個不同的標(biāo)簽(即:Fl(x?′?) =?y),同時保留語義相似度,就找到了對抗性文本。如果沒有,我們重復(fù)上面的步驟來替換下一個單詞 直到我們找到解決方案或無法找到保持語義的對抗樣本。
2.黑盒算法
注:與白盒攻擊中我們可以直接基于梯度信息選擇重要單詞不同,在黑盒攻擊中,我們首先找到重要的句子,然后找到其中的重要單詞
·找出重要的句子
設(shè)輸入文檔x?= (s1,?s2,?· · ·?,?sn),其中si表示位于i?th位置的句子。
我們使用spaCy庫5將每個文檔分割為句子。然后,我們過濾掉與原始文檔標(biāo)簽具有不同預(yù)測標(biāo)簽的句子(即,過濾掉Fl(si) =?y)。然后,根據(jù)重要句子的重要性得分進(jìn)行倒序排序;?句子si的重要性分?jǐn)?shù)用預(yù)測類別Fy的置信度表示,即Csi?=?Fy(si)。
·找到重要單詞
使用評分函數(shù)來確定每個單詞對于分類結(jié)果的重要性(能夠在不知道分類模型參數(shù)和結(jié)構(gòu)的情況下計算單詞得分,并根據(jù)其得分對單詞進(jìn)行排序。直接衡量刪除i?th單詞的效果,因為比較刪除單詞前后的預(yù)測可以反映出該單詞如何影響分類結(jié)果
Cwj?=Fy(w1, w2,?· · ·, wm)??Fy(w1,?· · ·, wj?1, wj+1,?· · ·, wm)
每個單詞的貢獻(xiàn)度是新的置信度分?jǐn)?shù)與原始置信度分?jǐn)?shù)之間的差。
·選擇bug
這一步與白盒設(shè)置中的步驟類似。
利用bug選擇算法對已選詞進(jìn)行修改。
研究本文提出的方法在情感分析中的效用:
?情感分析是指使用NLP、統(tǒng)計學(xué)或機(jī)器學(xué)習(xí)方法來提取、識別或描述文本單元的情感內(nèi)容。它被廣泛應(yīng)用于通過監(jiān)測在線對話來幫助企業(yè)了解其產(chǎn)品或服務(wù)的社會情緒。
研究本文提出的方法在有毒內(nèi)容檢測中的效用:略
本文提出的對么TEXTBUGGER的潛在防御方法:
·拼寫檢查(SC):
使用了微軟Azure11提供的上下文感知拼寫檢查服務(wù),糾正了拼寫錯誤的單詞。但TEXTBUGGER在糾正了拼寫錯誤的單詞后,在多個在線平臺上的成功率仍然高于DeepWordBug。因為5種bug,最?容?易?糾?正?的?錯?誤?分 別是IMDB和Kaggle的插入和刪除。最難修正的bug是Sub-W(臨近替換為一個正確的單詞,單詞糾正無法發(fā)揮作用)。
·對抗性訓(xùn)練(AT):
是指用生成的對抗樣本訓(xùn)練模型,該方法可以提高機(jī)器學(xué)習(xí)模型對對抗樣本的魯棒性
?攻擊者可以改進(jìn)的方法:
法1:攻擊者可以增加Sub-W的比例,因為它幾乎無法通過拼寫檢查來糾正。
法2:攻擊者可以調(diào)整不同平臺間不同策略的比例。例如,當(dāng)攻
擊者針對Perspective和Aylien API時,可以增加Kaggle數(shù)據(jù)
集上的交換(swap)比例,因為只有不到40%的交換修改被糾正
法3:攻擊者還可以保持對抗攻擊策略的私密性,并經(jīng)常改變攻擊參數(shù)以規(guī)避防御。
?conclusion:
研究了在白盒和黑盒設(shè)置下針對最先進(jìn)的情感分析和有毒內(nèi)容檢測模型/平臺的對抗性攻擊。廣泛的實驗結(jié)果表明,TEXTBUGGER對于生成有針對性的對抗性NLP是有效和高效的。這些例子的可遷移性暗示了許多實際應(yīng)用中的潛在漏洞,包括文本過濾系統(tǒng)(例如,種族主義、色情、恐怖主義和騷亂)、在線推薦系統(tǒng)等。研究結(jié)果還表明,拼寫檢查和對抗性訓(xùn)練在防御此類攻擊方面具有可能性可以進(jìn)一步探索基于語言或結(jié)構(gòu)感知的防御系統(tǒng)集成,以提高魯棒性。文章來源:http://www.zghlxwxcb.cn/news/detail-815778.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-815778.html
到了這里,關(guān)于論文閱讀- 人工智能安全 TEXTBUGGER: Generating Adversarial Text Against Real-world Applications的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!