丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預覽,將在時失效
人工智能 正文
發(fā)私信給AI研習社-譯站
發(fā)送

1

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

本文作者: AI研習社-譯站 編輯:楊曉凡 2017-10-30 18:07
導語:膠囊研究才剛剛開始

雷鋒網(wǎng)AI研習社按:日前,深度學習教父Geoffrey Hinton關于Capsule(膠囊)的新論文一發(fā)出,馬上引起了熱烈討論。雷鋒字幕組趁熱對論文做了全文翻譯,想了解具體細節(jié)的讀者歡迎仔細閱讀。有翻譯不當?shù)牡胤綒g迎指出,更期待您可以加入我們(申請加入,聯(lián)系微信 julylihuaijiang)。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

膠囊間的動態(tài)路由

摘要

本論文所研究的膠囊意為一組神經(jīng)元,其激活向量反映了某類特定實體(可能是整體也可能是部分)的表征。本論文使用激活向量的模長來描述實體存在的概率,用激活向量的方向表征對應實例的參數(shù)。某一層級的活躍膠囊通過矩陣變換做出預測,預測結果會用來給更高層級的膠囊提供實例參數(shù)。當多個預測值達成一致時,一個高層級的膠囊就會被激活。論文中展示了差異化訓練的多層膠囊系統(tǒng)可以在MNIST上達到當前最高水平的表現(xiàn),在識別高度重疊的數(shù)字上也要比卷積網(wǎng)絡要好得多。網(wǎng)絡的實現(xiàn)中運用迭代的一致性路由機制:當?shù)蛯蛹壍哪z囊的預測向量和高層級膠囊的激活向量有較大的標量積時,這個低層級膠囊就會傾向于向高層級膠囊輸出。

一、簡介

人類視覺通過使用仔細確定的固定點序列來忽略不相關的細節(jié),以確保只有極小部分的光學陣列以最高的分辨率被處理。要理解我們對場景的多少知識來自固定序列,以及我們從單個固定點中能收集到多少知識,內(nèi)省不是一個好的指導,但是在本文中,我們假設單個固定點給我們提供的不僅僅是一個單一的識別對象及其屬性。我們假設多層視覺系統(tǒng)在每個固定點上都會創(chuàng)建一個類似解析樹這樣的東西,并且單一固定解析樹在多個固定點中如何協(xié)調(diào)的問題會被我們忽略掉。

解析樹通常通過動態(tài)分配內(nèi)存來快速構建,但根據(jù)Hinton等人的論文「Learning to parse images,2000」,我們假設,對于單個固定點,從固定的多層神經(jīng)網(wǎng)絡中構建出一個解析樹,就像從一塊巖石雕刻出一個雕塑一樣(雷鋒網(wǎng) AI 科技評論注: 意為只保留了部分樹枝)。每個層被分成許多神經(jīng)元組,這些組被稱為“膠囊”(Hinton等人「Transforming auto-encoders,2011」),解析樹中的每個節(jié)點就對應著一個活動的膠囊。通過一個迭代路由過程,每個活動膠囊將在更高的層中選擇一個膠囊作為其在樹中的父結點。對于更高層次的視覺系統(tǒng),這樣的迭代過程就很有潛力解決一個物體的部分如何層層組合成整體的問題。

一個活動的膠囊內(nèi)的神經(jīng)元活動表示了圖像中出現(xiàn)的特定實體的各種屬性。這些屬性可以包括許多不同類型的實例化參數(shù),例如姿態(tài)(位置,大小,方向),變形,速度,反照率,色相,紋理等。一個非常特殊的屬性是圖像中某個類別的實例的存在。表示存在的一個簡明的方法是使用一個單獨的邏輯回歸單元,它的輸出數(shù)值大小就是實體存在的概率(雷鋒網(wǎng) AI 科技評論注: 輸出范圍在0到1之間,0就是沒出現(xiàn),1就是出現(xiàn)了)。在本文中,作者們探索了一個有趣的替代方法,用實例的參數(shù)向量的模長來表示實體存在的概率,同時要求網(wǎng)絡用向量的方向表示實體的屬性。為了確保膠囊的向量輸出的模長不超過1,通過應用一個非線性的方式使矢量的方向保持不變,同時縮小其模長。

