25張圖讓你讀懂神經(jīng)網(wǎng)絡(luò)架構(gòu)

由于新的神經(jīng)網(wǎng)絡(luò)架構(gòu)無時無刻不在涌現(xiàn)香罐,想要記錄所有的神經(jīng)網(wǎng)絡(luò)是很困難的事情牛欢。要把所有這些縮略語指代的網(wǎng)絡(luò)(DCIGN逸绎,IiLSTM惹恃,DCGAN等)都弄清,一開始估計還無從下手桶良。
下表包含了大部分常用的模型(大部分是神經(jīng)網(wǎng)絡(luò)還有一些其他的模型)座舍。雖然這些架構(gòu)都是新奇獨特的沮翔,但當(dāng)我開始把它們的結(jié)果畫下來的時候陨帆,每種架構(gòu)的底層關(guān)系就會清晰。



顯然這些節(jié)點圖并不能顯示各個模型的內(nèi)部工作過程采蚀。例如變分自動編碼器(VAE)和自動編碼器(AE)節(jié)點圖看起來一樣疲牵,但是二者的訓(xùn)練過程實際上是完全不同的,訓(xùn)練后模型的使用場景更加不同榆鼠。VAE是生成器纲爸,用于在樣本中插入噪聲。而 AE 則僅僅是將它們得到的輸入映射到它們“記憶”中最近的訓(xùn)練樣本!本文不詳細(xì)介紹每個不同構(gòu)架內(nèi)部如何工作妆够。
雖然大多數(shù)縮寫已經(jīng)被普遍接受识啦,但也會出現(xiàn)一些沖突。例如RNN通常指復(fù)發(fā)神經(jīng)網(wǎng)絡(luò)神妹,有時也指遞歸神經(jīng)網(wǎng)絡(luò)颓哮,甚至在許多地方只是泛指各種復(fù)發(fā)架構(gòu)(包括LSTM,GRU甚至雙向變體)鸵荠。AE也一樣冕茅,VAE和DAE等都被簡單的稱為AE。此外蛹找,同一個模型的縮寫也會出現(xiàn)后綴N的個數(shù)不同的問題姨伤。同一個模型可以將其稱為卷積神經(jīng)網(wǎng)絡(luò)也可稱作卷積網(wǎng)絡(luò),對應(yīng)的縮寫就成了CNN或CN
將本文作為完整的神經(jīng)網(wǎng)絡(luò)列表幾乎是不可能的庸疾,因為新的架構(gòu)一直被發(fā)明乍楚,即使新架構(gòu)發(fā)布了,想要找到他們也是困難的届慈。因此本文可能會為您提供一些對AI世界的見解徒溪,但絕對不是所有; 特別是您在這篇文章發(fā)表很久之后才看到凌箕。
對于上圖中描繪的每個架構(gòu),本文做了非常簡短的描述词渤。如果您對某些架構(gòu)非常熟悉牵舱,您可能會發(fā)現(xiàn)其中一些有用。



感知器(P左圖)和前饋神經(jīng)網(wǎng)絡(luò)(FF或FFNN右圖)非常直觀缺虐,它們將信息從前端輸入芜壁,再從后端輸出。神經(jīng)網(wǎng)絡(luò)通常被描述為具有層(輸入高氮,隱藏或輸出層)慧妄,其中每層由并行的單元組成。通常同一層不具有連接剪芍、兩個相鄰層完全連接(每一層的每一個神經(jīng)元到另一層的每個神經(jīng)元)塞淹。最簡單的實用網(wǎng)絡(luò)有兩個輸入單元和一個輸出單元,可用于建立邏輯模型( 用做判斷是否)罪裹。通常通過反向傳播方法來訓(xùn)練FFNN饱普,數(shù)據(jù)集由配對的輸入和輸出結(jié)果組成(這被稱為監(jiān)督學(xué)習(xí))。我們只給它輸入状共,讓網(wǎng)絡(luò)填充輸出套耕。反向傳播的誤差通常是填充輸出和實際輸出之間差異的一些變化(如MSE或僅僅線性差異)。鑒于網(wǎng)絡(luò)具有足夠的隱藏神經(jīng)元峡继,理論上可以總是對輸入和輸出之間的關(guān)系建模冯袍。實際上它們的應(yīng)用是很有限的,通常將它們與其他網(wǎng)絡(luò)結(jié)合形成新的網(wǎng)絡(luò)碾牌。

徑向基函數(shù)(RBF)網(wǎng)絡(luò)就是以徑向基函數(shù)作為激活函數(shù)的FFNN網(wǎng)絡(luò)康愤。但是RBFNN有其區(qū)別于FFNN的使用場景(由于發(fā)明時間問題大多數(shù)具有其他激活功能的FFNN都沒有自己的名字)。

