Ian Goodfellow等人提出對抗重編程,讓神經網路執行其他任務
來自專欄機器之心28 人贊了文章
選自arXiv,作者:Gamaleldin F. Elsayed、Ian Goodfellow、Jascha Sohl-Dickstein,機器之心編譯。
近日,谷歌大腦研究者 Ian Goodfellow 等人提出一種新型對抗攻擊,可對已訓練的網路進行重新編程,使之執行其他多種任務。
對抗樣本的研究通常受攻擊者風險的驅動,攻擊者旨在通過對模型輸入的微小改變引起模型預測錯誤。此類攻擊可使自動駕駛汽車對貼了貼紙(小型 L_0 擾動)的停車牌視若無睹 [1],或導致保險公司的損傷模型(damage model)從被精心改動的損傷圖片(小型 L_∞擾動)上得出的賠償金額高於實際情況。基於該背景,研究者提出了多種方法來構建 [2–7] 和防禦 [8–13] 這種類型的對抗工具。截至目前,大部分對抗攻擊包括非目的性攻擊和目的性攻擊:前者旨在降低模型性能,但不要求模型生成指定輸出;而目的性攻擊中,攻擊者針對輸入設計對抗擾動,使模型對該輸入生成指定的輸出。例如,對分類器的攻擊可能對每個輸入圖像都指定特定的輸出類別,或者對強化學習智能體的攻擊可能導致該智能體進入某特定狀態 [14]。
本研究考慮的是更複雜的攻擊者目的:使模型執行攻擊者選擇的任務,且攻擊者無需計算特定的輸出結果。考慮一個用來執行某原始任務的模型:對於輸入 x,模型輸出 f(x)。考慮攻擊者想要執行的對抗任務:對於輸入
(不必要和 x 屬於同一域),攻擊者想要計算的函數為
。本論文研究者展示了攻擊者可通過學習對抗重編程函數 hf (·; θ) 和 hg(·; θ)(映射兩個任務)達到目標。這裡,h_f 將
的域轉換成 x 的域(即
是函數 f 的有效輸入),而 h_g 將
的輸出映射回
的輸出。然後調整該對抗程序(adversarial program)的參數 θ,以達到
。
在本研究中,出於簡潔性考慮,以及為了獲得高度可解釋性的結果,研究者將
定義為一個小圖像,將 g 定義為處理小圖像的函數,x 是大圖像,f 是處理大圖像的函數。函數 h_f 僅包含在大圖像的中心繪製 x,在邊界處繪製 θ,h_g 是輸出類別標籤之間的硬編碼映射。但是,這個想法更通用;h_f (h_g) 可以是轉換兩種任務的輸入(輸出)格式、使模型執行對抗任務的任意一致變換(consistent transformation)。
研究者將使用機器學習演算法執行新任務的攻擊類別稱為對抗重編程(adversarial reprogramming),將 θ 作為對抗程序(adversarial program)。與大部分之前的對抗樣本研究相比,該擾動的規模不需要限制。該攻擊的成功不需要到人類察覺不到或更細微的程度。對抗重編程的潛在後果包括從公共服務中竊取計算資源,將 AI 助手設置為間諜或垃圾郵件程序。5.3 節將詳細討論這類攻擊的風險。
給神經網路的輸入添加偏移似乎不足夠使得網路執行新任務。但是,該靈活性確實僅基於對網路輸入的改動,且與深度神經網路的表達能力結果一致。例如,[15] 顯示,依據網路超參數,通過沿輸入空間中一維軌跡移動而獲取的唯一輸出模式的數量隨著網路深度的增加而出現指數級增長。此外,[16] 顯示即使參數更新僅限於在低維子空間中發生,網路在常見任務上訓練取得高準確率。對神經網路輸入添加偏移相當於修正網路第一層的偏置項(對於空間共享偏置項的卷積網路而言,該操作有效引入了新參數,因為添加的輸入不受貢獻偏置項的限制),因此對抗程序對應在低維參數子空間中的更新。最後,遷移學習中的成功證明神經網路的表徵可以泛化至完全不同的任務中。因此,對訓練好的網路進行重編程的任務可能比從頭訓練網路簡單一些,研究者通過實驗對該假設進行了探索。
圖 1:對抗重編程圖示。(a)將 ImageNet 標籤映射至對抗任務標籤(圖像中的方塊)。(b)來自對抗任務的圖像(左)被嵌入對抗程序的中心(中),得到對抗圖像(右)。該對抗程序使 Inception V3 網路執行計算圖像中方塊數量的任務。(c)使用對抗圖像進行推斷的圖示。把對抗圖像輸入該網路時,網路預測映射至對抗任務的 ImageNet 標籤。
圖 2:做 MNIST 分類的對抗程序示例。(a-f)導致六個 ImageNet 模型執行 MNIST 分類任務的對抗程序。每個程序被應用到一個 MNIST 數字。
表 1:已訓練 ImageNet 分類器可以通過對抗重編程來執行多種任務。上表給出了重編程網路在計數任務、MNIST 分類任務和 CIFAR-10 分類任務上的準確率。
表 2:當面向未訓練網路時,對抗重編程的有效性會降低。上表給出了重編程網路在 MNIST 分類任務上的準確率。目標網路已被隨機初始化,但未被訓練。
研究者發現,經過訓練的神經網路要比隨機網路更容易受到對抗重編程的影響。這表明,對抗程序可以為了新的任務改變已有網路學習到的特徵。這可以視為一種新形式的遷移學習,其中網路的輸入(相當於第一層的偏置項)被修改了,而不是更典型的輸出層權重(readout weight)。研究結果表明,在現代人工神經網路中,神經迴路的動態重用應該更有實用性。由於共享計算能力,它有潛力使機器學習系統能夠更簡單的重新目的化(repurpose),變得更靈活、高效。實際上,機器學習近來的研究已經集中在構建具備可重用組件的大型動態連接網路上了。
論文:Adversarial Reprogramming of Neural Networks
論文鏈接:https://arxiv.org/abs/1806.11146
摘要:深度神經網路易受對抗攻擊的影響。在計算機視覺領域中,對圖像進行精心設計的擾動可導致神經網路犯錯,如將熊貓識別成長臂猿或用貓的圖像來「愚弄」計算機。之前的對抗樣本的設計目的是降低模型性能或使機器學習模型生成攻擊者提前設定的特定輸出。我們介紹了一種對抗攻擊,其對目標模型進行重新編程,使其執行攻擊者指定的任務,且攻擊者無需指定或計算每個測試輸入的期望輸出結果。該攻擊通過極大優化單個對抗擾動來實現,該攻擊將擾動添加至機器學習模型的所有測試輸入,以使模型在處理這些輸入時執行攻擊者選擇的任務,即使模型的訓練目的並非是做該任務。因此我們可以把這些擾動看作是新任務的程序。我們在六個 ImageNet 分類模型上展示了對抗重編程,使這些模型執行計數任務,和兩個分類任務:對輸入 ImageNet 分類模型的 MNIST 和 CIFAR-10 樣本進行分類。
推薦閱讀:
※可視化循環神經網路的隱藏記憶
※從下往上看--新皮層資料的讀後感 第十一部分 hopfield-記憶的兩面
※深度學習與求導鏈式法則
※用風格遷移搞事情!超越藝術字:卷積神經網路打造最美漢字
※基於tensorflow的手寫數字識別