膠囊的輸出是一個向量,這一設定使得用強大的動態(tài)路由機制來確保膠囊的輸出被發(fā)送到上述層中的適當?shù)母腹?jié)點成為可能。最初,輸出經(jīng)過耦合總和為1的系數(shù)縮小后,路由到所有可能的父節(jié)點。對于每個可能的父結點,膠囊通過將其自身的輸出乘以權重矩陣來計算“預測向量”。如果這一預測向量和一個可能的父節(jié)點的輸出的標量積很大,則存在自上而下的反饋,其具有加大該父節(jié)點的耦合系數(shù)并減小其他父結點耦合系數(shù)的效果。這就加大了膠囊對那一個父節(jié)點的貢獻,并進一步增加了膠囊預測向量和該父節(jié)點輸出的標量積。這種類型的“按協(xié)議路由”應該比通過最大池化實現(xiàn)的非常原始的路由形式更有效,其中除了保留本地池中最活躍的特征檢測器外,忽略了下一層中所有的特征檢測器。作者們論證了,對于實現(xiàn)分割高度重疊對象所需的“解釋”,動態(tài)路由機制是一個有效的方式。

卷積神經(jīng)網(wǎng)絡(CNN)使用學習得到的特征檢測器的轉(zhuǎn)移副本,這使得他們能夠?qū)D片中一個位置獲得的有關好的權重值的知識,遷移到其他位置。這對圖像解釋的極大幫助已經(jīng)得到證明。盡管作者們此次用矢量輸出膠囊和按協(xié)議路由的最大池化替代CNN的標量輸出特征檢測器,他們?nèi)匀幌M軌蛟谡麄€空間中復制已習得的知識,所以文中構建的模型除了最后一層膠囊之外,其余的膠囊層都是卷積。與CNN一樣,更高級別的膠囊得以覆蓋較大的圖像區(qū)域,但與最大池化不同,膠囊中不會丟棄該區(qū)域內(nèi)實體精確位置的信息。對于低層級的膠囊,位置信息通過活躍的膠囊來進行“地點編碼”。當來到越高的層級,越多的位置信息在膠囊輸出向量的實值分量中被“速率編碼”。這種從位置編碼到速率編碼的轉(zhuǎn)變,加上高級別膠囊能夠用更多自由度、表征更復雜實體的特性,表明更高層級的膠囊也相應地需要更高的維度。

二、如何計算一個膠囊的向量輸入和輸出

已經(jīng)有很多方法可以實現(xiàn)膠囊的大致思路。這篇文章的目的,不是去探究所有可能的方法,而只是表明非常簡單直接的方式就可以取得很好的效果,而且動態(tài)路由也可以起到幫助。

作者們用膠囊輸出向量的模長來表示一個膠囊所表征的實體在輸入中出現(xiàn)的概率。因此作者們采用一個非線性函數(shù)對向量進行“壓縮”,短向量被壓縮到幾乎為零,長向量也被壓縮到1以下長度。判別學習中充分利用這個非線性函數(shù)。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯(式1)

其中vj是膠囊j的輸出向量,sj是它的全部輸入。

除了第一層膠囊,膠囊sj的全部輸入是對預測向量uj|i的加權求和。這些預測向量都是由低一層的膠囊產(chǎn)生,通過膠囊的輸出ui 和一個權重矩陣Wij相乘得來。

 Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯 (式2)

其中cij是由迭代的動態(tài)路徑過程決定的耦合系數(shù)。