Hopfield網(wǎng)絡(luò)(HN)的每個神經(jīng)元被連接到其他神經(jīng)元; 它的結(jié)構(gòu)像一盤完全糾纏的意大利面板舶吗。每個節(jié)點在訓(xùn)練前輸入征冷,然后在訓(xùn)練期間隱藏并輸出。通過將神經(jīng)元的值設(shè)置為期望的模式來訓(xùn)練網(wǎng)絡(luò)裤翩,此后權(quán)重不變资盅。一旦訓(xùn)練了一個或多個模式,網(wǎng)絡(luò)將總是會收斂到其中一個學(xué)習(xí)模式踊赠,因為網(wǎng)絡(luò)在這個狀態(tài)中是穩(wěn)定的呵扛。需要注意的是,HN 不會總是與理想的狀態(tài)保持一致筐带。網(wǎng)絡(luò)穩(wěn)定的部分原因在于總的“能量”或“溫度”在訓(xùn)練過程中逐漸縮小今穿。每個神經(jīng)元都有一個被激活的閾值,隨溫度發(fā)生變化伦籍,一旦超過輸入的總合蓝晒,就會導(dǎo)致神經(jīng)元變成兩個狀態(tài)中的一個(通常是 -1 或 1腮出,有時候是 0 或 1)。更新網(wǎng)絡(luò)可以同步進(jìn)行芝薇,也可以依次輪流進(jìn)行胚嘲,后者更為常見。當(dāng)輪流更新網(wǎng)絡(luò)時洛二,一個公平的隨機(jī)序列會被生成馋劈,每個單元會按照規(guī)定的次序進(jìn)行更新。因此晾嘶,當(dāng)每個單元都經(jīng)過更新而且不再發(fā)生變化時妓雾,你就能判斷出網(wǎng)絡(luò)是穩(wěn)定的(不再收斂)。這些網(wǎng)絡(luò)也被稱為聯(lián)存儲器垒迂,因為它們會收斂到與輸入最相似的狀態(tài);當(dāng)人類看到半張桌子的時候械姻,我們會想象出桌子的另一半,如果輸入一半噪音机断、一半桌子楷拳,HN 將收斂成一張桌子。



馬可夫鏈(MC或離散時間馬爾可夫鏈毫缆,DTMC)是BM和HN的前身唯竹。它可以這樣理解:從我現(xiàn)在的這個節(jié)點乐导,我去任何一個鄰居節(jié)點的幾率是無記苦丁,這意味著你最終選擇的節(jié)點完全取決于當(dāng)前的所處的節(jié)點,l與過去所處的節(jié)點無關(guān)物臂。這雖然不是真正的神經(jīng)網(wǎng)絡(luò)旺拉,但類似于神經(jīng)網(wǎng)絡(luò),并且構(gòu)成了BM和HNs的理論基礎(chǔ)棵磷。就像BM蛾狗、RBM和HN一樣,MC并不總是被認(rèn)為是神經(jīng)網(wǎng)絡(luò)仪媒。此外沉桌,馬爾科夫鏈也并不總是完全連接。

波爾茲曼機(jī)(BM)很像HN算吩,區(qū)別在于只有一些神經(jīng)元被標(biāo)記為輸入神經(jīng)元留凭,而其他神經(jīng)元保持“隱藏”。輸入神經(jīng)元在完整的網(wǎng)絡(luò)更新結(jié)束時成為輸出神經(jīng)元偎巢。它以隨機(jī)權(quán)重開始蔼夜,并通過反向傳播學(xué)習(xí)或通過對比分歧(一種馬爾科夫鏈用于確定兩個信息增益之間的梯度)訓(xùn)練模型。與HN相比压昼,BM的神經(jīng)元大多具有二元激活模式求冷。由于被MC訓(xùn)練瘤运,BM是隨機(jī)網(wǎng)絡(luò)。BM的訓(xùn)練和運(yùn)行過程與HN非常相似:將輸入神經(jīng)元設(shè)置為某些鉗位值匠题,從而釋放網(wǎng)絡(luò)拯坟。雖然釋放節(jié)點可以獲得任何值,但這樣導(dǎo)致在輸入和隱藏層之間多次反復(fù)韭山。激活由全局閾值控制似谁。這種全局誤差逐漸降的過程導(dǎo)致網(wǎng)絡(luò)最終達(dá)到平衡。

限制玻爾茲曼機(jī)(RBM)與BM非常相似掠哥,也與HN類似巩踏。BM和RBM之間的最大區(qū)別是,RBM有更好的可用性续搀,因為它受到更多的限制塞琼。RBM不會將每個神經(jīng)元連接到每個其他神經(jīng)元,但只將每個神經(jīng)元組連接到每個其他組禁舷,因此沒有輸入神經(jīng)元直接連接到其他輸入神經(jīng)元彪杉,也不會有隱藏層直接連接到隱藏層。RBM可以像FFNN一樣進(jìn)行訓(xùn)練牵咙,而不是將數(shù)據(jù)向前傳播然后反向傳播派近。

