Hinton發(fā)布最新論文,表達(dá)神經(jīng)網(wǎng)絡(luò)中部分-整體層次結(jié)構(gòu)
2017年,深度學(xué)習(xí)三巨頭之一的Geoffrey Hinton,發(fā)表了兩篇論文解釋「膠囊網(wǎng)絡(luò)(Capsule Networks)」。
在當(dāng)時(shí),這是一種全新的神經(jīng)網(wǎng)絡(luò),它基于一種新的結(jié)構(gòu)——膠囊,在圖像分類上取得了更優(yōu)越的性能,解決了CNN的某些缺陷,例如無法理解圖片和語義關(guān)系、沒有空間分層和空間推理的能力等。

在CNN中,左右兩幅圖都可被網(wǎng)絡(luò)識(shí)別為人臉
甚至,Hinton自己也公開表示過,他要證明為何卷積神經(jīng)網(wǎng)絡(luò)完全是「垃圾」,應(yīng)該以自己的膠囊網(wǎng)絡(luò)代替。
過去三年中,他每年都會(huì)推出一個(gè)新版本的膠囊網(wǎng)絡(luò)。
本月,Hinton興奮地說道,自己發(fā)表了一篇新論文,名為如何在神經(jīng)網(wǎng)絡(luò)中表示部分-整體層次結(jié)構(gòu)?(How to represent part-whole hierarchies in a neural network)

本論文中,他提出了一個(gè)叫做GLOM的架構(gòu),可以在神經(jīng)網(wǎng)絡(luò)中使用膠囊來表示視覺的層次結(jié)構(gòu),即部分-整體的關(guān)系。
署名只有Hinton一人。

GLOM通過提出island的概念來表示解析樹的節(jié)點(diǎn)。GLOM可以顯著提升transformer類的模型的可解釋性。可以顯著提升transformer類的模型的可解釋性。
提出island,GLOM表示解析樹的節(jié)點(diǎn)
有強(qiáng)有力的心理學(xué)證據(jù)表明,人們將視覺場(chǎng)景解析成部分-整體的層次結(jié)構(gòu),并將部分和整體之間相對(duì)不變的視覺關(guān)系,建模為部分和整體之間的坐標(biāo)變換。

如果做出能和人們一樣理解圖像的神經(jīng)網(wǎng)絡(luò),我們就需要弄清楚,神經(jīng)網(wǎng)絡(luò)如何才能表示部分-整體的層次結(jié)構(gòu)?
這是很困難的,不同圖像有不同的結(jié)構(gòu),而傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)無法把固定輸入的圖像轉(zhuǎn)換為動(dòng)態(tài)的層次結(jié)構(gòu)(解析樹)。
而這,也是「膠囊模型」被提出的動(dòng)機(jī)。
這些模型做出了這樣的假設(shè):一個(gè)膠囊就是一組神經(jīng)元,每個(gè)膠囊對(duì)應(yīng)表示圖片特定位置的一個(gè)目標(biāo)。
然后可以通過激活這些預(yù)先存在的、特定類型的膠囊,并在他們之間建立適當(dāng)連接來創(chuàng)建一棵解析樹。
本文介紹了一種非常不同的方式,即在神經(jīng)網(wǎng)絡(luò)中使用膠囊來表示部分-整體的層次結(jié)構(gòu)。
需要注意的是,論文沒有描述一個(gè)工作系統(tǒng)。
相反,它提出了一個(gè)關(guān)于表征的單一想法,將幾個(gè)不同小組取得的進(jìn)展合并到一個(gè)名為GLOM的假想系統(tǒng)中。
盡管本文主要關(guān)注對(duì)單一靜態(tài)圖像的感知,但GLOM很容易被理解為一個(gè)處理幀序列的流水線。靜態(tài)圖像可以被認(rèn)為是多個(gè)相同幀組成的序列。
GLOM架構(gòu),顯著提升transformer類的模型的可解釋性
GLOM架構(gòu)由大量的列組成,這些列都使用完全相同的權(quán)重。
每一列都是一個(gè)空間局部自動(dòng)編碼器的堆棧,可以學(xué)習(xí)小圖像補(bǔ)丁中發(fā)生的多層次的表示。每個(gè)自動(dòng)編碼器,使用多層自下而上的編碼器和解碼器,將一級(jí)的嵌入轉(zhuǎn)化為相鄰一級(jí)的嵌入。這些層次對(duì)應(yīng)于部分-整體層次結(jié)構(gòu)中的層次。
例如,當(dāng)顯示一個(gè)人臉的圖像時(shí),一個(gè)列可能會(huì)聚集為一個(gè)向量,用來表示鼻孔、鼻子、臉和人。
下圖顯示了不同層次的嵌入如何在單列中相互作用。