膠囊i和其上一層中所有膠囊的耦合系數(shù)的和為1,并由“routing softmax”決定。這個“routing softmax”的初始邏輯值bij 是膠囊i耦合于膠囊j的對數(shù)先驗概率。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯(式3)

這個對數(shù)先驗可以和其他權重一起被判別學習。他們由兩個膠囊的位置和類型決定,而不是當前的輸入圖像決定。耦合系數(shù)會從初始值開始迭代,通過測量每個高一層膠囊j的當前輸出vi和低一層膠囊i的預測值ui|j之間的一致性。

所述一致性是簡單的點積aij=vj . ui|j。這個一致性可被看做最大似然值,并在計算出所有將膠囊i連接到更高層膠囊得到的新耦合值前,加到初始邏輯值bi,j上。

在卷積膠囊層中,膠囊內(nèi)每一個單元都是一個卷積單元。因此每一個膠囊都會輸出一個向量網(wǎng)格而不是一個簡單的向量。

路由計算的偽碼如下圖Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

三、某類數(shù)字是否存在的邊緣損失

作者們用實例化向量的模長來表示膠囊要表征的實體是否存在。所以當且僅當圖片里出現(xiàn)屬于類別k的數(shù)字時,作者們希望類別k的最高層膠囊的實例化向量模長很大。為了允許一張圖里有多個數(shù)字,作者們對每一個表征數(shù)字k的膠囊分別給出單獨的邊緣損失函數(shù)(margin loss):

作者們用實例化向量的模長來表示膠囊要表征的實體是否存在。所以當且僅當圖片里出現(xiàn)屬于類別k的數(shù)字時,作者們希望類別k的最高層膠囊的實例化向量模長很大。為了允許一張圖里有多個數(shù)字,作者們對每一個表征數(shù)字k的膠囊分別給出單獨的邊緣損失函數(shù)(margin loss):

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

(式4)

其中Tc=1當且僅當圖片中有屬于類別C的數(shù)字,m+=0.9,m-=0.1。是為了減小某類的數(shù)字沒有出現(xiàn)時的損失,防止剛開始學習就把所有數(shù)字膠囊的激活向量模長都壓縮了。作者們推薦選用 λ = 0.5??倱p失就是簡單地把每個數(shù)字膠囊的損失加起來的總和。

四、CapsNet 結構

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯


圖1:一個簡單的3層CapsNet。這個模型的結果能和深層卷積網(wǎng)絡(比如. Batch-normalized maxout network in network,2015)的結果媲美。DigitCaps層每個膠囊的激活向量模長給出了每個類的實例是否存在,并且用來計算分類損失。 是PrimaryCapsules中連接每個 ui, i ∈ (1, 32 × 6 × 6) 和每個vj , j ∈ (1, 10)的權重矩陣。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯


圖2:從DigitCaps層來重構數(shù)字的解碼結構。訓練過程中極小化圖像和Sigmoid層的輸出之間的歐氏距離。訓練中作者們用真實的標簽作為重構的目標。

圖1展示的是一個簡單的CapsNet結構。 這是一個很淺的網(wǎng)絡,只有2個卷積層和1個全連接層。Conv1有256個9*9的卷積核,步長取1,激活函數(shù)為ReLU。這層把像素亮度轉(zhuǎn)化成局部特征檢測器的激活,接下去這個值會被用來作為原始膠囊(primary capsules)的輸入。

原始膠囊是多維實體的最底層。這個過程和圖形生成的視角相反,激活了一個原始膠囊就和剛好是圖形渲染的逆過程。與先分別計算實例的不同部分再拼在一起形成熟悉的總體理解(圖像中的每個區(qū)域都會首先激活整個網(wǎng)絡而后再進行組合)不同,這是一種非常不同的計算方式。而膠囊的設計就很適合這樣的計算。

第二層PrimaryCapsules是一個卷積膠囊層,有32個通道,每個通道有一個8維卷積膠囊(也就是說原始膠囊有8個卷積單元,9*9的卷積核,步長為2)。這一層中的膠囊能看到感受野和這個膠囊的中心重合的所有256*81 Conv1單元的輸出。PrimaryCapsules一共有[32,6,6]個輸出(每個輸出是一個8維向量),[6,6]網(wǎng)格中的每個膠囊彼此共享權重。由于具有區(qū)塊非線性,可以把PrimaryCapsules視作一個符合式1的卷積層。最后一層(DigitCaps)有對每個數(shù)字類有一個16維的膠囊,所有低一層的膠囊都可以是這一層膠囊的輸入。

作者們只在兩個連續(xù)的膠囊層(比如PrimaryCapsules和DigitCaps)之間做路由。因為Conv1的輸出是1維的,它所在的空間中不存在方向可以和高層的向量方向達成一致性。所以在Conv1和PrimaryCapsules之間沒有路由。所有的路由邏輯值(bij)被初始化為0。因此,一開始一個膠囊的輸出(ui)會以相同的概率(cij)傳入到所有的母膠囊(v0,v1,...,v10)。作者們用TensorFlow實現(xiàn)了這個網(wǎng)絡,選擇了Adam優(yōu)化器和TensorFlow的默認參數(shù),包括指數(shù)衰減的學習率用來優(yōu)化式4的邊緣損失的總和。

4.1 為了正則化效果而做的重構工作

作者們使用了一個額外的重構損失,希望數(shù)字膠囊能對輸入數(shù)字的實例化參數(shù)做編碼。在訓練過程中,作者們用掩蔽的方法只把正確的數(shù)字膠囊的激活向量保留下來。然后用這個激活向量來做重構。數(shù)字膠囊的輸出會傳入一個由3個全連接層組成的解碼器,它的結構如圖2,用來建模像素密度。

作者們極小化回歸單元的輸出和原來圖片的像素亮度之間的平方誤差,并把重構誤差收縮到原來的0.0005倍,這樣才不會在訓練過程中蓋過邊緣誤差的作用。如圖3所示,CapsNet的16維輸出的重構是魯棒的,同時也只保留了重要的細節(jié)。

五、把 Capsule 用在MNIST上

使用 28×28 MNIST的圖片集進行訓練,訓練前這些圖片在每個方向不留白地平移了2個像素。除此之外,沒有進行其他的數(shù)據(jù)增改或者轉(zhuǎn)換。在MNIST數(shù)據(jù)庫中,6萬張圖片用于訓練,另外1萬張用于測試。 

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

圖3: 利用3次路由迭代學習的CapsNet對MNIST中的測試照片進行重構。(l, p, r)分別代表真實標簽、模型預測和重建結果。最右兩列展示的是重建失敗的例子,解釋了模型是如何混淆了圖片中的“5”和“3”。其他列屬于被正確分類了的,展示了模型可以識別圖像中的細節(jié),同時降低噪聲。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

表1:CapsNet 分類MNIST數(shù)字測試準確度。結果包含了三次測試得到的平均數(shù)和標準差。

測試中作者使用的是單一模型,沒有進行“綜合”或者明顯的數(shù)據(jù)擴增方法。(Wan等人在「Regularization of neural networks using dropconnect」中通過“綜合”及數(shù)據(jù)擴增實現(xiàn)了0.21%的錯誤率,而未使用這兩種方法時的錯誤率是0.57%)作者們通過3層神經(jīng)網(wǎng)絡實現(xiàn)了較低的錯誤率(0.25%),這一錯誤率以往只有更深的網(wǎng)絡才能達到。表1展現(xiàn)的是不同設置的CasNet在NMIST數(shù)據(jù)庫上的測試錯誤率,表明了路由以及正則器重構的重要性。其基線是一個標準的三層神經(jīng)網(wǎng)絡(CNN),分別具有256、256及128個通道。每個通道具有5×5的卷積核,卷積步長為1。接著有兩個全連接層,大小分別為328、192。最后的全連接層通過dropout連接到帶有交叉熵損失的10個分類輸出的softmax層。

5.1 capsule的單個維度表示什么

由于模型中只向DigitCaps層的膠囊傳遞一個數(shù)字的編碼并置零其他數(shù)字,所以這些膠囊應該學會了在這個類別已經(jīng)具有一個實例的基礎上拓展了變化空間。這些變化包括筆畫粗細、傾斜和寬度。還包括不同數(shù)字中特定的變化,如數(shù)字2尾部的長度。通過使用解碼器網(wǎng)絡可以看到單個維度表示什么。在計算正確的數(shù)字膠囊的激活向量之后,可以將這個激活向量的擾動反饋給解碼器網(wǎng)絡,并觀察擾動如何影響重建。這些擾動的例子如圖4所示。可以看到,膠囊的一個維度(總數(shù)為16)幾乎總是代表數(shù)字的寬度。有些維度表示了全局變化的組合,而有些維度表示數(shù)字的局部變化。例如,字母6上部分的長度和下部分圈的大小使用了不同的維度。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯


圖4:維度擾動。每一行表示DigitCaps16個維度表示中的一個維度在[-0.25, 0.25]范圍,步長0.05時的重構結果

5.2  仿射變換的魯棒性

實驗表明,每個DigitCaps層的膠囊都比傳統(tǒng)卷積網(wǎng)絡學到了每個類的更魯棒的表示。由于手寫數(shù)字的傾斜、旋轉(zhuǎn)、風格等方面存在自然差異,訓練好的CapsNet對訓練數(shù)據(jù)小范圍的仿射變換具有一定的魯棒性。

為了測試CapsNet對仿真變換的魯棒性,作者們首先基于MNIST訓練集創(chuàng)造了一個新的訓練集,其中每個樣本都是隨機放在40× 40像素的黑色背景上的MNIST數(shù)字。然后用這樣的訓練集訓練了一個CapsNet和一個傳統(tǒng)的卷積網(wǎng)絡(包含MaxPooling和DropOut)。

然后,作者們在affNIST數(shù)據(jù)集上測試了這個網(wǎng)絡,其中,每個樣本都是一個具有隨機小范圍仿射變換的MNIST數(shù)字。模型并沒有在任何放射變換,甚至標準MNIST自然變換的訓練集合上訓練過,但一個訓練好的帶有早期停止機制(early stop)的CapsNet,在拓展的MNIST測試集上實現(xiàn)了99.23%的準確度,在仿射測試集上實現(xiàn)了79%的準確性。具有類似參數(shù)數(shù)量的傳統(tǒng)卷積模型在擴展的MNIST測試集上實現(xiàn)了類似的準確度(99.22%),在仿射測試集上卻只達到了66%。

六、高度重疊數(shù)字的分割

動態(tài)路由可以視為平行的注意力機制,允許同層級的膠囊參與處理低層級的活動膠囊,并忽略其他膠囊。理論上允許模型識別圖像中的多個對象,即使對象重疊。Hinton等人的目的是分割并識別高度重合數(shù)字對象(「 Learning to parse images,2000」中提出,其它人也在類似的領域?qū)嶒炦^他們的網(wǎng)絡,Goodfellow等人在「Multi-digit number recognition from street view imagery using deep convolutional neural networks,2013」中,Ba等人在「Multiple object recognition with visual attention,2014」中,Greff等人在「Tagger: Deep unsupervised perceptual grouping,2016」中)。一致性路由使利用對象的形狀的先驗知識幫助進行分割成為了可能,并避免在像素領域進行更高級別的細分。

6.1 MultiMNIST數(shù)據(jù)集

作者們通過在數(shù)字上覆蓋另一個來自相同集合(訓練或測試)但不同類別的數(shù)字來生成MultiMNIST訓練測試數(shù)據(jù)集。每個數(shù)字在每個方向上最多移動4個像素,產(chǎn)生36*36像素的圖像??紤]到28*28像素圖像中的數(shù)字是以20*20像素的范圍作為邊框,兩個數(shù)字的邊框內(nèi)范圍平均有80%的重合部分。MNIST數(shù)據(jù)集中的每個數(shù)字都會生成1K MultiMNIST示例。訓練集的大小為60M,測試集的大小為10M。

6.2 MultiMNIST數(shù)據(jù)集上的結果

作者用MultiMNIST的訓練數(shù)據(jù)中重新訓練得到的3層CapsNet模型,比基線卷積模型獲得了更高的分類測試準確率。相較于Ba等人在「Multiple object recognition with visual attention,2014」的序列注意力模型,他們執(zhí)行的是更簡單的、數(shù)字交疊遠遠更小的任務(本文的測試數(shù)據(jù)中,兩個數(shù)字的外框交疊率達到80%,而Ba等人的只有4%),而本文的模型在高度交疊的數(shù)字對中獲得了與他們同樣的5%的錯誤率。測試圖片由測試集中的成對的圖片構成。作者們把兩個最活躍的數(shù)字膠囊看作膠囊網(wǎng)絡產(chǎn)生的分類結果。在重建過程中,作者們每次選擇一個數(shù)字,用它對應的數(shù)字膠囊的激活向量來重建這個數(shù)字的圖像(已經(jīng)知道這個圖像是什么,因為作者們預先用它來生成合成的圖像)。與上文MNIST測試中模型的唯一不同在于,現(xiàn)在把將學習率的衰減步數(shù)提高到了原來的10倍,這是因為訓練數(shù)據(jù)集更大。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

圖5:一個經(jīng)3次路由迭代的CapsNet在MultiMNIST測試數(shù)據(jù)集上的樣本重建結果

如圖中靠下的圖像所示,兩個重建出的互相交疊的數(shù)字分別顯示為綠色和紅色的??可系膱D顯示的是輸入的圖像。表示圖像中兩個數(shù)字的標簽;表示用于重建的兩個數(shù)字。最右邊的兩列顯示了從標簽和從預測重建的兩個錯誤分類樣例。在例子中,模型將8錯判成7;在的例子中,模型將9錯判成0。其他的列都分類正確并且顯示了模型不僅僅考慮了所有的像素同時能夠在非常困難的場景下將一個像素分配給兩個數(shù)字(1-4列)。值得說明的是,在數(shù)據(jù)集產(chǎn)生的過程中,像素的值都會被剪裁到1以內(nèi)。兩個含“*”的列顯示了重建的數(shù)字既不是標簽值也不是預測值。這些列顯示模型不僅僅找到了所有存在的數(shù)字的最佳匹配,甚至還考慮了圖像中不存在的數(shù)字。所以在的例子中,模型并不能重建數(shù)字7,是因為模型知道數(shù)字對5和0是最佳匹配,而且也已經(jīng)用到了所有的像素。的例子也是類似的,數(shù)字8的環(huán)并沒有觸發(fā)為0的判斷,因為該數(shù)字已經(jīng)被當做8了。因此,如果兩個數(shù)字都沒有其他額外的支持的話,模型并不會將一個像素分配給這兩個數(shù)字。

圖5中的重構表明,CapsNet 能夠把圖片分割成兩個原來的數(shù)字。因為這一分割并非是直接的像素分割,所以可以觀察到,模型可以準確處理重疊的部分(即一個像素同時出現(xiàn)在多個數(shù)字上),同時也利用到所有像素。每個數(shù)字的位置和風格在DigitCaps中都得到了編碼。給定一個被編碼數(shù)字,解碼器也學會了去重構這一數(shù)字。解碼器能夠無視重疊進行重構的特性表明,每個數(shù)字膠囊都能從PrimaryCapsules層接收到的不同激活向量來獲取位置和風格。

表1 也著重表現(xiàn)了這一任務中膠囊之間路由的重要性。作為CapsNet分類器準確率的對比基線,作者們一開始先訓練了帶有兩層卷積層和兩層全連接層的卷積神經(jīng)網(wǎng)絡。 第一層有512個大小為9*9的卷積核,步長為1;第二層有256個大小為5*5的卷積核,步長為1。在每個卷積層后,模型都連接了一個2*2大小,步長2的池化層。 第三層是一個1024維的全連接層。

所有的這三層都有ReLU非線性處理。 最后10個單元的層也是全連接。 我們用TF默認的Adam優(yōu)化器來訓練最后輸出層的Sigmoid交叉熵損失。 這一模型有24.56M參數(shù),是CapsNet的11.36M參數(shù)的兩倍多。作者們從一個小點的CNN(32和64個大小為5*5的卷積核,步幅為1,以及一個512維的全連接層)開始,然后逐漸增大網(wǎng)絡的寬度,直到他們在MultiMNIST的10K子集上達到最好的測試精度。他們也在10K的驗證集上搜索了正確的學習率衰減步數(shù)。

作者們一次解碼了兩個最活躍的DigitCaps膠囊,得到了兩張圖片。然后把所有非零的像素分配給不同的數(shù)字,就得到了每個數(shù)字的分割結果。

七、其它數(shù)據(jù)集

作者們在 CIFAR10 的數(shù)據(jù)及上測試了膠囊模型,在用了不同的超參和7個模型集成(其中每個模型都通過圖像中24x24的小塊進行三次路由迭代)后得到10.6%的錯誤率。這里的圖片都是三個顏色通道的,作者們一共用了64種不同的 primary capsule,除此之外每個模型都和在 MNIST 數(shù)據(jù)集中用的一模一樣。作者們還發(fā)現(xiàn)膠囊能夠幫助路由softmax增加一個“以上皆非”的分類種類,因為不能指望10個 capsules 的最后一層就能夠解釋圖片里的一切信息。在測試集上有 10.6% 的錯誤率差不多也是標準的卷積網(wǎng)絡初次應用到 CIFAR10 上能達到的效果。

和生成模型一個一樣的缺點是,Capsules 傾向于解釋圖片中的一切。所以當能夠?qū)﹄s亂的背景建模時,它比在動態(tài)路由中只用一個額外的類別來的效果好。在 CIFAR-10 中,背景對大小固定的模型來說變化太大,因此模型表現(xiàn)也不好。

作者們還用了和 MNIST 中一樣的模型測試了 smallNORB 數(shù)據(jù)集,可以得到目前最好的 的 2.7% 的錯誤率。smallNORB 數(shù)據(jù)集由 96×96的雙通道灰度圖組成。作者們把圖片縮放到 48×48 像素,并且在訓練時從中隨機裁剪 32×32 的大小。而在測試時,直接取中間 32×32 的部分。

作者們還在 SVHN 的 73257 張圖片的小訓練集上訓練了一個小型網(wǎng)絡。我們把第一個卷積層的通道數(shù)減少到 64個,primary capsule 層為 16 個 6維膠囊,最后一個膠囊層為8維的。最后測試集錯誤率為 4.3%.

八、討論以及以往工作

30年來, 語音識別的最新進展使用了以高斯混合作為輸出分布的隱馬爾可夫模型。這些模型雖然易于在一些計算機上學習,但是存在一個致命的缺陷:他們使用的“n種中的某一種”的表示方法的效率是呈指數(shù)下降的,分布式遞歸神經(jīng)網(wǎng)絡的效率就比這種方法高得多。為了使隱馬爾可夫模型能夠記住的迄今它所生成字符的信息倍增,需要使用的隱藏節(jié)點數(shù)目需要增加到原來的平方。而對于循環(huán)神經(jīng)網(wǎng)絡來說,只需要兩倍的隱藏神經(jīng)元的數(shù)量即可。

現(xiàn)在卷積神經(jīng)網(wǎng)絡已經(jīng)成為物體識別的主流方法,理所當然要問是其中是否也會有效率的指數(shù)下降,從而引發(fā)這種方法的式微。一個可能性是卷積網(wǎng)絡在新類別上泛化能力的困難度。卷積網(wǎng)絡中處理平移變換的能力是內(nèi)置的,但對于仿射變換的其他維度就必須進行選擇,要么在網(wǎng)格中復制特征檢測器,網(wǎng)格的大小隨著維度數(shù)目指數(shù)增長,要么同樣以指數(shù)方式增加的標注訓練集的大小。膠囊通過將像素強度轉(zhuǎn)換為識別到的片段中的實例化參數(shù)向量,然后將變換矩陣應用于片段,以預測更大的片段的實例化參數(shù),從而避免了效率的指數(shù)下降。學到了部分和整體之間固有的空間關系的轉(zhuǎn)換矩陣構成了具有視角不變性的知識,從而可以自動泛化到的視角中。

膠囊使得我們可以做出一個非常具有表征意義的假設:在圖像的每一個位置,至多只有一個膠囊所表征的實體的實例。這種假設是由一種稱為“crowding”(Pelli等人「Crowding is unlike ordinary masking: Distinguishing feature integration from detection,2004」) 的感知現(xiàn)象驅(qū)動的,它消除了綁定問題,并允許一個膠囊使用分布式表示(它的激活向量)來對給定位置的該類型實體的實例化參數(shù)進行編碼。這種分布式表示比通過在高維網(wǎng)格上激活一個點來編碼實例化參數(shù)的效率要高得多,并且通過正確的分布式表示,膠囊可以充分利用空間關系可以由矩陣乘法來建模的特點。

膠囊中采用的神經(jīng)活動會隨著視角的變化而變化,而不是試圖消除神經(jīng)活動中視角變化帶來的影響。這使它們比“歸一化”法(如Jaderberg等「Spatial transformer networks,2015」)更具有優(yōu)勢:它們可以同時處理多個不同仿射變換或不同對象的不同部件。

膠囊同時也非常擅長處理圖像分割這樣的另一種視覺上最困難的問題之一,因為實例化參數(shù)的矢量允許它們使用在本文中演示的那樣的一致性路由。對膠囊的研究目前正處于一個與本世紀初研究用于語音識別的遞歸神經(jīng)網(wǎng)絡類似的階段。根據(jù)基礎表征性的特點,已經(jīng)有理由相信這是一種更好的方法,但它可能需要一些更多的在細節(jié)上的洞察力才能把它變成一種可以投入應用的高度發(fā)達的技術。一個簡單的膠囊系統(tǒng)已經(jīng)在分割數(shù)字圖像上提供了無與倫比的表現(xiàn),這表明了膠囊是一個值得探索的方向。

(完)

關注AI研習社,回復【論文】即可獲取論文原文及翻譯。

歡迎各界朋友加入字幕組,讓雷鋒字幕組翻譯水平更上一層樓。組長微信:julylihuaijiang。

雷鋒字幕組翻譯 / 熊浪濤、小穎同學、sophie、Clay、李振、孟慶淳、Jackie、小耗子在南京、張小彬、Moonsea、陳智敏

審校 / 曉凡

統(tǒng)籌 / 囧囧、凡江

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

Hinton的Capsule論文全公開!首發(fā)《膠囊間的動態(tài)路由》原文精譯

分享:
相關文章

知情人士

AI研習社(yanxishe.com)譯站頻道,傳播前沿人工智能知識,讓語言不再成為學習知識的門檻。(原雷鋒字幕組)
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設置密碼以方便用郵箱登錄
立即設置 以后再說