自編碼器(Autoencoders, AE)與前饋神經(jīng)網(wǎng)絡(luò)(FFNN)有點相似。與其說它是一個完全不同的網(wǎng)絡(luò)結(jié)構(gòu)洁桌,不如說它是前饋神經(jīng)網(wǎng)絡(luò)的不同應(yīng)用渴丸。自編碼器的基本思想是:自動編碼信息(如壓縮,而非加密)另凌。由此谱轨,而得名。整個網(wǎng)絡(luò)在形狀上像一個漏斗:它的隱藏層單元總是比輸入層和輸出層少吠谢。自編碼器總是關(guān)于中央層對稱(中央層是一個還是兩個取決于網(wǎng)絡(luò)的層數(shù):如果是奇數(shù)土童,關(guān)于最中間一層對稱;如果是偶數(shù),關(guān)于最中間的兩層對稱)工坊。最小的隱藏層總是處在中央層献汗,這也是信息最壓縮的地方(被稱為網(wǎng)絡(luò)的阻塞點)。從輸入層到中央層叫做編碼部分王污,從中央層到輸出層叫做解碼部分罢吃,中央層叫做編碼(code)∮竦В可以使用反向傳播算法來訓(xùn)練自編碼器刃麸,將數(shù)據(jù)輸入網(wǎng)絡(luò),將誤差設(shè)置為輸入數(shù)據(jù)與網(wǎng)絡(luò)輸出數(shù)據(jù)之間的差異司浪。自編碼器的權(quán)重也是對稱的泊业,即編碼權(quán)重和解碼權(quán)重是一樣的把沼。

稀疏自編碼器(Sparse autoencoders, SAE)在某種程度上與自編碼器相反。不同于我們訓(xùn)練一個網(wǎng)絡(luò)在更低維的空間和結(jié)點上去表征一堆信息吁伺,在這里我們嘗試著在更高維的空間上編碼信息饮睬。所以在中央層,網(wǎng)絡(luò)不是收斂的篮奄,而是擴(kuò)張的捆愁。這種類型的網(wǎng)絡(luò)可以用于提取數(shù)據(jù)集的特征。如果我們用訓(xùn)練自編碼器的方法來訓(xùn)練稀疏自編碼窟却,幾乎在所有的情況下昼丑,會得到一個完全無用的恒等網(wǎng)絡(luò)(即,輸入什么夸赫,網(wǎng)絡(luò)就會輸出什么菩帝,沒有任何轉(zhuǎn)換或者分解)。為了避免這種情況茬腿,在反饋輸入的過程中會加上一個稀疏驅(qū)動呼奢。這個稀疏驅(qū)動可以采用閾值過濾的形式,即只有特定的誤差可以逆?zhèn)鞑ゲ⒈挥?xùn)練切平,其他誤差被視為訓(xùn)練無關(guān)的并被設(shè)置為零握础。某種程度上,這和脈沖神經(jīng)網(wǎng)絡(luò)相似:并非所有的神經(jīng)元在每個時刻都會被激活(這在生物學(xué)上有一定的合理性)

變分自編碼器(Variational autoencoders, VAE)和自編碼器有相同的網(wǎng)絡(luò)結(jié)構(gòu)悴品,但是模型學(xué)到的一些其他的東西:輸入樣本的近似概率分布禀综。這一點和玻爾茲曼機(jī)(BM)、受限玻爾茲曼機(jī)(RBM)更相似他匪。然而菇存,他們依賴于貝葉斯數(shù)學(xué),這涉及到概率推斷和獨立性邦蜜,以及再參數(shù)化(reparametrisation)技巧以獲得不同的表征。概率推斷和獨立性部分有直觀的意義亥至,但是他們依賴于復(fù)雜的數(shù)學(xué)知識悼沈。基本原理如下:將影響考慮進(jìn)去姐扮。如果一件事在一個地方發(fā)生絮供,而另一件事在其他地方發(fā)生,那么它們未必是相關(guān)的茶敏。如果它們不相關(guān)壤靶,那么誤差逆?zhèn)鞑サ倪^程中應(yīng)該考慮這個。這種方法是有用的惊搏,因為神經(jīng)網(wǎng)絡(luò)是大型圖(在某種程度上)贮乳,所以當(dāng)進(jìn)入更深的網(wǎng)絡(luò)層時忧换,你可以排除一些結(jié)點對于其他結(jié)點的影響。

去噪自編碼器(Denoising autoencoders, DAE)是一種自編碼器向拆。在去噪自編碼器中亚茬,我們不是輸入原始數(shù)據(jù),而是輸入帶噪聲的數(shù)據(jù)(好比讓圖像更加的顆僚遥化)刹缝。但是我們用和之前一樣的方法計算誤差。所以網(wǎng)絡(luò)的輸出是和沒有噪音的原始輸入數(shù)據(jù)相比較的颈将。這鼓勵網(wǎng)絡(luò)不僅僅學(xué)習(xí)細(xì)節(jié)梢夯,而且學(xué)習(xí)到更廣的特征。因為特征可能隨著噪音而不斷變化晴圾,所以一般網(wǎng)絡(luò)學(xué)習(xí)到的特征通常地錯誤的厨疙。

