為什麼我的CNN石樂志?我只是平移了一下圖像而已
來自專欄量子位
一般來說,圖像經過小小的平移和變形之後,人類還是信任CNN能夠把它們泛化,識別出裡面的物體。
歸納偏差 (Inductive Bias) ,是CNN成功的一個關鍵。卷積和池化的選擇,就是為了賦予神經網路一些不變性,避免因為一些小的改變,就喪失了原本的判斷。
然而,來自耶路撒冷希伯來大學的兩位研究人員發現,一幅圖像被平移了幾個像素之後,現在的CNN就很容易認不出來。旋轉和縮放 ,也是一樣。
平移一下就石樂志
團隊用測量習得表徵 (Learned Representations) 線性度 (Linearity) 的方法,來觀察CNN的不變性。
接受考驗的CNN選手有三位,VGG-16,ResNet-50以及Inception ResNet-V2。結果——
只是把狗狗下移了一點點,
只是把瓶子放大了一點點,只是把白熊的姿勢換一下,系統的識別準確性就發生了猛烈的變化。這就是Inception ResNet-V2給出的答案。面對平移、縮放、旋轉這樣的無關變化,CNN都可能輕易拋棄原本的判斷,無法保持巋然不動。
為了看到它是怎麼失敗的,研究人員從ImageNet的驗證數據集里隨機選取200張圖片,把它們揉到更大的背景圖裡面,然後做平移之類的變換。
從Top-5的情況來看,如果移到某一個像素的時候還能夠正確判斷,而移到下一個像素就錯了的話,就在Jaggedness裡面加上1。
如果移過了多個像素而Top-5一直都有正確答案的話,就不計數。連續失敗也不計數。
Jaggedness越大,表示CNN越不堅定。
統計圖上,每一行的色帶,表示的是一幅圖像的預測結果,而橫軸的延伸代表平移的過程。
純色的色帶,表示很穩。
混色的色帶,表示不穩。
那麼,鍾型圖上純色的色帶越短,Jaggedness越大,CNN越不堅定。
看上去,VGG16是最穩的,而更加現代化的ResNet50和Inception ResNet-V2,面對同一幅圖的簡單變換,給出的答案就沒有那麼統一。
不過,單從正確率來看,還是後面兩位選手更優秀一些。
換句話說,VGG16,對得堅定,錯得也堅定。
可是,人類需要的或許是正確率又高,判斷又堅定的,那種AI。
為何平移就不好了
為什麼現在的這些CNN無法兼顧這兩項指標?
如果最終用來分類的特徵,是表徵經過全局池化得來的,那麼圖像平移應該不會影響到AI的判斷。
所以,問題出在哪?
研究人員說,這個邏輯裡面,沒有考慮到子採樣這個操作,現在的CNN裡面,這樣的步驟有很多很多。
子採樣的問題,Simoncelli和同事們也曾經討論過。
於是,子採樣步驟越多,平移不變性越難保持,只有在某些特定的平移之下得以倖存。
比如,在Inception ResNet-V2裡面,子採樣因子是45。這樣一來,只有1/45^2的概率能夠保留平移不變性。
平移不變性,還有另外一種比較弱的表現形式,被Simoncelli他們稱做「shiftablility」。
耶路撒冷的團隊,在這個概念的基礎上,證明了只要滿足了shiftablility,全局池化就可以保留平移不變性。
曲線救國可以么
即便在子採樣的洪流中,CNN難免隨波逐流。不過,人類依然可以訓練神經網路,做出擁有「不變性」的判斷。
首先,這個訓練數據集自身,需要對無關變換視而不見。
所以,團隊檢測了一下ImageNet訓練數據集的不變性。
這裡,需要給每幅圖像手動標上類別,西藏梗、大象、菠蘿、貝果以及船槳。
不出所料,研究人員發現ImageNet裡面,西藏梗的眼距,以及雙眼連線的中點位置,分布都比較集中,不利於平移的訓練。
怎麼讓數據集變得更有不變性?
數據擴增 (Data Augmentation) 是一個思路。不過,這也不是一蹴而就的事。
因為子採樣的問題陰魂不散。按照子採樣因子是45來計算,每一個樣本,都需要45^2=2025個擴增版本。
如果除了平移之外,還要考慮縮放和旋轉的話,這個數字還會呈指數增長。
所以,要給CNN培育出堅固的不變性,這個方法可能還是有點困難。
生而為人的驕傲
雖然,現在的ResNet-50和Inception ResNet-V2看上去還有些躊躇,對圖像的平移感到無助,但它們識別物體的準確率比以前的技術要好很多了。
當然,這也和ImageNet數據集里,物體在圖像中的位置不夠多樣化,有關。
於是,團隊還用了一個位置更加隨機的數據集來測試。發現人類的識別不會受到影響,而CNN還是時而疑惑。
所以,作為人類的你,有沒有開心一秒?
論文傳送門:
https://arxiv.org/pdf/1805.12177.pdf
— 完 —
歡迎大家關注我們的專欄:量子位 - 知乎專欄
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。
量子位 QbitAI · 頭條號簽約作者
?? ? 追蹤AI技術和產品新動態
推薦閱讀: