摘要:未來(lái)向何處去做領(lǐng)袖不容易,要不斷地指明方向。又譬如想識(shí)別在這些黑白圖像中,是否包含從到的手寫體數(shù)字,那么深度學(xué)習(xí)的傳統(tǒng)做法是,輸出一個(gè)維向量,,其中每個(gè)元素的取值范圍是,表示出現(xiàn)相應(yīng)數(shù)字的概率。老爺子的論文中,輸出的是十個(gè)維向量,其中。
CNN 未來(lái)向何處去?
做領(lǐng)袖不容易,要不斷地指明方向。所謂正確的方向,不僅前途要輝煌,而且道路要盡可能順暢。
Geoffrey Hinton 是深度學(xué)習(xí)領(lǐng)域的領(lǐng)袖。2011 年,正當(dāng) CNN 模型爆發(fā)性地取得一個(gè)又一個(gè)靚麗成就時(shí),老爺子卻開始冷靜地剖析 CNN 模型存在的致命弱點(diǎn),指出前進(jìn)的方向。
老爺子上周剛剛發(fā)表了一篇論文,題為 Dynamic Routing Between Capsules。一看這題目就預(yù)料得到,這篇論文一定會(huì)引起廣泛關(guān)注。因?yàn)檫@題目里,涉及到兩個(gè)概念,Capsule 和 Dynamic Routing。而這兩個(gè)概念,正是老爺子主張的 CNN 前進(jìn)的方向。
老爺子的論文,讀起來(lái)略感晦澀,其實(shí)道理并不難懂。筆者嘗試用淺顯的語(yǔ)言,把論文梳理一下,或許有助于理解。
Capsule:實(shí)體的視覺(jué)數(shù)學(xué)表征
深度學(xué)習(xí),其實(shí)就是一系列的張量變換。
從圖像、視頻、音頻、文字等等原始數(shù)據(jù)中,通過(guò)一系列張量變換,篩選出特征數(shù)據(jù),以便完成識(shí)別、分解、翻譯等等任務(wù)。
譬如原始數(shù)據(jù)是 28 x 28 的黑白圖像,每個(gè)黑白像素可以用 8 個(gè) bits 來(lái)表達(dá),那么這張黑白圖像就可以用 28 * 28 * 8 的張量來(lái)表達(dá),張量中每個(gè)元素的取值是布爾值,0 或者 1。
又譬如想識(shí)別在這些黑白圖像中,是否包含從 0 到 9 的手寫體數(shù)字,那么深度學(xué)習(xí)的傳統(tǒng)做法是,輸出一個(gè) 10 維向量,( x_{0}, x_{1}, ... x_{9} ),其中每個(gè)元素 x_{i} 的取值范圍是 [0, 1.0],表示出現(xiàn)相應(yīng)數(shù)字的概率。
例如,輸出的向量是 ( 0.2, 0.1, 0.7, 0.9, 0.2, ..., 0.1 ),那么意味著,圖像中出現(xiàn)數(shù)字 2 的概率是 70%,出現(xiàn)數(shù)字 3 的概率是 90% 等等。
Capsule 的創(chuàng)新,在于改變了輸出,不是輸出一個(gè)向量,而是輸出 10 個(gè)向量。每個(gè)向量分別表達(dá)某個(gè)數(shù)字的若干個(gè)屬性。
老爺子的論文中,輸出的是十個(gè) 16 維向量,( x_{i, j} ) 其中 i = 0 ... 15, j = 0, ... 9。也就是說(shuō),老爺子認(rèn)為每個(gè)手寫體數(shù)字包含 16 個(gè)屬性,包含幾個(gè)圓圈,幾個(gè)彎勾,幾個(gè)折角,幾根橫豎,彎勾折角的大小,筆劃的粗細(xì),整個(gè)字體的傾斜度,等等。
Capsule 的想法,不難理解。但是仔細(xì)想想,存在以下幾個(gè)問(wèn)題。
傳統(tǒng)的圖像識(shí)別的解決方案,是把識(shí)別問(wèn)題轉(zhuǎn)化為分類問(wèn)題。這個(gè)方法已經(jīng)足以解決識(shí)別問(wèn)題。實(shí)體的視覺(jué)數(shù)學(xué)表征 capsule 的意義是什么?
如何證明 16 維的 capsule 向量,能夠作為手寫體數(shù)字的視覺(jué)數(shù)學(xué)表征?為什么不是 32 維或者更多?
Capsule 向量中的元素 x_{i},與實(shí)體的屬性之間的關(guān)聯(lián),是機(jī)器自動(dòng)學(xué)習(xí)出來(lái)的。但是是否可以被人為預(yù)先強(qiáng)制指定?
低級(jí) capsule 與高級(jí) capsule 之間的關(guān)聯(lián)關(guān)系,是機(jī)器自動(dòng)學(xué)習(xí)出來(lái)的,還是可以被人為預(yù)先強(qiáng)制指定?
Capsule 的意義
老爺子試圖用 capsule 向量,囊括實(shí)體的所有重要屬性。如果某個(gè)實(shí)體的所有屬性,都在圖像中出現(xiàn),那么可以確認(rèn),這個(gè)圖像一定包含這個(gè)實(shí)體。所以他把這個(gè)向量,稱為實(shí)體膠囊 capsule。
一個(gè)手寫體數(shù)字,不管字體是否端正,筆劃是粗還是細(xì),圓圈和彎勾是大還是小,都用同一個(gè)膠囊 capsule 來(lái)表征。
一個(gè)輪胎,不管拍攝的角度如何,不管是正圓還是橢圓,不管輪轂是什么式樣,也都可以用同一個(gè)膠囊 capsule 來(lái)表征。
說(shuō)得抽象一點(diǎn),capsule 就是實(shí)體的視覺(jué)的數(shù)學(xué)表征。
想起了詞向量,word vector,詞向量是文字詞匯的數(shù)學(xué)表征。
能否把 capsule 和 word vector 統(tǒng)一起來(lái),不管實(shí)體的表達(dá)是圖像還是文字,都可以用同一個(gè)數(shù)學(xué)向量來(lái)表征?
論文中沒(méi)有明說(shuō),但是老爺子多半心懷這個(gè)想法。
說(shuō)得更直白一點(diǎn),capsule 作為視覺(jué)數(shù)學(xué)表征,很可能是為了把視覺(jué),聽覺(jué)、閱讀的原本相互獨(dú)立的數(shù)學(xué)向量,統(tǒng)一起來(lái),完成多模態(tài)機(jī)器學(xué)習(xí)的終極目標(biāo)。
重構(gòu)圖像:驗(yàn)證 Capsule 的猜想?
假設(shè) capsule 包含了某個(gè)實(shí)體的所有重要視覺(jué)屬性,那么理論上來(lái)說(shuō),應(yīng)該可以從 capsule 還原包含該實(shí)體的圖像。
為了證明這個(gè)猜測(cè),論文使用了一個(gè)神經(jīng)網(wǎng)絡(luò),把 capsule 向量作為輸入,重構(gòu)手寫體數(shù)字圖像并輸出。
實(shí)驗(yàn)結(jié)果證明,capsule 確實(shí)能夠重構(gòu)出正確的手寫體數(shù)字圖像。
而且更讓人驚奇的是,這些 capsules 中的某些屬性,也就是 ( x_{i, j} ), i = 0...15,j = 0...9,其中的幾個(gè) x{i},具有明確的物理意義,譬如手寫體字體大小寬窄傾斜度,以及字體中彎勾圓弧等局部特征的大小位置等等。
為什么每個(gè)手寫體數(shù)字只包含 16 個(gè)屬性,而不是 32 個(gè)或者更多屬性?
16 個(gè)屬性,已經(jīng)足以正確地重構(gòu)手寫體數(shù)字圖像。32 個(gè)或者更多屬性,無(wú)非是表達(dá)方式更細(xì)膩而已,這個(gè)問(wèn)題不太重要。
Dynamic Routing:從原始數(shù)據(jù)中尋找實(shí)體屬性的存在證據(jù)
Capsule 向量的元素 x_{i},與實(shí)體的屬性之間的關(guān)聯(lián),是人為確定的,還是機(jī)器自動(dòng)對(duì)應(yīng)的?
根據(jù)論文的描述,關(guān)聯(lián)關(guān)系是機(jī)器自動(dòng)對(duì)應(yīng)的,所以在 capsule 向量 ( x_{i} ), i = 0...15 中,某些 x_{i} 的物理意義比較明確,其它 x_{i} 的物理意義卻可能難以解釋。
假如人為強(qiáng)制指定 capsule 中各個(gè) x_{i} ?的物理意義,換句話說(shuō),人為強(qiáng)制指定 capsule 向量元素 x_{i} 與實(shí)體屬性之間的關(guān)聯(lián)關(guān)系,是否會(huì)有助于提高識(shí)別精度,降低訓(xùn)練數(shù)據(jù)的數(shù)量?
回答這個(gè)問(wèn)題之前,需要先了解的 capsule 向量中 ( x_{i} ) 的取值,是怎么來(lái)的。
前文說(shuō)到,深度學(xué)習(xí)其實(shí)就是一系列的張量變換。通過(guò)一系列張量變換,從圖像、視頻、音頻、文字等等原始數(shù)據(jù)中,篩選出特征數(shù)據(jù),以便完成識(shí)別、分解、翻譯等等任務(wù)。
論文使用了兩層卷積神經(jīng)網(wǎng)絡(luò),對(duì)原始黑白照片,也就是 28 * 28 * 8 的原始張量,用兩層卷積,完成一系列張量變換,轉(zhuǎn)變成新的張量 ( x_{attr, lon, lat, channel} ) ,attr ?= 0 ... 7, lon = 0 ... 5, lat = 0 ... 5, channel = 0 ... 31。
這個(gè)新張量中的 ( x_{attr} ) 是初級(jí) capsule,表達(dá)原始圖像中值得注意的特征。其中 attr 代表初級(jí) capsule 的屬性,維度為 8。
新張量中的 ( x_{lon, lat} ) ?表示 capsule ( x_{attr} ) 在原始圖像中的方位。經(jīng)過(guò)張量變換后,28 * 28 的原始圖像,被縮略為 6 * 6 個(gè)方位。( x_{channel} ) 是頻道,類似于多機(jī)位拍攝同一個(gè)場(chǎng)景,全面表達(dá) capsule 在原始圖像中的視覺(jué)特點(diǎn),總共有 32 個(gè)頻道。
在新張量中,總共有 lon * lat * channel = 6 * 6 * 32 = 1152 個(gè)初級(jí) capsule ( x_{attr} ) 。換句話說(shuō),經(jīng)過(guò)一系列張量變換,從原始圖像中,篩選出了 1152 個(gè)值得注意的圖像特征。
高級(jí) capsule 是前文說(shuō)的十個(gè)手寫體數(shù)字的 16 維屬性向量,即 ( x_{attr, class} ), attr = 0 ... 15, class = 0 ... 9。
想識(shí)別原始圖像中,是否包含手寫體數(shù)字 3,也就是 class = 2,只需要把 1152 個(gè)初級(jí) capsules,逐一與高級(jí) capsule 向量 x_{*, 2} ?做比對(duì)。
如何做比對(duì)呢?先做一次線性變換,把 8 維的初級(jí) capsule,變換成 16 維的初級(jí) capsule。然后計(jì)算 16 維的初級(jí) capsule 與 16 維的高級(jí) capsule 之間的余弦距離,也就是兩個(gè)向量之間的點(diǎn)乘。
從每個(gè)高級(jí) capsule 出發(fā),在低級(jí) capsules 中尋找它存在的證據(jù),這個(gè)過(guò)程,就是 Dynamic Routing。
如果某一個(gè)高級(jí) capsule 中每一個(gè)屬性,都能在 1152 個(gè)初級(jí) capsules 中,找到 “對(duì)應(yīng)的” 一個(gè)或多個(gè) capsules,那么就證實(shí)了高級(jí) capsule 中的這個(gè)屬性,確實(shí)在圖像中存在。
如果某一個(gè)高級(jí) capsule 中的全部 16 個(gè)屬性,都能在 1152 個(gè)初級(jí) capsules 中,找到存在的證據(jù),那么就認(rèn)定這個(gè)高級(jí) capsule 在原始圖像中存在。
如果有多個(gè)高級(jí) capsules,都能在 1152 個(gè)初級(jí) capsules 中,找到各自存在的證據(jù),那么就認(rèn)定在原始圖像中存在多個(gè)高級(jí) capsules。
Capsule 與先驗(yàn)知識(shí)
回到前文的問(wèn)題,假如人為強(qiáng)制指定 capsule 中各個(gè) x_{i} ?的物理意義,換句話說(shuō),人為強(qiáng)制指定 capsule 向量元素 x_{i} 與實(shí)體屬性之間的關(guān)聯(lián)關(guān)系,是否會(huì)有助于提高識(shí)別精度,降低訓(xùn)練數(shù)據(jù)的數(shù)量?
假如人為強(qiáng)制指定 capsule 中某個(gè) x_{i} 用于表達(dá)圖像中是否存在圓圈,那么需要改變訓(xùn)練數(shù)據(jù)。
現(xiàn)在的訓(xùn)練數(shù)據(jù),由輸入和輸出一對(duì)數(shù)據(jù)構(gòu)成。輸入數(shù)據(jù)是原始照片,輸出數(shù)據(jù)是標(biāo)簽,說(shuō)明原始照片中含有哪些數(shù)字。
如果要人為指定手寫體數(shù)字的 capsule 中的元素 x_{i},那么需要改變訓(xùn)練數(shù)據(jù)。譬如輸入是原始照片,輸出的標(biāo)簽,是說(shuō)明這張照片中是否有圓圈。
改變訓(xùn)練數(shù)據(jù)有什么意義?一個(gè)可能的意義是 transfer learning。
一張輪胎的照片中,也包含圓圈。用現(xiàn)在的方法,輪胎的照片無(wú)助于手寫體數(shù)字的識(shí)別,但是用 ?transfer learning,可以用輪胎的照片,來(lái)訓(xùn)練機(jī)器識(shí)別圓圈,然后把識(shí)別圓圈的算法模塊,融合到手寫體數(shù)字的識(shí)別系統(tǒng)中。
至于用這種方法,是否能夠提高識(shí)別精度,降低訓(xùn)練數(shù)據(jù)的數(shù)量,需要做實(shí)驗(yàn)來(lái)驗(yàn)證。
Parse Tree:實(shí)體特征的多層次分解,及與先驗(yàn)知識(shí)的融合
在原始圖像中,識(shí)別手寫體數(shù)字,這個(gè)實(shí)驗(yàn)比較簡(jiǎn)單。
假如設(shè)計(jì)一個(gè)難度更高的實(shí)驗(yàn),在原始圖像中,識(shí)別自行車。自行車由兩個(gè)輪胎,兩個(gè)腳踏板,一個(gè)龍頭和骨架等等構(gòu)件組成。
要完成這個(gè)實(shí)驗(yàn),需要先識(shí)別原始圖像中,是否存在輪胎、腳踏板、龍頭和骨架等等構(gòu)件。然后識(shí)別這些構(gòu)件之間的位置關(guān)系。
老爺子提議,用 Parse Tree 來(lái)分解整個(gè)識(shí)別任務(wù),從原始圖像,到圖像特征,到不同構(gòu)件,到自行車的識(shí)別。
Parse Tree 的生成,當(dāng)然可以完全靠機(jī)器,從大量訓(xùn)練數(shù)據(jù)中自動(dòng)學(xué)習(xí)。而且是一氣呵成地完成各個(gè)環(huán)節(jié),從原始圖像,到圖像特征,到不同構(gòu)件,到最終的自行車識(shí)別。
但是如果融合先驗(yàn)知識(shí),人為預(yù)先指定 Parse Tree 的結(jié)構(gòu),或許有助于把識(shí)別自行車的問(wèn)題,拆解為若干子問(wèn)題,分別識(shí)別輪胎、腳踏板、龍頭和骨架等等構(gòu)件,然后再把子模塊整合成為自行車的識(shí)別系統(tǒng)。
當(dāng)然,把大問(wèn)題拆解為若干子問(wèn)題,需要針對(duì)各個(gè)子問(wèn)題,準(zhǔn)備各自的訓(xùn)練數(shù)據(jù)。
這樣做是否有利于提高識(shí)別精度,降低訓(xùn)練數(shù)據(jù)的數(shù)量,也需要做實(shí)驗(yàn)來(lái)驗(yàn)證。
歡迎加入本站公開興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/4656.html
摘要:在普通的全連接網(wǎng)絡(luò)或中,每層神經(jīng)元的信號(hào)只能向上一層傳播,樣本的處理在各個(gè)時(shí)刻獨(dú)立,因此又被成為前向神經(jīng)網(wǎng)絡(luò)。不難想象隨著深度學(xué)習(xí)熱度的延續(xù),更靈活的組合方式更多的網(wǎng)絡(luò)結(jié)構(gòu)將被發(fā)展出來(lái)。 從廣義上來(lái)說(shuō),NN(或是更美的DNN)確實(shí)可以認(rèn)為包含了CNN、RNN這些具體的變種形式。在實(shí)際應(yīng)用中,所謂的深度神經(jīng)網(wǎng)絡(luò)DNN,往往融合了多種已知的結(jié)構(gòu),包括卷積層或是LSTM單元。這里的DNN特指全連接...
摘要:傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的問(wèn)題到目前為止,圖像分類問(wèn)題上較先進(jìn)的方法是。我們把卡戴珊姐姐旋轉(zhuǎn)出現(xiàn)這個(gè)問(wèn)題的原因,用行話來(lái)說(shuō)是旋轉(zhuǎn)的程度超出了較大池化所帶來(lái)的旋轉(zhuǎn)不變性的限度。 Capsule Networks,或者說(shuō)CapsNet,這個(gè)名字你應(yīng)該已經(jīng)聽過(guò)好幾次了。這是深度學(xué)習(xí)之父的Geoffrey Hinton近幾年一直在探索的領(lǐng)域,被視為突破性的新概念。最近,關(guān)于Capsule的論文終于公布了。一篇即...
摘要:近日,該論文的一作終于在上公開了該論文中的代碼。該項(xiàng)目上線天便獲得了個(gè),并被了次。 當(dāng)前的深度學(xué)習(xí)理論是由Geoffrey Hinton大神在2007年確立起來(lái)的,但是如今他卻認(rèn)為,CNN的特征提取層與次抽樣層交叉存取,將相同類型的相鄰特征檢測(cè)器的輸出匯集到一起是大有問(wèn)題的。去年9月,在多倫多接受媒體采訪時(shí),Hinton大神斷然宣稱要放棄反向傳播,讓整個(gè)人工智能從頭再造。10月,人們關(guān)注已久...
摘要:本文試圖揭開讓人迷惘的云霧,領(lǐng)悟背后的原理和魅力,品嘗這一頓盛宴。當(dāng)然,激活函數(shù)本身很簡(jiǎn)單,比如一個(gè)激活的全連接層,用寫起來(lái)就是可是,如果我想用的反函數(shù)來(lái)激活呢也就是說(shuō),你得給我解出,然后再用它來(lái)做激活函數(shù)。 由深度學(xué)習(xí)先驅(qū) Hinton 開源的 Capsule 論文 Dynamic Routing Between Capsules,無(wú)疑是去年深度學(xué)習(xí)界最熱點(diǎn)的消息之一。得益于各種媒體的各種...
摘要:論文鏈接會(huì)上其他科學(xué)家認(rèn)為反向傳播在人工智能的未來(lái)仍然起到關(guān)鍵作用。既然要從頭再來(lái),的下一步是什么值得一提的是,與他的谷歌同事和共同完成的論文已被大會(huì)接收。 三十多年前,深度學(xué)習(xí)著名學(xué)者 Geoffrey Hinton 參與完成了論文《Experiments on Learning by Back Propagation》,提出了反向傳播這一深刻影響人工智能領(lǐng)域的方法。今天的他又一次呼吁研究...
閱讀 1116·2019-08-30 15:55
閱讀 3562·2019-08-30 13:10
閱讀 1382·2019-08-29 18:45
閱讀 2463·2019-08-29 16:25
閱讀 2220·2019-08-29 15:13
閱讀 2516·2019-08-29 11:29
閱讀 670·2019-08-26 17:34
閱讀 1584·2019-08-26 13:57