安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

機器之心發表於2019-08-12
隨著機器學習模型能力越來越強、效率越來越高,它已經逐步應用到各種實際場景中。但是 AI 模型本身也會面臨很多安全問題,最受關注的就是對抗樣本,它能欺騙深度模型。這對於很多場景都是毀滅性的,包括身份認證、城市大腦和醫療健康等。
為了抵禦未來 AI 面臨的安全風險,阿里安全聯合清華大學,以對抗樣本為核心發起了 AI 安全挑戰者計劃。透過結合內容安全等場景,阿里安全從文字、影像、影片、聲音等多個領域針對對抗樣本賞金召集「挑戰者」,共同打磨安全的機器學習模型,共同建立挑戰者的小社群。

安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

什麼是安全 AI 挑戰者計劃
阿里安全不僅關注安全也關注機器學習演算法,成員包括演算法工程師與原來的白帽駭客。演算法工程師熟悉各種機器學習演算法,而白帽駭客瞭解怎樣攻擊各種系統,兩者結合下,阿里安全團隊就特別關心怎樣找出目前機器學習演算法的漏洞,並構建更魯棒和安全的 AI 系統。
對於白帽駭客來說,探索怎樣找出系統的漏洞並提升安全性的過程是最有意思的。那麼遷移到機器學習上,模型的風險有多大、漏洞在哪,到底能不能解決就成了「機器學習白帽駭客」的興趣所在。隨著 AI 模型部署到越來越廣的領域,機器學習時代的白帽駭客與模型安全就顯得極為重要了。
整個挑戰者計劃希望每一期都能出現一些新的攻擊方法,也會催生新的防禦方法,從而真正把對抗樣本理論化、體系化。此外,這也得益於阿里安全團隊經常會解決這類問題,因此會產生很多符合實際場景的挑戰。
安全 AI 挑戰者計劃:https://tianchi.aliyun.com/markets/tianchi/AIC
阿里表示,整個挑戰者計劃也會存在天時地利人和這些優勢:天時即 AI 領域非常流行;地利即阿里在安全領域積累的技術;人和即阿里與清華大學等其他研究安全領域團隊的誠意合作。
因為有這些優勢,阿里安全團隊希望將業內的模型安全問題體系化、標準化,並線上上形成一個優秀的社群。這個社群能凝聚對抗樣本乃至 AI 安全方面的研究者與開發者,從而共同創造一些能解決實際問題的優秀方案,從而培養出 AI 安全領域真正的人才。
當然,整個挑戰者計劃有豐厚的獎金,從而激勵大家構建更加完美的解決方案。例如在第一期人臉對抗識別中,賽題組提供了 6.8 萬的現金獎金,第一名能獲得高達 3 萬的現金獎勵。
什麼是人臉對抗識別
第一期挑戰賽主題是人臉對抗識別,透過對抗樣本攻擊人臉識別模型,並期待系統識別錯誤。
其中對抗樣本是指攻擊者透過向真實樣本中新增人眼不可見的噪聲,導致深度學習模型發生預測錯誤的樣本,如下圖所示給定具體的人臉,攻擊方給圖片新增了微小的噪聲擾亂,儘管人眼是很難區分的,但是模型卻以非常高的機率將其識別為其他人。

安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

一般而言,對抗攻擊可以分為白盒/黑盒攻擊、定向/非定向攻擊等方式。如果攻擊者知道被攻擊物件的模型架構和引數等資訊,那麼就屬於白盒攻擊,如果攻擊方完全不知道這些資訊,那麼就屬於黑盒攻擊。此外,如果攻擊方需要令目標模型識別為特定的人或物,例如指定「貓」的對抗樣本需要識別為「狗」,那麼這就是定向攻擊,反之則為非定向攻擊。
在安全 AI 挑戰者計劃第一期中,選手需要完成黑盒非定向攻擊,並希望在儘可能小的擾動下騙過系統。簡單說你把下載下來的圖片進行規定範圍內的改動,上傳後能讓系統識別錯誤就行。
賽題與資料
此次比賽模擬人臉場景下的對抗攻擊。在不知道模型詳細資訊的前提下,選手需要線上下對測試樣本進行修改,然後提交至線上做攻擊測試。這些測試樣本都是從人臉識別評測集 LFW(Labeled Faces in the Wild)中隨機取樣的,一共 712 張不同的人臉影像。
人臉識別一般分為檢測和分類兩部分,其中第一步會檢測人臉的特徵點,並做對齊以令人臉在影像塊上的朝向、和位置都比較統一,然後第二步才是在對齊的基礎上做分類。挑戰賽中所有人臉影像都經過 MTCNN 對齊並縮放到 112*112 尺寸,這就表示挑戰賽主要測評對抗樣本在識別上的效能,而不考慮對齊這一步驟。
如下是測試影像的示例,每一張影像的檔名或 ID 都是確定的:

安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

對應影像檔案會有一個 CSV 描述檔案,它標註了每張影像的 ID、檔名與影像識別標註。此外系統在評估對抗樣本效果時,它也是根據這個描述檔案來讀取的,因此我們需要保證影像尺寸、ID 和檔名保持不變。

安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

