愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral

魚羊 栗子 發自 凹非寺

量子位 報道 | 公眾號 QbitAI


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


“穿件馬甲就不認識我了?”

如果把大象的紋理披在貓身上,CNN識別出的就是大象 (詳見下文) 。

圖賓根大學的博士僧發現,ImageNet訓練出來的CNN做圖像分類時,強烈依賴紋理/質地,居然不怎麼看形狀。

所以給圖像做個風格遷移,輕輕鬆鬆就能矇騙AI。

這麼好騙的AI必須治,團隊製造了一個升級版ImageNet,不讓紋理再給AI任何提示,逼迫它學習形狀。

調教後的AI不止更加準確,面對噪音等各種干擾的時候,還更加魯棒了。

這項研究中選了ICLR 2019的Oral。

這個CNN有點蠢

這裡有一隻橘貓:


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


還有一塊只有紋理的大象皮:


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


把大象皮給橘貓披上,橘貓就被認成了大象???


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


CNN未免太好騙了吧?

來自德國圖賓根大學的團隊發現,與以往的認知不同,CNN並不是通過將低級特徵(例如邊緣)組合成複雜的形狀,以此來對物體進行分類的。

此前已有研究表明,即使全局形狀完全被破壞,CNN仍然可以出色地完成對紋理化圖像的識別,似乎對於ImageNet訓練出來的CNN來說,局部紋理就已經給分類提供了足夠多的信息。

那麼問題就來了,對於CNN圖像識別來說,到底是對象紋理影響大還是全局形狀影響大呢?

實踐才能出真知,圖賓根大學的小夥伴們為此精心設計了實驗。他們利用風格遷移創建了像披著象皮的貓這樣紋理與形狀相沖突的圖片,用它們來測試CNN到底更偏向於哪一邊。

用於測試對象包括用ImageNet訓練過的AlexNet、VGG-16、GoogLeNet、強大的ResNet-50,以及97名人類選手。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


⬇️⬇️⬇️

橘貓,識別成功。灰掉的橘貓,也能識別。塗黑了的橘貓,emmm,有點懵比。素描風格的橘貓,呃,更加尷尬。

紋理越不明,AI越懵比。紋理 VS 形狀,CNN對紋理的依賴竟然佔了絕對上風。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


別急,能治的

團隊發現,CNN對局部紋理有超強的bias,而不重視全局形狀。

那麼,就要用強硬的方法,把bias掰到形狀那一邊去。

研究人員用ImageNet做基礎,造起一個風格化的數據集,叫做Stylized-ImageNet,簡稱SIN

愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral

把每一張圖的原始紋理除掉,然後用一種隨機選擇的繪畫風格代替。

目的就是讓AI在沒有紋理線索的情況下,也能準確判斷物體的類別。

這裡用的是AdaIN風格遷移方法,風格化係數為α=1.0。

風格的來源,則是Kaggle的Painter by Numbers數據集。

新數據集的搭建過程,已經開源了,請見文底傳送門。

療效顯著

在SIN數據集上,紋理已經風格化,沒有太多能幫助分類的有效信息了。

用SIN訓練並用SIN測試的結果是,top-5準確率只有79%

同樣的網絡,在普通ImageNet上訓練並用ImageNet測試,top-5準確率有92.9%

這說明,SIN比ImageNet的任務要難許多,少了判斷依據,多了干擾信息。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


有趣的是,ImageNet的特徵在SIN上的泛化能力很差:用前者訓練,後者測試,top-5準確率只有16.4%

相反,在SIN上學到的特徵卻在ImageNet上泛化不錯:不做任何微調的情況下,top-5準確率高達82.6%

然後,還要詳細證明一下,只學紋理的模型真的搞不定SIN。

研究人員想起了2018年發佈的BagNet,就是僅靠局部紋理搞定ImageNet的那隻前輩:

BagNet也是ResNet-50架構,不過最大感受野大小被限定在9×9, 17×17或33×33像素。這樣就沒有辦法學習任何長距離的空間關係,用來分類

有了這些限制,BagNet在ImageNet上面表現很好 (70%) ,但在SIN上就不太好了 (10%) 。

這明確地表示,SIN數據集可以除去局部紋理給AI帶去的線索,逼迫它去學習長距離的空間信息。因為BagNet自身限制沒辦法學習全局,才撲街了。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


更重要的是,線索衝突實驗 (Cue Conflict Experiment) 證明,用SIN訓練的ResNet-50,強烈地偏愛形狀線索:bias從ImageNet上的22%,提升到了SIN上的81%。

在許多類別的判斷上,甚至和人類對形狀的依賴一樣強。

還有驚喜

除了學到形狀特徵之外,SIN還附贈許多意想不到的優勢。

第一,重點學習了形狀的ResNet,在top-1和top5準確率上,都勝過了原始的ResNet。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


這表示,SIN很可能是一個數據擴增的好方法。

第二,團隊還用Faster R-CNN模型,測試了新老ResNet作為Backbone的表現。

把SIN揉進訓練數據,大大提升了目標檢測準確率:從70.7到75.1。這也和目標檢測基於形狀表徵的天性有關。

第三,研究人員系統測試了,當給圖像加入一些干擾:比如均勻噪音或相位噪音、對比度改變、高通與低通濾波等等,準確度會發生怎樣的變化。

雖然損失了幾個百分點的準確率,用SIN訓練的神經網絡還是在絕大多數任務上,戰勝了用IN訓練的結果。


愚蠢的CNN,換個馬甲就認不出貓!但,這病能治 | ICLR Oral


傳送門

論文:https://arxiv.org/abs/1811.12231

Github:https://github.com/rgeirhos/texture-vs-shape

SIN數據集:https://github.com/rgeirhos/Stylized-ImageNet

— 完 —

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回覆“招聘”兩個字。

量子位 QbitAI · 頭條號簽約作者

վ'ᴗ' ի 追蹤AI技術和產品新動態

相關推薦

推薦中...