Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Neural Networks論文筆記
0. 概述
如今一些深度神經(jīng)網(wǎng)絡(luò)對(duì)于一些對(duì)抗性樣本(Adversarial sample)是弱勢(shì)的, 對(duì)抗性樣本就是指我們對(duì)輸入進(jìn)行特定的改變, 通過原有的學(xué)習(xí)算法最終導(dǎo)致整個(gè)網(wǎng)絡(luò)內(nèi)部出現(xiàn)誤差, 這屬于攻擊的一種, 然而, 現(xiàn)在的攻擊都是要么計(jì)算代價(jià)特別大, 要么需要對(duì)目標(biāo)的模型和數(shù)據(jù)集有大量的先驗(yàn)知識(shí), 因此, 這些方法在實(shí)際上其實(shí)都不實(shí)用. 該文章主要介紹了一種程序性噪聲, 利用該噪聲, 使得構(gòu)造實(shí)用的低計(jì)算量的黑盒攻擊成為了可能, 對(duì)抗魯棒性的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu), 比如Inception v3和Inception ResNet v2 在ImageNet數(shù)據(jù)集上. 該文章所提出來的攻擊實(shí)現(xiàn)了低嘗試次數(shù)下成功造成錯(cuò)分類.
這種攻擊形式揭露了神經(jīng)網(wǎng)絡(luò)對(duì)于Perlin噪聲的脆弱性, Perlin噪聲是一種程序性噪聲(Procedural Noise), 一般用于生成真實(shí)的紋理, 使用Perlin噪聲可以實(shí)現(xiàn)對(duì)所有的分類器都實(shí)現(xiàn)top1 至少90%的錯(cuò)誤率, 更加令人擔(dān)憂的是, 該文顯示出大多數(shù)的Perlin噪聲是具有"普適性"(Universal)的, 在對(duì)抗樣本中, 數(shù)據(jù)集的大部分, 使用簡單的擾動(dòng)使得高達(dá)70%的圖片被錯(cuò)誤分類
Top-5錯(cuò)誤率: 即對(duì)一個(gè)圖片苍鲜,如果概率前五中包含正確答案辽俗,即認(rèn)為正確删咱。
Top-1錯(cuò)誤率: 即對(duì)一個(gè)圖片识埋,如果概率最大的是正確答案缤骨,才認(rèn)為正確。
這樣的結(jié)果揭示了DNN系統(tǒng)的脆弱性, 并且該脆弱性需要被更多地研究, 該文也顯示了對(duì)抗訓(xùn)練的局限性, 對(duì)抗訓(xùn)練是一種用來增強(qiáng)魯棒性以至于能夠防御對(duì)抗樣本的手段, 然而, 攻擊者只需要改變生成對(duì)抗樣本的視角就能夠?qū)崿F(xiàn)成功攻擊, 并且作為防御者, 很難去預(yù)測(cè)所有未來可能的對(duì)抗擾動(dòng).
1. 介紹
首先, 我們需要知道神經(jīng)網(wǎng)絡(luò)是十分脆弱的, 現(xiàn)存的有很多攻擊手段, 比如在訓(xùn)練過程中, 攻擊者可以注入一些惡意的樣本(malicious data), 這個(gè)稱之為下毒攻擊(poisoning attack), 目標(biāo)是降低整體的性能(performance). 在測(cè)試階段, 攻擊者可以利用學(xué)習(xí)算法的盲點(diǎn)和弱項(xiàng)來制造內(nèi)部的誤差, 我們稱之為閃避性攻擊(evasion attack), 這種針對(duì)機(jī)器學(xué)習(xí)系統(tǒng)的攻擊在很多針對(duì)反病毒引擎, 反垃圾郵件或者在社交網(wǎng)路上檢測(cè)虛假文件和虛假消息的系統(tǒng)上已經(jīng)被報(bào)告出來.
在圖像分類任務(wù)上, Szegedy等人提出神經(jīng)網(wǎng)絡(luò)會(huì)容易受這樣的對(duì)抗樣本所影響: 使用和真實(shí)的數(shù)據(jù)無差別的圖片作為輸入, 結(jié)果是錯(cuò)分類的, 擾動(dòng)的目的是為了欺騙學(xué)習(xí)算法, 這樣的擾動(dòng)通常來說特別小, 檢測(cè)這些對(duì)抗樣本是一種挑戰(zhàn).
舉個(gè)例子, 更改某幾個(gè)像素點(diǎn)的值, 或者加上一些微妙的噪聲
上圖就是使用該文章所提出來的方法來進(jìn)行噪聲的添加, 最終導(dǎo)致分類錯(cuò)誤, 最左邊是原圖, 中間是添加了噪聲的圖片, 原本被分類成"analog clock"被錯(cuò)分類成"barbell"
關(guān)于制作這些對(duì)抗性樣本提出來的有黑盒和白盒的方法, 白盒的方法依賴于基于增加到對(duì)抗樣本的擾動(dòng)大小的約束和一個(gè)機(jī)器學(xué)習(xí)分類器提供的幾率(odds). 雖然, 這些攻擊是十分有效的, 但是確是計(jì)算代價(jià)較大的, 并且對(duì)于擴(kuò)展到自然大圖片數(shù)據(jù)集上不友好, 比如ImageNet.
這里的odds應(yīng)該是指softmax后的整個(gè)概率向量
通常來說, 黑盒攻擊使用兩種方法:
- 通過估計(jì)目標(biāo)函數(shù)的梯度
- 使用對(duì)抗樣本的可轉(zhuǎn)移屬性(transferability property)
構(gòu)造者通常都要對(duì)機(jī)器學(xué)習(xí)系統(tǒng)進(jìn)行大量的請(qǐng)求, 并且很難應(yīng)用于高維度的數(shù)據(jù)集, 通常需要構(gòu)建一個(gè)代理數(shù)據(jù)集和代理模型.
利用代理模型進(jìn)行攻擊比利用梯度要更好地進(jìn)行擴(kuò)展, 能夠在一些ImageNet數(shù)據(jù)集上實(shí)現(xiàn)高達(dá)70% 的top-1 閃避(evasion), 并且減少請(qǐng)求的次數(shù). 然而, 這些方法還是需要對(duì)目標(biāo)分類器的了解或者是相似分類器的了解, 和梯度估計(jì)方法不同, 假設(shè)了攻擊者具有更受限制的知識(shí).
該篇文章提出了一個(gè)新穎的方法來生成有效的對(duì)抗樣本, 在計(jì)算機(jī)視覺任務(wù)上作為黑盒攻擊. 發(fā)現(xiàn)程序性噪聲在欺騙自然圖片分類器上具有極好的效果, 并且計(jì)算代價(jià)十分小, 請(qǐng)求次數(shù)也十分小.
Perlin噪聲模式是用來生成自然界的紋理的, 在圖片和視頻游戲中也有應(yīng)用, 有趣的是, 這些擾動(dòng)視覺上類似通用的對(duì)抗擾動(dòng)(Universal Adversarial Perturbation), 能夠使用相同的對(duì)抗噪聲模式來高概率地欺騙一個(gè)深度神經(jīng)網(wǎng)絡(luò).
該文的方法依賴于一個(gè)減少控制噪聲生成的參數(shù)的優(yōu)化, 提出使用貝葉斯優(yōu)化(Bayesian optimization), 這個(gè)優(yōu)化已經(jīng)被證明是對(duì)于黑盒優(yōu)化有效的方法, 它通過考慮目標(biāo)函數(shù)的估計(jì)的不確定性來減少了函數(shù)的數(shù)目.
實(shí)驗(yàn)結(jié)果是能夠達(dá)到至少90%和45%的top-1和top-5錯(cuò)誤率, 是部分的黑盒攻擊的效果的兩倍, 更進(jìn)一步, 該結(jié)果在大多數(shù)情況下對(duì)比白盒攻擊在ImageNet上效果甚至更好.
對(duì)抗訓(xùn)練(adversarial training)用于增強(qiáng)模型對(duì)于對(duì)抗樣本的魯棒性, 雖然該方法應(yīng)對(duì)白盒攻擊體現(xiàn)出了效果, 該文顯示了其限制性, 只要攻擊者改變生成對(duì)抗樣本的視角即可, 我們使用了全體對(duì)抗訓(xùn)練(ensemble adversarial training), 對(duì)抗訓(xùn)練里面最優(yōu)的模型, 仍然對(duì)于Perlin噪聲攻擊不夠有魯棒性.
給出該文章的主要貢獻(xiàn):
- 介紹一種黑盒攻擊, 可擴(kuò)展并且計(jì)算高效, 使用真實(shí)和自然紋理的程序性噪聲函數(shù), 展現(xiàn)了DNN在該種擾動(dòng)下的脆弱性, 在ImageNet上比目前的黑盒和白盒攻擊都要表現(xiàn)出色.
- 提出了黑盒優(yōu)化的貝葉斯優(yōu)化方法, 用來學(xué)習(xí)Perlin噪聲的參數(shù), 使用很少的迭代次數(shù)就可以制造出成功的對(duì)抗樣本
- 和通用的擾動(dòng)類似, 展現(xiàn)了一個(gè)通過我們的perlin噪聲生成的單擾動(dòng)能夠?qū)崿F(xiàn)許多成功的攻擊對(duì)于大量的數(shù)據(jù)點(diǎn)集合而言. 徹底地減少了攻擊者為了擴(kuò)展攻擊造成的影響.
- 我們的攻擊策略顯示出了對(duì)抗學(xué)習(xí)的限制性, 并且經(jīng)驗(yàn)性地顯示最好的全體對(duì)抗訓(xùn)練模型對(duì)于程序性噪聲擾動(dòng)并沒有足夠有效.
2. 相關(guān)工作
機(jī)器學(xué)習(xí)的脆弱性由對(duì)抗機(jī)器學(xué)習(xí)(adversarial machine learning)開展的一系列研究來進(jìn)行探索.
關(guān)于對(duì)抗機(jī)器學(xué)習(xí), 該方向是機(jī)器學(xué)習(xí)和安全的交叉點(diǎn), 為了探究能夠使攻擊者來破壞機(jī)器學(xué)習(xí)系統(tǒng)的方法, 以及開發(fā)更加魯棒性的算法用于減輕這些攻擊的效果.
在訓(xùn)練階段, 攻擊者可以使用毒害攻擊(poisoning attack), 通過注入一些惡意數(shù)據(jù) 到我們的訓(xùn)練集合里面, 進(jìn)而操縱整個(gè)系統(tǒng)的行為, 同時(shí)是為了降低整個(gè)系統(tǒng)的性能. 第一個(gè)實(shí)際中的毒害攻擊被應(yīng)用在了垃圾郵件過濾和異常檢測(cè)系統(tǒng)之中.
防御策略通常有以下兩種方法:
- 試圖在訓(xùn)練階段, 將一些具有壞影響的樣本剔除出去.
- 假設(shè)大多數(shù)有影響的樣本是異常的樣本, 利用異常檢測(cè)進(jìn)行剔除.
偷漏攻擊(Evasion attack)是在測(cè)試階段進(jìn)行攻擊的方法, 使得模型產(chǎn)生內(nèi)部的錯(cuò)誤, 并且使用這種弱點(diǎn)和盲點(diǎn).
我們可以根據(jù)對(duì)抗者的能力和知識(shí)來對(duì)攻擊進(jìn)行分類
- 白盒攻擊: 攻擊者對(duì)目標(biāo)分類器和數(shù)據(jù)集都能夠訪問
- 黑盒攻擊: 攻擊者不了解目標(biāo)分類器和訓(xùn)練數(shù)據(jù)集
白盒攻擊是基于遷移(transferability-based)的黑盒攻擊的基礎(chǔ)
Szegedy等人提出來最小化攻擊, 做出最小化的擾動(dòng)來實(shí)現(xiàn)攻擊, 使用L-BFGS來解決優(yōu)化問題
C. Szegedy, W. Zaremba, I. Sutskever, J. Bruna, D. Erhan, I. Goodfellow, and R. Fergus, “Intriguing Properties of Neural Networks,” arXiv preprint arXiv:1312.6199, 2013.
Biggio等人提出來限制最大擾動(dòng)的攻擊.
B. Biggio, I. Corona, D. Maiorca, B. Nelson, N. ˇSrndi′c, P. Laskov, G. Giacinto, and F. Roli, “Evasion Attacks against Machine Learning at Test Time,” in Joint European Conference on Machine Learning and Knowledge Discovery in Databases, 2013, pp. 387–402.
Goodfellow等人提出來快速梯度符號(hào)方法(FGSM--- Fast Gradient Sign Method)攻擊, 利用cost函數(shù)反推出梯度, 然后對(duì)樣本進(jìn)行擾動(dòng).
**I. J. Goodfellow, J. Shlens, and C. Szegedy, “Explaining and Harnessing Adversarial Examples,” arXiv preprint arXiv:1412.6572, 2014. **
雖然, 這些方法依賴于近似, 但是不復(fù)雜并且有效以及可擴(kuò)展到高維度的數(shù)據(jù)集.
其他的基于梯度的白盒攻擊方法, 比如雅可比特性映射方法(JSMA--Jacobian Saliency Map Approach), C&W (Carlini & Wagner)方法以及DeepFool方法
**N. Papernot, P. McDaniel, S. Jha, M. Fredrikson, Z. B. Celik, and A. Swami, “The Limitations of Deep Learning in Adversarial Settings,” in European Symposium on Security and Privacy, 2016, pp. 372–387. **
**N.CarliniandD.Wagner,“TowardsEvaluatingtheRobustnessofNeural Networks,” in Symposium on Security and Privacy, 2017, pp. 39–57. **
**S.-M. Moosavi-Dezfooli, A. Fawzi, and P. Frossard, “Deepfool: a Simple and Accurate Method to Fool Deep Neural Networks,” in Conference on Computer Vision and Pattern Recognition, 2016, pp. 2574–2582. **
這些攻擊的快速版本, 比如FGSM和Step-LL, 將效率和速度進(jìn)行交換
A. Kurakin, I. Goodfellow, and S. Bengio, “Adversarial Machine Learning at Scale,” arXiv preprint arXiv:1611.01236, 2016.
Moosavi-Dezfooli等人公式化了白盒攻擊, 并且概括了DeepFool來生成一個(gè)統(tǒng)一對(duì)抗擾動(dòng)(UAPs--Universal Adversarial Perturbations): 通過圖片集的單一的對(duì)抗擾動(dòng)來欺騙分類器
以上這些方法是根據(jù)梯度來進(jìn)行對(duì)抗樣本的生成的, 但是由于神經(jīng)網(wǎng)絡(luò)的復(fù)雜性, 利用梯度來構(gòu)造對(duì)抗樣本是不足夠合理的, 可能找不到解, 不過在實(shí)際的某些任務(wù)上, 仍然可以用梯度方法來找到對(duì)抗樣本.
黑盒攻擊代表了更為一般的場(chǎng)景, 特別是當(dāng)機(jī)器學(xué)習(xí)算法被部署到真實(shí)世界中的時(shí)候. 很多實(shí)際的黑盒攻擊關(guān)注于對(duì)抗樣本的遷移性, Papernot等人觀察到對(duì)抗樣本在模型之間的遷移性, 并且基于此, 他們訓(xùn)練一個(gè)代理模型( surrogate model )來進(jìn)行分類任務(wù), 對(duì)代理模型進(jìn)行白盒攻擊, 使用所生成的對(duì)抗樣本來黑盒攻擊真實(shí)的模型.
N. Papernot, P. McDaniel, and I. Goodfellow, “Transferability in Machine Learning: From Phenomena to Black-box Attacks using Adversarial Samples,” arXiv preprint arXiv:1605.07277, 2016.
N. Papernot, P. McDaniel, I. Goodfellow, S. Jha, Z. B. Celik, and A. Swami, “Practical Black-box Attacks Against Machine Learning,” in Asia Conference on Computer and Communications Security, 2017, pp. 506–519.
為了增強(qiáng)他們的攻擊, 還使用合成的辦法對(duì)數(shù)據(jù)集進(jìn)行擴(kuò)展.
Kurakin等人將其攻擊繼承到大圖片數(shù)據(jù)集ImageNet上面, 他們的結(jié)果是在最好的神經(jīng)網(wǎng)絡(luò)模型上表現(xiàn)出60%的top1錯(cuò)誤和50%的top5錯(cuò)誤.
A. Kurakin, I. Goodfellow, and S. Bengio, “Adversarial Machine Learning at Scale,” arXiv preprint arXiv:1611.01236, 2016.
Moosavi-Dezfooli等人也基于ImageNet任務(wù)中, 探索了他們的UAP在不同神經(jīng)網(wǎng)絡(luò)中的一般性, 使用遷移攻擊實(shí)現(xiàn)了74%的top 1錯(cuò)誤.
**S.-M. Moosavi-Dezfooli, A. Fawzi, O. Fawzi, and P. Frossard, “Universal Adversarial Perturbations,” in Conference on Computer Vision and Pattern Recognition, 2017, pp. 86–94. **
當(dāng)攻擊者只有少量的知識(shí)的時(shí)候, 上述方案看上去便不太實(shí)際, 而且遷移的特性是不被保證的.
其他的黑盒側(cè)重于使用大量的請(qǐng)求來估計(jì)目標(biāo)分類函數(shù), 但是容易被注意到并防御下來.
利用梯度構(gòu)造的對(duì)抗樣本, 其接近于分類器分類的邊界, 這對(duì)于復(fù)雜的數(shù)據(jù)集, 比如ImageNet數(shù)據(jù)集我們對(duì)于一張圖片至少需要訪問神經(jīng)網(wǎng)絡(luò)1000次(ImageNet有1000個(gè)類別), 這是很難解決的. 基于決策的方法和ZOO方法被提出.
W. Brendel, J. Rauber, and M. Bethge, “Decision-Based Adversarial Attacks: Reliable Attacks Against Black-Box Machine Learning Models,” arXiv preprint arXiv:1712.04248, 2017.
P.-Y. Chen, H. Zhang, Y. Sharma, J. Yi, and C.-J. Hsieh, “Zoo: Zeroth Order Optimization Based Black-box Attacks to Deep Neural Networks without Training Substitute Models,” in Workshop on Arti?cial Intelligence and Security, 2017, pp. 15–26.
很多這樣的黑盒攻擊并沒有考慮對(duì)于復(fù)雜神經(jīng)網(wǎng)絡(luò)以及復(fù)雜的自然數(shù)據(jù)集的實(shí)際意義以及效率.
空域攻擊(Spatial Attack), 利用簡單的變換, 比如旋轉(zhuǎn), 縮放等來生成對(duì)抗樣本, 實(shí)現(xiàn)了低次數(shù)的訪問以及取得了合理的成功, 對(duì)于標(biāo)準(zhǔn)的ResNet-50來說, 在ImageNet任務(wù)下, 實(shí)現(xiàn)了訓(xùn)練集的70%的top-1錯(cuò)誤以及50%的擴(kuò)充訓(xùn)練集的top-1錯(cuò)誤.
**L. Engstrom, D. Tsipras, L. Schmidt, and A. Madry, “A Rotation and a Translation Suf?ce: Fooling CNNs with Simple Transformations,” arXiv preprint arXiv:1712.02779, 2017. **
該文的方法為非空域攻擊, 在原始圖片上使用一種加性噪聲來構(gòu)造對(duì)抗樣本.
正確地區(qū)分對(duì)抗樣本是很困難的, 但亦提出來一些檢測(cè)進(jìn)行梯度混淆的對(duì)抗樣本的方法, Athalye等人以及Carlini等人提出了避免這種特殊攻擊的防御手段.
A. Athalye, N. Carlini, and D. Wagner, “Obfuscated Gradients Give a False Sense of Security: Circumventing Defenses to Adversarial Examples,” arXiv preprint arXiv:1802.00420, 2018.
N. Carlini and D. Wagner, “Adversarial Examples are not Easily Detected: Bypassing Ten Detection Methods,” in Workshop on Arti?cial Intelligence and Security, 2017, pp. 3–14.
在現(xiàn)存的防御手段中, 對(duì)抗性訓(xùn)練展現(xiàn)了更為一般性的魯棒性, Kurakin等人實(shí)現(xiàn)了對(duì)抗性訓(xùn)練并且顯示其針對(duì)單步梯度攻擊的魯棒性.
A. Athalye, N. Carlini, and D. Wagner, “Obfuscated Gradients Give a False Sense of Security: Circumventing Defenses to Adversarial Examples,” arXiv preprint arXiv:1802.00420, 2018.
A. Kurakin, I. Goodfellow, and S. Bengio, “Adversarial Machine Learning at Scale,” arXiv preprint arXiv:1611.01236, 2016
Madry等人使用投影梯度下降(PGD--ProjectedGradient Descent)的方法, 并通過實(shí)驗(yàn)說明了利用該方法生成樣本進(jìn)行訓(xùn)練, 能夠?qū)τ谙刃蚬粲幸欢ㄟm應(yīng)性.
A. Madry, A. Makelov, L. Schmidt, D. Tsipras, and A. Vladu, “Towards Deep Learning Models Resistant to Adversarial Attacks,” arXiv preprint arXiv:1706.06083, 2017.
Tramer等人提出了全局對(duì)抗訓(xùn)練(ensemble adversarial training), 利用其他模型生成的對(duì)抗樣本進(jìn)行訓(xùn)練, 能夠有效防范ImageNet的黑盒攻擊.