title | date | comments | categories | tags | |||
---|---|---|---|---|---|---|---|
Adversarial Robustness for Deep Learning with Trends and Challenges |
2020-02-21 11:25:00 -0800 |
true |
|
|
adversarial example(對抗例):造成深度學習模型判斷錯誤的例子
Papernot et al(2016)發表的攻擊方式是目前最具威力的一種 針對影像辨識,可以透過 API 取得一些分類結果後,另外在本地訓練一個 local model,對 local model 找出可用的對抗例,轉移(transfer)回去攻擊目標 API。 論文裡對 Amazon 與 Google 的服務實測都有近 90% 的成功率
最早是 Szegedy et al(2013)[2]發現對於用 ImageNet、AlexNet 等資料集訓練出來的影像辨識模型,常常只需要輸入端的微小的變動,就可以讓輸出結果有大幅度的改變。例如取一張卡車的照片,可以被模型正確辨識,但只要改變影像中的少數像素,就可以讓模型辨識錯誤,而且前後對影像的改變非常少,對肉眼而言根本分不出差異。
Open AI 的 Attacking Machine Learning with Adversarial Examples 一文也是相當完整的入門參考資料。
In Szegedy: [1]同一個對抗例可用於不同的模型上(可轉移transfer) [2]這是一個最佳化的問題,隨機尋找的成功率不高
對抗例的解釋: 線性的計算 z=wx+b w 與 b 是 weight 與 bias,x 是 input,z 是 stimulation。 因此當 d 與 w 平行時,z'=w(x+d)+b=wx+wd+b 可以因為一個微小的變動d 產生很大的輸出結果改變(wd很大)。 當這些向量的維度很高(即 model feature 很多)的時候,wd 就可以大到造成誤判。
[1] regularization等 dropout、pretraining、model average均無法有效防堵 [2] decision boundary
較好的兩個攻擊廣泛使用模型 Goodfellow et al(2014)提出的 Fast Gradient Sign Method (FGSM) Papernot et al(2016)[4]提出的 Jacobian-based Saliency Map Approach (JSMA)
A. Adversarial goals 攻擊目的(由容易到困難) 1.Confidence reduction:降低信心 2.Misclassification:讓 output 跑掉 3.Targeted misclassification:製造一個 input 讓 output 是特定值 4.Source/target misclassify:把一個特定 input 修改到讓 output 是特定值 B. Adversarial capabilities 攻擊方需要知道的資訊(由多到少) 1.Architecture & training data 2.Architecture 3.Training data sample 4.Oracle 5.Samples
有攻擊必有防禦 防禦的策略 防禦的策略則分成被動與主動兩大類: 被動防禦:受到攻擊以後再防禦,以「試圖在 input 中過濾出對抗例」為主。 主動防禦:事先預防,以「試圖調整訓練過程,讓訓練出來的 model 不容易被算出對抗例」為主。
主動防禦又有兩大類:
- Adversarial training(Shaham et al(2015)[6]):產生對抗例用來訓練 model,減少 perturbation 造成的改變。這樣訓練過後的 model 局部較穩定,不容易再找出對抗例。
- Defensive distillation(Papernot et al(2016)[7]):把 model 預測的 probability vector 餵回去給 model 稀釋一下 weight,讓新的 decision boundary 平滑一點,就不容易找到對抗例了。
C.W演算法讓2.的防禦失效許多
參考文獻 (1) N. Papernot, P. McDaniel, S. Jha, M. Fredrikson, Z. B. Celik, and A. Swami, “The Limitations of Deep Learning in Adversarial Settings,” in 2016 IEEE European Symposium on Security and Privacy, 2016, pp. 372–387. (2) C. Szegedy et al., “Intriguing properties of neural networks,” arXiv:1312.6199 [cs], Dec. 2013. (3) I. J. Goodfellow, J. Shlens, and C. Szegedy, “Explaining and harnessing adversarial examples,” arXiv preprint arXiv:1412.6572, 2014. (4) N. Papernot, P. McDaniel, S. Jha, M. Fredrikson, Z. B. Celik, and A. Swami, “The Limitations of Deep Learning in Adversarial Settings,” in 2016 IEEE European Symposium on Security and Privacy, 2016, pp. 372–387. (5) Florian Tramèr, Fan Zhang, and Ari Juels, “Stealing Machine Learning Models via Prediction APIs,” in Proceedings of the 25th USENIX Security Symposium, Berkeley, CA, 2016, vol. 25th USENIX Security Symposium, pp. 601–618. (6) U. Shaham, Y. Yamada, and S. Negahban, “Understanding Adversarial Training: Increasing Local Stability of Neural Nets through Robust Optimization,” arXiv preprint arXiv:1511.05432, 2015. (7) N. Papernot, P. McDaniel, X. Wu, S. Jha, and A. Swami, “Distillation as a Defense to Adversarial Perturbations Against Deep Neural Networks,” in 2016 IEEE Symposium on Security and Privacy (SP), 2016, pp. 582–597. (8) N. Carlini and D. Wagner, “Towards Evaluating the Robustness of Neural Networks,” arXiv:1608.04644 [cs], Aug. 2016. (9) N. Papernot and P. McDaniel, “Extending Defensive Distillation,” arXiv preprint arXiv:1705.05264, May 2017.