對抗攻擊(四)BIM&ILLC

一、論文相關信息

  1.論文題目

     Adversarial examples in the physical world

  2.論文時間

    2016年

  3.論文文獻

    https://arxiv.org/abs/1607.02533

二、論文背景及簡介

    目前大多數的攻擊對象都是threat model,攻擊者可以直接將數據送到分類器中。但在現實世界,可不都是這種情況,比如在很多情況下,人們只能依靠一些設備例如照相機、傳感器來傳送數據(生成對抗樣本後,再由照相機拍照或傳感器感知)。這篇文章展示了,在這些現實世界的傳感器面前,機器學習系統也是易受對抗樣本攻擊的。


三、論文主要內容

1、Introduction

    在本節,作者主要介紹了現實世界的攻擊是怎樣的情況。

    之前的工作做的都是電腦內部的對抗攻擊,比如:逃避惡意軟件檢測等。而並沒有考慮過現實世界的應用,比如:通過照相機和傳感器感知世界的機器人,視頻監控系統,手機應用等。在這樣的情境中,攻擊者不能夠依賴輸入數據的每像素細粒度修改能力。這就產生了一個問題,也是本篇論文主要討論的問題,是否能夠在這樣的情況下(應用於現實世界,使用各種傳感器來感知數據,而不是通過數學表示),得到對抗樣本?


2、Methods Of Generating Adversarial Images

    在本節,主要介紹了一些生成對抗樣本的不同的方法。BIM(Basic Iterative Method) 以及ILLC(Iteratice Least-Likely Class Method) 便在本節介紹。

    在此,解釋一下,本節要用到的一個特殊的符號:
ClipX,ϵ{X}(x,y,z)=min{255,X(x,y,z)+ϵ,max{0,X(x,y,z)ϵ,X(x,y,z)}} Clip_{X,\epsilon}\{X'\}(x,y,z) = min\{255,X(x,y,z)+\epsilon,max\{0,X(x,y,z)-\epsilon,X'(x,y,z)\}\}
    在該公式中, x,y,z\ x,y,z 表示X處於三維空間中,也即圖片的寬度、高度、通道數。該公式的意思是限制生成的對抗樣本在X的 ϵ\ \epsilon 鄰域內。

    在這節也介紹了FGSM,但本文重點不在此,在這裏不多介紹。

    BIM是FGSM的拓展,作者進行了多次小步的迭代,並且在每一步之後都修剪得到的結果的像素值,來確保得到的結果在原始圖像的 ϵ\ \epsilon 鄰域內,公式如下:
X0adv=X,    XN+1adv=ClipX,ϵ{XNadv+αsign(XJ(XNadv,ytrue)} X_0^{adv} = X,\ \ \ \ X_{N+1}^{adv} = Clip_{X,\epsilon}\{X_{N}^{adv}+\alpha sign(\nabla_{X}J(X_{N}^{adv},y_{true})\}
    在實驗中,作者使用 α=1\ \alpha = 1 ,這意味着,在每一步我們改變每一個像素1點。作者選擇迭代次數爲 min(ϵ+4,1.25ϵ)\ min(\epsilon+4,1.25\epsilon)

    ILLC是BIM的拓展,ILLC將攻擊拓展到了目標攻擊,該迭代方法試圖讓對抗樣本被誤分類成一個特定的類,作者選擇與原圖像最不像的類作爲目標類,即:
yLL=argminy{p(yX)} y_{LL} = argmin_y \{p(y|X)\}
    爲了讓對抗樣本誤分類成 yLL\ y_{LL} ,我們就需要最大化 log p(yLLX)\ log \ p(y_{LL}|X) 。所以我們就需要在 sign{Xlog p(yLLX)}\ sign\{\nabla_X log\ p(y_{LL}|X)\}的方向上進行迭代,對於使用交叉熵作爲損失函數的網絡,其表達形式就是 sign{XJ(X,yLL)}\ sign\{-\nabla_X J(X,y_{LL})\} 。因此ILLC的表達形式爲:
X0adv=X,    XN+1adv=ClipX,ϵ{XNadvαsign(XJ(XNadv,yLL))} X_0^{adv} = X,\ \ \ \ X_{N+1}^{adv} = Clip_{X,\epsilon}\{X_{N}^{adv}-\alpha sign(\nabla_{X}J(X_{N}^{adv},y_{LL}))\}

    作者就三個方法進行了實驗比較,實驗方法如下:

    整個實驗是在ImageNet的驗證集(50000張圖片)上進行的,使用了一個預訓練的Inception v3的分類器。對每一個驗證集上的圖片,我們使用不同的方法和 ϵ\ \epsilon 生成對抗樣本,並且記錄在全部的50000張圖片上的分類正確率。之後,我們計算了在乾淨數據集上的正確率。結果如下:
在這裏插入圖片描述


3、Photos Of Adversarial Examples

1、對抗樣本的破壞率(Destruction rate)

    爲了研究任意變換對對抗樣本的影響,作者引入了破壞率的概念。即:在變換後,對抗樣本不再被誤分類的比例。定義如下:
d=k=1nC(Xk,ytruek)C(Xadvk,ytruek)C(T(Xadvk),ytruek)k=1nC(Xk,ytruek)C(Xadvk,ytruek) d = \frac{\sum_{k=1}^nC(X^k,y_{true}^k)\overline{C(X_{adv}^k,y_{true}^k)}C(T(X_{adv}^k),y_{true}^k)}{\sum_{k=1}^nC(X^k,y_{true}^k)\overline{C(X_{adv}^k,y_{true}^k)}}
     n\ n 表示圖片的數量, Xk\ X^k 表示第k個圖片, ytruek\ y_{true}^k 表示第k個圖片的正確類別, Xadvk\ X_{adv}^k 表示第k個圖片的對抗樣本,函數 T\ T 表示一種任意的圖片變換(如打印圖片後拍攝照片等)。
C(X,y)={1  if image X is classified as y0  otherwise C(X,y) = \left\{ \begin{array}{lr} 1\ \ \text{if image X is classified as y}\\ 0\ \ \text{otherwise} \end{array} \right.
    這個公式的意思就是,在被攻擊成功的圖片裏面,可以通過任意的變換使其不被攻擊成功的圖片的比例。


2、實驗部分

    作者進行了photo transformation,即:先將圖片與對抗樣本打印出來,然後拍照,分別得到轉換後的clean image和對抗樣本。

    注:實驗獲得的所有照片都是手動拍攝,拍攝的角度、光照、距離等都是隨機的,這就引入了破環對抗擾動的可能性。

    作者進行了兩組實驗,第一個實驗是使用的完整的數據集,即原始圖片包含會被正確分類和不會被正確分類的乾淨數據。第二個實驗是使用的預過濾的數據,即原始圖片都是被正確分類的乾淨數據,且對抗樣本都被誤分類,且置信度都大於0.8。


3、實驗結果

    實驗顯示,**FGSM相比於ILLC,對photo變換更加robust。**作者是這樣解釋的,ILLC使用的是更小的擾動,而這些擾動更容易被photo變換破環。

    還有一個沒有預料到的結果是,在一些情況下,使用預過濾的數據得到的破壞率比使用完整的數據的高。

    實驗結果如下:

在這裏插入圖片描述

在這裏插入圖片描述

4、Artificial Image Transformations

    除了一些自然的變換,作者還是用了一些人工變換進行試驗,如:改變亮度和對比度,高斯模糊、高斯噪聲,JPEG編碼。

    作者經過實驗發現,FGSM比ILLC更加robust,top-5的破壞率普遍比top-1的高,改變亮度和對比度並不會影響對抗樣本很多。


5、Conclusion

    在本文中,我們探討了爲在物理世界中運行的機器學習系統創建對抗樣本的可能性。我們使用通過手機拍攝的照片作爲Inceptionv3網絡的輸入。我們發現,有相當一部分的對抗樣本是成功的。這個發現,也就證明了,在現實世界中的對抗樣本是可行的。

    今後的工作,我們期待,會有一些使用其他的現實物體的攻擊,對抗不同種類的機器學習系統的攻擊,例如複雜的強化學習,在那些不能訪問模型的參數和結構的網絡上的攻擊,以及通過明確的爲現實世界的變換建模而得到的一個有更高成功率的針對現實世界的攻擊

6、附錄

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章