運用對抗例攻擊深度學習模型(二)

Pomin Wu
TrustableAI
Published in
13 min readOct 18, 2017
Manuscript illustration of two men fencing with sword and buckler, Public Domain

本文同步刊登於 Trustable AI 部落格

這是一系列針對對抗例(adversarial example)相關研究的綜合摘要的第二篇。本系列包括:

針對深度學習的對抗例在 2017 年有許多進展。這次的摘要涵蓋以下內容:

  • 現實環境中的對抗例攻擊
  • 一個針對強化學習的防禦手法
  • 新的攻擊與防禦手法
  • 通用對抗例

現實環境中的對抗例攻擊

2017 年 7 月有個比較特別的討論是,運用對抗例攻擊深度學習模型在現實環境中的效果如何。

類似的問題,之前其實已經有幾份論文討論過。Kuratin et al(2016)[1]曾經將對抗例列印出來用手機相機拍攝,看看是否能影響深度學習影像辨識的結果。他們用了幾個基於 FGSM 的對抗例演算法,把產生的對抗例列印在紙上,並且在角落加上影像校正用的 QR code。用手機的相機拍攝以後,程式會利用 QR code 把影像校正裁切到與原圖一樣大小,再交給模型進行分類。實驗結果顯示雖然有一些對抗例會失效,但多數(一般來說大於 2/3)的對抗例仍然能造成誤判。他們也釋出一份 demo 影片

在另一個測試裡,Sharif et al(2016)[2]利用 gradient descent 製造出可以給真人配戴並欺騙過人臉辨識的眼鏡框。他們著重在可以實際上運用的攻擊方式,選擇用眼鏡框是因為成功率高,而且配戴時不容易令人起疑,可以避免被認出或是假冒另一個人的身份。

最近的討論則是 Lu et al(2017)[3]針對 Kuratin et al 的實驗做了進一步的測試,認為在自動車的情境下,對抗例的效果沒有那麼好。因為 Kuratin et al 在論文中只測試了亮度、反差等等的影像變化,而且影像經過了校正與裁切,大小與原圖相同。但在自動車的使用情境,例如辨識路標時,使用的影像可能不會經過這些處理,所以 Lu et al 測試了在不同距離與角度拍攝對抗例,發現大部份情況下可以正確辨識,因此對抗例可能影響不那麼大。

但是這個結果很快被反駁。Open AI 的 Athalye and Sutskever(2017)[4]幾天後提出一篇很短的報告,裡頭製造了一個不受縮放、平移、旋轉、雜訊、亮度所影響,都可以造成誤判的對抗例。Open AI 也為此發了一篇 blog。他們的作法是考慮所有這些影像變換的分佈 T,針對原圖被施加 T 以後取 loss function 的期望值最佳化,利用 projected gradient descent 找出可以用的對抗例。

Evtimov et al(2017)[5]的回應可能更完整一點。針對美國的道路標誌,他們所製造的對抗例可以印成局部遮罩(mask),貼在路標上,從不同距離、角度拍攝後,大部份都能造成誤判。為此他們搜集了各種距離、角度下所拍攝的路標影像,使用類似於 Athalye and Sutskever 的演算法,並且像 Sharif et al 一樣考慮到列印的可行性(printability)與限制演算法只能修改遮罩部份的像素。

有愈來愈多針對對抗例運用在不同情況的研究。下一節會簡短說明一個新的、針對強化學習的對抗例偵測手法。

一個針對強化學習的偵測手法

一個有趣的方式是利用連續多幅畫面(multiple frames)。Lin et al(2017)[6]研究機器人、遊戲(video game)所使用的強化學習模型。因為在這些情境裡,時序連續的兩幅畫面某種程度上是可以預測的,所以他們訓練了一個 visual foresight module 去預測下一幅畫面,並且把預測的畫面與實際接收到的下一幅畫面都丟進決策模型裡。如果兩個輸入的決策結果差太多,那就有可能是對抗例在搗亂。

不過初步看來他們是用遊戲來 demo 這個想法。我們覺得,因為預測下一幅畫面,在系統不容易建模的情況下可能蠻困難的,所以不是很清楚他們的辦法能不能成功運用到自動車的問題上。

可以看看他們的 project page

新的攻擊與防禦手法

上一篇綜合摘要提到,到 2017 年中為止運用對抗例攻擊方略佔上風。單就產生對抗例與偵測對抗例的演算法而言,到 2017 年 6 月為止似乎也是如此。以下我們接著之前看到的 defensive distillation,整理一下近期看到的防禦與攻擊手法。

Feature squeezing 是 Xu et al(2017)[7]提出的偵測與防禦手法,簡單來說就是壓縮影像資料,讓製造對抗例時所加入的擾動(perturbation)被削弱。這個作法看起來簡單又有效,論文中測試了對 color depth 壓縮與影像平滑化,證實對 JSMA 與 FGSM 所產生的對抗例都有不錯的效果,可以提昇模型的辨識正確率。這個方法屬於被動防禦,好處是不用重新訓練模型,配合論文中提到的架構做過濾的話,理論上會有一定的 false positive 比率,但是過濾後的部份辨識準確率不會下降。稍後發表的 Liang et al(2017)[8]與 Xu et al(2017)[9]也可以偵測到用 DeepFool 與 Carlini/Wagner 演算法產生的對抗例。

Ensemble of specialists 則是 Abbasi and Gagné(2017)[10]稍早所提出的防禦方法,概念上是運用 Bendale and Boult(2016)[11]提到的 open set recognition,也就是模型應該要偵測出並且拒絕掉「認不得」(unknown)的資料,作法上則是用 ensemble of models。這樣的模型沒有針對任何對抗例做訓練,卻可以降低對於對抗例的預測信心。

不過 He et al(2017)[12]的結果可能削弱了上述兩個防禦手法的強度。He et al 所運用的威脅模型是「適應性對抗」(adaptive adversary),也就是假設攻擊方知道防禦手法為何,並且採取反制手段。在論文中他們討論了 feature squeezing 與 specialists+1 等防禦手法,如何製造出可以迴避這兩種過濾手法的對抗例。論文的另一個重點是說明把幾個比較弱的防禦手法組合起來,結果可能不會比較有效。例如在 feature squeezing 裡使用多個不同的 squeezer,或是在 specialists+1 裡使用多個分類器,對於知道防禦手法為何的攻擊方而言,仍然可以製造出成功的對抗例。當然愈複雜的防禦手法,理論上就愈難取得完整資訊,所以我們覺得目前這些防禦手法也並不是完全無效。

另一方面,黑箱攻擊的手法也有進展。上次提到 Papernot et al(2017)[13]的黑箱攻擊,利用的是對抗例的可移轉性(transferability)。最近 Chen et al(2017)[14]提出了「零階最佳化」(zeroth order optimization;ZOO)、Hayes and Danezis(2017)[15]提出 adversarial service,都是不用依靠移轉就可以達成的黑箱攻擊。

通用對抗例

通用對抗例(Universal adversarial perturbation)最早發表在 Moosavi-Dezfooli et al(2016)[16]。它特別的地方是,過去找對抗例的演算法是針對單一輸入資料找出可以用的擾動,讓資料加上擾動後,模型輸出的結果改變;通用對抗例則是要找出一個擾動,讓大部份的資料加上這個擾動都會被模型誤判,也就是算出一個擾動就可以給全部的資料使用的意思。

Moosavi-Dezfooli et al 在 2016 年提出來的通用對抗例基本上是在訓練資料上直接跑最佳化,有一點暴力的演算法。後來 Moosazi-Dezfooli et al(2017)[17]對這個現象做了一點數學分析,結論大致是說,如果一個模型的 decision boundary 在某些部份的法向量有高度相關性,那就比較容易找到通用對抗例。直覺上的解釋就是這種情況下,資料點位比較容易被同一個(擾動所帶來的)向量「推」到 decision boundary 的另一側去。

無論如何,這仍然是一個計算起來頗花時間的擾動,雖然可能算出一個就可以用在很多資料上。最近 Mopuri et al(2017)[18]發表的 Fast Feature Fool 則是一個不用取得訓練資料,而且比較快的演算法,但它仍然需要知道該模型的細節才能執行。

