每日最新頭條.有趣資訊

神經網絡後門攻擊、對抗攻擊

機器之心原創

作者:Luo Sainan

編輯:Haojin Yang

IJCAI(國際人工智能聯合會議)是人工智能領域中的頂級綜合性會議,IJCAI2019 將於 8 月 10 日至 8 月 16 日在中國澳門舉辦,本次會議投稿量有 4752 篇,接收率為 17.88%。本文對 3 篇神經網絡安全相關論文進行了介紹。

近年來,深度學習在計算機視覺任務中獲得了巨大成功,但與此同時,神經網絡的安全問題逐漸引起重視,對抗樣本熱度持續不下,神經網絡後門攻擊也悄然興起。本文選取了 IJCAI2019 的 3 篇論文,從目標檢測對抗攻擊、實時對抗攻擊、神經網絡後門攻擊三個方面,為大家梳理最新進展。

論文 1:Transferable Adversarial Attacks for Image and Video Object Detection

論文 2:Real-Time Adversarial Attacks

論文 3:DeepInspect: A Black-box Trojan Detection and Mitigation Framework for Deep Neural Networks

論文 1:Transferable Adversarial Attacks for Image and Video Object Detection

鏈接:https://arxiv.org/abs/1811.12641

論文速覽:

目標檢測是深度學習大顯身手的領域。目前,主流的圖像目標檢測模型可大致分為兩類:基於 proposal 的模型和基於回歸的模型。前者通常包含 R-CNN,Faster-RCNN,Mask-RCNN 等,這些方法使用兩階段檢測步驟,首先檢測 proposal 區域,然後對它們進行分類以輸出最終檢測到的結果。基於回歸的經典模型有 YOLO 和 SSD,它們將目標檢測任務視為回歸過程,並直接預測邊界框的坐標。與圖像場景相比,圖像目標檢測視頻目標檢測將相鄰幀之間的時間互動結合到目標檢測過程中,通常在選定的關鍵幀上應用現有的圖像目標檢測器,然後通過時間互動傳播邊界框。因此,圖像目標檢測是視頻目標檢測的基礎。

目前針對圖像目標檢測的對抗攻擊方法較少,已有的方法具有兩大弱點:1. 遷移性較弱:在一種目標檢測方法上攻擊效果好,但在另一種方法上成功率較低。2. 計算成本較高:針對視頻數據處理,耗時較長。本文提出了一種開創性方法 UEA(Unified and Efficient Adversary),*可高效生成圖像和視頻目標檢測對抗樣本,並且對基於 proposal 的和基於回歸的兩大類目標檢測器同時有效*。作者提出了一種多尺度的 attention 特徵損失,以增強 UEA 的黑盒攻擊能力。與首個且此前最先進的針對圖像目標檢測的對抗攻擊方法 DAG(Dense Adversary Generation)相比,UEA 所需的運算時間約是它的千分之一。

圖 1.1 DAG 和 UEA 目標檢測對抗攻擊效果示例

第一行為原始圖像及其目標檢測結果;第二行和第三行分別為 DAG 方法和 UEA 方法添加擾動後的對抗圖片在兩種目標檢測方法上的效果;其中 DAG 擾動後使得 Faster R-CNN 未檢測出圖中目標,但是對 SSD 無影響;而 UEA 擾動後在 Faster R-CNN 上未檢測出目標,同時在 SSD 上檢測到的目標 car 被識別為 sofa

Tips:2017 年 Xie 等人提出的 DAG 對抗攻擊方法以 Faster R-CNN 為攻擊模型,首先為每個 proposal 分配一個對抗標簽,然後執行迭代梯度反向傳播以對 proposal 進行錯誤分類。由於 DAG 通過操縱類標簽來實現對抗樣本,專門用於對 proposal 進行錯誤分類,這意味著 DAG 的可遷移性很差,無法在基於回歸的檢測器上很好地工作。另外,DAG 是一種優化方法,每個圖像需要 150 到 200 次迭代才能完成對抗擾動,高計算成本使 DAG 無法應用於攻擊視頻目標檢測系統,因為視頻攻擊所需的運算量要高得多。

方法解讀:

圖 1.2 UEA 的訓練框架圖

U(Unified):「統一」表示可以同時攻擊當前的兩種代表性目標檢測模型。由於基於 proposal 和回歸的目標檢測器都使用特徵網絡作為後端,如 Faster-RCNN 和 SSD 都使用 VGG16,如果對從後端特徵網絡中提取的特徵進行攻擊,則兩種類型的目標檢測器都將受到影響。作者將該想法以多尺度特徵損失來實現,從多個層中攻擊特徵圖。從 DNN 的深度來看,DAG 的類損失應用於高級 softmax 層,attention 特徵損失用於低級後端層。作者在 GAN 框架內同時集成了低級特徵損失和高級類損失,以共同提高可遷移性。

E(Efficient):「高效」表示能夠快速生成對抗圖像,可以有效地處理視頻數據中的每個幀。作者利用生成機制而不是進行迭代優化,將該問題制定為生成對抗網絡(GAN)框架,並訓練生成器網絡生成對抗圖像和關鍵幀。由於測試步驟僅涉及前向網絡,因此運行時間很快。

UEA 訓練框架如圖 1.2 所示,總的損失函數由四個部分組成,GAN 的目標函數,用於約束對抗樣本和原圖相似性的 L2 損失函數,同時採用 DAG 方法中提出的高級類損失,和本文作者提出的低級多尺度 attention 損失,共同制定到了 GAN 的框架中,以聯合訓練生成器。

總損失函數:

GAN 的目標函數:

L2 損失:用於度量原始圖片和對抗樣本圖片之間的相似性

DAG 類損失:

其中 X 是 Faster R-cnn 網絡輸入圖像為 I 時提取的特徵圖,t_n 是第 n 個 proposal 區域,l_n 是 t_n 的 ground-truth 標簽,l^n 是從其他不正確的類采樣的錯誤標簽。

多尺度 attention 特徵損失:

Xm 是特徵網絡的第 m 層中提取的特徵圖。Rm 是隨機預定義的特徵圖,在訓練期間是固定的。為了欺騙探測器,只有前景物體的區域需要擾動。作者使用注意權重 Am 來測量 Xm 中的對象,如果用 sn 表示區域提案 tn 的得分,對於原始圖像中的每個像素,收集覆蓋該像素的所有 region proposal,並計算這些 proposal 的總和 S 得分 sn,然後將 S 除以 proposal 數 N 就可以獲得原始圖像中的 attention 權重,最後,通過將原始 attention 權重映射到第 m 個特徵層來獲得 Am。對於對象內的像素,它們的權重將具有較大的值。是兩個矩陣之間的 Hadamard 積。通過使 Xm 與 Rm 一樣接近,強製將 attention 特徵映射作為隨機排列,從而修改前景對象的特徵圖。其中 Rm 也可以被不同於 Xm 的其他特徵映射替換。在實驗中,作者選擇 conv3-3 之後的 Relu 層和 VGG16 中 conv4-2 之後的 Relu 層來修改它們的特徵圖。為了計算 Am,作者根據得分使用了前 300 個 region proposal。

在測試階段,生成器用於生成對抗圖像或視頻幀以欺騙不同的目標檢測器。作者參考了 pix2pix 的訓練方式,利用了 [1] 中的框架。其中,生成器是 encoder-decoder 網絡,判別器與 ResNet-32 相近。(【1】Xiao C , Li B , Zhu J Y , et al. Generating Adversarial Examples with Adversarial Networks[J]. 2018.)

最後,讓我們來看看本論文方法的實驗結果。與 DAG 方法相比,UEA 對圖像目標檢測攻擊的效果如 Table2 所示,在 Faster R-CNN 上表現和 DAG 持平,在 SSD300 上表現比 DAG 好的多,且用時僅 0.01s。UEA 方法在視頻目標檢測攻擊的效果如 Table3 所示,在 Faster-RCNN 和 SSD300 上分別使得 mAP 值下降了 0.4 和 0.44,且用時僅 0.3s,證明了本方法對視頻目標檢測實現了有效的攻擊。

小結:

本篇論文是 IJCAI2019 的 oral 論文,論文短小精悍,圖示豐富(圖像目標檢測、視頻目標檢測、消融實驗證明的對比圖詳見原文)。這篇論文通過提出多尺度特徵損失,結合先前目標檢測攻擊 DAG 方法中的類損失,共同提高了目標檢測對抗攻擊的遷移性。通過用 GAN 生成對抗樣本而非迭代優化的方式,加快了攻擊速度,使之也可以成功的用於視頻。

論文 2:Real-Time Adversarial Attacks

鏈接:https://arxiv.org/abs/1905.13399

論文速覽:

機器學習算法易受到對抗擾動攻擊,對輸入添加微小但精心設計的擾動可能使模型失敗。雖然現有的攻擊方法已經非常有效,但它們隻關注目標模型採用靜態輸入的情況,即攻擊者可以觀察整個原始樣本,然後在樣本的任何點添加擾動。但這些攻擊方法不適用於目標模型採用流輸入的情境,即攻擊者只能觀察過去的數據點並向輸入的剩餘(未觀察到的)數據點添加擾動。*本文提出了實時對抗攻擊的概念*,展示了如何通過設計實時擾動生成器來攻擊基於流的機器學習模型,並通過實時語音處理案例證明了所提出方法的有效性。

方法解讀:

圖 2.1 實時對抗攻擊示意圖

作者將實時對抗攻擊描述為強化學習問題, 使用深度強化學習架構,權衡 observation 和 action 空間, 連續使用觀察到的數據來近似未來時間點的最優對抗擾動。與傳統的基於優化的對抗性攻擊 (如 FGSM 和 DeepFool) 的不同之處在於該方法將原始樣本和相應的對抗性擾動作為未知非線性映射的輸入和輸出,然後使用 DNN 近似它,即用學習代替優化。

由於強化學習中的稀疏獎勵問題 (sparse rewards problem),即 agent 只能在最後獲得獎勵,並且很難根據觀察到的數據和過去的行為估計每個時間點的獎勵。因此作者通過使用非實時對抗性生成算法生成許多 observation-action 對的軌跡, 使用模仿學習策略來克服稀疏獎勵問題。

模仿學習是一種強化學習技術,通過模仿專家的行為來學習最優的策略。模仿學習要求專家產生一系列決策軌跡 , 每個軌跡由"obeservation-action"對的序列構成, 如τi = 。當給定 observation 時教 agent 該執行什麽樣的 action。我們可以從軌跡中抽取所有的專家"obeservation-action"對,形成新的數據集 D={(o11,a11 ),(o12,a 12),...,(o1n,a1n),(o21,a21 ),(o22,a22 ),...},通過將 o 作為輸入特徵,a 作為輸出 label,我們可以使用傳統的算法以一種監督學習的方式學習到策略π:a=g(ot)。在製作對抗樣本時,作者使用目前最先進的非實時對抗樣本技術作為專家來生成「sample-perturbation」對,通過給不同的原始樣本 xi,收集相應的輸出擾動 ri 作為決策軌跡 {(x1,r1),(x2,r2),...}。由於當前最好的非實時對抗樣本技術可以被簡單地分為兩類,第一類包含基於梯度的方法(如 FGSM、DeepFool),第二類是基於隨機優化的方法,使用哪類方法作為專家效果更好不僅取決於攻擊的成功率,還包括其它三種重要的評估指標:添加額外約束的靈活性,攻擊者的知識,專家的確定性。

具體的實時對抗攻擊算法分為 3 個階段,如圖 2.2 算法描述所示,第一步是生成 Expert Demonstrations,第二步是訓練實時對抗樣本生成器,第三步是執行實時對抗攻擊。

圖 2.2 實時對抗攻擊算法

隨後,作者使用本文提出的方法,發起了實時語音攻擊。如圖 2.3 所示,非實時對抗性攻擊方法需要一個「準備階段」,攻擊者在這個階段獲得完整的原始語音樣本,並設計特定的對抗性干擾,向原始樣本添加擾動,以建立惡意對抗樣本。在「攻擊階段」,攻擊者需要用目標系統初始化一個新的會話,然後重放準備好的惡意對抗樣本。而在對安全敏感的系統中啟動一個新會話並不總是容易的,甚至是不可能的。相比之下,實時對抗性攻擊方案不需要準備階段,而是連續處理用戶發出的語音,並發出對抗性擾動,這種擾動與原始信號以實時方式疊加。實際上,可以通過在目標設備附近放置一個裝有麥克風和揚聲器的設備 (例如智能手機) 並安裝實時攻擊軟體來實施攻擊。

