卷及網絡的弱點,有人想用膠囊網絡給解決掉

什麼是膠囊網絡?

膠囊網絡是 Geoffrey Hinton 提出的一種新型神經網絡結構,爲了解決卷積神經網絡(ConvNets)的一些缺點,提出了膠囊網絡。

話不多說,來看看這個聽起來就像「一顆一顆藥擺在你面前」的網絡是怎麼樣的。

卷積網絡有平移不變性

平移不變性是什麼呢?假設我們有一個可以分類貓的模型,你給這個模型看一張貓的圖片,它會預測出這是一隻貓。然後你把貓向左移一下,再展示給這個模型看,它依然會認爲這是一隻貓,而不會預測出其他的信息。

這樣看來好像不錯,意味着無論這隻貓放在圖片的哪個位置,我們的模型都能識別出這是一隻貓,好像它表現得還不錯。但是有的時候我們需要的是平移同變性。也就是當我們給這個模型展示一張移動到右邊的貓的圖片時,模型預測的是一隻移動到右邊的貓;展示一張移動到左邊的貓的圖片時,模型預測的是一隻移動到左邊的貓。

爲什麼要平移同變性呢?一般我們給一個模型輸入一張人臉的圖片的時候,五官都是在正常的位置的,眼睛在眼睛的位置上,鼻子在鼻子的位置上。但是我們如果把眼睛放在額頭上,耳朵放在下巴那,一般的卷積神經網絡還是會認爲這是一張臉,因爲它有平移不變性,也就是它只認爲一張有鼻子有眼睛有嘴巴等特徵的臉,就是人臉。讓我們來看一下這樣一張奇怪的人臉是怎樣的。

如果膠囊網絡像我們所說的那樣有平移同變性,那麼它就能夠識別到人臉的某一部分與另一部分的相對位置不正確,並且把這一部分正確的標註出來:

卷積網絡需要大量的數據來泛化

爲了使卷積神經網絡具有平移不變量,模型必須爲每個不同的觀測角度學習不同的濾波器,而這樣就需要大量的數據來進行。

卷積網絡在人類視覺系統上的表現很差

根據 Hinton 所說的,當視覺刺激被觸發的時候,大腦裏面有一種內在的機制,將低層次的視覺數據「導航」到它認爲可以最好地處理這些數據的部分。而卷及網絡使用多層濾波器來從底層可視數據中提取高級信息,所以這種導航機制就不存在了。

而且,當人類在看一個物體的時候,視覺系統會在座標系上表示這個物體。就好比我們可以知道一個圖形是不是給翻轉了。

當我們看到上面的這個字母時,我們是會在腦裏邊默默地把他旋轉到一個它們一般所放置的參考點,類似於:

而由於卷積網絡其設計的特性,它就不會有這樣的操作。那麼稍後,我們將探討如何設置一個邊框,並對對象進行相對於其座標的旋轉。

膠囊網絡是怎麼解決這些問題的?

你可以把(電腦)視覺想象成「逆圖像 」—— Geoffrey Hinton

什麼是逆圖像呢?簡單地說,它就是電腦在屏幕上渲染的物體的一個相反映射。(這聽起來好像有點難理解,但是當你看完下面的文字和圖片,應該會有較大幫助)

爲了把一個網格物體變成像素在屏幕上顯示出來,電腦會取這整個物體的姿態,然後與一個變換矩陣相乘。這樣就會在一個較低的維度(2D)輸出物體部分的姿態,這就是我們在屏幕上所看到的畫面了。

那麼爲什麼我們不能反過來做呢?讓低維空間的像素圖片去乘以變換矩陣的逆,來得到整個物體的姿態。

這樣做可不可以的呢?答案是:可以的(不過只是在近似的水平上)!這樣做的話,我們就可以把一個物體作爲整體表示,而把部分的姿態作爲權重矩陣來表示,並且表現出兩者的關係。而這些權重矩陣是視角不變的,也就是說,不管部分的姿態怎麼變化,我們都使用同樣的權重矩陣可以得到整體的姿態。

這讓我們在權重矩陣中完全獨立於物體的觀測角度。平移不變性現在只在權重矩陣中表現出來了,而不是在(網絡)神經活動中表現。

得到權重矩陣

來看看在膠囊網絡的論文中是怎麼講的。

注:圖片內容由英語原文翻譯。

在 Hinton 的論文中,他說膠囊網絡使用了一個重構的損失函數來作爲正則化方法,類似於自編碼器的操作。這樣爲什麼會有效呢?

爲了從較低維度空間中重構輸入,編碼器和譯碼器需要學習一個好的矩陣表示,來聯繫潛在空間和輸入的關係,聽起來是不是很熟悉?

總之,利用重構的損失函數作爲正則方法,膠囊網絡能夠通過無監督學習,在在整個物體和物體的姿態之間學習一個全局線性複本來作爲權重矩陣。因此,平移不變性就封裝在這個權重矩陣中而不是在神經活動中,這樣就使得神經網絡有平移同變性。因此,在某種意義上,當圖片和全局線性複本相乘時,就是在做一個「旋轉和平移」的操作。

動態路徑規劃

路徑規劃是把信息傳播給另一個能夠更加高效處理信息的操作者的行爲。路徑規劃在卷積網絡中就是通過池化層來進行的,而且基本上都是使用的極大值池化。

極大值池化是做路徑規劃的一個很原始的方式,它只讓在池化中最活躍的神經元起作用。而膠囊網絡就不同了,它會把信息傳給上層中最擅長處理的膠囊。

結論

膠囊網絡使用一個模仿人類視覺系統的的新架構,來獲得平移同變性,代替原來的平移不變性,使得它在不同的視角下可以使用更少的數據得到更廣的泛化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章