深度信念網(wǎng)絡(luò)(Deep belief networks, DBN)是受限玻爾茲曼機(jī)或者變分自編碼器的堆疊結(jié)構(gòu)。這些網(wǎng)絡(luò)已經(jīng)被證明是可有效訓(xùn)練的疑务。其中沾凄,每個自編碼器或者玻爾茲曼機(jī)只需要學(xué)習(xí)對之前的網(wǎng)絡(luò)進(jìn)行編碼。這種技術(shù)也被稱為貪婪訓(xùn)練知允。貪婪是指在下降的過程中只求解局部最優(yōu)解撒蟀,這個局部最優(yōu)解可能并非全局最優(yōu)解。深度信念網(wǎng)絡(luò)能夠通過對比散度(contrastive divergence)或者反向傳播來訓(xùn)練温鸽,并像常規(guī)的受限玻爾茲曼機(jī)或變分自編碼器那樣保屯,學(xué)習(xí)將數(shù)據(jù)表示成概率模型。一旦模型通過無監(jiān)督學(xué)習(xí)被訓(xùn)練或收斂到一個(更)穩(wěn)定的狀態(tài)涤垫,它可以被用作生成新數(shù)據(jù)姑尺。如果使用對比散度訓(xùn)練,它甚至可以對現(xiàn)有數(shù)據(jù)進(jìn)行分類蝠猬,因為神經(jīng)元被教導(dǎo)尋找不同的特征切蟋。



卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks, CNN, or Deep convolutional neural networks, DCNN)和大多數(shù)其他網(wǎng)絡(luò)完全不同。它們主要用于圖像處理榆芦,但也可用于其他類型的輸入柄粹,如音頻。卷積神經(jīng)網(wǎng)絡(luò)的一個典型應(yīng)用是:將圖片輸入網(wǎng)絡(luò)匆绣,網(wǎng)絡(luò)將對圖片進(jìn)行分類驻右。例如,如果你輸入一張貓的圖片崎淳,它將輸出“貓”;如果你輸入一張狗的圖片堪夭,它將輸出“狗”。卷積神經(jīng)網(wǎng)絡(luò)傾向于使用一個輸入“掃描儀”,而不是一次性解析所有的訓(xùn)練數(shù)據(jù)森爽。舉個例子恨豁,為了輸入一張200 x 200像素的圖片,你不需要使用一個有40000個結(jié)點的輸入層拗秘。相反圣絮,你只要創(chuàng)建一個掃描層,這個輸入層只有20 x 20個結(jié)點雕旨,你可以輸入圖片最開始的20 x 20像素(通常從圖片的左上角開始)扮匠。一旦你傳遞了這20 x 20像素數(shù)據(jù)(可能使用它進(jìn)行了訓(xùn)練),你又可以輸入下一個20 x 20像素:將“掃描儀”向右移動一個像素凡涩。注意棒搜,不要移動超過20個像素(或者其他“掃描儀”寬度)。你不是將圖像解剖為20 x 20的塊活箕,而是在一點點移動“掃描儀“力麸。然后,這些輸入數(shù)據(jù)前饋到卷積層而非普通層育韩。卷積層的結(jié)點并不是全連接的克蚂。每個結(jié)點只和它鄰近的節(jié)點(cell)相關(guān)聯(lián)(多靠近取決于應(yīng)用實現(xiàn),但是通常不會超過幾個)筋讨。這些卷積層隨著網(wǎng)絡(luò)的加深會逐漸收縮埃叭,通常卷積層數(shù)是輸入的因子。(所以悉罕,如果輸入是20赤屋,可能接下來的卷積層是10,再接下來是5)壁袄。2的冪是經(jīng)常被使用的类早,因為它們能夠被整除:32,16,8,4,2,1。除了卷積層嗜逻,還有特征池化層涩僻。池化是一種過濾細(xì)節(jié)的方法:最常用的池化技術(shù)是最大池化(max pooling)。比如变泄,使用2 x 2像素令哟,取這四個像素中數(shù)值最大的那個。為了將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用到音頻妨蛹,逐段輸入剪輯長度的輸入音頻波。卷積神經(jīng)網(wǎng)絡(luò)在真實世界的應(yīng)用通常會在最后加入一個前饋神經(jīng)網(wǎng)絡(luò)(FFNN)以進(jìn)一步處理數(shù)據(jù)晴竞,這允許了高度非線性特征映射蛙卤。這些網(wǎng)絡(luò)被稱為DCNN,但是這些名字和縮寫通常是可以交換使用的。