圖 2.3(A)非實時語音對抗攻擊(B)實時語音對抗攻擊

作者在半黑盒設置中執行非目標攻擊,選擇基於隨機優化的對抗樣本技術作為專家,優化的候選解是由每個噪聲段的起始點組成的 5 元組,優化目標是最小化原始標簽的置信度分數。在每次迭代時,計算每個候選解的適應度,並使用標準差分進化公式產生新的候選解。實驗發現,實時對抗性擾動的攻擊成功率高達 43.5%(當擾動幅度為 1 時),約為最佳非實時專家的一半(90.5%),並且明顯優於隨機噪聲。對於大多數擾動幅度,實時攻擊的攻擊成功率是專家的攻擊成功率的 30%-50%。通過分析,有兩種主要類型的錯誤導致專家和實時對抗生成器之間的性能差距:預測錯誤和實時決策錯誤。由於提出的實時生成器本質上是試圖在部分輸入和輸出之間建立映射,而專家採用的隨機優化算法的輸出是具有不確定性的,這使得學習輸入和輸出之間的映射更加困難。所以即使在實時生成器觀察到完整數據之後,預測仍然具有一定量的預測誤差。

小結:

本篇論文結構一分為二,前半部分從理論抽象層面講解實時對抗攻擊的原理,後半部分以實時語音識別為研究案例進行攻擊實驗。本篇論文首次提出了實時對抗攻擊的概念,不僅可以用於實時語音處理領域,還可以用於股市金融貿易系統等採用流輸入的系統,雖然目前實時攻擊的效果還不能與非實時對抗攻擊媲美,但如何採用更先進的強化學習工具來提高決策過程的表現,當實時對抗性擾動生成器意識到它先前做出了錯誤的決定時,是否可以調整其未來擾動進行彌補,在防禦方面是否能夠保護實時系統免受這種實時對抗性攻擊等是未來研究的方向。

論文 3:DeepInspect: A Black-box Trojan Detection and Mitigation Framework for Deep Neural Networks

鏈接:http://www.aceslab.org/sites/default/files/DeepInspect.pdf

論文速覽:

訓練一個高準確率的 DDN 模型是耗時耗計算資源的,因此用戶往往會從第三方中獲取預訓練的深度學習模型。比如,Caffe Model Zoo 就是一個公開的與用戶共享預訓練模型的典型平台。而這種第三方 DNN 訓練的不透明性,使得神經網絡容易遭受特洛伊攻擊。攻擊者能夠通過打斷訓練過程注入惡意行為,訓練出帶後門的神經網絡模型,並將後門模型上傳到平台上供用戶使用。帶後門的模型具有如下行為:當輸入為乾淨樣本時,模型將輸出正確的分類結果,當輸入樣本帶有攻擊者指定的 trigger(觸發器)時,模型將輸出攻擊者指定的目標類別。比如,右轉交通標誌牌上添加 trigger 後,將會被後門模型預測為左轉標誌牌。這為自動駕駛、人臉識別等領域帶來潛在危害。因此在使用模型之前檢查預先訓練的 DNN 是否已經被木馬化是必不可少的。

本文的目標是解決未知 DNN 受到特洛伊攻擊的安全問題,並確保安全的模型部署。作者提出了第一個後門檢測框架 DeepInspect,在沒有乾淨的訓練數據或真實參考模型的幫助下,檢查預先訓練的 DNN 的安全性,使用條件 GAN 學習潛在觸發器的概率分布,從而檢索後門插入的足跡,並且通過模型修補實現有效的木馬緩解。大量實驗表明,與以前的工作相比,DeepInspect 可提供卓越的檢測性能和更低的運行時間開銷。

圖 3.1 DeepInspect 木馬檢測的直觀思想

方法解讀

