MIT最新研究:對抗樣本才不是bug呢,人家,人家是特徵~
大資料文摘出品
來源:gradientscience
編譯:Andy
到目前為止,業內對於對抗樣本的流行觀點是,其源於模型的“怪癖”,一旦訓練演算法和資料收集方面取得足夠的進展,那麼它們終將消失。其他常見觀點還包括,對抗樣本要麼是輸入空間高維度的結果之一,要麼是因為有限樣本現象(finite-samplephenomena)。
而近日,來自MIT的幾位研究員剛剛完成了一個最近的研究,它提供了一種對抗樣本產生原因的新視角,並且,很有文學素養的研究員們嘗試透過一個精妙的故事把這個研究講個大家聽。
一起來聽聽這個關於對抗樣本的小故事。
一顆名為Erm的星球
故事始於Erm,這是顆遙遠的星球,居住著一群被稱為Nets(網)的古老外星人種。
Nets是一個神奇的物種;每個人在社會等級中的位置,取決於將奇怪的32×32畫素影像(對Nets族來說毫無意義)分類為十個完全任意類別的能力。
這些影像來自於一個絕密資料集See-Far,除了看這些神奇的畫素化影像以外,Nets的生活可以說完全是瞎的。
慢慢的,隨著Nets越來越老,越來越聰明,他們開始在See-Far中發現越來越多的訊號模式。他們發現的每個新模式都能幫他們更準確地對資料集進行分類。由於提高分類準確度的巨大社會價值,於是外星人們給最具預測性的影像模式都起了名,比如下圖:
TOOGIT,一個高度指示“1”的影像,Nets們對TOOGIT異常敏感。
最強大的外星人非常善於發現這些模式,因此對這些模式在See-Far影像中的出現也很敏感。
不知何故(也許正在尋找See-Far分類提示),一些外星人獲得了人類編寫的機器學習論文,特別是其中一張圖吸引住了外星人的眼球:
一個對抗樣本?
這張圖還是比較簡單的,他們想:左邊是“2”,然後中間有個GAB圖案,大家都知道它表示“4”。於是不出意料的話,左邊的影像上加上一個GAB產生一張新影像,這張圖(對Nets來說)看起來和對應於“4”類別的影像完全相同。
但是Nets們無法理解為什麼明明原始和最終影像完全不同,但根據論文的話它們應該是相同分類。帶著疑惑,Nets們把論文看了個遍,想知道人類到底是忘了什麼其他有用的模式......
我們從Erm中學到什麼
正如故事中名字所暗示的,這個故事不僅僅是講外星人和其神奇的社會結構:Nets的發展方式正是要讓我們聯想到機器學習模型是如何訓練的。特別是其中,我們儘量地提高準確率,但卻沒有加入關於分類所在物理世界或其他人類相關概念的背景知識。故事的結果是,外星人意識到人類認為無意義的對抗性擾動,實際上是對See-Far分類至關重要的模式。因此,Nets的故事應該讓我們思考:
對抗性樣本真的是不自然且無意義的嗎?
一個簡單的實驗
要搞明白這個問題,我們首先來進行一個簡單的實驗:
先從標準資料集(例如CIFAR10)的訓練集中的一張圖片開始:
我們透過合成有針對性的對抗樣本(在一個標準預訓練模型上),將每個(x,y)樣本目標改到下一個類“y+1”(如果y是最後一個類,則為0):
於是透過這樣改變樣本目標就構建出了一個新訓練集:
現在,由此產生的訓練集只是對原始資料集輕微擾動得來,標籤也改變了——但對於人來說它的標籤完全都是錯的。實際上,這種錯誤標籤和“置換”假設一致(即每隻狗被標記為貓,每隻貓被標記為鳥這樣)。
接著,我們在這個錯誤標記的資料集上訓練一個新分類器(不一定與第一個具有相同結構)。那麼該分類器在原始(未改變的)測試集(即標準CIFAR-10測試集)上表現會怎麼樣呢?
讓人驚訝的是,結果發現新分類器在測試集上有著還算不錯的精度(CIFAR上為44%)!儘管訓練輸入僅透過輕微擾動與其“真”標籤相關聯,而透過所有可見特徵與一個不同的標籤(現在是不正確的)相關。
這是為什麼呢?
我們的對抗樣本概念模型
在剛剛描述的實驗中,我們將標準模型的對抗擾動作為目標類預測模式而獲得一些泛化性。也就是說,僅訓練集中的對抗性擾動就能對測試集進行適度準確的預測。有鑑於此,人們可能會想:也許這些模式與人類用來分類影像的模式(例如耳朵,鬍鬚,鼻子)並無本質區別!這正是我們的假設:很多輸入特徵都能用來預測標籤,但其中只有一些特徵是人類可察覺的。
更準確說,我們認為資料的預測特徵可分為穩健和不穩健特徵。穩健特徵對應於能預測真實標籤的模式,即使在一些人類定義的擾動集(比如ℓ2ball)下的對抗性擾動。相反,非穩健特徵對應於預測時可以被預先設定的擾動集對抗“翻轉”過來以指示錯誤類別的特徵。
因為我們始終只考慮不影響人類分類的擾動集,於是希望人類完全依賴穩健特徵來判斷。然而,當目標是最大化(標準)測試集精度時,非穩健特徵卻可以像穩健特徵一樣有用——事實上,這兩種型別的特徵是完全可互換的。如下圖所示:
從這個角度來看,上述實驗其實很簡單。也就是,在原始訓練集中,輸入穩健特徵和非穩健特徵都可以用來預測標籤。而當進行了細微對抗擾動時,不會顯著地影響穩健特徵(根據定義),但仍可能翻轉非穩健特徵。
例如,每隻狗的影像都保留了狗的穩健特徵(因此在我們看來還是狗),但具有貓的非強健特徵。在重新標記訓練集之後,使得穩健特徵實際指向了錯誤方向(即具有穩健“狗”特徵圖片被標記為貓),因此就只有非穩健特徵在實際泛化中提供了正確指導。
總之,穩健和非穩健特徵都可以預測訓練集,但只有非健壯特徵才會產生對原始測試集的泛化:
因此,在該資料集上訓練模型能推廣到標準測試集的事實表明(a)存在非穩健特徵並能實現較好的泛化(b)深度神經網路確實依賴於這些非穩健特徵,即使有同樣可用於預測的穩健特徵。
穩健的模型能否學習穩健的特徵?
實驗表明,對抗性擾動不是毫無意義的人造物,而是直接與對泛化至關重要的擾動特徵相關。與此同時,我們之前關於對抗樣本的部落格文章顯示,透過使用穩健最佳化(robustoptimization),可以獲得更不易受對抗樣本影響的穩健模型。
因此,自然要問:能否驗證穩健模型實際上就是依賴於穩健特徵?為了驗證這一點,我們提出了一種方法,儘量限制輸入的是模型敏感的特徵(對於深度神經網路,對應於倒數第二層的啟用特徵)。使用該方法,我們建立了一個新的訓練集,該訓練集僅包含已訓練過的穩健模型使用的特徵:
之後,在獲得資料集上訓練一個模型,不進行對抗訓練。結果發現獲得的模型有著很高的準確性和穩健性!這與標準訓練集形成鮮明對比,後者導致模型準確但很脆弱。
標準和穩健的準確度,在CIFAR-10測試集(DD)上測試。訓練:
左:CIFAR-10正常訓練中:CIFAR-10進行對抗訓練正確:構建資料集正常訓練
結果表明,穩健性(或非穩健性)實際上可以作為資料集本身的屬性出現。特別是,當我們從原始訓練集中刪除非穩健特徵時,就可以透過標準(非對抗)訓練獲得穩健模型。這進一步證明,對抗樣本是由於非穩健特徵而產生的,並不一定與標準訓練框架有關。
可遷移性
這個新視角變化帶來的直接後果就是,對抗樣本的可遷移性(一直以來的神秘現象:一種模型的擾動通常對其他模型也是對抗的)也就不再需要單獨解釋了。具體來說,既然把對抗脆弱性看作是從資料集產生特徵的直接產物(而不是單個模型訓練中的缺陷),於是也就希望類似的表達模型能夠找到並使用這些特徵,來提高分類準確性。
為了進一步探索,我們研究了不同架構學習類似非穩健特徵的傾向如何與它們之間對抗樣本的可轉移性的相關:
在上圖中,我們生成了在第一個實驗中描述的資料集(用目標類標記對抗樣本的訓練集),用ResNet-50構建對抗樣本。於是可以將結果資料集視為將所有ResNet-50的非穩健特徵“翻轉”到目標類。然後,在此資料集上訓練上圖顯示的五種網路模型,並在真實測試集上記錄各自的泛化性:也就是模型僅用ResNet-50非穩健特徵的泛化性的好壞。
當分析結果時,我們看到,正如對抗模型的新視角所表明的那樣,模型能夠獲得ResNet-50引入的非穩健特徵的能力與ResNet-50到各個標準模型之間的對抗遷移性非常相關。
啟示
我們的討論還有實驗,確定對抗樣本是純粹以人為中心的現象。因為從分類效能角度來看,模型沒有理由更喜歡穩健,而不喜歡非穩健特徵。
畢竟,穩健性的概念是針對人類的。因此,如果我們希望模型主要依賴於穩健特徵,那就需要透過將先驗結合到架構或訓練過程中來明確表明這一點。從這個角度來看,對抗性訓練(以及更廣義的穩健最佳化)可以說是將所需的不變性結合到學習模型中的方式。例如,穩健最佳化可以被看作是試圖透過不斷地“翻轉”非魯棒特徵,來破壞它們的預測性,從而引導訓練模型不去依賴它們。
同時,在設計可解釋性方法時,也需要考慮標準模型對非穩健性(對人類不可理解)特徵的依賴性。特別是,對標準訓練模型的預測任何“解釋”,都應該突出顯示這些非穩健特徵(對於人類不完全有意義)或隱藏他們(不完全忠於模型決策過程)。因此,如果我們想要既是人類可理解的同時又忠於模型的可解釋性方法,那麼僅僅靠訓練後處理是不夠的,還需要在訓練時進行干預。
更多精彩盡在論文中
在論文中,我們還描述了一個用於討論穩健性和非穩健性特徵的精確框架,進一步證實了我們的假設。此外還有一個理論模型,能在存在非魯棒特徵時研究穩健性訓練。
原文連結:
論文連結:
相關github資料集:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31562039/viewspace-2644516/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 人家是地道的程式設計師呢程式設計師
- 對抗樣本並非bug,它們只是特徵罷了特徵
- 物流人家-ITPUB
- 對抗樣本與生成式對抗網路
- 看看“別人家”是怎樣開展全民網路安全教育的
- 做個別人家的網頁網頁
- 你真的懂對抗樣本嗎?一文重新思考對抗樣本背後的含義
- 對抗樣本學習筆記(一)筆記
- [譯] TensorFlow 教程 #11 - 對抗樣本
- 對抗防禦之對抗樣本檢測(一):Feature Squeezing
- 【AC大牛陳鴻的ACM總結貼】【ID AekdyCoin】人家當初也一樣是菜鳥ACM
- 【譯】CSS 才不是什麼黑魔法呢CSS
- 別人家的面試題:一個整數是否是“4”的N次冪面試題
- 瞧瞧別人家的API介面,那叫一個優雅API
- 同是UGC產品,為啥人家的那麼好?GC
- 阿里推出支付表 域名被人家搶先建站了阿里
- 別人家的面試題:統計“1”的個數面試題
- 一個月面試 4 家,3 家 Offer,來看看人家是如何面試的!面試
- 同樣是滿格訊號,為何你的網速總比人家慢?只因這5個設定不妥當
- 欺騙神經網路:建立你自己的對抗樣本神經網路
- 別人家的 DevOps 流水線,價值一個億dev
- 影象壓縮重建也能抵禦對抗樣本,這是一種新的防守策略
- 影像壓縮重建也能抵禦對抗樣本,這是一種新的防守策略
- 您的列印店和別人家的差的是一款自助列印軟體
- 同樣都是調參,為什麼人家的神經網路比我牛逼100倍?神經網路
- 為什麼寫程式碼讓人家覺得你很厲害?
- 搞事!ICLR 2018七篇對抗樣本防禦論文被新研究攻破,Goodfellow論戰ICLRGo
- 怎樣的遊戲才會讓你覺得有趣呢?遊戲
- 看看人家那後端 API 介面寫的,那叫一個優雅!後端API
- iPhone上也能執行AI模型,瞧瞧別人家的程式設計師是怎麼用Core ML的iPhoneAI模型程式設計師
- 7 papers | 對抗樣本前,BERT也不行;AutoML的商業實踐綜述TOML
- 蘇濤:對抗樣本技術在網際網路安全領域的應用
- Google、高通都在研究的晶片架構,是他們對抗ARM的武器Go晶片架構
- 能說會道愛辦公——“別人家的”Chrome外掛到底怎麼做Chrome
- 蘋果新大廈的7小時體驗,看看別人家的未來辦公蘋果
- 別人家的工資!在BAT做三年,普通員工能拿多少?BAT
- 谷歌無人駕駛汽車落後百度?人家已經要量產了!谷歌
- 別人家的工資!在BAT做三年普通員工能拿多少?BAT