反卷積神經(jīng)網(wǎng)絡(luò)(Deconvolutional networks, DN),也叫做逆向圖網(wǎng)絡(luò)(inverse graphics networks, IGN)颤难。它是反向卷積神經(jīng)網(wǎng)絡(luò)神年。想象一下,將一個單詞”貓“輸入神經(jīng)網(wǎng)絡(luò)行嗤,并通過比較網(wǎng)絡(luò)輸出和真實貓的圖片之間的差異來訓(xùn)練網(wǎng)絡(luò)模型已日,最終產(chǎn)生一個看上去像貓的圖片。反卷積神經(jīng)網(wǎng)絡(luò)可以像常規(guī)的卷積神經(jīng)網(wǎng)絡(luò)一樣結(jié)合前饋神經(jīng)網(wǎng)絡(luò)使用栅屏,但是這可能涉及到新的名字縮寫飘千。它們可能是深度反卷積神經(jīng)網(wǎng)絡(luò),但是你可能傾向于:當(dāng)你在反卷積神經(jīng)網(wǎng)絡(luò)前面或者后面加上前饋神經(jīng)網(wǎng)絡(luò)栈雳,它們可能是新的網(wǎng)絡(luò)結(jié)構(gòu)而應(yīng)該取新的名字护奈。值得注意的事,在真實的應(yīng)用中哥纫,你不可能直接把文本輸入網(wǎng)絡(luò)霉旗,而應(yīng)該輸入一個二分類向量。如蛀骇,<0厌秒,1>是貓,<1擅憔,0>是狗鸵闪,而<1,1>是貓和狗雕欺。在卷積神經(jīng)網(wǎng)絡(luò)中有池化層岛马,在這里通常被相似的反向操作替代,通常是有偏的插補(bǔ)或者外推(比如屠列,如果池化層使用最大池化啦逆,當(dāng)反向操作時,可以產(chǎn)生其他更低的新數(shù)據(jù)來填充)

深度卷積逆向圖網(wǎng)絡(luò)(Deep convolutional inverse graphics networks , DCIGN)笛洛,這個名字具有一定的誤導(dǎo)性夏志,因為事實上它們是變分自編碼器(VAE),只是在編碼器和解碼器中分別有卷積神經(jīng)網(wǎng)絡(luò)(CNN)和反卷積神經(jīng)網(wǎng)絡(luò)(DNN)苛让。這些網(wǎng)絡(luò)嘗試在編碼的過程中對“特征“進(jìn)行概率建模沟蔑,這樣一來,你只要用貓和狗的獨照狱杰,就能讓網(wǎng)絡(luò)學(xué)會生成一張貓和狗的合照瘦材。同樣的,你可以輸入一張貓的照片仿畸,如果貓的旁邊有一只惱人的鄰居家的狗食棕,你可以讓網(wǎng)絡(luò)將狗去掉朗和。實驗顯示,這些網(wǎng)絡(luò)也可以用來學(xué)習(xí)對圖像進(jìn)行復(fù)雜轉(zhuǎn)換簿晓,比如眶拉,改變3D物體的光源或者對物體進(jìn)行旋轉(zhuǎn)操作。這些網(wǎng)絡(luò)通常用反向傳播進(jìn)行訓(xùn)練憔儿。

生成式對抗網(wǎng)絡(luò)(Generative adversarial networks , GAN)是一種新的網(wǎng)絡(luò)忆植。網(wǎng)絡(luò)是成對出現(xiàn)的:兩個網(wǎng)絡(luò)一起工作。生成式對抗網(wǎng)絡(luò)可以由任何兩個網(wǎng)絡(luò)構(gòu)成(盡管通常情況下是前饋神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)配對)谒臼,其中一個網(wǎng)絡(luò)負(fù)責(zé)生成內(nèi)容朝刊,另外一個負(fù)責(zé)對內(nèi)容進(jìn)行判別。判別網(wǎng)絡(luò)同時接收訓(xùn)練數(shù)據(jù)和生成網(wǎng)絡(luò)生成的數(shù)據(jù)屋休。判別網(wǎng)絡(luò)能夠正確地預(yù)測數(shù)據(jù)源研铆,然后被用作生成網(wǎng)絡(luò)的誤差部分只估。這形成了一種對抗:判別器在辨識真實數(shù)據(jù)和生成數(shù)據(jù)方面做得越來越好,而生成器努力地生成判別器難以辨識的數(shù)據(jù)。這種網(wǎng)絡(luò)取得了比較好的效果败徊,部分原因是:即使是很復(fù)雜的噪音模式最終也是可以預(yù)測的颓遏,但生成與輸入數(shù)據(jù)相似的特征的內(nèi)容更難辨別鸠删。生成式對抗網(wǎng)絡(luò)很難訓(xùn)練怯屉,因為你不僅僅要訓(xùn)練兩個網(wǎng)絡(luò)(它們中的任意一個都有自己的問題),而且還要考慮兩個網(wǎng)絡(luò)的動態(tài)平衡附较。如果預(yù)測或者生成部分變得比另一個好吃粒,那么網(wǎng)絡(luò)最終不會收斂。