特洛伊木馬插入過程可以被視為在合法數據點附近添加新的數據點並將其標記為攻擊目標。從原始數據點到惡意數據點的移動是後門攻擊中使用的觸發器。作為特洛伊木馬插入的結果,可以從圖 3.1 中觀察到,將合法數據轉換為屬於攻擊目標類別的樣本所需的擾動與相應的良性模型中相比較小。如何理解呢?考慮三分類問題,設ΔAB 表示將 A 類中的所有數據樣本移動到 B 類所需的擾動,ΔA 表示將所有其他類中的數據點變換為 A 類的擾動:ΔA= max(ΔBA,ΔCA)。具有攻擊目標 A 的特洛伊模型滿足:ΔA

圖 3.2 DeepInspect 框架

如圖 3.2 所示,DeepInspect(DI)包含三個主要步驟:

1. 利用模型反演方法來恢復訓練數據集。假設 DNN 有 n 個輸出類別,DeepInspect 首先採用模型反演 (MI) 方法來生成一個包含所有類別的替代訓練集 。

2. 利用生成模型來重建特洛伊木馬攻可能使用的觸發器圖案。由於攻擊目標(受感染的輸出類)對於防禦者是未知的,因此使用條件生成器 G(z,t) 來有效地構建對不同攻擊目標的觸發器。其中 z 是一個隨機噪聲向量,t 是一個目標類別。G 被用於訓練來學習觸發器分布,這意味著被檢測的 DNN 應該在反向數據樣本 x 上疊加 G 的輸出來預測攻擊目標 t。條件 GAN 的訓練過程如圖 3.3 所示,訓練目標為 D(X+G(z,t))=t,D 是待檢測的 DNN,t 是攻擊目標,x 是來自模型反演獲得的近似數據分布 Px 的樣本,觸發器是條件生成器的輸出。

圖 3.3 條件 GAN 訓練過程

損失函數的解釋如下:

一個負對數似然損失來量化 G 生成的觸發器的質量。

一個對抗性損失 LGAN 確保 x_t=x+G(z,t) 不能被判別器從原始圖中識別出來。

在 L_1 范數上添加一個 soft hinge loss 來限制 G 輸出的大小,並設置一個防禦者選擇的閾值。

將它們加權求和就是總的損失,其中 r1,r2 為超參數。

3. 在使用 cGAN 為所有輸出類生成觸發器之後,DeepInspect 將特洛伊木馬檢測制定為異常檢測問題。收集所有類別中的擾動統計數據,將擾動程度 (變化幅度) 作為異常檢測的檢驗統計量。假設檢驗和魯棒性統計來檢測觸發擾動中異常值的存在,使用雙中值絕對偏差(Double Median Absolute Deviation,DMAD)作為檢測標準。

在介紹了方法之後,我們來看看實驗。作者首先使用不同的 Benchmark 數據複現了兩種典型的特洛伊攻擊。1. 使用 MNIST 手寫數字數據集和 GTSRB 交通標誌牌數據集在對應的 DNN 分類模型上實現了 BadNets 攻擊。2. 使用添加了方形 trigger 和水印 trigger 的 VGGFace 人臉數據集在 VGG16 和 ImageNet1000 在 ResNet-18 上實現了 TrojanNN 攻擊。

BadNet 使用特定的 trigger,如在手寫數字圖像右下角插入白色方塊,在交通標誌牌上插入炸彈、花朵的小圖。TrojaNN 通過使目標 DNN 中的選定神經元達到高激活值而生成 trigger,如內部五顏六色的方形和水印。示意如圖 3.4。

圖 3.4 插入 trigger 後的圖像舉例。(a)Badnet 中在 MNIST 數據集中插入的方形 trigger (b)Badnet 中在交通標誌牌上插入的黃色方形 trigger (c)Trojann 在 VGGFace 數據集上插入的方形 trigger (d)Trojann 在 VGGFace 上插入的水印 trigger. (a)(b) 來自論文 Badnets: Identifying vulnerabilities in the machine learning model supply chain. (c)(d) 來自論文 Trojaning attack on neural networks

