Boosting Adversarial Attacks with Momentum(CVPR2018)
Source Code:
https://github.com/dongyp13/Non-Targeted-Adversarial-Attacks
https://github.com/dongyp13/Targeted-Adversarial-Attacks.
文章概述: 本文提出了一種基於動量法(Momentum)的迭代生成對抗樣本的方法,這種方法可以在迭代過程中穩定更新方向並避免糟糕的局部最大值(local maxima),從而產生更可轉移(transferable)的對抗性示例,並且不僅對"白盒"模型攻擊有效,對"黑盒"模型攻擊也同樣有效。
本文方法生成的對抗樣本初覽:
可以看出,對抗樣本在一定程度上是增加了奇奇怪怪的紋路,對於常人而言,只會覺得是的"這張圖不夠清晰",並且會主動過濾掉,而只對總體圖像進行分析,所以對常人而言,是不會誤判的。而對於CNN,其實對於每一個卷積核,其實在某種程度上是一種"算子",提取的是圖像中的紋理特徵,對於卷積核而言,可能更加關注的是紋理特徵,而無法把握總體特徵,因此會誤判。
我的猜想:會不會有一種可能,是因爲卷積核的性質才導致了網絡的不穩定性?大一點的卷積核是否在一定程度上因爲關注的區域變大而忽略細小紋理從而變得更加robust?
文中猜想(或結論、現有研究的優缺點)的整理:
- 可轉移性(transferable)現象是由於不同的機器學習模型在一個數據點周圍學習相似的決策邊界,使得爲一個模型設計的對抗性示例對其他模型也有效。
- optimization-based和iterative方法產生的對抗樣本在可轉移性上表現比較差,因此對黑盒模型的攻擊比較低效;one-step gradient方法能產生更可轉移的對抗性例子,但是它們通常對白盒模型的成功率較低,使得它對黑盒攻擊無效。
- 已經有研究表明,對於白盒模型而言,iterative方法比one-step方法有更高的成功率,但是這是以更差的可以轉移性作爲代價的。
- optimization-based方法的缺點是無法保證對抗樣本的 “保真性”,即可能增加的擾動足以讓人眼明顯感覺到(其優化的目標函數如下)。
本文的方法:
case 1:MI-FGSM
[無聊的補充知識]: MI即爲Momentum iterative的縮寫
作者的思路來源: 借鑑物理學上的動量思想,在優化時越過local maxima,增大到達global maxima的機會。其實不太理解的是,對於這種迭代的更新步驟,local maxima和global maxima到底意味着什麼? 爲什麼減小陷入local maxima的機率就能讓攻擊效果更好(主要是這裏並未出現所謂的目標函數)
與iterative FGSM的對比: 其主要的不同點在於iterative FGSM方法中,sign
函數中的內容爲
而本文sign
函數中的內容,則爲下圖中的公式(6)。這種動量的思想,其實包含了一種指數衰減平均的思想,其好處在於,能夠使目標函數優化方向振幅減小,更易朝着global maxima目標前進,此外還不容易陷入local maxima。
此外,通過L1
範數的約束,能夠使各個方向的偏導數歸一化,因爲作者注意到,每次迭代時,這個損失函數的梯度變化量級非常大。
case 2: ensemble
作者嘗試了三種集成的策略,分別是
其中是第k個模型對應的權重
表示的是,第k個模型輸入softmax的logits
表示的是,第k個模型softmax輸出的prediciton
表示的是,第k個模型計算得到的loss
不同策略的攻擊效果如下。其中hand-out
表示的是不參與訓練對抗樣本的黑盒模型。從下圖中可以獲得以下結論:
- 採用
logits
集成的策略在總體攻擊效果上比其他兩者更加有效。 - 本文提出的
MI-FGSM
對白盒和黑盒模型都具有更好的攻擊效果,即可遷移性(transferable)更好(因爲其對黑盒模型的攻擊效果遠好於I-FGSM
方法)。
且相比於不採用ensemble
策略的MI-FGSM
而言,可遷移性也更強!下圖爲不採用ensemble
策略的MI-FGSM
效果。
由於這些筆記是之前整理的,所以可能會參考其他博文的見解,如果引用了您的文章的內容請告知我,我將把引用出處加上~
如果覺得我有地方講的不好的或者有錯誤的歡迎給我留言,謝謝大家閱讀(點個贊我可是會很開心的哦)~