循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent neural networks , RNN)是考慮時間的前饋神經(jīng)網(wǎng)絡(luò):它們并不是無狀態(tài)的;通道與通道之間通過時間存在這一定聯(lián)系拒课。神經(jīng)元不僅接收來上一層神經(jīng)網(wǎng)絡(luò)的信息徐勃,還接收上一通道的信息。這就意味著你輸入神經(jīng)網(wǎng)絡(luò)以及用來訓(xùn)練網(wǎng)絡(luò)的數(shù)據(jù)的順序很重要:輸入”牛奶“早像、”餅干“和輸入”餅干“僻肖、”牛奶“會產(chǎn)生不一樣的結(jié)果。循環(huán)神經(jīng)網(wǎng)絡(luò)最大的問題是梯度消失(或者梯度爆炸)卢鹦,這取決于使用的激活函數(shù)臀脏。在這種情況下,隨著時間信息會快速消失冀自,正如隨著前饋神經(jīng)網(wǎng)絡(luò)的深度增加揉稚,信息會丟失。直觀上熬粗,這并不是一個大問題搀玖,因為它們只是權(quán)重而非神經(jīng)元狀態(tài)。但是隨著時間驻呐,權(quán)重已經(jīng)存儲了過去的信息巷怜。如果權(quán)重達(dá)到了0或者1000000葛超,先前的狀態(tài)就變得沒有信息價值了暴氏。卷積神經(jīng)網(wǎng)絡(luò)可以應(yīng)用到很多領(lǐng)域延塑,大部分形式的數(shù)據(jù)并沒有真正的時間軸(不像聲音、視頻)答渔,但是可以表示為序列形式关带。對于一張圖片或者是一段文本的字符串,可以在每個時間點一次輸入一個像素或者一個字符沼撕。所以宋雏,依賴于時間的權(quán)重能夠用于表示序列前一秒的信息,而不是幾秒前的信息务豺。通常磨总,對于預(yù)測未來信息或者補(bǔ)全信息,循環(huán)神經(jīng)網(wǎng)絡(luò)是一個好的選擇笼沥,比如自動補(bǔ)全功能蚪燕。

長短時記憶網(wǎng)絡(luò)(Long / short term memory , LSTM)通過引入門結(jié)構(gòu)(gate)和一個明確定義的記憶單元(memory cell)來嘗試克服梯度消失或者梯度爆炸的問題。這一思想大部分是從電路學(xué)中獲得的啟發(fā)奔浅,而不是從生物學(xué)馆纳。每個神經(jīng)元有一個記憶單元和是三個門結(jié)構(gòu):輸入、輸出和忘記汹桦。這些門結(jié)構(gòu)的功能是通過禁止或允許信息的流動來保護(hù)信息鲁驶。輸入門結(jié)構(gòu)決定了有多少來自上一層的信息被存儲當(dāng)前記憶單元。輸出門結(jié)構(gòu)承擔(dān)了另一端的工作舞骆,決定下一層可以了解到多少這一層的信息钥弯。忘記門結(jié)構(gòu)初看很奇怪,但是有時候忘記是必要的:
如果網(wǎng)絡(luò)正在學(xué)習(xí)一本書督禽,并開始了新的章節(jié)脆霎,那么忘記前一章的一些人物角色是有必要的。
長短時記憶網(wǎng)絡(luò)被證明能夠?qū)W習(xí)復(fù)雜的序列赂蠢,比如:像莎士比亞一樣寫作绪穆,或者合成簡單的音樂。值得注意的是虱岂,這些門結(jié)構(gòu)中的每一個都對前一個神經(jīng)元中的記憶單元賦有權(quán)重玖院,所以一般需要更多的資源來運(yùn)行。

門控循環(huán)單元(Gated recurrent units , GRU)是長短時記憶網(wǎng)絡(luò)的一種變體第岖。不同之處在于难菌,沒有輸入門、輸出門蔑滓、忘記門郊酒,它只有一個更新門遇绞。該更新門確定了從上一個狀態(tài)保留多少信息以及有多少來自上一層的信息得以保留。 這個復(fù)位門的功能很像LSTM的忘記門燎窘,但它的位置略有不同摹闽。 它總是發(fā)出全部狀態(tài),但是沒有輸出門褐健。 在大多數(shù)情況下付鹿,它們與LSTM的功能非常相似,最大的區(qū)別在于GRU稍快蚜迅,運(yùn)行容易(但表達(dá)能力更差)舵匾。 在實踐中,這些往往會相互抵消谁不,因為當(dāng)你需要一個更大的網(wǎng)絡(luò)來獲得更強(qiáng)的表現(xiàn)力時坐梯,往往會抵消性能優(yōu)勢。在不需要額外表現(xiàn)力的情況下刹帕,GRU可能優(yōu)于LSTM吵血。

