對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

思源發表於2018-08-24

同樣在去年,該團隊在 NIPS 2017 AI 對抗性攻防競賽的三項比賽任務中(有/無特定目標攻擊;攻擊檢測),全部獲得冠軍,戰勝了包括史丹佛、約翰霍普金斯大學等世界著名高校在內的 100 多支代表隊,在人工智慧模型的魯棒性和安全性應用方面邁出了重要一步。

在今年的 CADD CTF 攻防賽中,選手需要根據隨機匹配戰隊的指定影象,對其他戰隊發動「定向對抗樣本」攻擊,同時還要防禦來自其他團隊的「對抗樣本」。這種對抗攻擊是完全黑盒的,各戰隊無法獲取任何關於對方模型的資訊,例如損失函式、模型架構、輸入-輸出樣本對等等。

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

對抗攻擊

對抗樣本是指攻擊者通過向真實樣本中新增人眼不可見的噪聲,導致深度學習模型發生預測錯誤的樣本,如下圖所示給定一張熊貓的影象,攻擊方給圖片新增了微小的噪聲擾亂,儘管人眼是很難區分的,但是模型卻以非常高的概率將其誤分類為長臂猿。隨著機器學習的大規模應用,這類誤差對於系統安全顯得尤為重要,CAAD 競賽正是希望能探討如何加強系統對於這類對抗樣本的魯棒性。

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

上圖為 Ian Goodfellow 在 14 年展示的對抗樣本,這種對抗樣本是通過一種名為 FGSM 的演算法得出。

 一般而言,對抗攻擊可以分為白盒攻擊、黑盒攻擊、定向攻擊,以及通用攻擊。其中白盒攻擊是指攻擊者能完全訪問到被攻擊模型,也就是說攻擊者在知道模型架構和引數的情況下製造能欺騙它的對抗樣本。而黑盒攻擊則表明攻擊者只能觀察到被攻擊模型的輸入與輸出,例如通過 API 攻擊機器學習模型可以視為一個黑盒攻擊,因為攻擊者只能通過觀察輸入輸出對來構造對抗樣本

在 CAAD CTF 競賽中,選手所需要採用的是定向的通用攻擊。其中對於定向攻擊,攻擊者希望能夠造出對抗樣本來欺騙目標系統誤分類為特定的類別,例如我們可能希望構建一個對抗樣本,它能令影象識別系統將其誤分類為「小狗」等特定的類別。對於通用攻擊而言,攻擊者嘗試設計一種影象擾動轉換,它能在不知道被攻擊系統任何資訊的情況下欺騙它。因此在 CAAD CTF 競賽中,選手不僅不能訪問到對方的模型架構與引數,同時也不能訪問到被攻擊系統的輸入與輸出樣本對。

目前比較流行的攻擊方法主要是基於梯度和迭代的方法,其它很多優秀與先進的攻擊方法都基於它們的主要思想。這一類方法的主要思想即希望找到能最大化損失函式變化的微小擾動,這樣通過給原始輸入加上這一微小擾動,模型就會誤分類為其它類別。通常簡單的做法是沿反向傳播計算損失函式對輸入的導數,並根據該導數最大化損失函式,這樣攻擊者就能找到最優的擾動方向,並構造對抗樣本欺騙該深度網路。

例如 Goodfellow 在 2014 年提出的 Fast Gradient Sign Method(FGSM),如果我們令θ表示模型的引數、x 和 y 表示輸入與輸出、J(θ, x, y) 為訓練神經網路損失函式,那麼我們可以在當前θ值的鄰域線性逼近損失函式,並獲得最優的最大範數約束擾動:

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

如上圖所示將最優的擾動加入原輸入「熊貓」,就能令系統將其誤分類為「長臂猿」。FGSM 能通過反向傳播快速計算梯度,並找到令模型損失增加最多的微小擾動η。其它如基本迭代方法(BIM)會使用較小的步長迭代多次 FGSM,從而獲得效果更好的對抗樣本

當然,僅僅是白盒攻擊的話還不會引起較大的影響,可怕的是對抗樣本具有遷移性,這也是令 CAAD CTF 這種定向通用攻擊可行的原因。可遷移的攻擊指的是我們不知道攻擊目標使用什麼樣的機器學習模型、具體引數和訓練集等,但我們可以通過類似資料集訓練自己的模型並構建對抗樣本,這些對抗樣本因為可遷移性很可能可以欺騙未知的目標模型。

