機器學(xué)習(xí)算法之基于黑盒語音識別的目標(biāo)對抗樣本
谷歌大腦最近研究表明,任何機器學(xué)習(xí)分類器都可能被欺騙,給出不正確的預(yù)測。在自動語音識別(ASR)系統(tǒng)中,深度循環(huán)網(wǎng)絡(luò)已經(jīng)取得了一定的成功,但是許多人已經(jīng)證明,小的對抗干擾就可以欺騙深層神經(jīng)網(wǎng)絡(luò)。而目前關(guān)于欺騙 ASR 系統(tǒng)的工作主要集中在白盒攻擊上,Alzantot 等人證明利用遺傳算法的黑盒攻擊是可行的。
而在接下來為大家介紹的這篇加州大學(xué)伯克利分校機器學(xué)習(xí)團隊的論文中,引入了一個新的黑盒攻擊領(lǐng)域,特別是在深層非線性的 ASR 系統(tǒng)中可以輸出任意長度的轉(zhuǎn)換。作者提出了一種將遺傳算法和梯度估計結(jié)合的黑盒攻擊方法,使之可以產(chǎn)生比單獨算法更好的對抗樣本。
在研究中,通過改進遺傳算法從而應(yīng)用于短語和句子中;將噪聲限制在高頻域上可以提高樣本的相似度;而當(dāng)對抗樣本已經(jīng)接近目標(biāo)時,梯度估計會比遺傳算法進行更有效的權(quán)衡,為未來的研究打開了新的大門。
以下為論文摘編:
對抗性攻擊介紹
因為神經(jīng)網(wǎng)絡(luò)具有的強表達(dá)能力,使得它們能夠很好地適應(yīng)于各種機器學(xué)習(xí)任務(wù),但在超過多個網(wǎng)絡(luò)架構(gòu)和數(shù)據(jù)集上,它們?nèi)菀资艿綌硨舻挠绊?。這些攻擊通過對原始輸入增加小的擾動就會使網(wǎng)絡(luò)對輸入產(chǎn)生錯誤的分類,而人類的判斷卻不會受到這些擾動的影響。
到目前為止,相比其他領(lǐng)域,如語音系統(tǒng)領(lǐng)域,為圖像輸入生成對抗樣本的工作已經(jīng)做了很多。而從個性化語音助手,如亞馬遜的 Alexa 和蘋果公司的 Siri ,到車載的語音指揮技術(shù),這類系統(tǒng)面臨的一個主要挑戰(zhàn)是正確判斷用戶正在說什么和正確解釋這些話的意圖,深度學(xué)習(xí)幫助這些系統(tǒng)更好的理解用戶,然而存在一個潛在的問題是針對系統(tǒng)進行目標(biāo)對抗攻擊。
在自動語音識別(ASR)系統(tǒng)中,深度循環(huán)網(wǎng)絡(luò)在語音轉(zhuǎn)錄的應(yīng)用已經(jīng)取得了令人印象深刻的進步。許多人已經(jīng)證明,小的對抗干擾就可以欺騙深層神經(jīng)網(wǎng)絡(luò),使其錯誤地預(yù)測一個特定目標(biāo)。目前關(guān)于欺騙 ASR 系統(tǒng)的工作主要集中在白盒攻擊上,在這種攻擊中模型架構(gòu)和參數(shù)是已知的。
對抗性攻擊(Adversarial Attacks):機器學(xué)習(xí)算法的輸入形式為數(shù)值型向量,通過設(shè)計一種特別的輸入以使模型輸出錯誤的結(jié)果,這被稱為對抗性攻擊。根據(jù)攻擊者對網(wǎng)絡(luò)的了解信息,有不同的執(zhí)行敵對攻擊的方法:
白盒攻擊:對模型和訓(xùn)練集完全了解;如果給定一個網(wǎng)絡(luò)的參數(shù),白盒攻擊是最成功的,例如 Fast Grandient Sign Method 和 DeepFool;
黑盒攻擊:對模型不了解,對訓(xùn)練集不了解或了解很少;然而,攻擊者能夠訪問網(wǎng)絡(luò)的所有參數(shù),這在實踐中是不現(xiàn)實的。在黑盒設(shè)置中,當(dāng)攻擊者只能訪問網(wǎng)絡(luò)的邏輯或輸出時,要始終如一地創(chuàng)建成功的敵對攻擊就很難了。在某些特殊黑盒設(shè)置中,如果攻擊者創(chuàng)建了一個模型,這個模型是目標(biāo)模型的一個近似或逼近模型,就可以重用白盒攻擊方法。即使攻擊可以轉(zhuǎn)移,在某些領(lǐng)域的網(wǎng)絡(luò)中也需要更多的技術(shù)來解決這個任務(wù)。
攻擊策略:
基于梯度的方法:FGSM 快速梯度法;
基于優(yōu)化的方法:使用精心設(shè)計的原始輸入來生成對抗樣本;
以往的研究
在先前的研究工作中,Cisse 等人開發(fā)了一個通用攻擊框架,用于在包括圖像和音頻在內(nèi)的各種模型中工作。與圖像相比,音頻為模型了提供了一個更大的挑戰(zhàn)。雖然卷積神經(jīng)網(wǎng)絡(luò)可以直接作用于圖像的像素值,但 ASR 系統(tǒng) 通常需要對輸入音頻進行大量預(yù)處理。
最常見的是梅爾-頻率轉(zhuǎn)換(MFC),本質(zhì)上是采樣音頻文件的傅里葉變換,將音頻轉(zhuǎn)換成一個顯示頻率隨時間變化的 spectogram,如下圖中的DeepSpeech 模型,使用 spectogram 作為初始輸入。當(dāng) Cisse 等人將他們的方法應(yīng)用到音頻樣本時,他們遇到了通過了 MFC 轉(zhuǎn)換層進行反向傳播的路障。Carlini 和 Wagner 克服了這一挑戰(zhàn),開發(fā)了一種通過 MFC 層傳遞漸變的方法。
他們將方法應(yīng)用到 Mozilla DeepSpeech 模型中(該模型是一個復(fù)雜、反復(fù)、字符級的網(wǎng)絡(luò),解碼每秒 50 個字符的翻譯)。他們?nèi)〉昧肆钊擞∠笊羁痰慕Y(jié)果,生成超過 99.9% 的樣本,類似于目標(biāo)攻擊的 100%,雖然這次攻擊的成功為白盒攻擊打開了新大門,但在現(xiàn)實生活中,對手通常不知道模型架構(gòu)或參數(shù)。Alzantot 等人證明,針對 ASR 系統(tǒng)的目標(biāo)攻擊是可能的,利用遺傳算法的方法,能夠迭代地將噪音應(yīng)用到音頻樣本中,這次攻擊是在語音命令分類模型上進行的,屬于輕量級的卷積模型,用于對 50 個不同的單詞短語進行分類。
本文研究
本文采用一種黑盒攻擊,并結(jié)合了遺傳算法與梯度估計的方法創(chuàng)建有針對性的對抗音頻來實現(xiàn)欺騙 ASR 系統(tǒng)。第一階段攻擊是由遺傳算法進行的,這是一種無需計算梯度的優(yōu)化方法。對候選樣本總體進行迭代,直到一個合適的樣本產(chǎn)生。為了限制過度的突變和多余的噪聲,我們用動量突變更新改進標(biāo)準(zhǔn)遺傳算法。
攻擊的第二階段使用了梯度估計,因為單個音頻點的梯度是估計的,因此當(dāng)敵對樣本接近目標(biāo)時,允許設(shè)置更精細(xì)的噪聲。這兩中方法的組合提供了在3000 次迭代之后實現(xiàn)了 94.6% 的音頻文件的相似性,89.25% 目標(biāo)攻擊相似性。在更復(fù)雜的深度語音系統(tǒng)上困難在于試圖將黑盒優(yōu)化應(yīng)用到一個深度分層、高度非線性的解碼器模型中。盡管如此,兩種不同方法和動量突變的結(jié)合為這項任務(wù)帶來了新的成功。
數(shù)據(jù)與方法
數(shù)據(jù)集:攻擊的數(shù)據(jù)集從 Common Voice 測試集中獲取前 100 個音頻樣本。對于每一個,隨機生成一個 2 字的目標(biāo)短語并應(yīng)用我們的黑盒方法構(gòu)建第一個對抗樣本,每個數(shù)據(jù)集中的樣例是一個 .wav 文件,可以很容易地反序列化成 numpy 數(shù)組,從而我們的算法直接作用于 numpy 數(shù)組避免了處理問題的難度。
受害者模型:我們攻擊的模型是在 Mozilla 上開源,Tensorflow 中實現(xiàn)的百度深度語音模型。盡管我們可以使用完整的模型,但是我們?nèi)詫⑵湟暈楹诤泄?,只訪問模型的輸出邏輯。在執(zhí)行 MFC 轉(zhuǎn)換后,該模型由 3 層卷積組成,后面一個雙向 LSTM,最后是一個全連接層。
遺傳算法:如前所述,Alzantot 等人用標(biāo)準(zhǔn)的遺傳算法演示了黑盒對抗攻擊在語音到文本系統(tǒng)上的成功。帶有 CTC 損失的遺傳算法對于這種性質(zhì)的問題很有效,因為它完全獨立于模型的梯度。
梯度估計:當(dāng)目標(biāo)空間很大時,遺傳算法可以很好的工作,而相對較多的突變方向可能是有益的,這些算法的優(yōu)勢在于能夠有效地搜索大量空間。然而,當(dāng)解碼的距離和目標(biāo)解碼低于某個閾值時,需要切換到第二階段,這時候梯度評估技術(shù)更有效,對抗樣本已經(jīng)接近目標(biāo),梯度估計會為更有信息的干擾做出權(quán)衡。梯度評估技術(shù)來源于 NiTIn Bhagoji 在 2017 年的一篇研究圖像領(lǐng)域黑盒攻擊的論文。
結(jié)果與結(jié)論
評價標(biāo)準(zhǔn):采用了兩種主要方式評估算法性能;一是精確敵對音頻樣本被解碼到所需目標(biāo)短語的準(zhǔn)確性;為此,我們使用 Levenshtein 距離或最小字符編輯距離。二是確定原始音頻樣本和敵對音頻樣本之間的相似性。
實驗結(jié)果
在我們運行算法的音頻樣本中,在使用 Levenshtein 距離的最終解碼短語和目標(biāo)之間取得了 89.25% 的相似性;最終敵對樣本和原始樣本相關(guān)性為 94.6%。在 3000 次迭代后,平均最終 Levenshtein 距離是 2.3,35% 的敵對樣本在不到 3000 次迭代情況下完成了精準(zhǔn)解碼,22% 的敵對樣本在不到 1000 迭代時間內(nèi)完成了精準(zhǔn)解碼。
本文提出的算法性能與表中數(shù)據(jù)結(jié)果有所不同,在幾個迭代中運行算法可以產(chǎn)生更高的成功率,事實上,在成功率和相似率之間很明顯存在著權(quán)衡,這樣就可以通過調(diào)整閾值來滿足攻擊者的不同需要。
對比白盒攻擊、黑盒攻擊單個單詞(分類)、以及我們所提出的方法:通過兩種波形的重疊,可以看出原始音頻樣本與對抗樣本之間的相似性,如下圖顯示出來的,35% 的攻擊是成功的強調(diào)了黑盒的事實,對抗攻擊的除了確定性同時也是非常有效的。
實驗結(jié)論
我們在結(jié)合遺傳算法和梯度估計的過程中實現(xiàn)了黑盒對抗,它能產(chǎn)生比每個算法單獨產(chǎn)生的更好的樣本。
從最初使用遺傳算法使大多數(shù)音頻樣本的轉(zhuǎn)錄近乎完美,同時還保持高度的相似性。雖然這很大程度上還是一種概念性的驗證,通過本文的研究展示了使用直接方法的黑盒模型可以實現(xiàn)針對性對抗攻擊。
此外,加入動量突變和在高頻中加入噪聲,提高了我們的方法的有效性,強調(diào)了結(jié)合遺傳算法和梯度估計的優(yōu)點。將噪聲限制在高頻率域上,使我們的相似度得到提高。通過結(jié)合所有這些方法,能夠達(dá)到我們的最高結(jié)果。
綜上所述,我們引入了黑盒攻擊這個新的領(lǐng)域,結(jié)合現(xiàn)有的和新穎的方法,能夠展示我們方法的可行性,并為未來的研究打開新的大門。