神經(jīng)圖靈機(jī)(Neural Turing machines , NTM)可以被理解為LSTM的抽象,它試圖去黑箱化(使我們能夠洞察到發(fā)生了什么)。神經(jīng)圖靈機(jī)并非直接編碼記憶單元到神經(jīng)元中轩拨,它的記憶單元是分離的践瓷。它試圖將常規(guī)數(shù)字存儲的效率和永久性以及神經(jīng)網(wǎng)絡(luò)的效率和表達(dá)力結(jié)合起來。這種想法基于有一個內(nèi)容尋址的記憶庫亡蓉,神經(jīng)網(wǎng)絡(luò)可以從中讀寫晕翠。神經(jīng)圖靈機(jī)中的”圖靈“(Turing)來自于圖靈完備(Turing complete):基于它所讀取的內(nèi)容讀、寫和改變狀態(tài)的能力砍濒,這意味著它能表達(dá)一個通用圖靈機(jī)可表達(dá)的一切事情淋肾。
雙向循環(huán)神經(jīng)網(wǎng)絡(luò)、雙向長短時記憶網(wǎng)絡(luò)爸邢、雙向門控循環(huán)單元(Bidirectional recurrent neural networks, BiRNN; bidirectional long / short term memory networks, BiLSTM; bidirectional gated recurrent units, BiGRU)在表中沒有展示出來樊卓,因為它們看起來和相應(yīng)的單向網(wǎng)絡(luò)是一樣的。不同之處在于這些網(wǎng)絡(luò)不僅聯(lián)系過去杠河,還與未來相關(guān)聯(lián)碌尔。比如,單向長短時記憶網(wǎng)絡(luò)被用來預(yù)測單詞”fish“的訓(xùn)練過程是這樣的:逐個字母地輸入單詞“fish”, 在這里循環(huán)連接隨時間記住最后的值券敌。而雙向長短時記憶網(wǎng)絡(luò)為了提供未來的信息唾戚,會在反向通道中會輸入下一個字母。這種方法訓(xùn)練網(wǎng)絡(luò)以填補(bǔ)空白而非預(yù)測未來信息待诅,比如叹坦,在圖像處理中,它并非擴(kuò)展圖像的邊界卑雁,而是可以填補(bǔ)一張圖片中的缺失募书。

深度殘差網(wǎng)絡(luò)(Deep residual networks , DRN)是具有非常深度的前饋神經(jīng)網(wǎng)絡(luò)绪囱,除了鄰近層之間有連接,它可以將輸入從一層傳到后面幾層(通常是2到5層)莹捡。深度殘差網(wǎng)絡(luò)并非將一些輸入(比如通過一個5層網(wǎng)絡(luò))映射到輸出鬼吵,而是學(xué)習(xí)將一些輸入映射到一些輸出+輸入上〉勒担基本上而柑,它增加了一個恒等函數(shù),將舊的輸入作為后面層的新輸入荷逞。結(jié)果顯示,當(dāng)達(dá)到150 層粹排,這些網(wǎng)絡(luò)對于模式學(xué)習(xí)是非常有效的种远,這要比常規(guī)的2到5層多得多。然而顽耳,有結(jié)果證明這些網(wǎng)絡(luò)本質(zhì)上是沒有基于具體時間建造的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)坠敷,它們總是與沒有門結(jié)構(gòu)的長短時記憶網(wǎng)絡(luò)(LSTM)作比較。

回聲狀態(tài)網(wǎng)絡(luò)(Echo state networks , ESN)是另外一種不同類型的(循環(huán))網(wǎng)絡(luò)射富。它的不同之處在于:神經(jīng)元之間隨機(jī)地連接(即膝迎,層與層之間沒有統(tǒng)一的連接形式),而它們的訓(xùn)練方式也不一樣胰耗。不同于輸入數(shù)據(jù)限次,然后反向傳播誤差,回聲狀態(tài)網(wǎng)絡(luò)先輸入數(shù)據(jù)柴灯,前饋卖漫,然后暫時更新神經(jīng)元。它的輸入層和輸出層在這里扮演了稍微不同于常規(guī)的角色:輸入層用來主導(dǎo)網(wǎng)絡(luò)赠群,輸出層作為隨時間展開的激活模式的觀測羊始。在訓(xùn)練過程中,只有觀測和隱藏單元之間連接會被改變查描。

極限學(xué)習(xí)機(jī)(Extreme learning machines , ELM)本質(zhì)上是有隨機(jī)連接的前饋神經(jīng)網(wǎng)絡(luò)突委。他看上去和液體狀態(tài)機(jī)(LSM)和回聲狀態(tài)網(wǎng)絡(luò)(ESN)很相似,但是它即沒有脈沖冬三,也沒有循環(huán)匀油。它們并不使用反向傳播。相反长豁,它們隨機(jī)初始化權(quán)重钧唐,并通過最小二乘擬合一步訓(xùn)練權(quán)重(所有函數(shù)中的最小誤差)。這使得模型具有稍弱的表現(xiàn)力匠襟,但是在速度上比反向傳播快很多钝侠。

液體狀態(tài)機(jī)(Liquid state machines ,LSM)看上去和回聲狀態(tài)網(wǎng)絡(luò)(ESN)很像该园。真正的不同之處在于,液體狀態(tài)機(jī)是一種脈沖神經(jīng)網(wǎng)絡(luò):sigmoid激活函數(shù)被閾值函數(shù)所取代帅韧,每個神經(jīng)元是一個累積記憶單元(memory cell)里初。所以當(dāng)更新神經(jīng)元的時候,其值不是鄰近神經(jīng)元的累加忽舟,而是它自身的累加双妨。一旦達(dá)到閾值,它會將其能量傳遞到其他神經(jīng)元叮阅。這就產(chǎn)生一種類似脈沖的模式:在突然達(dá)到閾值之前什么也不會發(fā)生刁品。

