魏春雨, 孫 蒙, 鄒 霞, 張雄偉
陸軍工程大學(xué) 指揮控制工程學(xué)院 智能信息處理實(shí)驗(yàn)室 南京 中國 210007
語音信號(hào)中含有豐富的信息, 其中文本內(nèi)容(即說的什么)和說話人的身份(即誰說的)最為重要[1]。前者就是狹義概念上的自動(dòng)語音識(shí)別(Automatic Speech Recognition, ASR), 它將語音信號(hào)轉(zhuǎn)寫為文本或指令符號(hào)[2], 本文將此類識(shí)別簡稱為語音識(shí)別; 后者被稱為聲紋識(shí)別, 它將語音信號(hào)映射為說話人的身份符號(hào), 包括“從給定說話人集合中識(shí)別出語音來自哪個(gè)說話人”的自動(dòng)說話人辨認(rèn)(Automatic Speaker Identification, ASI)和“驗(yàn)證當(dāng)前語音是否來自聲稱的說話人”的說話人確認(rèn)(Automatic Speaker Verification, ASV)兩個(gè)具體任務(wù)[3]。
隨著深度學(xué)習(xí)和大數(shù)據(jù)技術(shù)的發(fā)展, 語音識(shí)別已經(jīng)越來越廣泛地應(yīng)用于現(xiàn)實(shí)生活中, 如智能手機(jī)的語音輸入、電商平臺(tái)的智能客服、金融交易的聲紋認(rèn)證和智能家居的語音控制等, 其根本作用是以語音作為載體和媒介實(shí)現(xiàn)人與設(shè)備的互通互聯(lián)[4]。然而, 隨著機(jī)器學(xué)習(xí)理論和方法的發(fā)展, 出現(xiàn)了用于模仿特定說話人語音的深度偽造[5]、針對語音識(shí)別和聲紋識(shí)別的對抗樣本[6], 它們都為破壞語音載體的可信性和安全性提供了具體手段, 進(jìn)而對各自應(yīng)用場景的信息安全構(gòu)成了挑戰(zhàn)。
具體來說, 深度偽造是利用生成式對抗網(wǎng)絡(luò)等方法, 通過構(gòu)建特定的模型, 產(chǎn)生聽起來像目標(biāo)說話人的語音樣本。之所以稱之為偽造, 是因?yàn)槟繕?biāo)說話人根本沒有說過這些話。深度偽造的欺騙對象主要是人耳聽覺, 也可以用于導(dǎo)致聲紋識(shí)別系統(tǒng)出錯(cuò)[7]。與深度偽造不同, 語音對抗樣本旨在通過對載體信號(hào)引入微小的擾動(dòng), 使語音識(shí)別或聲紋識(shí)別系統(tǒng)出現(xiàn)特定的差錯(cuò), 但并不影響人耳對該語音樣本的聽覺感知[8]。相對于深度偽造, 語音對抗樣本的攻擊具有很強(qiáng)的隱蔽性。本文選取語音的文本內(nèi)容識(shí)別、聲紋身份識(shí)別兩個(gè)典型任務(wù), 按照從白盒攻擊到黑盒攻擊、從數(shù)字攻擊到物理攻擊、從特定載體到通用載體的從易到難、逐步貼近實(shí)際場景的方式, 系統(tǒng)地梳理了語音對抗樣本的攻擊方法。
與此同時(shí), 為了應(yīng)對對抗樣本帶來的安全挑戰(zhàn)[9], 研究者有針對性地提出了許多防御方法, 例如通過檢測與識(shí)別對抗樣本重新劃分分類邊界、借助數(shù)據(jù)增強(qiáng)加固語音或聲紋識(shí)別器、利用對抗擾動(dòng)帶來的異常特征鑒別語音是否可信等。本文從統(tǒng)計(jì)學(xué)習(xí)中分類器邊界構(gòu)造的角度, 對語音對抗樣本的防御方法進(jìn)行分類論述, 揭示各類方法實(shí)現(xiàn)防御的深層機(jī)理。最后, 結(jié)合現(xiàn)階段對抗樣本攻擊和防御方法存在的不足, 預(yù)測該領(lǐng)域未來的發(fā)展方向。
語音對抗樣本攻擊可以分為無目標(biāo)攻擊和有目標(biāo)攻擊。無目標(biāo)攻擊迫使模型產(chǎn)生不同于其真實(shí)標(biāo)簽的預(yù)測輸出, 而有目標(biāo)攻擊迫使模型預(yù)測輸出攻擊者指定的目標(biāo)標(biāo)簽。根據(jù)攻擊者對被攻擊模型信息掌握的程度, 可以分為: 白盒攻擊和黑盒攻擊。根據(jù)對抗樣本攻擊方式的不同, 可以分為: 數(shù)字攻擊和物理攻擊。根據(jù)對抗擾動(dòng)的適用范圍, 還可以分為: 基于特定載體的攻擊和基于通用載體的攻擊。本文從白盒攻擊與黑盒攻擊、數(shù)字攻擊與物理攻擊和特定載體與通用載體三個(gè)方面, 介紹幾種在語音對抗樣本攻擊發(fā)展史上比較有代表性的攻擊方法, 并詳細(xì)介紹各類攻擊方法的原理, 如表1所示。
表1 語音對抗樣本的攻擊方法對比 Table 1 Comparison of attack methods of voice adversarial examples
續(xù)表
在白盒攻擊中, 攻擊者完全了解被攻擊模型的結(jié)構(gòu)、參數(shù)、損失函數(shù)和梯度等信息, 利用被攻擊白盒模型的結(jié)構(gòu)和參數(shù)信息構(gòu)建對抗樣本生成算法, 從而有指導(dǎo)性地修改原始樣本, 以生成對抗樣本。在黑盒攻擊中, 攻擊者不掌握被攻擊模型的結(jié)構(gòu)、參數(shù)等內(nèi)部信息, 只能通過利用白盒模型對抗樣本的遷移性, 或利用黑盒模型的輸出結(jié)果訓(xùn)練替代模型等方式來生成對抗樣本。在現(xiàn)實(shí)場景中, 攻擊者難以獲取被攻擊模型的內(nèi)部信息, 因此黑盒攻擊相對于白盒攻擊難度更高, 但也更符合實(shí)際。
比較常用的對抗樣本生成方法是快速梯度符號(hào)法(Fast Gradient Sign Method, FGSM)[10]。FGSM最早用于生成圖像對抗樣本, 后來的研究表明它也可以用于生成語音對抗樣本。利用目標(biāo)網(wǎng)絡(luò)損失函數(shù)的梯度信息, 沿著梯度方向以固定步長逐漸增大損失函數(shù), 使模型給出錯(cuò)誤的分類結(jié)果, 通過迭代修改, 可以快速生成對抗樣本。
Gong等人[11]提出了基于FGSM產(chǎn)生語音對抗擾動(dòng)的方法:
其中,δ表示對抗擾動(dòng),ε用來控制擾動(dòng)的幅度,θ是模型參數(shù),x是模型輸入,t′是攻擊者期望的分類標(biāo)簽,J(q,x,t′)是神經(jīng)網(wǎng)絡(luò)的損失函數(shù)。該方法通過直接擾動(dòng)原始波形, 避免了在特征域引入擾動(dòng)再轉(zhuǎn)換回波形域所帶來的額外損失。他們用這種方法生成的對抗樣本攻擊一個(gè)基于卷積神經(jīng)網(wǎng)絡(luò)的聲紋識(shí)別系統(tǒng)。實(shí)驗(yàn)結(jié)果顯示, 當(dāng)擾動(dòng)系數(shù)ε為0.032時(shí)(相對于波形幅度值, 該值很小), 系統(tǒng)識(shí)別錯(cuò)誤率從29%提高到了44%。然而, 該方法的效果依賴于白盒假設(shè), 即假定攻擊者完全知曉被攻擊模型的網(wǎng)絡(luò)結(jié)構(gòu)。
Kreuk等人[12]用FGSM生成對抗性的聲學(xué)特征, 并從對抗性的聲學(xué)特征中重建語音波形, 用于攻擊一個(gè)端到端的聲紋認(rèn)證模型。他們的實(shí)驗(yàn)使用YOHO和NTIMIT兩個(gè)數(shù)據(jù)集、梅爾頻譜(Mel- Spectrum)和梅爾頻率倒譜系數(shù)(Mel Frequency Cepstral Coefficients, MFCC)兩種聲學(xué)特征。在白盒場景下, 使用不同特征和數(shù)據(jù)集的攻擊都使系統(tǒng)的識(shí)別準(zhǔn)確率降低到37.5%以下, 其中利用MFCC特征的攻擊比Mel-Spectrum特征下降得更嚴(yán)重。他們還設(shè)法擺脫白盒假設(shè)在黑盒場景中進(jìn)行實(shí)驗(yàn), 在YOHO數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明, 利用語音Mel-Spectrum特征生成的對抗樣本, 攻擊使用MFCC特征訓(xùn)練好的聲紋認(rèn)證模型, 使該聲紋認(rèn)證模型的準(zhǔn)確率從81.00%下降到了62.25%。
除了上述針對聲紋識(shí)別系統(tǒng)的攻擊, Iter等人[13]用FGSM和欺騙梯度法(Fooling Gradient Method)對Kim和Park設(shè)計(jì)的語音識(shí)別系統(tǒng)[14]進(jìn)行了白盒攻擊。欺騙梯度法是在訓(xùn)練過程中基于輸入樣本而不是網(wǎng)絡(luò)模型參數(shù)來計(jì)算梯度, 利用梯度下降法以迭代的方式對輸入樣本施加小幅度的擾動(dòng), 使網(wǎng)絡(luò)輸出不正確的目標(biāo)。他們在實(shí)驗(yàn)中使用VCTK語料庫生成對抗樣本, 多次迭代后的結(jié)果表明, 對單個(gè)詞或整個(gè)句子的攻擊會(huì)造成個(gè)別單詞的拼寫錯(cuò)誤。該方法雖然使模型出現(xiàn)轉(zhuǎn)錄錯(cuò)誤, 但并不能總是保證輸出語法正確的目標(biāo)單詞或句子。而且經(jīng)過多輪迭代后, 對原始單詞或句子的預(yù)測也出現(xiàn)了很多拼寫錯(cuò)誤。
實(shí)際上, 利用對抗樣本的可遷移性, 在白盒條件下得到的對抗樣本是可以直接用于攻擊黑盒模型的。Cisse等人[15]提出了一種名為Houdini的方法來攻擊語音識(shí)別系統(tǒng)。在LibriSpeech數(shù)據(jù)集上, 對DeepSpeech2模型進(jìn)行白盒攻擊, 對于不同擾動(dòng)幅度下的無目標(biāo)攻擊, Houdini都具有較好的攻擊效果, 但在有目標(biāo)攻擊情況下效果不佳。該項(xiàng)研究還對Houdini的黑盒攻擊效果進(jìn)行了簡單地驗(yàn)證, 用基于DeepSpeech2模型生成的對抗樣本攻擊Google Voice, 發(fā)現(xiàn)無目標(biāo)攻擊的成功率較高, 表明攻擊效果從白盒到黑盒具有一定的可遷移性。
對黑盒攻擊來說, 不同白盒模型生成的對抗樣本對黑盒模型的攻擊效果有很大差異。當(dāng)對特定黑盒模型進(jìn)行攻擊時(shí), 設(shè)法找到遷移性最好的白盒模型用于生成對抗樣本最為關(guān)鍵。Li等人[16]研究了不同特征和模型結(jié)構(gòu)之間攻擊方法的可遷移性。實(shí)驗(yàn)設(shè)計(jì)了三種系統(tǒng): 基于MFCC的高斯混合模型i-vector(MFCC i-vector)、基于對數(shù)功率幅度譜(Log Power Magnitude Spectrum, LPMS)的高斯混合模型i-vector(LPMS i-vector)和基于 MFCC 的x-vector(MFCC x-vector)。攻擊場景包含三種: (1)用LPMS i-vector生成的對抗樣本攻擊MFCC i-vector; (2)用MFCC i-vector生成的對抗樣本攻擊MFCC x-vector; (3)用LPMS i-vector生成的對抗樣本攻擊MFCC x-vector。實(shí)驗(yàn)結(jié)果表明, 三種攻擊設(shè)置下的錯(cuò)誤接受率(False Acceptance Rate, FAR)都顯著增加, 最大增幅分別約為60%、50%和30%, 改變特征的增幅大于改變模型的增幅, 這表明模型改變后攻擊效果會(huì)變得更差。
Villalba等人[17]嘗試將他們的攻擊從小規(guī)模的白盒系統(tǒng)遷移到大規(guī)模的黑盒系統(tǒng)。他們分別在ThinResNet34和ResETDNN x-vector模型上用迭代快速梯度符號(hào)法(Iterative Fast Gradient Sign Method, I-FGSM)生成對抗樣本, 然后攻擊ResNet34模型。實(shí)驗(yàn)結(jié)果表明黑盒攻擊的效果明顯不如白盒, 只有在信號(hào)和擾動(dòng)噪聲的比值較低時(shí)才可實(shí)現(xiàn)有效的攻擊。
Zhang等人[18]將他們提出的一種迭代集成方法(Iterative Ensemble Method, IEM)與動(dòng)量迭代快速梯度符號(hào)法(Momentum Iterative Fast Gradient Sign Method, MI-FGSM)相結(jié)合, 在白盒狀態(tài)下生成可以同時(shí)欺騙多個(gè)模型的對抗樣本, 增強(qiáng)了對抗樣本攻擊在黑盒模型上的可遷移性。實(shí)驗(yàn)使用ASVspoof2019數(shù)據(jù)集的LA部分, 評估了對LCNN、SENet50、Resnet34和AFNet 4個(gè)模型的黑盒攻擊。對每個(gè)模型的黑盒攻擊, 使用其他3個(gè)模型在白盒狀態(tài)下集成生成對抗樣本。實(shí)驗(yàn)發(fā)現(xiàn), 基于IEM的MI-FGSM攻擊成功率比單獨(dú)利用MI-FGSM的攻擊提高了4%~30%。
Khare等人[19]提出利用多目標(biāo)進(jìn)化的優(yōu)化方法對語音識(shí)別系統(tǒng)進(jìn)行黑盒攻擊, 優(yōu)化目標(biāo)是使文本轉(zhuǎn)錄錯(cuò)誤, 同時(shí)帶有擾動(dòng)的語音與原始語音仍然保持高度相似性。他們增大目標(biāo)文本與原始文本的編輯距離, 同時(shí)最小化對抗樣本和真實(shí)樣本MFCC特征之間的歐幾里得距離?;谶M(jìn)化的方法是對自然選擇的模仿, 在創(chuàng)建了一群候選的對抗樣本后, 具有較高適應(yīng)度的對抗樣本更有可能變異并成為下一代的一部分, 重復(fù)這個(gè)進(jìn)化過程直到得到一個(gè)最佳的結(jié)果。通過向原始語音信號(hào)添加隨機(jī)均勻噪聲來初始化種群, 然后用每個(gè)候選種群的兩個(gè)目標(biāo)計(jì)算適合度分?jǐn)?shù), 那些得分較高的種群更傾向被選擇進(jìn)行交叉和突變。他們用這種方法對Deepspeech和Kaldi[20]兩個(gè)語音識(shí)別系統(tǒng)進(jìn)行無目標(biāo)攻擊, 單詞錯(cuò)誤率(Word Error Rate, WER)分別升高了980%和368%, 同時(shí)對抗樣本與原始音頻保持了98%的音頻相似性, 取得了較好的黑盒攻擊效果。
根據(jù)語音對抗樣本是否經(jīng)由空氣播放, 可以將攻擊方法分為數(shù)字攻擊和物理攻擊。數(shù)字攻擊是指對抗樣本以數(shù)字信號(hào)的形式進(jìn)入識(shí)別系統(tǒng), 而物理攻擊是指對抗樣本由揚(yáng)聲器播放、經(jīng)空氣傳播、被麥克風(fēng)接收進(jìn)入識(shí)別系統(tǒng)。顯然, 物理攻擊過程中, 信號(hào)經(jīng)過硬件設(shè)備的處理會(huì)出現(xiàn)失真, 聲音在空氣中傳播也會(huì)受到空間中環(huán)境噪音的干擾, 攻擊的難度比數(shù)字攻擊更大。即使模擬真實(shí)環(huán)境實(shí)施攻擊, 也存在與真實(shí)環(huán)境差異大、計(jì)算量大、無法實(shí)時(shí)等問題。
Sch?nherr等人[21]設(shè)計(jì)了一種基于心理聲學(xué)隱藏的針對語音識(shí)別系統(tǒng)的攻擊。他們利用MP3的編碼原理, 將對抗擾動(dòng)隱藏在聽力閾值以下, 使其幾乎不被察覺。同時(shí), 將音頻預(yù)處理集成到梯度反向傳播過程中, 以增強(qiáng)攻擊效果。在對Kaldi識(shí)別系統(tǒng)的白盒攻擊中, 可以在不到兩分鐘的時(shí)間為10 s的語音文件生成一個(gè)對抗樣本。他們在實(shí)驗(yàn)中將迭代次數(shù)設(shè)置為小于500, 聽力閾值的允許偏差范圍限定在20 dB以內(nèi), 縮短攻擊時(shí)間的同時(shí)實(shí)現(xiàn)了較高的攻擊成功率。然而, 這種攻擊是以語音文件的形式進(jìn)入到識(shí)別系統(tǒng)實(shí)施的數(shù)字攻擊, 并不能在空間環(huán)境中播放實(shí)施物理攻擊。
在上述數(shù)字攻擊的基礎(chǔ)上, Sch?nherr等人[22]繼續(xù)研究了適用于不同物理環(huán)境的對抗樣本生成方法。他們將物理傳輸過程建模為原始音頻信號(hào)與房間脈沖響應(yīng)(Room Impulse Responses, RIR)的卷積, 利用不同的房間特性和麥克風(fēng)與揚(yáng)聲器的不同位置, 對生成的對抗樣本進(jìn)行優(yōu)化以使其具有更強(qiáng)的魯棒性:
其中, RIR參數(shù)h服從Hθ分布, *代表卷積操作,x為原始音頻樣本,x′是生成的對抗樣本,y′是目標(biāo)類別。在白盒場景下對Kaldi語音識(shí)別系統(tǒng)進(jìn)行有目標(biāo)攻擊, 允許對信號(hào)的修改幅度超過標(biāo)準(zhǔn)聽力閾值20 dB。實(shí)驗(yàn)表明, 生成的對抗樣本可以有效適應(yīng)混響時(shí)間較長或揚(yáng)聲器和麥克風(fēng)之間距離較大的場景, 可以在不同的房間和聲音環(huán)境中較成功地進(jìn)行物理攻擊, 說明在沒有任何先驗(yàn)知識(shí)的情況下他們的方法對復(fù)雜的聲學(xué)環(huán)境具有一定的適應(yīng)性。
Qin等人[23]針對名為Lingvo的語音識(shí)別系統(tǒng)生成了可以經(jīng)過物理傳播的不可察覺的語音對抗樣本。為了實(shí)現(xiàn)聽覺上的不可察覺, 他們利用了聽覺掩蔽原理。在音頻域中每個(gè)頻率附近存在一個(gè)“掩蔽閾值”, 任何低于這一閾值的信號(hào)實(shí)際上都是不可察覺的。利用該方法求解對抗樣本需要同時(shí)優(yōu)化兩個(gè)部分: (1)優(yōu)化擾動(dòng)以欺騙待攻擊的識(shí)別網(wǎng)絡(luò); (2)優(yōu)化擾動(dòng)以確保人類聽覺無法感知。該優(yōu)化問題用下面的公式表示:
其中,lnet是交叉熵?fù)p失函數(shù), 保證語音對抗樣本可以成功欺騙識(shí)別系統(tǒng),lθ將擾動(dòng)的歸一化功率譜密度估計(jì)值限制在原始音頻的頻率掩蔽閾值之下,ε控制擾動(dòng)δ的最大幅度。為了提高對抗語音經(jīng)過物理傳播的攻擊魯棒性, 他們在實(shí)驗(yàn)中使用聲學(xué)房間模擬器來生成反映物理傳播規(guī)律的帶有混響的語音。聲學(xué)房間模擬器根據(jù)房間配置(房間尺寸、源語音和目標(biāo)麥克風(fēng)的位置以及混響)創(chuàng)建房間脈沖響應(yīng)r, 然后將生成的房間脈沖響應(yīng)r與輸入語音x卷積, 以獲得具有混響的語音t(x)=x*r。將模擬房間混響的變換t(x)引入到損失函數(shù)中, 使f(t(x+δ))逼近y, 生成經(jīng)過物理傳播后仍有效的對抗樣本。實(shí)驗(yàn)使用LibriSpeech數(shù)據(jù)集, 在測試階段采用與訓(xùn)練階段具有相同房間混響概率分布的變換t(x), 利用上述方法生成對抗樣本對Lingvo模型的有目標(biāo)攻擊成功率在60%以上, 說明這種方法在模擬的物理環(huán)境中比較有效。需要說明的是, 這種攻擊假定攻擊者完全了解識(shí)別模型的信息, 仍是一種白盒攻擊, 并且使用的是模擬的物理環(huán)境, 并不是在真實(shí)物理空間進(jìn)行的攻擊。
從數(shù)字攻擊到物理攻擊的發(fā)展過程中, 對聲學(xué)特征參數(shù)的擾動(dòng)也進(jìn)行了嘗試。Vaidya等人[24]提出了一種生成語音對抗樣本的方法, 通過不斷微調(diào)提取的MFCC參數(shù)使語音識(shí)別系統(tǒng)識(shí)別錯(cuò)誤, 然后將對抗性的MFCC特征重構(gòu)為語音波形實(shí)施數(shù)字攻擊, 但這種攻擊方式無法進(jìn)行物理攻擊。在此基礎(chǔ)上, Carlini等人[25]對Vaidya的方法進(jìn)行了完善, 使其可以經(jīng)過物理傳播, 提高了Vaidya攻擊的實(shí)用性。他們通過增加一個(gè)對信號(hào)二階導(dǎo)數(shù)的懲罰項(xiàng), 來減緩由梯度下降產(chǎn)生的強(qiáng)烈的信號(hào)突變, 使揚(yáng)聲器膜的震動(dòng)頻率可以跟得上信號(hào)變化。在MFCC的計(jì)算公式中引入矩陣A、B、C模擬擾動(dòng)在物理傳播過程中的變化量, 利用最小二乘法預(yù)測對抗樣本MFCC的系數(shù)矩陣, 使其轉(zhuǎn)換為波形后更適合通過揚(yáng)聲器播放。訓(xùn)練迭代過程中, 用揚(yáng)聲器播放語音并計(jì)算得到對抗樣本的MFCC, 對比該MFCC和目標(biāo)MFCC之間的差異, 然后調(diào)整該MFCC, 利用梯度下降法訓(xùn)練得到與目標(biāo)MFCC更接近的MFCC。這種方法求解的對抗樣本考慮了語音播放的實(shí)際過程, 提高了物理攻擊的成功率, 但迭代尋找對抗樣本的時(shí)間成本較高。
在訓(xùn)練過程中人為引入噪聲也可以提高物理攻擊的成功率。Yuan等人[26]設(shè)計(jì)了一種名為CommanderSong的針對語音識(shí)別工具Kaldi的對抗攻擊, 它將語音命令嵌入到歌曲中播放, 使人耳聽不出對抗擾動(dòng)的存在。同時(shí), 將隨機(jī)噪聲引入到對抗樣本生成的過程中, 使該方法在物理環(huán)境中對不同的播放和接收設(shè)備具有魯棒性。CommanderSong利用一種概率密度函數(shù)標(biāo)志符(Probability Density Function Identifier, PDF-ID)的序列匹配算法來生成對抗樣本:
其中,g(·)代表深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network, DNN)最有可能輸出的PDF-ID預(yù)測,x(t)是原始歌曲,μ(t)表示添加到原始歌曲中的擾動(dòng),n(t)表示引入的隨機(jī)噪聲,b表示語音命令的PDF-ID序列,表示原始歌曲和對抗樣本之間PDF-ID序列的l1距離, 利用迭代優(yōu)化來尋找合適的最小擾動(dòng)μ(t),ε表示添加擾動(dòng)的最大范圍。實(shí)驗(yàn)結(jié)果顯示, 這種攻擊對不同語音命令和不同揚(yáng)聲器設(shè)備的效果有所差別, 在Kaldi平臺(tái)上的攻擊最高具有96%的成功率, 當(dāng)遷移到iFLYTEK上時(shí)個(gè)別語音命令的攻擊成功率下降為0。
為了實(shí)現(xiàn)可以通過物理播放的攻擊, Yakura等人[27]將物理世界中由回放和錄音引起的變換集成到對抗樣本生成過程中, 從而希望獲得魯棒性更強(qiáng)的對抗樣本。他們通過在3個(gè)優(yōu)化問題中分別引入帶通濾波、脈沖響應(yīng)和高斯白噪聲, 減輕了設(shè)備噪聲、環(huán)境混響和背景噪聲帶來的影響, 從而增強(qiáng)語音對抗樣本在物理環(huán)境中播放的攻擊效果。該實(shí)驗(yàn)在低信噪比條件下對他們設(shè)定的3條目標(biāo)文本可以實(shí)現(xiàn)100%的攻擊成功率, 但對不同識(shí)別模型和任意目標(biāo)文本的有效性尚不明確。
Chen等人[28]通過考慮多徑傳播和硬件設(shè)備的頻率選擇性提出了一種可以適應(yīng)不同播放設(shè)備和環(huán)境的對抗樣本生成方法Metamorph。該方法包括“生成”和“清除”兩個(gè)階段。在“生成”階段, 收集少量不同信道和硬件設(shè)備產(chǎn)生的信號(hào)失真測量值作為先驗(yàn)數(shù)據(jù)集, 利用這些測量值對傳播路徑和頻率選擇性的影響, 生成初始擾動(dòng)δ; 在“清除”階段, 利用域自適應(yīng)算法對特定設(shè)備的特征進(jìn)行補(bǔ)償, 同時(shí)最小化來自這些失真測量的不可預(yù)測的相關(guān)環(huán)境特征, 以進(jìn)一步提高攻擊的成功率。實(shí)驗(yàn)結(jié)果表明, 在充斥多路徑傳播的辦公室場景, Metamorph在6 m直線距離內(nèi)的攻擊成功率在90%以上; 即使在限定擾動(dòng)幅度以使人類聽覺不易察覺時(shí), 該方法在3 m距離范圍內(nèi)的攻擊成功率也超過了90%。
Chen等人[29]在黑盒條件下對商業(yè)智能語音控制(Intelligent Voice Control, IVC)設(shè)備進(jìn)行了攻擊。他們首先訓(xùn)練一個(gè)基于Kaldi ASpIRE Chain的語音識(shí)別通用基礎(chǔ)模型, 然后用少量的數(shù)據(jù)訓(xùn)練一個(gè)替代模型Mini Librispeech, 接下來用基礎(chǔ)模型對替代模型進(jìn)行改進(jìn), 使替換模型生成的對抗樣本對被攻擊的目標(biāo)模型具有高度的可遷移性。實(shí)驗(yàn)結(jié)果表明, 對基于Google Home Mini、Amazon Echo First Gen、Google Assistant App和Microsoft Cortana App的IVC設(shè)備進(jìn)行攻擊, 平均攻擊成功率可以達(dá)到98%, 證實(shí)在物理場景下用該方法攻擊真實(shí)的語音控制設(shè)備是有效的。
根據(jù)擾動(dòng)的適用范圍, 對抗樣本攻擊可以分為基于特定載體的攻擊和基于通用載體的攻擊。特定載體攻擊的對抗擾動(dòng)只適用單個(gè)語音樣本, 不同的語音樣本實(shí)現(xiàn)對抗攻擊則需要添加不同的擾動(dòng), 例如以下Carlini & Wagner和Du等人的工作。
Carlini & Wagner[30]通過一種直接修改原始音頻波形的優(yōu)化方法生成特定載體對抗樣本, 該優(yōu)化問題可以用以下公式表示:
其中,c體現(xiàn)了攻擊效果和擾動(dòng)程度之間的權(quán)衡,t表示目標(biāo)文本,dB用來度量擾動(dòng)的強(qiáng)度,ε是約束擾動(dòng)δ的常數(shù)。實(shí)驗(yàn)結(jié)果表明, 對抗語音在DeepSpeech上有100%的攻擊成功率, 且與原始音頻有99%的相似性。然而, 這種攻擊需要針對每一個(gè)樣本求解一個(gè)優(yōu)化問題, 也就是要為每個(gè)樣本單獨(dú)設(shè)計(jì)一個(gè)合適的對抗擾動(dòng), 當(dāng)載體樣本不斷變化時(shí)實(shí)施攻擊的計(jì)算量較大。
Du等人[31]提出了一種名為Siren的攻擊來為每一個(gè)語音樣本單獨(dú)生成對抗擾動(dòng)。在白盒攻擊中, 先利用修改過的粒子群優(yōu)化(Particle Swarm Optimization, PSO)算法找到對抗擾動(dòng)的粗粒度擾動(dòng), 再用欺騙梯度方法對粗粒度擾動(dòng)進(jìn)行修正來逼近精確的對抗擾動(dòng)。在黑盒攻擊中, 利用與白盒攻擊不同的目標(biāo)函數(shù)與終止條件, 用一步PSO算法求解對抗擾動(dòng)。實(shí)驗(yàn)結(jié)果表明, 使用Common Voice數(shù)據(jù)集和VCTK 語料庫對DeepSpeech模型進(jìn)行白盒攻擊, 分別在平均不到1600 s和1900 s的時(shí)間生成具有100%攻擊成功率的語音對抗樣本, 使用Speech Commands數(shù)據(jù)集、Synthesized Commands數(shù)據(jù)集和IEMOCAP數(shù)據(jù)集對他們提出的幾個(gè)卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行了黑盒攻擊, 可以實(shí)現(xiàn)83.60%以上的攻擊成功率。
通用載體攻擊的對抗擾動(dòng)適應(yīng)于所有語音樣本, 即任何語音樣本只要添加上這個(gè)擾動(dòng), 都會(huì)變成能達(dá)到攻擊目的的對抗樣本。通用載體的適用范圍廣、部署容易, 更有利于快速發(fā)起實(shí)時(shí)攻擊, 但擾動(dòng)的幅度通常較大。在載體選擇的研究方面, 也是遵循了先從白盒攻擊入手再遷移到黑盒攻擊場景的原則, 如下所述。
為了縮短對抗樣本生成時(shí)間, 使攻擊可以實(shí)時(shí)進(jìn)行, Neekhara等人[32]經(jīng)過研究發(fā)現(xiàn), 在音頻域存在通用的不可察覺的對抗性擾動(dòng), 對任意輸入語音添加通用對抗性擾動(dòng)(Universal Adversarial Perturbations, UAPs), 可以欺騙基于DNN的自動(dòng)語音識(shí)別系統(tǒng)。滿足要求的通用擾動(dòng)v用下面的公式優(yōu)化得到:
其中,C表示語音識(shí)別模型,C(x)為輸入語音x的識(shí)別結(jié)果,ε是在l∞范數(shù)下的最大擾動(dòng)范圍, 在每個(gè)樣本的初始擾動(dòng)v上迭代地添加擾動(dòng)r, 最大化C(xi+v+r)與C(xi)之間的連接主義時(shí)序分類(Connectionist Temporal Classification, CTC)損失, 進(jìn)而找到適用于所有樣本的通用擾動(dòng)。通過配置合適的參數(shù)c可以在給定擾動(dòng)幅度下實(shí)現(xiàn)最大的攻擊成功率。他們在白盒場景下得到的通用擾動(dòng), 在DeepSpeech上表現(xiàn)出良好的性能, 攻擊成功率可達(dá)到89.06%, 并在基于WaveNet的自動(dòng)語音識(shí)別模型[35]上驗(yàn)證了攻擊的可遷移性。但該實(shí)驗(yàn)主要是針對無目標(biāo)攻擊的, 即當(dāng)識(shí)別的文本輸出有超過自身長度50%的字符刪除(Deletion)、插入(Insertion)或替換(Deletion)錯(cuò)誤時(shí)定義為攻擊成功, 所以它在有目標(biāo)攻擊上的效果還不明確。
在Neekhara等人研究的基礎(chǔ)上, Li等人[33]提出了一種針對聲紋識(shí)別系統(tǒng)的通用擾動(dòng)生成方法, 可以生成不同的但具有相似攻擊效果的通用擾動(dòng)。該方法與輸入樣本無關(guān), 適用于整個(gè)數(shù)據(jù)集, 通過生成模型學(xué)習(xí)從低維正態(tài)分布到通用擾動(dòng)子空間的映射來產(chǎn)生通用擾動(dòng)。在給定語音s及其說話人標(biāo)簽y的情況下, 對聲紋識(shí)別模型的無目標(biāo)攻擊可以表示為:
其中,δ=Gθ(z), 利用生成模型Gθ(z)從噪聲z生成通用擾動(dòng)δ,y′是對抗樣本ssδ′= + 的預(yù)測標(biāo)簽,f是聲紋識(shí)別模型,l(·)是度量原始信號(hào)和對抗樣本之間差異的距離函數(shù)。對于有目標(biāo)攻擊, 將公式中的yy′≠ 修改為y′=yt即可, 其中yt表示攻擊的目標(biāo)類別。他們在TIMIT和LibriSpeech數(shù)據(jù)集上用SincNet聲紋識(shí)別模型進(jìn)行了實(shí)驗(yàn)驗(yàn)證。用生成的通用擾動(dòng)進(jìn)行無目標(biāo)攻擊, 在 TIMIT(LibriSpeech)數(shù)據(jù)集上, 在49.87dB(31.15dB)的信噪比和3.00(2.33)的語音感知質(zhì)量評估(Perceptual Evaluation of Speech Quality, PESQ)分?jǐn)?shù)值下, 可以使錯(cuò)誤率達(dá)到97%(96%)以上。用生成的通用擾動(dòng)進(jìn)行有目標(biāo)攻擊, 在TIMIT(LibriSpeech)數(shù)據(jù)集上, 在48.53dB(29.94dB)的信噪比和2.48(2.11)的PESQ分?jǐn)?shù)值下, 可以使攻擊成功率達(dá)到97.2%(64.1%)以上。雖然在LibriSpeech上的效果略差, 但該方法提供了一種有目標(biāo)攻擊條件下尋找通用對抗擾動(dòng)的有效手段。
同樣針對聲紋識(shí)別系統(tǒng)的有目標(biāo)攻擊, Xie等人[34]提出使用定長通用噪聲的重復(fù)回放來適應(yīng)不同長度的輸入語音進(jìn)而構(gòu)造通用擾動(dòng), 通過估計(jì)物理傳播帶來的聲音失真使對抗樣本經(jīng)過播放和接收過程仍然有效。他們通過以下目標(biāo)函數(shù)迭代地求解對抗樣本:
其中,t是目標(biāo)說話人標(biāo)簽, *表示卷積運(yùn)算, (x+δ)*r是通過將對抗樣本與環(huán)境變量r進(jìn)行卷積來模擬麥克風(fēng)錄音得到的對抗語音,Pi(x)為將x分類為第i個(gè)說話人的概率, 擾動(dòng)δ通過裁減操作被限制在區(qū)間(–ε, ε)內(nèi)以減少對抗樣本和原始語音之間的失真。為了產(chǎn)生通用的擾動(dòng), 他們用整個(gè)訓(xùn)練數(shù)據(jù)集迭代修改用于估計(jì)δ的更新序列Δδ, 直到滿足期望的攻擊成功率。對于每條訓(xùn)練語音, 如果目標(biāo)類的預(yù)測概率大于其他類, 則在該訓(xùn)練語音上跳過針對擾動(dòng)Δδ的更新。他們在白盒場景下嘗試攻擊一個(gè)基于x-vector的聲紋識(shí)別系統(tǒng), 攻擊實(shí)施的時(shí)間僅為0.015 s左右。在CSTR數(shù)據(jù)集上的實(shí)驗(yàn)表明, 當(dāng)擾動(dòng)與語音載體的功率比為-18.84 dB時(shí), 可以達(dá)到平均99.95%的攻擊成功率; 當(dāng)進(jìn)一步降低擾動(dòng)信號(hào)的幅度到-33.96 dB的功率比時(shí), 平均攻擊成功率仍在80%以上。
為了消除對抗樣本的影響, 使識(shí)別系統(tǒng)免遭欺騙, 人們開始研究并提出了一系列對抗樣本的防御方法。本節(jié)從分類邊界構(gòu)造的角度, 對語音對抗樣本的防御方法進(jìn)行分類論述, 揭示各類方法實(shí)現(xiàn)防御的機(jī)理。圖1歸納了三類典型的對抗樣本防御方法: 1)在識(shí)別系統(tǒng)前施加額外的對抗樣本檢測器(如圖a虛線所示); 2)在訓(xùn)練階段通過對抗訓(xùn)練加固原分類器, 即將分類邊界移動(dòng)至可以區(qū)分出對抗樣本的新區(qū)域(如圖b所示); 3)根據(jù)對抗樣本和真實(shí)樣本經(jīng)過變換處理后類別預(yù)測結(jié)果的異同, 使系統(tǒng)發(fā)現(xiàn)對抗樣本, 減小對抗樣本帶來的影響(如圖c所示)。其中, 前兩類方法本質(zhì)上是通過修改分類模型來增強(qiáng)對對 抗樣本的檢測和識(shí)別能力, 因此我們下文統(tǒng)一表述。表2展示了本文對防御方法的分類以及不同防御方法的工作機(jī)理。
表2 語音對抗樣本的防御方法 Table 2 Defense methods against voice adversarial examples
圖1 三類典型的對抗樣本防御方法 Figure 1 Three typical methods of the defense against voice adversarial examples
對抗樣本是在真實(shí)樣本上添加了擾動(dòng), 即使這個(gè)擾動(dòng)很小以至于聽起來難以分辨, 也會(huì)使對抗樣本表現(xiàn)出與真實(shí)樣本不同的特性。人們基于對抗樣本的統(tǒng)計(jì)特性, 提出了構(gòu)建對抗樣本檢測器 和通過對抗訓(xùn)練加固原分類器的方法。構(gòu)建對抗樣本檢測器利用深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)真實(shí)樣本和對抗樣本之間的差異, 通過對輸入的語音進(jìn)行檢測, 將對抗樣本隔離在識(shí)別系統(tǒng)之外。通過對抗訓(xùn)練加固原分類器是在模型訓(xùn)練時(shí)引入對抗樣本, 把對抗樣本也一并加入到目標(biāo)優(yōu)化過程, 使系統(tǒng)具有將對抗樣本歸類為真實(shí)類別的能力, 提高系統(tǒng)魯棒性。
3.1.1 構(gòu)建對抗樣本檢測器
構(gòu)建對抗樣本檢測器可以通過訓(xùn)練一個(gè)單獨(dú)的神經(jīng)網(wǎng)絡(luò)分類模型, 實(shí)現(xiàn)對抗樣本和真實(shí)樣本的檢測。這是一種在對抗樣本進(jìn)入識(shí)別模型前對其進(jìn)行檢測的防御方法。
Samizade等人[36]用一個(gè)卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)檢測對抗樣本中的微小擾動(dòng), 其網(wǎng)絡(luò)結(jié)構(gòu)由三個(gè)核大小為22* 的卷積層、卷積層之間的池化層和一個(gè)全連接層組成。前兩個(gè)卷積層的輸出通道數(shù)為64, 采用Relu激活函數(shù); 第三個(gè)卷積層的輸出通道數(shù)為32, 采用Selu激活函數(shù); 全連接層含有128個(gè)神經(jīng)元, 最后通過Softmax激活函數(shù)得到識(shí)別結(jié)果。這個(gè)CNN結(jié)構(gòu)對MFCC特征的微小變化較為敏感, 可以檢測出對抗擾動(dòng)。實(shí)驗(yàn)結(jié)果表明, 對Carlini攻擊[30]和Alzantot[37]攻擊, 經(jīng)過訓(xùn)練后的模型檢測精度可以達(dá)到接近100%, 但當(dāng)使用上述任意一種方法生成的對抗樣本攻擊用另外一種方法生成的對抗樣本訓(xùn)練的檢測網(wǎng)絡(luò)時(shí), 檢測性能會(huì)顯著下降, 即對抗樣本檢測器的遷移能力較弱。
Li等人[38]提出了一種對抗樣本分類檢測的方法, 通過引入一個(gè)類似VGG網(wǎng)絡(luò)結(jié)構(gòu)的檢測網(wǎng)絡(luò), 利用卷積操作提取對抗樣本和真實(shí)樣本之間的細(xì)微偏差。具體的網(wǎng)絡(luò)結(jié)構(gòu)是: 底部有4個(gè)卷積層, 用于提取局部特征; 統(tǒng)計(jì)池化層聚集最后一個(gè)卷積層輸出的平均值和偏差, 并將它們傳遞到全連接層; 兩個(gè)全連接層將統(tǒng)計(jì)數(shù)據(jù)投影到一個(gè)二維輸出空間中進(jìn)行決策。實(shí)驗(yàn)結(jié)果表明, 對一些特定的攻擊方法, 對抗擾動(dòng)的幅度越大被檢測出來的概率越大。在小幅度擾動(dòng)對抗樣本上訓(xùn)練的檢測網(wǎng)絡(luò)可以很好地防御大幅度擾動(dòng)的攻擊; 反之, 效果較差。該檢測網(wǎng)絡(luò)可以較好的防護(hù)基于i-vector和x-vector的聲紋識(shí)別系統(tǒng); 然而, 當(dāng)攻擊者更換攻擊方法時(shí), 防御性能會(huì)嚴(yán)重下降。
3.1.2 通過對抗訓(xùn)練加固原分類器
基于構(gòu)建對抗樣本檢測器的防御方式, 雖然在一定程度上將對抗樣本隔離在識(shí)別系統(tǒng)之外, 但并沒有提高識(shí)別系統(tǒng)的魯棒性?;趯褂?xùn)練的防御方法可以提高識(shí)別模型本身的魯棒性, 直接將對抗樣本映射為其真實(shí)類別。
對某個(gè)特定的攻擊方式, 使用訓(xùn)練數(shù)據(jù)和當(dāng)前的模型參數(shù)生成對抗樣本。對抗訓(xùn)練就是在以特定方式生成的對抗樣本上訓(xùn)練模型, 使其對這種攻擊方式具有更好的魯棒性。Madry等人[39]通過下式表示的min-max優(yōu)化給出了對抗訓(xùn)練的一般定義:
其中, 目標(biāo)函數(shù)內(nèi)部的max優(yōu)化問題利用對抗訓(xùn)練期間使用的攻擊算法來求解, 外部的min優(yōu)化目標(biāo)則是通過重新調(diào)整模型參數(shù)θ以最小化總體損失函數(shù)。
Jati等人[40]利用基于FGSM和投影梯度下降(Project Gradient Descent, PGD)[39]的對抗訓(xùn)練來防御針對聲紋識(shí)別系統(tǒng)的對抗攻擊, 用一步FGSM和10次迭代的PGD(PGD-10)方法解決內(nèi)部最大化問題。整個(gè)訓(xùn)練過程在干凈樣本x和對抗樣本x+δ上實(shí)現(xiàn), 損失函數(shù)由下式給出:
其中,ωAT是對抗訓(xùn)練的權(quán)重。實(shí)驗(yàn)是在Librispeech數(shù)據(jù)集的Train-Clean-100子集上進(jìn)行的, 識(shí)別系統(tǒng)由一個(gè)提取對數(shù)梅爾頻譜的信號(hào)處理前端和一個(gè)帶有8個(gè)卷積層的卷積神經(jīng)網(wǎng)絡(luò)組成, 最大擾動(dòng)強(qiáng)度設(shè)置為ε=0.002。實(shí)驗(yàn)結(jié)果顯示, 在面對FGSM、Carlini-Wagner(CW)[41]和100次迭代PGD(PGD-100)的l∞攻擊時(shí), 相對于沒有采取任何防御措施的情況, 基于PGD-10的對抗訓(xùn)練比基于FGSM的對抗訓(xùn)練更能顯著改善該識(shí)別系統(tǒng)的性能, 分別獲得了73%、58%和43%的識(shí)別準(zhǔn)確率。但是, 在面對CW的l2攻擊時(shí), FGSM對抗訓(xùn)練和PGD-10對抗訓(xùn)練的防御效果都很差, 識(shí)別準(zhǔn)確率幾乎為0。對抗訓(xùn)練也會(huì)對原始模型帶來不利影響: 利用FGSM和PGD-10對抗訓(xùn)練加固后的模型, 在干凈樣本上的識(shí)別準(zhǔn)確率都有所下降, 其中基于FGSM的對抗訓(xùn)練下降得更為明顯。
對抗訓(xùn)練防御算法的成功與否很大程度上取決于引入的對抗擾動(dòng)的質(zhì)量, 用不同的、更強(qiáng)的對抗性擾動(dòng)優(yōu)化min-max方程中的內(nèi)部極大值, 可以使語音識(shí)別模型變得更加魯棒。Pal等人[42]提出了一種基于混合對抗訓(xùn)練的防御機(jī)制, 與現(xiàn)有聲紋識(shí)別系統(tǒng)中對抗攻擊只使用交叉熵?fù)p失函數(shù)不同, 他們利用特征散射(Feature Scattering, FS)[43]生成對抗樣本, 在對抗訓(xùn)練階段, 結(jié)合交叉熵?fù)p失(Cross-Entropy Loss)、特征分散損失(Feature Scattering Loss)和邊際損失(Margin Loss)的信息構(gòu)成總的損失函數(shù), 以便制造多樣化的更強(qiáng)的擾動(dòng)。其中, 用于內(nèi)部max優(yōu)化問題的損失函數(shù)如下:
其中,β,γ和?是可調(diào)節(jié)的超參數(shù), 實(shí)驗(yàn)中均設(shè)置為1。該實(shí)驗(yàn)訓(xùn)練和測試均為l∞攻擊, 最大擾動(dòng)強(qiáng)度ε=0.002, 采用與Jati等人[40]的實(shí)驗(yàn)相同的數(shù)據(jù)集和識(shí)別模型結(jié)構(gòu)。實(shí)驗(yàn)結(jié)果表明, 分別用FGSM、PGD、CW和FS方法生成的對抗樣本發(fā)起無目標(biāo)攻擊, FGSM對抗訓(xùn)練仍然是最弱的防御方式。與基于單一對抗樣本生成方式的對抗訓(xùn)練相比, 引入多目標(biāo)任務(wù)的混合對抗訓(xùn)練的防御效果更好。即使在增加迭代次數(shù)以獲得更強(qiáng)攻擊的情況下, 混合對抗訓(xùn)練的防御效果也優(yōu)于其他對抗訓(xùn)練方法, 在PGD-40, CW-40, FS-40攻擊下的識(shí)別準(zhǔn)確率分別保持在78.84%、78.52%和96.67%。對于黑盒攻擊, 他們分別用原始模型和FS-10對抗訓(xùn)練模型生成PGD-40和CW-40對抗樣本, 攻擊基于PGD-10對抗訓(xùn)練的防御模型和基于混合對抗訓(xùn)練的防御模型, 結(jié)果表明混合對抗訓(xùn)練的防御效果更好。對基于l1、l2范數(shù)攻擊的效果尚不明確, 經(jīng)過訓(xùn)練后的模型對干凈樣本的識(shí)別準(zhǔn)確率同樣有所下降。
基于構(gòu)建對抗樣本檢測器的防御方法和通過對抗訓(xùn)練加固原識(shí)別器的方法本質(zhì)上是一種有監(jiān)督學(xué)習(xí)的方法, 它們利用已知類型的對抗樣本構(gòu)建檢測邊界或重新劃定分類邊界, 因此對已知類型攻擊的防御非常有效, 但對未知類型對抗樣本攻擊的防御效果較差。
為了解決這些問題, 可以借助樣本變換前后識(shí)別結(jié)果的異同來實(shí)施防御。該類方法的優(yōu)點(diǎn)是它們不需要依賴有關(guān)攻擊方法的先驗(yàn)信息。由于對抗樣本與真實(shí)樣本具有不一致的內(nèi)在屬性, 可以通過觀察真實(shí)樣本和對抗樣本在噪聲影響下或施加變換后識(shí)別結(jié)果的變化情況來檢測對抗樣本。此外, 還可以通過對輸入語音進(jìn)行平滑、下采樣、壓縮、重建等處理, 在一定程度上破壞對抗樣本的功能, 使其達(dá)不到預(yù)設(shè)的輸出, 降低其對識(shí)別系統(tǒng)的影響。
Yuan等人[26]發(fā)現(xiàn)背景噪聲會(huì)降低CommanderSong攻擊的成功率, 但對真實(shí)語音命令的識(shí)別效果影響不大, 據(jù)此提出了音頻湍流的防御方法。音頻湍流的基本思想是在識(shí)別系統(tǒng)接收到輸入語音AI之前添加噪聲(稱為湍流噪聲AN), 并檢查產(chǎn)生的信號(hào)AI⊕AN是否可以識(shí)別為其他詞語。具體來說, 如果AI被識(shí)別系統(tǒng)解碼為text1, 然后在AI中加入AN, 識(shí)別系統(tǒng)將AI?AN解碼為text2。如果text1≠text2, 則推斷AI受到了對抗樣本的攻擊。實(shí)驗(yàn)表明, 添加噪聲后語音的信噪比小于15 dB時(shí), CommanderSong在數(shù)字世界攻擊的成功率幾乎為0。
在上述攻擊場景下生成的語音對抗樣本是以波形文件的形式直接輸入語音識(shí)別系統(tǒng)的, 即數(shù)字攻擊; 考慮到可能出現(xiàn)的環(huán)境噪聲的影響, 這種檢測方法對物理攻擊未必有效, 因?yàn)槲锢憝h(huán)境中的噪聲相比人為添加的噪音具有更大的隨機(jī)性。為此, 語音壓縮被用來作為檢測對抗攻擊的變換手段, 其基本思想是在識(shí)別輸入語音AI前對其進(jìn)行下采樣。將AI進(jìn)行下采樣后的輸出記為D(AI), 識(shí)別系統(tǒng)分別對AI和D(AI)進(jìn)行解碼, 得到text1和text2。如果text1≠ text2, 就推斷AI為對抗樣本。實(shí)驗(yàn)表明, 即使是在真實(shí)的物理環(huán)境中播放, 當(dāng)下采樣率與原始采樣率的比值小于0.7時(shí), CommanderSong攻擊的成功率下降到了8%以下, 對真實(shí)語音命令的識(shí)別準(zhǔn)確率保持在91%以上。
Rajaratnam等人[44]提出了通過觀察在預(yù)測結(jié)果產(chǎn)生變化之前需要添加多少隨機(jī)噪聲來檢測對抗樣本的方法。由于識(shí)別系統(tǒng)在設(shè)計(jì)時(shí)對真實(shí)的含噪樣本具有較強(qiáng)的魯棒性, 通常情況下, 改變對抗樣本的預(yù)測結(jié)果所需的噪聲要比改變真實(shí)樣本的預(yù)測結(jié)果所需的噪聲更少。他們在SpeechCommands數(shù)據(jù)集上對 Alzantot等人[37]提出的攻擊進(jìn)行防御, 結(jié)果表明, 這種防御方法檢測對抗樣本的準(zhǔn)確率和召回率分別為91.8%和93.5%。該項(xiàng)研究僅討論了從均勻分布中采樣的隨機(jī)噪聲, 對于實(shí)驗(yàn)以外的其他攻擊, 這種防御方法是否仍然有效, 有待研究。
Kwon等人[45]也發(fā)現(xiàn), 對語音樣本添加一個(gè)較小的失真擾動(dòng), 對抗樣本的分類結(jié)果會(huì)出現(xiàn)較為明顯的變化, 而真實(shí)樣本的分類結(jié)果變化不大。利用這一特性, 提出了一種檢測語音對抗樣本的方法。他們使用Mozilla通用語音數(shù)據(jù)集, 將DeepSpeech作為目標(biāo)模型。實(shí)驗(yàn)結(jié)果表明, 這種方法可以成功地檢測出Carlini等人[30]生成的對抗樣本, 在大約12dB的信噪比條件下, 對抗樣本的識(shí)別準(zhǔn)確率下降到6.21%, 而真實(shí)樣本的識(shí)別準(zhǔn)確率仍然維持在80%以上。然而, 這種檢測方法在尋找最佳的失真度時(shí)需要利用與原始樣本相對應(yīng)的語音對抗樣本, 這在實(shí)踐中對防御方而言是不現(xiàn)實(shí)的。
Andronic等人提出[46]用MP3壓縮來減輕對抗擾動(dòng)的影響, 嘗試通過對語音進(jìn)行MP3壓縮處理來抵消對抗擾動(dòng)對識(shí)別結(jié)果產(chǎn)生的偏差。MP3是一種音頻壓縮算法, 采用基于心理聲學(xué)模型的有損、感知音頻編碼方案, 丟棄低于聽力閾值的音頻信息, 從而減小文件大小。該實(shí)驗(yàn)在一個(gè)結(jié)合連接主義時(shí)序分類和注意力機(jī)制的名為ESPnet的端到端語音識(shí)別系統(tǒng)上進(jìn)行。首先對原始語音信號(hào)進(jìn)行特征提取, 用FGSM生成對抗樣本的特征, 并轉(zhuǎn)化為波形, 在四種不同MP3壓縮級別(未壓縮、128kbps、64kbps和24kbps)的條件下進(jìn)行了實(shí)驗(yàn)驗(yàn)證。結(jié)果表明, 用MP3壓縮由特征域重構(gòu)的對抗樣本波形, 識(shí)別系統(tǒng)的字符錯(cuò)誤率相比未進(jìn)行MPS壓縮的情況有所降低, 并在64kbps的壓縮級別達(dá)到最高的降幅。這表明經(jīng)過壓縮處理后, 對抗樣本的對抗功能被明顯減弱。
Chen等人[47]的研究表明局部平滑[48]可以減輕對聲紋識(shí)別系統(tǒng)的FakeBob[47]對抗樣本攻擊。局部平滑法在圖像處理中被廣泛應(yīng)用于降噪, 它利用鄰近的像素來平滑中心像素, 其中對鄰近像素的平滑有不同的加權(quán)機(jī)制, 包括: 中值平滑、均值平滑、高斯平滑等。均值平滑是指在每一個(gè)移動(dòng)窗口內(nèi)的中心像素被這個(gè)窗口內(nèi)的所有像素的均值所取代, 而中值平滑則是每一個(gè)滑動(dòng)窗口內(nèi)的中心像素被窗口內(nèi)所有像素的中值所取代。它們都是通過使相鄰像素的像素值更加接近來實(shí)現(xiàn)特征壓縮, 進(jìn)而降低對抗樣本的攻擊成功率。Chen等人在實(shí)驗(yàn)中采用了中值平滑, 用一個(gè)窗口大小為k(奇數(shù))的中值濾波器將每個(gè)元素的取值xt替換為相鄰的k個(gè)元素的中值。結(jié)果顯示, 隨著k值的增大, 對于較低強(qiáng)度的對抗語音, 盡管對聲紋識(shí)別的無目標(biāo)攻擊成功率從99%下降到接近0%, 但對真實(shí)說話人的錯(cuò)誤拒絕率也升高到了35%以上。當(dāng)對抗樣本干擾強(qiáng)度增大時(shí), 這種防御會(huì)失去效果。此外, 實(shí)驗(yàn)還發(fā)現(xiàn), 在i-vector上進(jìn)行中值平滑的防御效果要好于高斯混合模型(Gaussian Mixture Model, GMM)。對于有目標(biāo)攻擊, 中值平滑法可以在一定程度上增加FakeBob的攻擊代價(jià), 但當(dāng)攻擊強(qiáng)度和迭代次數(shù)增加時(shí), 防御效果會(huì)明顯下降, 例如, 在k=7的情況下針對i-vector和GMM的FakeBob攻擊仍然可以在250次迭代后實(shí)現(xiàn)90%的攻擊成功率。
實(shí)際上, 上述防御方法還可以聯(lián)合使用。Wu等人[49]針對聲紋認(rèn)證的對抗樣本使用局部平滑結(jié)合對抗訓(xùn)練的方法, 提高了模型的防御能力。他們利用PGD生成對抗樣本, 使用ASVSpoof2019數(shù)據(jù)集的LA子集, 分別在VGG和SENET兩個(gè)識(shí)別模型上進(jìn)行實(shí)驗(yàn)。結(jié)果表明, 與單獨(dú)使用對抗訓(xùn)練相比, 結(jié)合均值平滑或中值平滑的對抗訓(xùn)練使識(shí)別準(zhǔn)確率有所提高, 結(jié)合高斯平滑的對抗訓(xùn)練會(huì)使識(shí)別準(zhǔn)確率進(jìn)一步降低。
在樣本平滑的基礎(chǔ)上, Wu等人[50]將自監(jiān)督學(xué)習(xí)引入對抗樣本的防御, 提出了一種基于轉(zhuǎn)換編碼器變換表示法(Transformer Encoder Representations from Alteration, TERA)的級聯(lián)自監(jiān)督學(xué)習(xí)模型。TERA模型經(jīng)過訓(xùn)練, 具有通過消除對抗擾動(dòng)將受損語音轉(zhuǎn)化為干凈語音的能力。TERA模型是通過解決一個(gè)具有l(wèi)1重構(gòu)損失函數(shù)的自監(jiān)督變換預(yù)測任務(wù)來訓(xùn)練的。TERA預(yù)訓(xùn)練任務(wù)要求模型將一部分隨機(jī)選擇的并施加隨機(jī)變換的幀序列作為輸入, 并嘗試重建這些被改變的幀。經(jīng)過預(yù)訓(xùn)練, 該模型學(xué)習(xí)了將受損語音映射為原始干凈語音的能力。他們在實(shí)驗(yàn)中假設(shè): 攻擊者不知道級聯(lián)于聲紋認(rèn)證模型前的TERA防御模型, 但知道聲紋認(rèn)證模型的參數(shù)。用基本迭代法(Basic Iterative Method, BIM)在VoxCeleb1數(shù)據(jù)集上生成對抗樣本, 攻擊基于r-vector的ResNet識(shí)別系統(tǒng)。用于預(yù)訓(xùn)練TERA模型的數(shù)據(jù)集為VoxCeleb2, 特征為標(biāo)準(zhǔn)Kaldi腳本提取的24維MFCC, 優(yōu)化器為Adam。級聯(lián)的TERA模型作為濾波器來使用, 用以凈化對抗樣本。實(shí)驗(yàn)結(jié)果顯示, 集成TERA模型可以將被攻擊的聲紋認(rèn)證系統(tǒng)的等錯(cuò)誤率(Equal Error Rate, EER)從65%以上大幅降低到20%左右, 但濾波過程產(chǎn)生的額外噪聲會(huì)降低對真實(shí)語音的識(shí)別準(zhǔn)確率。在與高斯濾波器、中值濾波器和均值濾波器比較時(shí), TERA模型在濾除輸入的對抗性擾動(dòng)和保持干凈樣本的識(shí)別準(zhǔn)確率方面效果更好。
除自編碼重建外, 語音合成技術(shù)也可以用來實(shí)施樣本重建。WaveGAN聲碼器[51]用來在給定語音波 形的對數(shù)梅爾頻譜圖的情況下重建語音波形。生成器[52]可以有效地學(xué)習(xí)真實(shí)語音波形的分布。Zelasko等人[53]發(fā)現(xiàn)利用WaveGAN聲碼器對輸入語音信號(hào)進(jìn)行預(yù)處理, 可以提高DeepSpeech和Espresso Transformer這兩個(gè)語音識(shí)別系統(tǒng)的防御能力。實(shí)驗(yàn)設(shè)置為白盒場景, 訓(xùn)練過程使用LibriSpeech數(shù)據(jù)集, 引入了FGSM、PGD攻擊和一種基于頻率掩蔽的不可察覺的攻擊方法。實(shí)驗(yàn)結(jié)果顯示, 與基于隨機(jī)平滑的防御相比, WaveGAN在兩個(gè)語音識(shí)別系統(tǒng)中都獲得了更低的單詞錯(cuò)誤率。在面對不可察覺的有目標(biāo)攻擊時(shí), WaveGAN使得對兩個(gè)系統(tǒng)的攻擊成功率下降為0, DeepSpeech系統(tǒng)的單詞錯(cuò)誤率從沒有防御時(shí)的100%降至48%, Espresso Transformer系統(tǒng)的單詞錯(cuò)誤率從100%降至37.4%。與此同時(shí), 引入WaveGAN也降低了未受攻擊時(shí)系統(tǒng)的性能, 這是因?yàn)閃aveGAN聲碼器在由對數(shù)梅爾頻譜圖重建語音波形時(shí)引入了額外的損失, 使系統(tǒng)對部分真實(shí)樣本的識(shí)別也出現(xiàn)錯(cuò)誤。在訓(xùn)練過程中對音頻樣本進(jìn)行隨機(jī)平滑增強(qiáng)處理, 可以進(jìn)一步降低受到攻擊時(shí)的單詞錯(cuò)誤率, 但在干凈樣本上測試的結(jié)果并沒有得到改善。
語音分類和識(shí)別領(lǐng)域的對抗樣本攻防尚面臨如何貼近真實(shí)場景、如何實(shí)施多輪博弈、如何融入現(xiàn)有系統(tǒng)等方面的挑戰(zhàn)。
(1) 適用于黑盒物理場景的通用對抗
對抗樣本攻擊和防御的研究總是最先從容易實(shí)施的白盒和數(shù)字場景入手, 逐步向黑盒和物理場景過渡。商用語音識(shí)別系統(tǒng)的更新?lián)Q代會(huì)影響業(yè)已見效的黑盒對抗效果, 需要針對升級后的系統(tǒng)重新設(shè)計(jì)攻防策略。利用機(jī)器學(xué)習(xí)解決物理場景下的攻擊或防御問題時(shí), 由于用來建模物理場景的數(shù)據(jù)匱乏, 往往不能有效地獲取該場景的統(tǒng)計(jì)特征, 進(jìn)而導(dǎo)致所得的機(jī)器學(xué)習(xí)模型與實(shí)際場景不匹配, 一些有關(guān)物理傳播規(guī)律的先驗(yàn)知識(shí)(如麥克風(fēng)/揚(yáng)聲器的性質(zhì)、房間沖擊響應(yīng)等)可以被引入模型統(tǒng)籌考慮。此外, 遷移學(xué)習(xí)、強(qiáng)化學(xué)習(xí)等方法提供了新的更具通用性的問題求解思路, 并已取得了積極的效果?;谶w移學(xué)習(xí)的方法是借助目標(biāo)場景的小樣本對現(xiàn)有模型進(jìn)行修正, 在一定程度上消除場景失配的影響。基于強(qiáng)化學(xué)習(xí)的方法則是將物理場景中目標(biāo)系統(tǒng)的輸出作為反饋引入迭代回路, 通過不斷地現(xiàn)場修改攻防策略來實(shí)現(xiàn)攻防目標(biāo)??傊? 如何擺脫對對手采用的攻擊或防御模型中先驗(yàn)信息的依賴, 如何適用于與實(shí)驗(yàn)環(huán)境不匹配的各種聲學(xué)場景, 是實(shí)施通用的有效對抗所必須面臨的問題。
(2) 攻防雙方的多輪博弈
對抗樣本的攻防是一個(gè)雙方博弈的過程。當(dāng)防御方對特定攻擊方法采取檢測、加固等措施時(shí), 防御的效果會(huì)非常明顯; 當(dāng)攻擊方針對特定防御方法生成對抗樣本時(shí), 攻擊將突破對方的防線。Joshi等人最新的研究展示了WaveGAN防御方法的博弈過程[54]。當(dāng)攻擊者不知道WaveGAN防御模型的結(jié)構(gòu)時(shí), WaveGAN能檢測出90%以上的對抗樣本; 當(dāng)攻擊者掌握了防御模型的信息時(shí), WaveGAN的性能顯著下降。防御方如何及時(shí)地感知到攻擊方已經(jīng)有能力突破自己的防線、如何降低直至規(guī)避攻擊方突破防線后的風(fēng)險(xiǎn)、如何再次提高自己的防御能力對抗升級后的攻擊, 變得異常關(guān)鍵。對攻擊方來說, 同樣如此。
(3) 對現(xiàn)有系統(tǒng)的自然升級
對于生成對抗樣本的攻擊方, 攻擊過程包括制作擾動(dòng)、添加/播放音頻擾動(dòng)等步驟, 如何將語音傳播環(huán)境的變化引入到對抗樣本生成過程, 是對抗樣本能在物理空間中發(fā)揮作用的關(guān)鍵。對于對抗樣本防御方, 防御措施的引入通常會(huì)導(dǎo)致虛警、處理延遲等問題, 如何提高識(shí)別準(zhǔn)確率和實(shí)時(shí)性, 并與現(xiàn)有的語音識(shí)別系統(tǒng)深度融合, 對加速防御方案的落地見效至關(guān)重要。
語音識(shí)別是人機(jī)交互的關(guān)鍵環(huán)節(jié), 商業(yè)語音識(shí)別系統(tǒng)的實(shí)際部署不僅面臨環(huán)境中信道噪聲的干擾, 還面臨包括對抗樣本在內(nèi)的各種形式攻擊的威脅。本文立足實(shí)際場景, 由易到難詳細(xì)地梳理了語音對抗樣本的攻擊和防御方法。對抗樣本雖然對語音識(shí)別系統(tǒng)造成了一定的負(fù)面影響, 但從保護(hù)個(gè)人隱私的角度考慮, 卻可能在未來發(fā)揮它的積極作用, 比如通過對抗樣本躲避對特定詞匯、特定說話人身份的監(jiān)聽??傊? 與其他新興技術(shù)一樣, 對抗樣本是一把安全領(lǐng)域的雙刃劍, 它對語音信息傳遞的影響, 取決于使用者的真實(shí)意圖, 只有深入挖掘?qū)箻颖井a(chǎn)生作用的內(nèi)在原理, 才能為保障語音信息安全提供重要的技術(shù)支持。