隨後在 2016 年,Yanpei Liu 等研究者提出一種基於模型整合的攻擊方法,他們表示當對抗樣本能欺騙整合的多個已知模型時,它有非常大的可能效能欺騙未知的模型。TSAIL 團隊同樣表示整合方法在實際比賽中非常重要,他們整合多個常見的卷積神經網路以構建對抗樣本,如 Inception v4、ResNet 和 DenceNet 等。正因為整合能顯著提升對抗樣本的可遷移性,他們才能在不獲取任何目標系統的資訊下完成攻擊。

除此之外,TSAIL 團隊表示他們會通過動量提升對抗性攻擊力。他們表示部署深度學習模型之前,對抗性攻擊是評估其穩健性的重要替代物之一。然而,大多數現有的對抗性攻擊能夠成功迷惑黑盒模型的概率很低。為了解決這一問題,他們提出了一種以動量為基礎的具有廣泛級別的迭代演算法增強對抗攻擊能力。通過將動量項整合到攻擊迭代過程,模型可以獲得更穩定的更新方向,避免在迭代過程中出現劣質的區域性最大值,並且同時產生更多的可遷移對抗樣本。為進一步提高黑盒攻擊的成功率,他們將動量迭代演算法應用到一個模型集合中,從而表明這種受訓模型即便有很強的防禦能力,在他們的黑盒攻擊面前仍然束手無助。

對抗防守

清華大學 TSAIL 團隊同樣還重點關注於構建更魯棒的對抗樣本防禦模型,在這次競賽中,TSAIL 團隊在定向攻擊其它模型的同時,還需要防禦其它參賽者的對抗樣本攻擊。TSAIL 實驗室前面曾提出兩種防禦對抗樣本的方法,它們都是嘗試修正損失函式以獲得更好的穩定性。

在論文 Towards Robust Detection of Adversarial Examples 中,龐天宇等研究者表示可以強制令 DNN 分類器將所有正常樣本對映到低維流形中相近的地方,因此當模型接收到對抗樣本時,它就能輕鬆將其與正常樣本區分開來。在這一篇論文中,他們提出一種名為反交叉熵(reverse cross-entropy,RCE)的損失函式,並表明在訓練中最小化 RCE 損失函式將會鼓勵深度神經網路學習能區分對抗樣本和正常樣本的隱藏空間。

研究者在論文中使用下圖展示了為什麼將正常樣本對映到低維流形中的近鄰能抵抗對抗樣本。其中 non-ME 為歸一化的非最大值資訊熵,它計算的是除去最可能的預測後,其它類別預測概率的資訊熵,這種度量相對於使用 Softmax 更能區分對抗樣本。如下圖 1 a 所示為神經網路最後一層隱藏空間的分類邊界,non-ME 會將正常樣本約束到一起。

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

圖 1:a 中三條黑色實線為分類器的決策邊界,藍色虛線為 non-ME = t 的等值線。b 和 c 為最後隱藏層向量的 t-SNE 視覺化,模型都是在 CIFAR-10 上訓練的 ResNet-32,只不過 b 使用的是一般的交叉熵損失函式,c 使用的是 RCE。

如上所示,z_0 為原始正常樣本,它被對映為反向延長線的近鄰,即藍色的等值線之間。當我們不使用對抗樣本檢測度量時,z_1 相對於 z_0 位於決策邊界的附近,它可能是非常成功的對抗樣本。但是當我們使用 non-ME 作為對抗樣本檢測度量時,z_1 可以很容易被過濾掉,因為它不在真實樣本的近鄰。在這種情況下,成功的對抗樣本會出現在 z_2 的位置,其中分類邊界與近鄰邊界出現重合。

研究者們表示,如果想要在最後一層的隱藏空間達到這種效果,我們就需要在訓練中使用 REC 損失函式。如下展示了 REC 損失函式,其中 R_y 表示反標籤向量,即第 y 個標註值設定為零、其它類別值為 1/(L-1)。此外,F(x) 為模型的預測值,因此 RCE 度量的是反標籤向量與預測值之間的交叉熵

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