支持向量機(jī)(Support vector machines , SVM)發(fā)現(xiàn)了分類問題的最佳解決方式。傳統(tǒng)的SVM一般是處理線性可分?jǐn)?shù)據(jù)浩姥。比如挑随,發(fā)現(xiàn)哪張圖片是加菲貓,哪張圖片是史努比勒叠,而不可能是其他結(jié)果兜挨。在訓(xùn)練過程中,支持向量機(jī)可以想象成在(二維)圖上畫出所有的數(shù)據(jù)點(加菲貓和史努比)眯分,然后找出如何畫一條直線將這些數(shù)據(jù)點區(qū)分開來拌汇。這條直線將數(shù)據(jù)分成兩部分,所有加菲貓在直線的一邊弊决,而史努比在另一邊噪舀。最佳的分割直線是,兩邊的點和直線之間的間隔最大化丢氢。當(dāng)需要將新的數(shù)據(jù)分類時傅联,我們將在圖上畫出這個新數(shù)據(jù)點,然后簡單地看它屬于直線的那一邊疚察。使用核技巧蒸走,它們可以被訓(xùn)練用來分類n維數(shù)據(jù)。這需要在3D圖上畫出點貌嫡,然后可以區(qū)分史努比比驻、加菲貓和西蒙貓,甚至更多的卡通形象岛抄。支持向量機(jī)并不總是被視為神經(jīng)網(wǎng)絡(luò)别惦。

Kohonen網(wǎng)絡(luò)(Kohonen networks , KN; 也被稱為自組織(特征)映射, SOM, SOFM))利用競爭性學(xué)習(xí)對數(shù)據(jù)進(jìn)行分類,無需監(jiān)督夫椭。 將數(shù)據(jù)輸入網(wǎng)絡(luò)掸掸,之后網(wǎng)絡(luò)評估其中哪個神經(jīng)元最匹配那個輸入。 然后調(diào)整這些神經(jīng)元以使更好地匹配輸入。在該過程中移動相鄰神經(jīng)元扰付。 相鄰神經(jīng)元被移動多少取決于它們到最佳匹配單位的距離堤撵。 有時候,Kohonen網(wǎng)絡(luò)也不被認(rèn)為是神經(jīng)網(wǎng)絡(luò)羽莺。

轉(zhuǎn)自:
http://www.sohu.com/a/142363236_116235

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末实昨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子盐固,更是在濱河造成了極大的恐慌荒给,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,681評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件刁卜,死亡現(xiàn)場離奇詭異志电,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)长酗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,205評論 3 399
  • 文/潘曉璐 我一進(jìn)店門溪北,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人夺脾,你說我怎么就攤上這事≤约蹋” “怎么了咧叭?”我有些...
    開封第一講書人閱讀 169,421評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長烁竭。 經(jīng)常有香客問我菲茬,道長,這世上最難降的妖魔是什么派撕? 我笑而不...
    開封第一講書人閱讀 60,114評論 1 300
  • 正文 為了忘掉前任婉弹,我火速辦了婚禮,結(jié)果婚禮上终吼,老公的妹妹穿的比我還像新娘镀赌。我一直安慰自己,他們只是感情好际跪,可當(dāng)我...
    茶點故事閱讀 69,116評論 6 398
  • 文/花漫 我一把揭開白布商佛。 她就那樣靜靜地躺著,像睡著了一般姆打。 火紅的嫁衣襯著肌膚如雪良姆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,713評論 1 312
  • 那天幔戏,我揣著相機(jī)與錄音玛追,去河邊找鬼。 笑死闲延,一個胖子當(dāng)著我的面吹牛痊剖,可吹牛的內(nèi)容都是我干的韩玩。 我是一名探鬼主播,決...
    沈念sama閱讀 41,170評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼邢笙,長吁一口氣:“原來是場噩夢啊……” “哼啸如!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起氮惯,我...
    開封第一講書人閱讀 40,116評論 0 277
  • 序言:老撾萬榮一對情侶失蹤叮雳,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后妇汗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體帘不,經(jīng)...
    沈念sama閱讀 46,651評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,714評論 3 342
  • 正文 我和宋清朗相戀三年杨箭,在試婚紗的時候發(fā)現(xiàn)自己被綠了寞焙。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,865評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡互婿,死狀恐怖捣郊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情慈参,我是刑警寧澤呛牲,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站驮配,受9級特大地震影響娘扩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜壮锻,卻給世界環(huán)境...
    茶點故事閱讀 42,211評論 3 336
  • 文/蒙蒙 一琐旁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧猜绣,春花似錦灰殴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,699評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至尸变,卻和暖如春义图,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背召烂。 一陣腳步聲響...
    開封第一講書人閱讀 33,814評論 1 274
  • 我被黑心中介騙來泰國打工碱工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 49,299評論 3 379
  • 正文 我出身青樓怕篷,卻偏偏與公主長得像历筝,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子廊谓,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,870評論 2 361

推薦閱讀更多精彩內(nèi)容