單列GLOM架構(gòu)中相鄰三層之間自下而上、自上而下、同層交互的情況
其中,藍(lán)色箭頭和紅色箭頭分別代表自下而上和自上而下的交互方式,由兩個(gè)不同的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)的,并且網(wǎng)絡(luò)中可以存在隱藏層。
對(duì)于一張靜態(tài)圖片來說,綠色箭頭可以簡(jiǎn)化為殘差鏈接用來實(shí)現(xiàn)時(shí)序的平滑效果。對(duì)于視頻這種包含多幀序列的情況,綠色箭頭的連接轉(zhuǎn)為一個(gè)神經(jīng)網(wǎng)絡(luò)用來學(xué)習(xí)時(shí)序過程中的膠囊狀態(tài)的變化。
不同列中同一層次的嵌入向量之間的交互作用,由一個(gè)非自適應(yīng)的、注意力加權(quán)的局部平滑器來實(shí)現(xiàn),這一點(diǎn)沒有在圖片中畫出來。這比列內(nèi)的交互要簡(jiǎn)單得多,因?yàn)樗鼈儾恍枰獙?shí)現(xiàn)部分整體坐標(biāo)變換。它們就像多頭Transformer中代表不同單詞片段的列之間的注意力加權(quán)交互,但它們更簡(jiǎn)單,因?yàn)閝uery、key和value都與嵌入向量相同。
列間相互作用通過使某一層次的每個(gè)嵌入向量向附近位置的其他類似向量回歸,在某一層次產(chǎn)生相同嵌入的島。這就形成了多個(gè)局部的「回聲室」,在這個(gè)「回聲室」中,一個(gè)層次的嵌入物主要關(guān)注其他相似的嵌入物。
在每一個(gè)離散的時(shí)間點(diǎn)和每個(gè)列中,一個(gè)層次的embedding更新為下列四方面的加權(quán)平均:
1 由自下而上的神經(jīng)網(wǎng)作用于下層的embedding在上一時(shí)間步產(chǎn)生的預(yù)測(cè)
2 由自上而下的神經(jīng)網(wǎng)在上一級(jí)的embedding上作用于上一時(shí)間步產(chǎn)生的預(yù)測(cè)
3 前一個(gè)時(shí)間步長的embedding向量
4 前一時(shí)間步相鄰列中同層次的embedding的注意力加權(quán)平均值
對(duì)于一個(gè)靜態(tài)圖像來說,隨著時(shí)間的推移,一個(gè)層面的嵌入應(yīng)該會(huì)穩(wěn)定下來,產(chǎn)生幾乎相同的向量的獨(dú)特島,如下圖所示:

附近六列中某一特定時(shí)間的嵌入圖片
所有顯示的位置都屬于同一個(gè)對(duì)象,場(chǎng)景層面還沒有確定一個(gè)共享矢量。將每個(gè)位置的完整嵌入向量分為部分-整體層次結(jié)構(gòu)中每個(gè)層次的獨(dú)立部分,然后將一個(gè)層次的高維嵌入向量作為二維向量顯示出來。
這樣就可以說明,不同位置的嵌入向量的排列情況。圖中所示的各級(jí)相同向量的島代表一棵分析樹。
GLOM沒有分配神經(jīng)硬件來表示解析樹中的一個(gè)節(jié)點(diǎn),也沒有給節(jié)點(diǎn)指向其前面和后面的指針,而是分配一個(gè)合適的活動(dòng)向量來表示該節(jié)點(diǎn),并對(duì)屬于該節(jié)點(diǎn)的所有位置使用相同的活動(dòng)向量。訪問節(jié)點(diǎn)的先后能力是由自下而上和自上而下的神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn)的,而不是用RAM來做表查找。
像BERT一樣,整個(gè)系統(tǒng)可以在最后一個(gè)時(shí)間步進(jìn)行訓(xùn)練,從有缺失區(qū)域的輸入圖像中重建圖像,但目標(biāo)函數(shù)還包括兩個(gè)正則化器,鼓勵(lì)在每個(gè)層次上有接近相同向量的島。
簡(jiǎn)單來說,正則器只是新的嵌入在一個(gè)層面上與自下而上和自上而下的預(yù)測(cè)之間的保持一致的一種方法,這有利于形成局部島。
一個(gè)非常簡(jiǎn)單的神經(jīng)場(chǎng)的例子,使用單個(gè)像素作為位置。四個(gè)像素的強(qiáng)度都可以用同一個(gè)代碼(a,b)來表示,即使它們的強(qiáng)度根據(jù)函數(shù)f(x) = ax+b而變化。解碼器有一個(gè)額外的輸入,它指定了位置。

GLOM架構(gòu)的另一種可視化方法
這是GLOM架構(gòu)所示架構(gòu)的另一種可視化方式,顯示了用另一種方式看待GLOM架構(gòu)的各個(gè)自下而上和自上而下的神經(jīng)網(wǎng)。

在這里,該架構(gòu)與Transformer的關(guān)系更加明顯。文中第一個(gè)圖代表時(shí)間的水平維度變成了本圖中代表層次的垂直維度。
在每個(gè)位置,每個(gè)層現(xiàn)在都有部分-整體層次結(jié)構(gòu)中所有層次的嵌入。這相當(dāng)于在圖1中垂直壓縮了單個(gè)時(shí)間片內(nèi)的層次描述。通過這個(gè)架構(gòu)的一次正向傳遞就可以解釋靜態(tài)圖像。這里將所有特定級(jí)別的自下而上和自上而下的神經(jīng)網(wǎng)都顯示為單個(gè)神經(jīng)網(wǎng)。
在正向傳遞過程中,L層的嵌入向量通過多層自下而上的神經(jīng)網(wǎng)接收來自上一層中L-1層嵌入向量的輸入。

它還通過多層自上而下的神經(jīng)網(wǎng)絡(luò)接收來自上一層中L+1級(jí)嵌入的輸入。在前向傳遞過程中,對(duì)前一層中L+1級(jí)的依賴性實(shí)現(xiàn)了自上而下的效果。層t+1中的L級(jí)嵌入也取決于層t中的L級(jí)嵌入和層t中其他附近位置的L級(jí)嵌入的注意力加權(quán)和,這些層內(nèi)交互作用沒有顯示出來。
最后,研究人員還對(duì)GLOM與其他神經(jīng)網(wǎng)絡(luò)模型(例如膠囊模型,變壓器模型,卷積神經(jīng)網(wǎng)絡(luò)等)相比,存在的優(yōu)勢(shì)作出了分析。
論文發(fā)表在https://arxiv.org/abs/2102.12627上。