作者將乾淨數據集和篡改後的數據(即添加了 trigger 的乾淨數據)混合,訓練出帶後門的 DNN,達到 95% 以上的特洛伊激活率 (TAR),設置和結果如 Table 1 所示。

為了驗證異常檢測的可行性,作者使用前述 DeepInspect 的三個步驟,分別測量了良性模型和特洛伊模型的偏差因子 (df,deviation factor),結果如圖 3.5(a) 所示。如果待檢測模型的偏差因子大於截止閾值,則確定其被「感染」。使用顯著性水準α = 0.05(對應於截止閾值 c = 2),對於所有感染模型,DeepInspect 產生的 df> 2;對於所有良性模型,df

為了證實 DeepInspect 使用的直觀思想 (圖 3.1),作者測量了 DeepInspect 的條件生成器恢復的觸發器的擾動水準,並在圖 3.5(b) 中可視化它們的分布。可以觀察到,受感染標簽的擾動幅度(由三角形表示)確實顯著小於未感染類別的擾動幅度。

圖 3.5(a) 良性模型和特洛伊模型的偏差因子,紅色虛線表示α=0.05 時的決策閾值 (b) 特洛伊模型中針對感染和未受感染的標簽生成 trigger 的擾動程度

DeepInspect 通過訓練條件生成器來學習潛在觸發器的概率密度分布,從而有效地檢測到後門攻擊的發生。換句話說,一旦我們完成條件 GAN 的訓練,我們就有了一個能夠為任何目標類構建不同 trigger 圖案的生成器,這有助於進行對抗學習,可用於提高良性模型的魯棒性,或「修補」受感染的 DNN 以禁用特洛伊木馬攻擊。作者將反向訓練集 和修補後的數據集 混合,微調 Trojaned DNN 來執行模型修補,修補結果如 Table2 所示。可以看到,作者提出的特洛伊木馬緩解方案有效地降低了觸發器的激活率,同時保留了模型在正常數據集中的表現。通過修補 df 小於等於 DeepInspect 異常檢測截止閾值 c 的模型,從而能夠通過模型的魯棒性檢查進行安全部署。作者還強調,如果有乾淨的數據,修補後的特洛伊激活率可以進一步降低到∼3%。

小結:

針對神經網絡的後門攻擊方法已經趨於多樣化,現有的防禦方法多是在已知模型為後門模型的前提下降低後門攻擊的成功率,而如何檢測模型是否為後門模型的論文極少,此篇論文就是其中之一。此前,神經淨化(Neural cleanse: Identifying and mitigating backdoor attacks in neural networks)提出的後門檢測方法依賴於乾淨的訓練數據,然而這樣的原始訓練數據對於防禦者來說難以獲取,因此應用場景有所受限。而本論文利用模型反演方法生成可替代原始訓練數據的訓練數據,有效解決數據問題,是一大亮點。此外,通過擾動程度來檢測後門插入痕跡這一思想直觀易懂,檢測後通過緩解方案確實有效降低了觸發器的激活率,是神經網絡後門攻擊與防禦領域值得關注的一篇論文。

作者介紹:羅賽男,西安電子科技大學計算機學院研究生,主要研究神經網絡安全、驗證碼安全。關注學術前沿,喜歡文字分享,希望通過機器之心和大家一起學習,共同進步。比心 (ノ゚゚)ノ!

IJCAI 2019 其它相關論文:

Adversarial Examples for Graph Data: Deep Insights into Attack andDefense: Huijun Wu, Chen Wang, Yuriy Tyshetskiy, Andrew Docherty, KaiLu, Liming Zhu

Data Poisoning against Differentially-Private Learners: Attacks and Defenses: Yuzhe Ma, Xiaojin Zhu, Justin Hsu

Data Poisoning Attack against Knowledge Graph Embedding: Hengtong Zhang, Tianhang Zheng, Jing Gao, Chenglin Miao, Lu Su, Yaliang Li, Kui Ren

Robust Audio Adversarial Example for a Physical Attack: Hiromu Yakura, Jun Sakuma

Adversarial Attacks on Neural Networks for Graph Data: Daniel Zügner, Amir Akbarnejad, Stephan Günnemann

本文為機器之心原創,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

獲得更多的PTT最新消息
按讚加入粉絲團