通過在訓練過程中最小化 RCE 損失函式,該網路鼓勵分類器在正確的類別上返回較高的置信度,而在錯誤類別上返回均勻分佈。且還會進一步令分類器將同一類別的正常樣本在低維流形上聚在一起,即在神經網路最後一層的隱藏空間上分離正常樣本與對抗樣本。此外,這一新型損失函式可以在理論上證明其收斂性,同時它如同交叉熵損失函式一樣使用一般的 SGD 進行訓練。

在另一篇論文 Max-Mahalanobis Linear Discriminant Analysis Networks 中,清華大學 TSAIL 團隊的研究者探討了另外一種抵禦對抗樣本的方法。具體而言,他們定義了一種特殊的高斯混合分佈 Max-Mahalanobis,並且理論性地證明了如果輸入分佈是 MMD,那麼線性判別分析(LDA)對於對抗樣本有非常好的魯棒性。

基於這一發現,他們提出了 MM-LDA 網路。簡單而言,該網路將複雜的輸入資料分佈對映到服從 Max-Mahalanobis 分佈的隱藏特徵空間,並使用 LDA 做最後的預測。因此該網路重要的是理解 Max-Mahalanobis 分佈,以及為什麼它能防禦對抗樣本

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

如上展示了根據不同類別數 L 所構建的 Max-Mahalanobis 分佈,其中μ為不同高斯分佈的均值,且它們分別為圖形的頂點。MMD 中高斯分佈的方差固定為單位方差,且沒有其它特殊的要求。但 MMD 中均值μ的分佈需要滿足一些條件,即要求相距最近的兩個μ之間的距離最大,這樣不同的類別就要求分佈地最開。

如上當類別 L 為 3 的時候,我們希望約束神經網路的最後一層將屬於類別 i 的正常樣本都對映到分佈 N(z|μ_i, I) 內,其中μ_1、μ_2 和μ_3 需要儘可能佈散開以逼近等邊三角形。形式化而言,我們需要最大化 μ 之間的最小距離,即 max{min(D_12, D_13, D_23)},其中 D_12 表示μ_1 和μ_2 之間的距離。

因為 MMD 令各類別均值的間隔近似最大,因此神經網路將每一個類別都對映到相互遠離的高斯分佈內,這樣再通過線性判別分析就能快速作出最後的預測。整體而言,研究者們提出的 MM-LDA 網路首先會有一個深度網路將輸入資料 x 對映到隱藏特徵表徵 z,並迫使 z 的分佈 P(z) 服從於 MMD,然後再在 z 上使用 LDA 做預測。

為了迫使神經網路最後一層隱向量 z 服從 Max-Mahalanobis 分佈,我們需要限制標籤的分佈為:

對抗樣本攻防戰,清華大學TSAIL團隊再獲CAAD攻防賽第一

其中每個類別的先驗概率 π 與均值 μ* 都是根據 MMD 預定義的,再根據上式而不是常用的 Softmax 函式來預測類別就相當於引入了 Max-Mahalanobis 分佈。最後在訓練過程中,只要最小化標註樣本與模型預測 P(y|z(x; θ)) 之間的交叉熵損失函式就能令 z 近似服從於 MMD。此外,由於整個網路同樣僅需要修改損失函式,它可以直接應用於不同的深度模型來獲得更好的魯棒性。

清華大學人工智慧研究院 TSAIL 團隊

除了這兩份關於魯棒性機器學習系統的研究,實驗室在對抗攻擊與防守等 AI 安全領域還有非常多的研究。例如在針對影象識別的對抗攻防外,AI 安全還包括影象場景分割、視訊分類、文字和圖資料上的攻防,這一次比賽只是 AI 安全領域中比較小的一部分。除此之外,實驗室還做了大量關於概率機器學習方面的研究,例如貝葉斯機器學習等,這一方面的研究成果很多都體現在「珠算(ZhuSuan)」這一開源庫上。

團隊在可理解的人工智慧領域擁有先進技術積累,針對 AI 決策、AI 理解、AI 安全等領域技術領先。2017 年間,團隊成員獲得 Google 主辦的 NIPS 人工智慧安全攻防競賽全部三個專案世界第一;獲得 Kaggle 資料科學碗 2017 第一名(50 萬美元獎金);獲得創新工場 AI Challenge 2017 影象中文描述專案第一名;2018 年獲得 VizDoom 機器人槍戰比賽第一名。課題組所開發的「珠算(ZhuSuan)」貝葉斯深度學習平臺在國際人工智慧和機器學習領域產生廣泛影響。

相關文章