AI 到底是怎么「想」的?
本文作者:kurffzhou,騰訊 TEG 安全工程師
最近,Nature發(fā)表了一篇關(guān)于深度學(xué)習(xí)系統(tǒng)被欺騙的新聞文章,該文指出了對(duì)抗樣本存在的廣泛性和深度學(xué)習(xí)的脆弱性,以及幾種可能的解決方法。安全平臺(tái)部基礎(chǔ)研究組自2017年來(lái)在對(duì)抗樣本的生成及防守方法進(jìn)行了深入研究,在這里團(tuán)隊(duì)通過在攻擊方面的經(jīng)驗(yàn),分享我們對(duì)于防守對(duì)抗樣本的一些思考,歡迎共同討論。
深度學(xué)習(xí)在現(xiàn)實(shí)生活中的應(yīng)用越來(lái)越廣,然而越來(lái)越多的例子表明,深度學(xué)習(xí)系統(tǒng)很容易受到對(duì)抗樣本的欺騙。那么,AI到底是怎么“想”的?為什么這么容易被騙?
要回答這個(gè)問題,我們首先看圖片來(lái)做個(gè)小實(shí)驗(yàn)——
圖1圖1左圖:原始圖片(圖片來(lái)源:ImageNet數(shù)據(jù)集)
圖1中圖:局部塊保持像素的布局不變,但是整體圖像的全局布局改變
圖1右圖:局部塊的像素的布局變化,但是整體圖像的全局布局不變
對(duì)于這三幅圖,神經(jīng)網(wǎng)絡(luò)會(huì)“認(rèn)為”圖1中圖和圖1右圖哪張圖片更與圖1左圖是一致的呢?
毫無(wú)疑問,對(duì)于人的直覺來(lái)說(shuō),相對(duì)圖1中圖而言,圖1右圖更與圖1左圖一致,因?yàn)槿祟惼毡閮A向于對(duì)整體圖像的布局進(jìn)行識(shí)別。
然而我們通過統(tǒng)計(jì)實(shí)驗(yàn)發(fā)現(xiàn),利用神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測(cè),圖1中圖的預(yù)測(cè)結(jié)果更加傾向于與圖1左圖的預(yù)測(cè)結(jié)果保持一致。可見,人與機(jī)器對(duì)圖片的識(shí)別結(jié)果存在較大差異。
為了深入解釋這種差異,下文首先對(duì)深度學(xué)習(xí)常用的模型進(jìn)行簡(jiǎn)單介紹,再對(duì)深度學(xué)習(xí)模型所學(xué)習(xí)得到的特征進(jìn)行可視化來(lái)解釋深度學(xué)習(xí)模型在圖像方面的優(yōu)勢(shì),并通過相關(guān)實(shí)驗(yàn)研究深度學(xué)習(xí)模型到底在“想”什么、學(xué)習(xí)了什么。
1、深度學(xué)習(xí)常用模型以及特征可視化
深度學(xué)習(xí)常用模型之一的Alexnet模型:Alexnet模型通過多層卷積以及max-pooling操作,最后通過全連層得到最后預(yù)測(cè)結(jié)果,通過計(jì)算損失L來(lái)刻畫網(wǎng)絡(luò)預(yù)測(cè)結(jié)果與我們?nèi)斯?biāo)注類別的差異大小,然后通過計(jì)算損失對(duì)可學(xué)習(xí)參數(shù)的梯度,通過梯度下降的方式來(lái)更新網(wǎng)絡(luò)的權(quán)重,直到損失L下降到網(wǎng)絡(luò)預(yù)測(cè)的結(jié)果與我們?nèi)斯?biāo)注差異很小時(shí),即神經(jīng)網(wǎng)絡(luò)通過對(duì)輸入圖像的層層卷積、max-pooling、全連等操作獲得了正確的結(jié)果。
圖2:Alex網(wǎng)絡(luò)結(jié)構(gòu)(圖片來(lái)源:文獻(xiàn)9)我們首先對(duì)多種不同類型的網(wǎng)絡(luò)(AlexNet, ResNet等)的底層卷積核進(jìn)行可視化,我們發(fā)現(xiàn)這些底層特征存在一定的共性:這些網(wǎng)絡(luò)底層卷積核都在提取梯度、顏色等局部模式,對(duì)應(yīng)圖像中邊和線等,如圖3所示。
圖3:神經(jīng)網(wǎng)絡(luò)底層卷積核可視化(圖片來(lái)源:鏈接11)為了可視化高層特征,我們通過梯度上升優(yōu)化目標(biāo)函數(shù)的方式來(lái)直觀認(rèn)識(shí)高層特征所對(duì)應(yīng)的直觀圖像。我們首先將圖像初始化為0,并通過計(jì)算如圖4中損失函數(shù)對(duì)圖像的梯度,并不斷修改圖像像素就會(huì)得到圖5中的可視化結(jié)果。這些圖表示,要使得最終某類的分?jǐn)?shù)最大,那么所對(duì)應(yīng)的輸入圖像應(yīng)該是什么樣子,從圖5中可以直觀看出大概所屬類別洗衣機(jī)、鍵盤、狐貍、鵝、鴕鳥以及轎車。如果我們換一種考慮特征多面性的可視化方法,就可以得到一個(gè)更加清晰的可視化圖,從中可以更加清晰、直觀地看出所屬類別不同層次的特征,如圖6所示。
圖4:神經(jīng)網(wǎng)絡(luò)高層特征的使用方法(圖片來(lái)源:鏈接11)圖5:高層特征可視化結(jié)果(圖片來(lái)源:文獻(xiàn)12)圖6:不同層次特征可視化結(jié)果(圖片來(lái)源:文獻(xiàn)13)
2、深度學(xué)習(xí)模型到底學(xué)習(xí)了什么?
那么,深度學(xué)習(xí)模型到底都在學(xué)習(xí)什么呢?
首先輸入一張正常圖像,我們通過放大的方式來(lái)可視化神經(jīng)網(wǎng)絡(luò)看到的模式:首先將原始圖片通過神經(jīng)網(wǎng)絡(luò)進(jìn)行計(jì)算,得到當(dāng)前圖片的輸出結(jié)果,然后用梯度上升的方式最大化該輸出結(jié)果,利用如圖4中所使用的方法,最后得到如圖8所示的結(jié)果。
圖7:自然風(fēng)景圖片(圖片來(lái)源:鏈接14)從圖中可以看出,神經(jīng)網(wǎng)絡(luò)對(duì)輸入圖像中的顏色和紋理進(jìn)行了語(yǔ)義類別的放大,并產(chǎn)生對(duì)應(yīng)的語(yǔ)義理解。例如,在山的區(qū)域,神經(jīng)網(wǎng)絡(luò)進(jìn)行了建筑以及動(dòng)物的解釋,在天空區(qū)域有某些海洋生物的解釋。但是由于這幅輸入圖像的這種解釋所產(chǎn)生的特征響應(yīng)并沒有達(dá)到一定的程度,因此不會(huì)影響最后網(wǎng)絡(luò)的識(shí)別,即神經(jīng)網(wǎng)絡(luò)不會(huì)把山那塊區(qū)域識(shí)別成動(dòng)物等。
圖8:DeepDream結(jié)果(圖片來(lái)源:鏈接14)從上述可視化的結(jié)果可以看出,神經(jīng)網(wǎng)絡(luò)是對(duì)紋理顏色等進(jìn)行了語(yǔ)義的理解,但并沒有顯著對(duì)全局的形狀等信息進(jìn)行了理解,最近一系列工作都表明了這點(diǎn),例如Geirhos, Robert等人指出,在ImageNet預(yù)訓(xùn)練的網(wǎng)絡(luò)對(duì)紋理存在偏向,他們利用實(shí)驗(yàn)做了說(shuō)明:如下圖所示:
圖9:紋理實(shí)驗(yàn)(圖片來(lái)源:文獻(xiàn)2)第一幅沒有任何全局形狀的信息,神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)該幅圖像為大象,對(duì)于第二幅圖像預(yù)測(cè)為貓,對(duì)于第三幅圖像,神經(jīng)網(wǎng)絡(luò)依然預(yù)測(cè)為大象,盡管人可能會(huì)識(shí)別出是一只貓,因此從這個(gè)對(duì)比實(shí)驗(yàn)中可以看出,神經(jīng)網(wǎng)絡(luò)更傾向于對(duì)紋理等信息進(jìn)行了語(yǔ)義理解。
本文開頭的小實(shí)驗(yàn)也進(jìn)一步驗(yàn)證了這個(gè)假設(shè):局部紋理的打亂,能夠顯著破壞神經(jīng)網(wǎng)絡(luò)的高層語(yǔ)義理解,但是全局結(jié)構(gòu)的打亂并不能顯著破壞神經(jīng)網(wǎng)絡(luò)的語(yǔ)義理解。
3、對(duì)抗樣本生成
那么,一般是如何生成對(duì)抗樣本呢?主要有兩種方法:
1)基于梯度的方法:一般采用類似可視化的方法,只不過優(yōu)化的目標(biāo)不同,通過梯度更新的方式使得損失變大,并將生成紋理擾動(dòng)疊加到原始圖像上得到對(duì)抗樣本。比較常用的方法有FGSM,BIM,基于momentum的方法,基于所有圖片的梯度進(jìn)行平滑的方法UAP,以及我們?yōu)榱私鉀Q黑盒遷移性提出的TAP方法,這類方法速度較慢,一般通過多次迭代得到對(duì)抗樣本,這類方法簡(jiǎn)單易擴(kuò)展到其他任務(wù)。
2)基于神經(jīng)網(wǎng)絡(luò)的對(duì)抗樣本生成方法:采用神經(jīng)網(wǎng)絡(luò)直接輸出對(duì)抗樣本,例如,AdvGAN、ATN等方法。這類方法的速度較快,但由于神經(jīng)網(wǎng)絡(luò)參數(shù)固定后生成的對(duì)抗樣本會(huì)存在不豐富的問題。
4、如何避免“被騙”?
如Nature新聞中所說(shuō),不停的加入對(duì)抗樣本訓(xùn)練能夠獲得對(duì)對(duì)抗樣本的魯棒性嗎?我們給出答案是NO。對(duì)于對(duì)抗訓(xùn)練生成的模型,我們論文中的方法已經(jīng)實(shí)驗(yàn)證明無(wú)法扛住低頻擾動(dòng)的對(duì)抗樣本,文獻(xiàn)3通過大量的實(shí)驗(yàn)也已證明,NIPS 2017對(duì)抗樣本挑戰(zhàn)賽中所使用的防守方法都無(wú)法防住包含低頻擾動(dòng)的對(duì)抗樣本。
此外,底層圖像去噪這種方法也是見效甚微。底層圖像去噪只能防止高頻的噪聲的對(duì)抗樣本,對(duì)于低頻的噪聲的對(duì)抗樣本也無(wú)法完全抵抗。
通過在攻擊方面的經(jīng)驗(yàn),團(tuán)隊(duì)對(duì)于對(duì)抗樣本的防守方法有以下思考:
1)對(duì)特征值進(jìn)行截?cái)嘞拗?/strong>
對(duì)神經(jīng)網(wǎng)絡(luò)里使用truncated relu這類激活函數(shù),對(duì)特征值進(jìn)行截?cái)嗵幚?#xff0c;防止因?yàn)閷?duì)抗樣本造成的特征突變太大,影響網(wǎng)絡(luò)最終預(yù)測(cè)結(jié)果。
2)設(shè)計(jì)模型更加關(guān)注圖像整體結(jié)構(gòu),而不是紋理特征獲得更強(qiáng)的魯棒性
如Nature新聞中指出的,DNN和符號(hào)AI的結(jié)合,加入結(jié)構(gòu)化的規(guī)則來(lái)融合整體的結(jié)構(gòu)信息。
安全平臺(tái)部公共平臺(tái)中心基礎(chǔ)研究組在對(duì)抗樣本方面進(jìn)行了深入的研究,并在計(jì)算機(jī)視覺頂級(jí)會(huì)議之一的ECCV 2018上發(fā)表對(duì)抗樣本生成的論文,在NIPS 2017對(duì)抗樣本挑戰(zhàn)賽、極棒上海邀請(qǐng)賽等國(guó)內(nèi)外大賽中均取得優(yōu)異成績(jī)。歡迎各位對(duì)對(duì)抗樣本生成以及防守感興趣的同學(xué)與我們交流。
參考文獻(xiàn):
1、Zhou, Wen, et al. "Transferable adversarial perturbations." Proceedings of the European Conference on Computer Vision (ECCV). 2018.
2、Geirhos, Robert, et al. "ImageNet-trained CNNs are biased towards texture; increasing shape bias improves accuracy and robustness." arXiv preprint arXiv:1811.12231 (2018).
3、Sharma, Yash, Gavin Weiguang Ding, and Marcus Brubaker. "On the Effectiveness of Low Frequency Perturbations." arXiv preprint arXiv:1903.00073 (2019).
4、https://www.nature.com/articles/d41586-019-03013-5
5、Krizhevsky, A., Sutskever, I., Hinton, G.E.: Imagenet classification with deep con- volutional neural networks. In: Advances in neural information processing systems. (2012) 1097–1105
6、Carlini, N., Wagner, D.: Towards evaluating the robustness of neural networks. arXiv preprint arXiv:1608.04644
7、Dong, Y., Liao, F., Pang, T., Su, H., Zhu, J., Hu, X., Li, J.: Boosting adversar- ial attacks with momentum. In: The IEEE Conference on Computer Vision and Pattern Recognition (CVPR). (June 2018)
8、Shumeet Baluja and Ian Fis- cher. Adversarial transformation networks: Learn- ing to generate adversarial examples. arXiv preprint arXiv:1703.09387, 2017
9、Krizhevsky A, Sutskever I, Hinton G E. Imagenet classification with deep convolutional neural networks[C]//Advances in neural information processing systems. 2012: 1097-1105.
10、http://www.image-net.org
11、http://cs231n.stanford.edu
12、Simonyan K, Vedaldi A, Zisserman A. Deep inside convolutional networks: Visualising image classification models and saliency maps[J]. arXiv preprint arXiv:1312.6034, 2013.
13、Nguyen A, Yosinski J, Clune J. Multifaceted feature visualization: Uncovering the different types of features learned by each neuron in deep neural networks[J]. arXiv preprint arXiv:1602.03616, 2016.
14、https://ai.googleblog.com/2015/06/inceptionism-going-deeper-into-neural.html
文中鏈接若打不開,可下方跳轉(zhuǎn)到知乎查看收藏:
總結(jié)
以上是生活随笔為你收集整理的AI 到底是怎么「想」的?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 腾讯运维技术专家集结,揭秘高效智能运维
- 下一篇: Techo 大会:AI 会替代 DBA