目前對於通用對抗例的研究成果看起來不多,不過這或許會成為重要的攻擊手段之一,值得關注。

參考文獻

  1. A. Kurakin, I. Goodfellow, and S. Bengio, “Adversarial examples in the physical world,” arXiv:1607.02533 [cs, stat], Jul. 2016.
  2. M. Sharif, S. Bhagavatula, L. Bauer, and M. K. Reiter, “Accessorize to a Crime: Real and Stealthy Attacks on State-of-the-Art Face Recognition,” in Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, New York, NY, USA, 2016, pp. 1528–1540.
  3. J. Lu, H. Sibai, E. Fabry, and D. Forsyth, “NO Need to Worry about Adversarial Examples in Object Detection in Autonomous Vehicles,” arXiv:1707.03501 [cs], Jul. 2017.
  4. A. Athalye and I. Sutskever, “Synthesizing Robust Adversarial Examples,” arXiv:1707.07397 [cs], Jul. 2017.
  5. I. Evtimov et al., “Robust Physical-World Attacks on Deep Learning Models,” arXiv:1707.08945 [cs], Jul. 2017.
  6. Y.-C. Lin, M.-Y. Liu, M. Sun, and J.-B. Huang, “Detecting Adversarial Attacks on Neural Network Policies with Visual Foresight,” arXiv:1710.00814 [cs], Oct. 2017.
  7. W. Xu, D. Evans, and Y. Qi, “Feature Squeezing: Detecting Adversarial Examples in Deep Neural Networks,” arXiv:1704.01155 [cs], Apr. 2017.
  8. B. Liang, H. Li, M. Su, X. Li, W. Shi, and X. Wang, “Detecting Adversarial Examples in Deep Networks with Adaptive Noise Reduction,” arXiv:1705.08378 [cs], May 2017.
  9. W. Xu, D. Evans, and Y. Qi, “Feature Squeezing Mitigates and Detects Carlini/Wagner Adversarial Examples,” arXiv:1705.10686 [cs], May 2017.
  10. M. Abbasi and C. Gagné, “Robustness to Adversarial Examples through an Ensemble of Specialists,” arXiv:1702.06856 [cs], Feb. 2017.
  11. A. Bendale and T. E. Boult, “Towards Open Set Deep Networks,” presented at the Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016, pp. 1563–1572.
  12. W. He, J. Wei, X. Chen, N. Carlini, and D. Song, “Adversarial Example Defenses: Ensembles of Weak Defenses are not Strong,” arXiv:1706.04701 [cs], Jun. 2017.
  13. N. Papernot, P. McDaniel, I. Goodfellow, S. Jha, Z. B. Celik, and A. Swami, “Practical Black-Box Attacks against Machine Learning,” arXiv:1602.02697 [cs], Feb. 2016.
  14. 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,” arXiv:1708.03999 [cs, stat], Aug. 2017.
  15. J. Hayes and G. Danezis, “Machine Learning as an Adversarial Service: Learning Black-Box Adversarial Examples,” arXiv:1708.05207 [cs, stat], Aug. 2017.
  16. S.-M. Moosavi-Dezfooli, A. Fawzi, O. Fawzi, and P. Frossard, “Universal adversarial perturbations,” arXiv:1610.08401 [cs, stat], Oct. 2016.
  17. S.-M. Moosavi-Dezfooli, A. Fawzi, O. Fawzi, P. Frossard, and S. Soatto, “Analysis of universal adversarial perturbations,” arXiv:1705.09554 [cs, stat], May 2017.
  18. K. R. Mopuri, U. Garg, and R. V. Babu, “Fast Feature Fool: A data independent approach to universal adversarial perturbations,” arXiv:1707.05572 [cs], Jul. 2017.

原文刊載對抗例攻擊與防禦手法 — 運用對抗例攻擊深度學習模型(二)

--

--

Pomin Wu
TrustableAI

Co-founder of Trustable AI. Interested in mathematics, photography, map, open culture.