在上傳 712 張對抗樣本後,系統就會評估它們的效果。一般而言,評估維度主要有兩個,即對抗攻擊的成功率與對抗樣本的成本。換而言之,對抗攻擊的成功率越高越好,樣本加入的對抗噪聲越小越好。為了結合這兩個指標,賽題組主要透過「擾動量」進行評估,擾動量越小,對抗樣本的效果就越好。
具體而言,對抗樣本所有畫素的擾動量會限制在+-25.5(RGB 值)以內,超過了也會直接做截斷。如果對抗樣本沒成功欺騙人臉識別系統,那麼擾動量直接設定為最大;如果成功地騙過識別系統,那麼就計算對抗樣本與原樣本之間的 L2 距離,從而確定擾動量
所以怎樣才能欺騙人臉識別系統?
因為這一次競賽並不提供訓練樣本、基線模型,且測試圖片也是從公開的 LFW 資料集中取樣的,所以阿里安全建議選手可以在 LFW 上訓練開源的人臉識別模型,然後基於這個已知模型做對抗攻擊。因為這種攻擊是白盒的,所以用基於梯度或迭代的方式就能生成對抗樣本。這些對抗樣本再傳入比賽系統就能實現黑盒攻擊。
值得注意的是,因為比賽的人臉識別系統是多個模型共同預測的結果,因此它對對抗樣本的穩健性提出了更高的要求。也就是說一個對抗樣本需要成功欺騙多個識別模型,這種通用、可遷移的對抗攻擊還是挺難實現的。
對抗攻擊
所以怎樣做對抗攻擊?目前比較流行的攻擊方法主要是基於梯度和迭代的方法,其它很多優秀與先進的攻擊方法都基於它們的主要思想。這一類方法的主要思想即希望找到能最大化損失函式變化的微小擾動,透過給原始輸入加上這種微小擾動,模型就會產生誤判。
通常簡單的做法是沿反向傳播計算損失函式對輸入的導數,並根據該導數最大化損失函式,這樣攻擊者就能找到最優的擾動方向,並構造對抗樣本欺騙該深度網路。
例如 Goodfellow 在 2014 年提出的 Fast Gradient Sign Method(FGSM),如果我們令θ表示模型的引數、x 和 y 表示輸入與輸出、J(θ, x, y) 為訓練神經網路的損失函式,那麼我們可以透過梯度上升,在當前θ值的鄰域搜尋影響最大的擾動:

安全AI挑戰者計劃,邀你共同成長為DL時代的「模型駭客」

FGSM 能透過反向傳播快速計算損失函式針對樣本的梯度,這個梯度表示當樣本變化一丟丟時損失函式的變化趨勢,因此我們可以找到令模型損失增加最多的微小擾動η。其它如基本迭代方法(BIM)會使用較小的步長迭代多次 FGSM,從而獲得效果更好的對抗樣本
當然,僅僅是白盒攻擊的話還不會引起較大的影響,可怕的是對抗樣本具有遷移性。可遷移的攻擊指的是我們不知道攻擊目標使用什麼樣的機器學習模型、具體引數和訓練集等,但我們可以透過類似資料集訓練自己的模型並構建對抗樣本,這些對抗樣本因為可遷移性很可能可以欺騙未知的目標模型。從自己的白盒攻擊遷移到挑戰賽的黑盒攻擊,也是這次比賽的一個核心重點。
隨後在 2016 年,Yanpei Liu 等研究者提出一種基於模型整合的攻擊方法,他們表示當對抗樣本能欺騙整合的多個已知模型時,它有非常大的可能效能欺騙未知的模型。整合方法在實際比賽中非常重要,我們可以整合多個常見的卷積神經網路以構建對抗樣本,如 Inception v4、ResNet 和 DenseNet 等。正因為整合能顯著提升對抗樣本的可遷移性,我們才能在不獲取任何目標系統的資訊下完成攻擊。
此外如前所述,挑戰賽會使用多個識別模型,因此採用整合方法才能真正取得好成績。當然,我們還能透過其它方式增強對抗樣本的可遷移性,從而加強攻擊效果。
特殊攻擊手段
在這一次挑戰賽中,它攻擊的都是人臉識別模型,因此我們還能用一些特殊手段來發動攻擊。阿里安全表示,與通用的影像分類模型不同,人臉識別模型會比較關注人臉關鍵點,因此選手也能從這個角度出發構建新的攻擊方式。
例如我們可以採用通用的對抗攻擊辦法,並在此基礎上針對人臉識別任務的特徵點等資訊做最佳化,從而限制攻擊模型對樣本畫素修改的數量,以降低擾動水平提高最終的評分。
還有同學問,PS 能作為挑戰工具嗎?水印和資訊隱藏技術是否也適用於比賽?當然可以,在今年的 IJCAI 競賽中就有中科大的選手使用了獨特的防禦技術獲得了防禦賽道的第一名讓人大開眼界。AI 模型無法判斷攻擊方式,只認擾動量這些直接結果。劍走偏鋒也是攻防挑戰的精髓,期待你用腦洞大開的方式讓世界為你喝彩。
參考資源
目前網際網路上有多個開源的對抗攻擊原始碼,例如 cleverhans、foolbox 等,它們都是非常流行的專案。如果選手希望找到更多的開源方法,也可以直接在 GitHub 上搜尋。
  • https://github.com/tensorflow/cleverhans

  • https://github.com/bethgelab/foolbox

相關文章