機(jī)器學(xué)習(xí)服務(wù)提取圖片的特征向量">使用SAP Leonardo上的機(jī)器學(xué)習(xí)服務(wù)提取圖片的特征向量
1096
2025-03-31
外灘大會(huì) AI安全-智能時(shí)代的攻守道
Deep Learning Security: From the NLP Perspective
浙江大學(xué)
AI技術(shù)蓬勃發(fā)展,無論是金融服務(wù)、線下生活、還是醫(yī)療健康都有AI的影子,那保護(hù)好這些AI系統(tǒng)的安全是非常必要也是非常重要的。目前,AI安全是一個(gè)非常新的領(lǐng)域,是學(xué)界、業(yè)界都共同關(guān)注的熱門話題,本論壇將邀請(qǐng)AI安全方面的專家,分享交流智能時(shí)代的功守道,推動(dòng)和引領(lǐng)業(yè)界在AI安全領(lǐng)域的發(fā)展。
本次論壇的題目為“AI安全-智能時(shí)代的攻守道”,其中武漢大學(xué)王騫院長(zhǎng)分享了語音系統(tǒng)的對(duì)抗性攻防,浙江大學(xué)紀(jì)守領(lǐng)研究員分享了NLP中的安全,浙江大學(xué)秦湛研究員分享了深度學(xué)習(xí)中的數(shù)據(jù)安全新型攻防,來自螞蟻集團(tuán)的宗志遠(yuǎn)老師分享了AI安全對(duì)抗防御體系,任奎院長(zhǎng)分享了AI安全白皮書。本文主要講解NLP中的AI安全和白皮書相關(guān)知識(shí),希望對(duì)您有所幫助。這些大佬是真的值得我們?nèi)W(xué)習(xí),獻(xiàn)上小弟的膝蓋~fighting!
PS:順便問一句,你們喜歡這種會(huì)議講座方式的分享嗎?
擔(dān)心效果不好,如果不好我就不分享和總結(jié)類似的會(huì)議知識(shí)了,歡迎評(píng)論給我留言。
文章目錄
一.AI安全白皮書
1.AI模型安全問題
2.AI數(shù)據(jù)安全問題
3.AI承載系統(tǒng)安全問題
4.防御方法
二.從NLP視角看機(jī)器學(xué)習(xí)模型安全
三.對(duì)抗文本TextBugger
1.論文貢獻(xiàn)
2.白盒攻擊
3.黑盒攻擊
4.實(shí)驗(yàn)評(píng)估
四.中文對(duì)抗文本
五.總結(jié)
前文賞析:
[論文閱讀] (01) 拿什么來拯救我的拖延癥?初學(xué)者如何提升編程興趣及LATEX入門詳解
[論文閱讀] (02) SP2019-Neural Cleanse: 神經(jīng)網(wǎng)絡(luò)中的后門攻擊識(shí)別與緩解
[論文閱讀] (03) 清華張超老師 - Fuzzing漏洞挖掘詳細(xì)總結(jié) GreyOne
[論文閱讀] (04) 人工智能真的安全嗎?浙大團(tuán)隊(duì)分享AI對(duì)抗樣本技術(shù)
一.AI安全白皮書
隨著人工智能日益發(fā)展,自動(dòng)駕駛、人臉識(shí)別、語音識(shí)別等技術(shù)被廣泛應(yīng)用,同時(shí)帶來的是嚴(yán)峻的AI安全問題。常見的安全問題包括:
自動(dòng)駕駛系統(tǒng)錯(cuò)誤識(shí)別路牌
自然語言處理系統(tǒng)錯(cuò)誤識(shí)別語義
語音識(shí)別系統(tǒng)錯(cuò)誤識(shí)別用戶指令
當(dāng)今的AI安全非常重視四種性能,包括:
保密性
涉及的數(shù)據(jù)與模型信息不會(huì)泄露給沒有授權(quán)的人
完整性
算法模型、數(shù)據(jù)、基礎(chǔ)設(shè)施和產(chǎn)品不被惡意植入篡改替換偽造
魯棒性
能同時(shí)抵御復(fù)雜的環(huán)境條件和非正常的惡意干擾
隱私性
AI模型在使用過程中能夠保護(hù)數(shù)據(jù)主體的數(shù)據(jù)隱私
針對(duì)這四種性能的AI攻擊層出不窮,比如推斷攻擊、對(duì)抗樣本、投毒攻擊、模型竊取等。
因此,任奎院長(zhǎng)帶來了《AI安全白皮書》的分享。
浙江大學(xué)和螞蟻集團(tuán)合作,他們調(diào)研了近年來發(fā)表在安全、人工智能等領(lǐng)域國(guó)際會(huì)議與期刊上的300余篇攻防技術(shù)研究成果,聚焦模型、數(shù)據(jù)、承載三個(gè)維度的安全威脅與挑戰(zhàn),梳理了AI安全的攻擊與防御技術(shù)。根據(jù)真實(shí)場(chǎng)景中AI技術(shù)面臨的安全問題,總結(jié)提出AI應(yīng)用系統(tǒng)的一站式安全解決方案(AISDL),并共同推出了《AI安全白皮書》。整個(gè)框架如下圖所示:
他們經(jīng)過梳理,將AI技術(shù)面臨的威脅歸為三大類,分別是:
AI模型安全問題
模型完整性威脅 => 數(shù)據(jù)投毒攻擊
模型魯棒性威脅 => 對(duì)抗樣本攻擊
AI數(shù)據(jù)安全問題
模型參數(shù)泄露 => 模型替代攻擊
數(shù)據(jù)隱私泄露 => 模型逆向攻擊
AI承載系統(tǒng)安全問題
硬件設(shè)備安全問題 => 電路擾動(dòng)攻擊
系統(tǒng)軟件安全問題 => 代碼注入攻擊
對(duì)抗樣本的經(jīng)典流程如下圖所示——GU等人提出的BadNets。
它通過惡意(poisoning)訓(xùn)練數(shù)據(jù)集來注入后門,具體如下:
首先攻擊者選擇一個(gè)目標(biāo)標(biāo)簽和觸發(fā)器圖案,它是像素和相關(guān)色彩強(qiáng)度的集合。圖案可能類似于任意形狀,例如正方形。
接下來,將訓(xùn)練圖像的隨機(jī)子集用觸發(fā)器圖案標(biāo)記,并將它們的標(biāo)簽修改為目標(biāo)標(biāo)簽。
然后用修改后的訓(xùn)練數(shù)據(jù)對(duì)DNN進(jìn)行訓(xùn)練,從而注入后門。
由于攻擊者可以完全訪問訓(xùn)練過程,所以攻擊者可以改變訓(xùn)練的結(jié)構(gòu),例如,學(xué)習(xí)速率、修改圖像的比率等,從而使被后門攻擊的DNN在干凈和對(duì)抗性的輸入上都有良好的表現(xiàn)。BadNets顯示了超過99%的攻擊成功率(對(duì)抗性輸入被錯(cuò)誤分類的百分比),而且不影響MNIST中的模型性能。下圖右下角的觸發(fā)器(后門)導(dǎo)致了神經(jīng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)錯(cuò)誤地類別,將Label5和Label7預(yù)測(cè)為L(zhǎng)abel4。
PS:在下一篇文章中我們會(huì)詳細(xì)講解AI數(shù)據(jù)安全和AI語音安全論文,這篇文章主要針對(duì)NLP文本的對(duì)抗樣本分享,望您喜歡!
1.AI模型安全問題
(1) 模型完整性威脅=>數(shù)據(jù)投毒攻擊
攻擊者在正常訓(xùn)練集中加入少量的毒化數(shù)據(jù),破壞模型完整性,操縱AI判斷結(jié)果。模型偏移會(huì)使模型對(duì)好壞輸入的分類發(fā)生偏移,降低模型的準(zhǔn)確率。同時(shí),后門攻擊不影響模型的正常使用,只在攻擊者設(shè)定的特殊場(chǎng)景使模型出現(xiàn)錯(cuò)誤。
(2) 模型魯棒性威脅=>對(duì)抗性樣本攻擊
攻擊者在模型測(cè)試階段,向輸入樣本加入對(duì)抗擾動(dòng),破壞模型魯棒性,操縱AI判斷結(jié)果。
不同限制條件
擾動(dòng)、對(duì)抗補(bǔ)丁、非限制性對(duì)抗攻擊
不同威脅模型
白盒攻擊、灰盒攻擊、黑盒攻擊
不同應(yīng)用場(chǎng)景
圖像識(shí)別、3D物體識(shí)別、音頻識(shí)別、文本分類
深度學(xué)習(xí)模型通常都存在模型魯棒性缺乏的問題,一方面由于環(huán)境因素多變,包括AI模型在真實(shí)使用過程中表現(xiàn)不夠穩(wěn)定,受光照強(qiáng)度、視角角度距離、圖像仿射變換、圖像分辨率等影響,從而導(dǎo)致訓(xùn)練數(shù)據(jù)難以覆蓋現(xiàn)實(shí)場(chǎng)景的全部情況。另一方面模型的可解釋性不足,深度學(xué)習(xí)模型是一個(gè)黑箱,模型參數(shù)數(shù)量巨大、結(jié)構(gòu)復(fù)雜,沒有惡意攻擊的情況下,可能出現(xiàn)預(yù)期之外的安全隱患,阻礙AI技術(shù)在醫(yī)療、交通等安全敏感性高的場(chǎng)景下使用。
任老師他們團(tuán)隊(duì)的相關(guān)工作包括分布式對(duì)抗攻擊和面向三維點(diǎn)云的對(duì)抗攻擊等。
2.AI數(shù)據(jù)安全問題
AI數(shù)據(jù)安全簡(jiǎn)單來說就是通過構(gòu)造特定數(shù)據(jù)集,結(jié)合模型預(yù)測(cè)的結(jié)果來獲取深度學(xué)習(xí)模型的參數(shù)或數(shù)據(jù)。如下圖所示,通過模型逆向攻擊重建圖像,深度學(xué)習(xí)模型泄露了訓(xùn)練數(shù)據(jù)中的敏感信息。
AI數(shù)據(jù)安全包括模型參數(shù)泄露和訓(xùn)練數(shù)據(jù)泄露,具體如下圖所示。模型參數(shù)泄露攻擊方法包括方程求解攻擊、基于Meta-model的模型竊取、模型替代攻擊;訓(xùn)練數(shù)據(jù)泄露包括輸出向量泄露和梯度更新泄露,方法包括成員推斷攻擊、模型逆向攻擊、分布式模型梯度攻擊。
任老師他們做的相關(guān)工作包括:
基于梯度更新的數(shù)據(jù)泄露
針對(duì)聯(lián)邦學(xué)習(xí)框架,攻擊者可以通過用戶上傳的梯度更新重構(gòu)特定用戶的隱私數(shù)據(jù)
模型逆向攻擊
首個(gè)對(duì)商用用戶識(shí)別模型的逆向攻擊(CCS’ 19)
3.AI承載系統(tǒng)安全問題
(1) 硬件設(shè)備安全問題
攻擊者直接接觸硬件設(shè)備,添加電路層面擾動(dòng),偽造數(shù)據(jù)。導(dǎo)致模型誤判、指令跳轉(zhuǎn)、系統(tǒng)奔潰等嚴(yán)重后果,每次推導(dǎo)后被正確數(shù)據(jù)覆蓋,攻擊隱蔽且難以檢測(cè)。
攻擊者測(cè)量硬件系統(tǒng)的電磁、功能泄露,獲取模型粗粒度超參數(shù),為模型竊取提供先驗(yàn)知識(shí)。模型不同層、激活函數(shù)等運(yùn)行過程中的泄露信息存在固定模式,或者利用旁路分析方法恢復(fù)模型超參數(shù)。
(2) 系統(tǒng)與軟件安全問題
AI系統(tǒng)與軟件安全漏洞導(dǎo)致關(guān)鍵數(shù)據(jù)篡改、模型誤判、系統(tǒng)崩潰或被劫持控制流等嚴(yán)重后果。
代碼注入攻擊、控制流劫持攻擊、數(shù)據(jù)流攻擊等多維度攻擊層出不窮,并在新環(huán)境下不斷演化。同時(shí),AI系統(tǒng)模塊眾多、結(jié)構(gòu)復(fù)雜、在可擴(kuò)展性方面存在不足,復(fù)雜場(chǎng)景下的攻擊檢測(cè)和安全威脅發(fā)現(xiàn)存在較大難題。
4.防御方法
(1) 模型安全性增強(qiáng)
面向模型完整性威脅的防御
數(shù)據(jù)毒化
:利用頻譜特征比較、聚類算法等手段檢測(cè)含有后門的輸入數(shù)據(jù)
模型毒化
:使用剪枝、微調(diào)、檢測(cè)與重訓(xùn)練等方法來消除模型的后門特征
面向模型魯棒性威脅的防御
對(duì)抗訓(xùn)練
:把良性樣本和對(duì)抗樣本同時(shí)納入訓(xùn)練階段對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練
輸入預(yù)處理
:通過濾波、位深度減小、輸入清理等處理操作,消除輸入數(shù)據(jù)中的對(duì)抗性擾動(dòng)
特異性防御算法
:使用蒸餾算法、特征剪枝、隨機(jī)化等算法對(duì)深度學(xué)習(xí)模型進(jìn)行優(yōu)化
(2) 模型安全性增強(qiáng)
模型結(jié)構(gòu)防御
降低模型的過擬合程度,從而實(shí)現(xiàn)對(duì)模型泄露和數(shù)據(jù)泄露的保護(hù)
信息混淆防御
對(duì)模型的預(yù)測(cè)結(jié)果做模糊操作,干擾輸出結(jié)果中包含的有效信息,減少隱私信息的泄露
查詢控制防御
根據(jù)用戶的查詢進(jìn)行特征提取,分辨攻擊者與一般用戶,從而對(duì)攻擊者的行為進(jìn)行限制或拒絕服務(wù)
(3) 系統(tǒng)安全性防御
硬件安全保護(hù)
關(guān)鍵數(shù)據(jù)加密
:保障系統(tǒng)內(nèi)部關(guān)鍵數(shù)據(jù)安全,防止旁路攻擊
硬件故障檢測(cè)
:實(shí)時(shí)檢測(cè)電路故障并作出相應(yīng),確保不會(huì)被攻擊者破壞劫持
軟件安全保護(hù)
權(quán)限分級(jí)管理
:保證模型數(shù)據(jù)只能被可信任的程序訪問調(diào)用
操作行為可溯源
:保留核心數(shù)據(jù)生命周期內(nèi)的操作記錄
最后他們和螞蟻集團(tuán)提出一種AI模型安全開發(fā)聲生命周期——AI SDL,分階段引入安全和隱私保護(hù)原則,實(shí)現(xiàn)有安全保證的AI開發(fā)過程。
最后總結(jié):
白皮書介紹了模型、數(shù)據(jù)與承載系統(tǒng)面臨的安全威脅以及防御手段,給出了AI應(yīng)用的一站式安全解決方案
在攻防中迭代更新的安全技術(shù),新的行業(yè)門口
降低合規(guī)成本,減少業(yè)務(wù)損失,開辟新的業(yè)務(wù)
二.從NLP視角看機(jī)器學(xué)習(xí)模型安全
在圖像領(lǐng)域和語音領(lǐng)域都存在很多對(duì)抗樣本攻擊(Adversarial Attack),比如一段“How are you”的語音增加噪聲被識(shí)別成“Open the door”,再如智能音響中增加噪聲發(fā)起語音攻擊等等。
那么,在文本領(lǐng)域也存在對(duì)抗樣本攻擊嗎?自然語言處理(Natural Language Processing,NLP)的機(jī)器學(xué)習(xí)服務(wù)(MLaaS)是否也容易受到對(duì)抗樣本攻擊呢?
首先,給大家普及下自然語言處理。常見的應(yīng)用包括:
機(jī)器翻譯
信息檢索
情感分析
自動(dòng)問答
自動(dòng)文摘
知識(shí)圖譜
…
本篇博客主要介紹針對(duì)情感分類的對(duì)抗文本,所以介紹下情感分類的基礎(chǔ)。深度學(xué)習(xí)在處理文本時(shí),NLP通常要將文本進(jìn)行分詞、數(shù)據(jù)清洗、詞頻計(jì)算,然后轉(zhuǎn)換成對(duì)應(yīng)的詞向量或TF-IDF矩陣,再進(jìn)行相似度計(jì)算或文本分類,當(dāng)某種情感(積極\消極)的特征詞出現(xiàn)較多,則預(yù)測(cè)為該類情感。那么,能否讓深度學(xué)習(xí)模型總是預(yù)測(cè)錯(cuò)誤呢?
NLP的對(duì)抗樣本攻擊和圖像或語音的對(duì)抗樣本存在很大的差異性,具體區(qū)別如下:
圖像(像素)連續(xù) vs 文本離散
像素微小改變擾動(dòng)小 vs 文本改變擾動(dòng)易覺察
連續(xù)空間優(yōu)化方法很多 vs 離散空間不方便優(yōu)化
文本語義問題、歧義問題
由于圖片和文本數(shù)據(jù)內(nèi)在的不同,用于圖像的對(duì)抗攻擊方法無法直接應(yīng)用與文本數(shù)據(jù)上。首先,圖像數(shù)據(jù)(例如像素值)是連續(xù)的,但文本數(shù)據(jù)是離散的。其次,僅僅對(duì)像素值進(jìn)行微小的改變就可以造成圖像數(shù)據(jù)的擾動(dòng),而且這種擾動(dòng)是很難被人眼察覺的。但是對(duì)于文本的對(duì)抗攻擊中,小的擾動(dòng)很容易被察覺,但人類同樣能「猜出」本來表達(dá)的意義。因此 NLP 模型需要對(duì)可辨識(shí)的特征魯棒,而不像視覺只需要對(duì)「不太重要」的特征魯棒。
DeepWordBug
下圖是DeepWordBug的深度網(wǎng)絡(luò)攻擊示例(選自 arXiv:1902.07285),展示了文本對(duì)抗樣本的基本流程。正常深度學(xué)習(xí)預(yù)測(cè)的情感為positive,但修改某些關(guān)鍵詞后(place
heart),它的情感分類結(jié)果為negative。
代碼下載:https://github.com/QData/deepWordBug
與圖像領(lǐng)域一樣,有進(jìn)攻就會(huì)有防御,目前也有很多研究嘗試構(gòu)建更魯棒的自然語言處理模型。推薦大家閱讀CMU的一篇對(duì)抗性拼寫錯(cuò)誤論文(arXiv:1905.11268)中,研究者通過移除、添加或調(diào)序單詞內(nèi)部的字符,以構(gòu)建更穩(wěn)健的文本分類模型。這些增減或調(diào)序都是一種擾動(dòng),就像人類也很可能出現(xiàn)這些筆誤一樣。通過這些擾動(dòng),模型能學(xué)會(huì)如何處理錯(cuò)別字,從而不至于對(duì)分類結(jié)果產(chǎn)生影響。
參考文獻(xiàn):NLP中的對(duì)抗樣本 - 山竹小果
下面開始介紹紀(jì)老師他們開展的工作。
三.對(duì)抗文本TextBugger
TextBugger: Generating Adversarial Text Against Real-world Applications
這篇論文發(fā)表在NDSS 2019,主要提出了生成文本對(duì)抗樣本的模型TextBugger,用于生成文本對(duì)抗樣本。其優(yōu)勢(shì)如下:
有效(effective): 攻擊成功率超出之前的模型
隱蔽(evasive): 保留正常文本的特點(diǎn)
高效(efficient: 高效生成對(duì)抗性文本,運(yùn)算速度是文本長(zhǎng)度的次線性
原文地址:
https://arxiv.org/abs/1812.05271
1.論文貢獻(xiàn)
文本對(duì)抗在應(yīng)用中越來越重要,而圖像對(duì)抗中的方法不能直接用于文本。之前的對(duì)抗樣本生成模型有著下述的缺點(diǎn):
在計(jì)算上不夠高效
在白盒環(huán)境攻擊
需要手動(dòng)干預(yù)
都是針對(duì)某一個(gè)模型,不具備泛化性
本文提出了一個(gè)新框架TextBugger,可生成黑箱和白箱場(chǎng)景下的保持樣本原意的對(duì)抗樣本。在白箱場(chǎng)景下,可以通過計(jì)算雅各比矩陣來找到句子中的關(guān)鍵詞;在黑箱場(chǎng)景下,可以先找到最重要的句子,再使用一個(gè)評(píng)分函數(shù)來尋找句子中的關(guān)鍵詞。在真實(shí)世界的分類器中使用了對(duì)抗樣本,取得了不錯(cuò)的效果。具體貢獻(xiàn)包括:
提出TextBugger框架,能夠在黑箱和白箱場(chǎng)景下生成高效對(duì)抗樣本
對(duì)TextBugger框架進(jìn)行了評(píng)測(cè),證明了其的效率和有效性
證明TextBugger對(duì)于人類理解只有輕微影響
討論了兩種防御策略,以增強(qiáng)文本分類模型魯棒性
具體實(shí)驗(yàn)環(huán)境如下圖所示,數(shù)據(jù)集為IMDB和Rotten Tomatoes Movie Reviews數(shù)據(jù)集,都是對(duì)影評(píng)數(shù)據(jù)進(jìn)行情感分析的數(shù)據(jù)集。目標(biāo)模型為:
白盒攻擊:針對(duì)LR、CNN 和 LSTM 模型
黑盒攻擊:真實(shí)線上模型,如Google Cloud NLP、IBM Waston Natural Language Understanding (IBM Watson)、Microsoft Azure Text Analytics (Microsoft Azure)、Amazon AWS Comprehend (Amazon AWS)、Facebook fast-Text (fastText)、ParallelDots、TheySay Sentiment、Aylien Sentiment、TextProcessing、Mashape Sentiment 等參數(shù)未知的模型
基線算法為:
隨機(jī)算法:每個(gè)句子,隨機(jī)選擇10%的單詞來修改。
FGSM+NNS:使用快速梯度符號(hào)法尋找單詞嵌入層的最佳擾動(dòng),再在詞典中通過最近鄰搜索的方式尋找到最接近的單詞。
DeepFool+NNS:使用DeepFool方法尋找穿越多分類問題決策邊界的方向,進(jìn)而找到最佳擾動(dòng),再在詞典中通過最近鄰搜索的方法尋找最接近的單詞。
PS:該部分參考“人帥也要多讀書”老師的理解。
對(duì)抗攻擊分類
對(duì)抗攻擊的分類有很多種,從攻擊環(huán)境來說,可以分為黑盒攻擊、白盒攻擊或灰盒攻擊.
黑盒攻擊
:攻擊者對(duì)攻擊模型的內(nèi)部結(jié)構(gòu)、訓(xùn)練參數(shù)、防御方法等一無所知,只能通過輸出與模型進(jìn)行交互。
白盒攻擊
:與黑盒模型相反,攻擊者對(duì)模型一切都可以掌握。目前大多數(shù)攻擊算法都是白盒攻擊。
灰盒攻擊
:介于黑盒攻擊和白盒攻擊之間,僅僅了解模型的一部分。例如僅僅拿到模型的輸出概率,或者只知道模型結(jié)構(gòu),但不知道參數(shù)。
從攻擊的目的來說,可以分為有目標(biāo)攻擊和無目標(biāo)攻擊。
無目標(biāo)攻擊
:以圖片分類為例,攻擊者只需要讓目標(biāo)模型對(duì)樣本分類錯(cuò)誤即可,但并不指定分類錯(cuò)成哪一類。
有目標(biāo)攻擊
:攻擊者指定某一類,使得目標(biāo)模型不僅對(duì)樣本分類錯(cuò)誤并且需要錯(cuò)成指定的類別。從難度上來說,有目標(biāo)攻擊的實(shí)現(xiàn)要難于無目標(biāo)攻擊。
2.白盒攻擊
白盒攻擊:通過雅各比矩陣找到最重要的單詞,再生成五種類型的bug,根據(jù)置信度找到最佳的那一個(gè)。TextBugger整個(gè)框架如下圖所示。
白盒攻擊通過雅可比矩陣找到最重要的單詞,算法流程如下:
Step 1: Find Important Words (line 2-5)
找到最重要單詞,通過雅各比矩陣來找
Step 2: Bugs Generation (line 6-14)
bug生成。為了保證生成的對(duì)抗樣本在視覺上和語義上都和原樣本一致,擾動(dòng)要盡量小。考慮兩種層次的擾動(dòng),字母級(jí)擾動(dòng)和單詞級(jí)擾動(dòng)
TextBugger提出了五種對(duì)抗樣本生成方法,如下圖所示:
插入空格
插入一個(gè)空格到單詞中
刪除字符
刪除除第一個(gè)字符和最后一個(gè)字符外的任意字符
替換字符
交換單詞中除了開頭和結(jié)尾的兩個(gè)字母
視覺相似
替換視覺上相似的字母(比如“o”和“0”、“l(fā)”和“1”)和在鍵盤上挨著比較近的字母(比如“m”和“n”)
上下文感知詞向量,最近鄰替換(word2vec->GloVe)
使用情境感知空間中距離最近的k個(gè)單詞來進(jìn)行替換
將使用候選詞生成的對(duì)抗樣本輸入模型,得到對(duì)應(yīng)類別的置信度,選取讓置信度下降最大的詞。如果替換掉單詞后的對(duì)抗樣本與原樣本的語義相似度大于閾值,對(duì)抗樣本生成成功。如果未大于閾值,則選取下一個(gè)單詞進(jìn)行修改。
3.黑盒攻擊
在黑盒場(chǎng)景下,沒有梯度的指示,所以首先找最重要的句子,然后通過打分函數(shù)找到最重要的單詞。具體攻擊分為三個(gè)步驟:
Step1: 找到重要的句子
第一步尋找重要句子。將文檔分為多個(gè)句子,逐句作為輸入,查看分類結(jié)果。這樣可以過濾掉那些對(duì)于預(yù)測(cè)標(biāo)簽不重要的單句,剩下的句子也可根據(jù)置信度來排序了。
Step2: 根據(jù)分類結(jié)果,使用評(píng)分函數(shù)來確定每個(gè)單詞的重要性,并根據(jù)得分對(duì)單詞進(jìn)行排序
第二步尋找重要的詞。考慮到所有可能的修改,應(yīng)該首先發(fā)現(xiàn)句子中最重要的詞,再輕微地進(jìn)行修改以保證對(duì)抗樣本與原樣本的語義相似性。要想評(píng)估一個(gè)單詞的重要性,可以使用去除之前的置信度與去除后的置信度的差來評(píng)估。
Step3: 使用bug選擇算法改變選擇的單詞
第三步bug生成。此步驟與白盒攻擊中的步驟基本一致。
4.實(shí)驗(yàn)評(píng)估
主要使用編輯距離、杰卡德相似系數(shù)、歐氏距離和語義相似度進(jìn)行評(píng)估。下表展示了論文中方法在白箱環(huán)境和黑箱環(huán)境下的表現(xiàn),可以看出與之前的方法相比有很大的優(yōu)勢(shì)。
下圖展示了對(duì)抗文本中的重要單詞。根據(jù)算法攻擊單詞的頻率,就可以知道對(duì)于某一類別影響最大的單詞,比如“bad”, “awful”, “stupid”, “worst”, “terrible”這些詞就是消極類別中的關(guān)鍵詞。
下圖是論文算法產(chǎn)生的對(duì)抗樣本實(shí)例,通過簡(jiǎn)單的單詞級(jí)別的攻擊對(duì)分類關(guān)鍵詞進(jìn)行了處理,進(jìn)而達(dá)到了攻擊的效果,可以看到目標(biāo)類別和攻擊后的類別差別很大。具體修改比如:
awful => awf ul
cliches => clichs
foolish => fo0ilsh
terrible => terrib1e
實(shí)驗(yàn)數(shù)據(jù)表明,文檔的長(zhǎng)度對(duì)于攻擊成功率影響不大,但更長(zhǎng)的文本對(duì)于錯(cuò)誤分類的置信度會(huì)下降。文檔長(zhǎng)度越長(zhǎng),攻擊所需時(shí)長(zhǎng)也就更長(zhǎng),這在直觀上較好理解。
總結(jié)
本論文算法的特點(diǎn)總結(jié)如下:首先,算法同時(shí)使用了字母級(jí)別和單詞級(jí)別的擾動(dòng);其次,論文評(píng)估了算法的效率;最后,論文使用算法在眾多在線平臺(tái)上進(jìn)行了實(shí)驗(yàn),證明了算法的普適性和魯棒性。同時(shí),現(xiàn)存的防御方法只集中在的圖像領(lǐng)域,而在文本領(lǐng)域比較少,對(duì)抗訓(xùn)練的方法也只應(yīng)用于提高分類器的準(zhǔn)確性而非防御對(duì)抗樣本。
四.中文對(duì)抗文本
目前看到的很多論文都是介紹英文的對(duì)抗文本攻擊,但是中文同樣存在,并且由于中文語義和分詞,其攻擊和防御難度更大,接下來紀(jì)老師他們分享了正在開展的一個(gè)工作。但由于這部分介紹很快,這里僅放出當(dāng)時(shí)拍攝的相關(guān)PPT,請(qǐng)大家下來進(jìn)行研究,我感覺word2vec語義知識(shí)能做一些事情。
Query-efficient Decision-based Attack Against Chinese NLP Systems
隨著對(duì)抗樣本發(fā)展,火星文字越來越多,它們一定程度上能夠繞過我們新聞平臺(tái)、社交網(wǎng)絡(luò)、情感模型,比如“微信”修改為“薇心”、“玥發(fā)叁仟”等詞語。中文的對(duì)抗文本某種程度上難度更高,那么怎么解決呢?
紀(jì)老師他們團(tuán)隊(duì)提出了CTbugger(Adversarial Chinese Text),其框架如下圖所示,通過對(duì)深度學(xué)習(xí)模型進(jìn)行惡意文本攻擊從而生成對(duì)應(yīng)的中文對(duì)抗文本。
另一塊工作是TextShield,其框架如下圖所示:
五.總結(jié)
最后給出總結(jié)的相關(guān)文獻(xiàn),大家可以去了解學(xué)習(xí)。真的非常感謝所有老師的分享,學(xué)到很多知識(shí),也意識(shí)到自己的不足。我自己也需要思考一些問題:
如何將對(duì)抗樣本和深度學(xué)習(xí)與惡意代碼分析結(jié)合
如何結(jié)合AI技術(shù)完成二進(jìn)制分析,并且實(shí)現(xiàn)特征的可解釋性分析
學(xué)術(shù)或許是需要天賦的,這些大佬真值得我們學(xué)習(xí),頂會(huì)論文要堅(jiān)持看,科研實(shí)驗(yàn)不能間斷。同時(shí)自己會(huì)繼續(xù)努力,爭(zhēng)取靠后天努力來彌補(bǔ)這些鴻溝,更重要的是享受這種奮斗的過程,加油!最后感謝老師給予的機(jī)會(huì),雖然自己的技術(shù)和科研都很菜,安全也非常難,但還是得苦心智,勞筋骨,餓體膚。感恩親人的支持,也享受這個(gè)奮斗的過程。月是故鄉(xiāng)圓,佳節(jié)倍思親。
最后給出“山竹小果”老師歸納的對(duì)抗樣本相關(guān)論文:
(1) 文本攻擊與防御的論文概述
Analysis Methods in Neural Language Processing: A Survey. Yonatan Belinkov, James Glass. TACL 2019.
Towards a Robust Deep Neural Network in Text Domain A Survey. Wenqi Wang, Lina Wang, Benxiao Tang, Run Wang, Aoshuang Ye. 2019.
Adversarial Attacks on Deep Learning Models in Natural Language Processing: A Survey. Wei Emma Zhang, Quan Z. Sheng, Ahoud Alhazmi, Chenliang Li. 2019.
(2) 黑盒攻擊
PAWS: Paraphrase Adversaries from Word Scrambling. Yuan Zhang, Jason Baldridge, Luheng He. NAACL-HLT 2019.
Text Processing Like Humans Do: Visually Attacking and Shielding NLP Systems. Steffen Eger, G?zde Gül ?Sahin, Andreas Rücklé, Ji-Ung Lee, Claudia Schulz, Mohsen Mesgar, Krishnkant Swarnkar, Edwin Simpson, Iryna Gurevych.NAACL-HLT 2019.
Adversarial Over-Sensitivity and Over-Stability Strategies for Dialogue Models. Tong Niu, Mohit Bansal. CoNLL 2018.
Generating Natural Language Adversarial Examples. Moustafa Alzantot, Yash Sharma, Ahmed Elgohary, Bo-Jhang Ho, Mani Srivastava, Kai-Wei Chang. EMNLP 2018.
Breaking NLI Systems with Sentences that Require Simple Lexical Inferences. Max Glockner, Vered Shwartz, Yoav Goldberg ACL 2018.
AdvEntuRe: Adversarial Training for Textual Entailment with Knowledge-Guided Examples. Dongyeop Kang, Tushar Khot, Ashish Sabharwal, Eduard Hovy. ACL 2018.
Semantically Equivalent Adversarial Rules for Debugging NLP Models. Marco Tulio Ribeiro, Sameer Singh, Carlos Guestrin ACL 2018.
Robust Machine Comprehension Models via Adversarial Training. Yicheng Wang, Mohit Bansal. NAACL-HLT 2018.
Adversarial Example Generation with Syntactically Controlled Paraphrase Networks. Mohit Iyyer, John Wieting, Kevin Gimpel, Luke Zettlemoyer. NAACL-HLT 2018.
Black-box Generation of Adversarial Text Sequences to Evade Deep Learning Classifiers. Ji Gao, Jack Lanchantin, Mary Lou Soffa, Yanjun Qi. IEEE SPW 2018.
Synthetic and Natural Noise Both Break Neural Machine Translation. Yonatan Belinkov, Yonatan Bisk. ICLR 2018.
Generating Natural Adversarial Examples. Zhengli Zhao, Dheeru Dua, Sameer Singh. ICLR 2018.
Adversarial Examples for Evaluating Reading Comprehension Systems. Robin Jia, and Percy Liang. EMNLP 2017.
(3) 白盒攻擊
On Adversarial Examples for Character-Level Neural Machine Translation. Javid Ebrahimi, Daniel Lowd, Dejing Dou. COLING 2018.
HotFlip: White-Box Adversarial Examples for Text Classification. Javid Ebrahimi, Anyi Rao, Daniel Lowd, Dejing Dou. ACL 2018.
Towards Crafting Text Adversarial Samples. Suranjana Samanta, Sameep Mehta. ECIR 2018.
(4) 同時(shí)探討黑盒和白盒攻擊
TEXTBUGGER: Generating Adversarial Text Against Real-world Applications. Jinfeng Li, Shouling Ji, Tianyu Du, Bo Li, Ting Wang. NDSS 2019.
Comparing Attention-based Convolutional and Recurrent Neural Networks: Success and Limitations in Machine Reading Comprehension. Matthias Blohm, Glorianna Jagfeld, Ekta Sood, Xiang Yu, Ngoc Thang Vu. CoNLL 2018.
Deep Text Classification Can be Fooled. Bin Liang, Hongcheng Li, Miaoqiang Su, Pan Bian, Xirong Li, Wenchang Shi.IJCAI 2018.
(5) 對(duì)抗防御
Combating Adversarial Misspellings with Robust Word Recognition. Danish Pruthi, Bhuwan Dhingra, Zachary C. Lipton. ACL 2019.
評(píng)估
(6) 對(duì)文本攻擊和防御研究提出新的評(píng)價(jià)方法
On Evaluation of Adversarial Perturbations for Sequence-to-Sequence Models. Paul Michel, Xian Li, Graham Neubig, Juan Miguel Pino. NAACL-HLT 2019
參考文獻(xiàn):
感謝這些大佬和老師們的分享和總結(jié),秀璋受益匪淺,再次感激。
[1]?AI安全 - 智能時(shí)代的攻守道
[2]?https://arxiv.org/abs/1812.05271
[3]?(強(qiáng)烈推薦)NLP中的對(duì)抗樣本 - 山竹小果
[4]?TextBugger:針對(duì)真實(shí)應(yīng)用生成對(duì)抗文本 - 人帥也要多讀書
[5]?論文閱讀 | TextBugger: Generating Adversarial Text Against Real-world Applications
[6]?對(duì)抗攻擊概念介紹 - 機(jī)器學(xué)習(xí)安全小白
[7] Li J, Ji S, Du T, et al. TextBugger: Generating Adversarial Text Against Real-world Applications[J]. arXiv: Cryptography and Security, 2018.
感恩能與大家在華為云遇見!
希望能與大家一起在華為云社區(qū)共同成長(zhǎng)。原文地址:https://blog.csdn.net/Eastmount/article/details/108890639
(By:Eastmount 2021-09-25 晚上12點(diǎn)寫于北京)
AI 云安全 機(jī)器學(xué)習(xí)
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。