开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開(kāi)APP
          userphoto
          未登錄

          開(kāi)通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

          開(kāi)通VIP
          深度學(xué)習(xí)常見(jiàn)算法的介紹和比較

          很多人都有誤解,以為深度學(xué)習(xí)比機(jī)器學(xué)習(xí)先進(jìn)。其實(shí)深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)分支??梢岳斫鉃榫哂卸鄬咏Y(jié)構(gòu)的模型。具體的話,深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中的具有深層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)算法,即機(jī)器學(xué)習(xí)>神經(jīng)網(wǎng)絡(luò)算法>深度神經(jīng)網(wǎng)絡(luò)(深度學(xué)習(xí))。
          關(guān)于深度學(xué)習(xí)的理論推導(dǎo),太大太復(fù)雜,一些常見(jiàn)的深度學(xué)習(xí)算法本人也是模模糊糊的,看過(guò)好多次的,隔斷時(shí)間就會(huì)忘記,現(xiàn)在對(duì)其系統(tǒng)的整理一下(從歷史,致命問(wèn)題出發(fā),再看具體算法的思想,框架,優(yōu)缺點(diǎn)和改進(jìn)的方向,又總結(jié)了CNN和RNN的比較)。

          一、歷史:多層感知機(jī)到神經(jīng)網(wǎng)絡(luò),再到深度學(xué)習(xí)

          神經(jīng)網(wǎng)絡(luò)技術(shù)起源于上世紀(jì)五、六十年代,當(dāng)時(shí)叫感知機(jī)(perceptron),擁有輸入層、輸出層和一個(gè)隱含層。輸入的特征向量通過(guò)隱含層變換達(dá)到輸出層,在輸出層得到分類結(jié)果。(扯一個(gè)不相關(guān)的:由于計(jì)算技術(shù)的落后,當(dāng)時(shí)感知器傳輸函數(shù)是用線拉動(dòng)變阻器改變電阻的方法機(jī)械實(shí)現(xiàn)的,腦補(bǔ)一下科學(xué)家們扯著密密麻麻的導(dǎo)線的樣子…)
          心理學(xué)家Rosenblatt提出的單層感知機(jī)有一個(gè)嚴(yán)重得不能再嚴(yán)重的問(wèn)題,即它對(duì)稍復(fù)雜一些的函數(shù)都無(wú)能為力(比如最為典型的“異或”操作)。
          這個(gè)缺點(diǎn)直到上世紀(jì)八十年代才被Rumelhart、Williams、Hinton、LeCun等人發(fā)明的多層感知機(jī)解決,多層感知機(jī)解決了之前無(wú)法模擬異或邏輯的缺陷,同時(shí)更多的層數(shù)也讓網(wǎng)絡(luò)更能夠刻畫現(xiàn)實(shí)世界中的復(fù)雜情形。
          多層感知機(jī)可以擺脫早期離散傳輸函數(shù)的束縛,使用sigmoid或tanh等連續(xù)函數(shù)模擬神經(jīng)元對(duì)激勵(lì)的響應(yīng),在訓(xùn)練算法上則使用Werbos發(fā)明的反向傳播BP算法。這就是我們現(xiàn)在所說(shuō)的【神經(jīng)網(wǎng)絡(luò)】,BP算法也叫BP神經(jīng)網(wǎng)絡(luò)具體過(guò)程可參見(jiàn)我轉(zhuǎn)載的文章(http://blog.csdn.net/abc200941410128/article/details/78708319)。
          但是BP神經(jīng)網(wǎng)絡(luò)(多層感知機(jī))面臨在致命問(wèn)題(見(jiàn)下節(jié))。隨著神經(jīng)網(wǎng)絡(luò)層數(shù)的加深,有兩個(gè)重大問(wèn)題:一是優(yōu)化函數(shù)越來(lái)越容易陷入局部最優(yōu)解,并且這個(gè)“陷阱”越來(lái)越偏離真正的全局最優(yōu)。利用有限數(shù)據(jù)訓(xùn)練的深層網(wǎng)絡(luò),性能還不如較淺層網(wǎng)絡(luò)。同時(shí),另一個(gè)不可忽略的問(wèn)題是“梯度消失”現(xiàn)象更加嚴(yán)重。
          2006年,Hinton利用預(yù)訓(xùn)練方法緩解了局部最優(yōu)解問(wèn)題,將隱含層推動(dòng)到了7層,神經(jīng)網(wǎng)絡(luò)真正意義上有了“深度”,由此揭開(kāi)了深度學(xué)習(xí)的熱潮,隨后的DBN、CNN、RNN、LSTM等才逐漸出現(xiàn)。
          這里的“深度”并沒(méi)有固定的定義——在語(yǔ)音識(shí)別中4層網(wǎng)絡(luò)就能夠被認(rèn)為是“較深的”,而在圖像識(shí)別中20層以上的網(wǎng)絡(luò)屢見(jiàn)不鮮。
          為了克服梯度消失,ReLU、maxout等傳輸函數(shù)代替了sigmoid,形成了如今DNN的基本形式。單從結(jié)構(gòu)上來(lái)說(shuō),全鏈接的多層感知機(jī)是沒(méi)有任何區(qū)別的。

          二、深度神經(jīng)網(wǎng)絡(luò)的致命問(wèn)題

          隨著神經(jīng)網(wǎng)絡(luò)層數(shù)的加深,有三個(gè)重大問(wèn)題:一是非凸優(yōu)化問(wèn)題,即優(yōu)化函數(shù)越來(lái)越容易陷入局部最優(yōu)解;二是(Gradient Vanish)梯度消失問(wèn)題;三是過(guò)擬合問(wèn)題。

          2.1 非凸優(yōu)化問(wèn)題

          線性回歸,本質(zhì)是一個(gè)多元一次函數(shù)的優(yōu)化問(wèn)題,設(shè)f(x,y)=x+y
          多層神經(jīng)網(wǎng)絡(luò),本質(zhì)是一個(gè)多元K次函數(shù)優(yōu)化問(wèn)題,設(shè)f(x,y)=xy
          在線性回歸當(dāng)中,從任意一個(gè)點(diǎn)出發(fā)搜索,最終必然是下降到全局最小值附近的。所以置0也無(wú)妨(這也是為什么我們往往解線性回歸方程時(shí)初值為0)。
          而在多層神經(jīng)網(wǎng)絡(luò)中,從不同點(diǎn)出發(fā),可能最終困在局部最小值。局部最小值是神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)帶來(lái)的揮之不去的陰影,隨著隱層層數(shù)的增加,非凸的目標(biāo)函數(shù)越來(lái)越復(fù)雜,局部最小值點(diǎn)成倍增長(zhǎng),利用有限數(shù)據(jù)訓(xùn)練的深層網(wǎng)絡(luò),性能還不如較淺層網(wǎng)絡(luò)。。避免的方法一般是權(quán)值初始化。為了統(tǒng)一初始化方案,通常將輸入縮放到[?1,1],但是仍然無(wú)法保證能夠達(dá)到全局最優(yōu),其實(shí)這也是科學(xué)家們一直在研究而未解決的問(wèn)題。
          所以,從本質(zhì)上來(lái)看,深度結(jié)構(gòu)帶來(lái)的非凸優(yōu)化仍然不能解決(包括現(xiàn)在的各類深度學(xué)習(xí)算法和其他非凸優(yōu)化問(wèn)題都是如此),這限制著深度結(jié)構(gòu)的發(fā)展。

          2.2 (Gradient Vanish)梯度消失問(wèn)題

          這個(gè)問(wèn)題實(shí)際上是由激活函數(shù)不當(dāng)引起的,多層使用Sigmoid系函數(shù),會(huì)使得誤差從輸出層開(kāi)始呈指數(shù)衰減。在數(shù)學(xué)上,激活函數(shù)的作用就是將輸入數(shù)據(jù)映射到0到1上(tanh是映射-1到+1上)。至于映射的原因,除了對(duì)數(shù)據(jù)進(jìn)行正則化外,大概是控制數(shù)據(jù),使其只在一定的范圍內(nèi)。當(dāng)然也有另外細(xì)節(jié)作用,例如Sigmoid(tanh)中,能在激活的時(shí)候,更關(guān)注數(shù)據(jù)在零(或中心點(diǎn))前后的細(xì)小變化,而忽略數(shù)據(jù)在極端時(shí)的變化,例如ReLU還有避免梯度消失的作用。通常,Sigmoid(tanh)多用于全連接層,而ReLU多用于卷積層。


          Sigmoid

          ReLU
          “梯度消失”現(xiàn)象具體來(lái)說(shuō),我們常常使用sigmoid作為神經(jīng)元的輸入輸出函數(shù)。對(duì)于幅度為1的信號(hào),在BP反向傳播梯度時(shí),每傳遞一層,梯度衰減為原來(lái)的0.25。層數(shù)一多,梯度指數(shù)衰減后低層基本上接受不到有效的訓(xùn)練信號(hào)。
          幸運(yùn)的是,這個(gè)問(wèn)題已經(jīng)被Hinton在2006年提出的逐層貪心預(yù)訓(xùn)練權(quán)值矩陣變向減輕,最近提出的ReLu則從根本上提出了解決方案。
          2012年,Hinton組的Alex Krizhevsky率先將受到Gradient Vanish影響較小的CNN中大規(guī)模使用新提出的ReLu函數(shù)。
          2014年,Google研究員賈揚(yáng)清則利用ReLu這個(gè)神器,成功將CNN擴(kuò)展到了22層巨型深度網(wǎng)絡(luò),見(jiàn)知乎。
          對(duì)于深受Gradient Vanish困擾的RNN,其變種LSTM也克服了這個(gè)問(wèn)題。

          2.3 過(guò)擬合問(wèn)題

          這就是神經(jīng)網(wǎng)絡(luò)的最后一個(gè)致命問(wèn)題:過(guò)擬合,龐大的結(jié)構(gòu)和參數(shù)使得,盡管訓(xùn)練error降的很低,但是test error卻高的離譜。
          過(guò)擬合還可以和Gradient Vanish、局部最小值混合三打,具體玩法是這樣的:
          由于Gradient Vanish,導(dǎo)致深度結(jié)構(gòu)的較低層幾乎無(wú)法訓(xùn)練,而較高層卻非常容易訓(xùn)練。
          較低層由于無(wú)法訓(xùn)練,很容易把原始輸入信息,沒(méi)有經(jīng)過(guò)任何非線性變換,或者錯(cuò)誤變換推到高層去,使得高層解離特征壓力太大。
          如果特征無(wú)法解離,強(qiáng)制性的誤差監(jiān)督訓(xùn)練就會(huì)使得模型對(duì)輸入數(shù)據(jù)直接做擬合。
          其結(jié)果就是,A Good Optimation But a Poor Generalization,這也是SVM、決策樹等淺層結(jié)構(gòu)的毛病。
          Bengio指出,這些利用局部數(shù)據(jù)做優(yōu)化的淺層結(jié)構(gòu)基于先驗(yàn)知識(shí)(Prior): Smoothness
          即,給定樣本(xi,yi),盡可能從數(shù)值上做優(yōu)化,使得訓(xùn)練出來(lái)的模型,對(duì)于近似的x,輸出近似的y。
          然而一旦輸入值做了泛型遷移,比如兩種不同的鳥,鳥的顏色有別,且在圖像中的比例不一,那么SVM、決策樹幾乎毫無(wú)用處。
          因?yàn)?,?duì)輸入數(shù)據(jù)簡(jiǎn)單地做數(shù)值化學(xué)習(xí),而不是解離出特征,對(duì)于高維數(shù)據(jù)(如圖像、聲音、文本),是毫無(wú)意義的。
          然后就是最后的事了,由于低層學(xué)不動(dòng),高層在亂學(xué),所以很快就掉進(jìn)了吸引盆中,完成神經(jīng)網(wǎng)絡(luò)三殺。

          三、深度學(xué)習(xí)里面的基本模型

          深度學(xué)習(xí)里面的基本模型大致分為了3類:多層感知機(jī)模型;深度神經(jīng)網(wǎng)絡(luò)模型和遞歸神經(jīng)網(wǎng)絡(luò)模型。其代表分別是DBN(Deep belief network) 深度信念網(wǎng)絡(luò)、CNN(Convolution Neural Networks)卷積神經(jīng)網(wǎng)絡(luò)、RNN(Recurrent neural network) 遞歸神經(jīng)網(wǎng)絡(luò)。

          3.1 DBN(Deep belief network) 深度信念網(wǎng)絡(luò)

          2006年,Geoffrey Hinton提出深度信念網(wǎng)絡(luò)(DBN)及其高效的學(xué)習(xí)算法,即Pre-training+Fine tuning,并發(fā)表于《Science》上,成為其后深度學(xué)習(xí)算法的主要框架。DBN是一種生成模型,通過(guò)訓(xùn)練其神經(jīng)元間的權(quán)重,我們可以讓整個(gè)神經(jīng)網(wǎng)絡(luò)按照最大概率來(lái)生成訓(xùn)練數(shù)據(jù)。所以,我們不僅可以使用DBN識(shí)別特征、分類數(shù)據(jù),還可以用它來(lái)生成數(shù)據(jù)。

          3.1.1 網(wǎng)絡(luò)結(jié)構(gòu)

          深度信念網(wǎng)絡(luò)(DBN)由若干層受限玻爾茲曼機(jī)(RBM)堆疊而成,上一層RBM的隱層作為下一層RBM的可見(jiàn)層。
          (1) RBM


          一個(gè)普通的RBM網(wǎng)絡(luò)結(jié)構(gòu)如上圖所示,是一個(gè)雙層模型,由m個(gè)可見(jiàn)層單元及n個(gè)隱層單元組成,其中,層內(nèi)神經(jīng)元無(wú)連接,層間神經(jīng)元全連接,也就是說(shuō):在給定可見(jiàn)層狀態(tài)時(shí),隱層的激活狀態(tài)條件獨(dú)立,反之,當(dāng)給定隱層狀態(tài)時(shí),可見(jiàn)層的激活狀態(tài)條件獨(dú)立。這保證了層內(nèi)神經(jīng)元之間的條件獨(dú)立性,降低概率分布計(jì)算及訓(xùn)練的復(fù)雜度。RBM可以被視為一個(gè)無(wú)向圖模型,可見(jiàn)層神經(jīng)元與隱層神經(jīng)元之間的連接權(quán)重是雙向的,即可見(jiàn)層到隱層的連接權(quán)重為W,則隱層到可見(jiàn)層的連接權(quán)重為W’。除以上提及的參數(shù)外,RBM的參數(shù)還包括可見(jiàn)層偏置b及隱層偏置c。RBM可見(jiàn)層和隱層單元所定義的分布可根據(jù)實(shí)際需要更換,包括:Binary單元、Gaussian單元、Rectified Linear單元等,這些不同單元的主要區(qū)別在于其激活函數(shù)不同
          (2) DBN

          DBN模型由若干層RBM堆疊而成,如果在訓(xùn)練集中有標(biāo)簽數(shù)據(jù),那么最后一層RBM的可見(jiàn)層中既包含前一層RBM的隱層單元,也包含標(biāo)簽層單元。假設(shè)頂層RBM的可見(jiàn)層有500個(gè)神經(jīng)元,訓(xùn)練數(shù)據(jù)的分類一共分成了10類,那么頂層RBM的可見(jiàn)層有510個(gè)顯性神經(jīng)元,對(duì)每一訓(xùn)練數(shù)據(jù),相應(yīng)的標(biāo)簽神經(jīng)元被打開(kāi)設(shè)為1,而其他的則被關(guān)閉設(shè)為0

          3.1.2 訓(xùn)練過(guò)程和優(yōu)缺點(diǎn)

          DBN的訓(xùn)練包括Pre-training和Fine tuning兩步,其中Pre-training過(guò)程相當(dāng)于逐層訓(xùn)練每一個(gè)RBM,經(jīng)過(guò)Pre-training的DBN已經(jīng)可用于模擬訓(xùn)練數(shù)據(jù),而為了進(jìn)一步提高網(wǎng)絡(luò)的判別性能, Fine tuning過(guò)程利用標(biāo)簽數(shù)據(jù)通過(guò)BP算法對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行微調(diào)。
          對(duì)DBN優(yōu)缺點(diǎn)的總結(jié)主要集中在生成模型與判別模型的優(yōu)缺點(diǎn)總結(jié)上。
          1、優(yōu)點(diǎn):

          • 生成模型學(xué)習(xí)聯(lián)合概率密度分布,所以就可以從統(tǒng)計(jì)的角度表示數(shù)據(jù)的分布情況,能夠反映同類數(shù)據(jù)本身的相似度;
          • 生成模型可以還原出條件概率分布,此時(shí)相當(dāng)于判別模型,而判別模型無(wú)法得到聯(lián)合分布,所以不能當(dāng)成生成模型使用。

          2、缺點(diǎn):
          - 生成模型不關(guān)心不同類別之間的最優(yōu)分類面到底在哪兒,所以用于分類問(wèn)題時(shí),分類精度可能沒(méi)有判別模型高;
          - 由于生成模型學(xué)習(xí)的是數(shù)據(jù)的聯(lián)合分布,因此在某種程度上學(xué)習(xí)問(wèn)題的復(fù)雜性更高。
          - 要求輸入數(shù)據(jù)具有平移不變性。

          關(guān)于 判別模型與生成模型可以參看(http://blog.csdn.net/erlib/article/details/53585134)

          3.1.3 改進(jìn)模型

          DBN的變體比較多,它的改進(jìn)主要集中于其組成“零件”RBM的改進(jìn),有卷積DBN(CDBN)和條件RBM(Conditional RBM)等。
          DBN并沒(méi)有考慮到圖像的二維結(jié)構(gòu)信息,因?yàn)檩斎胧呛?jiǎn)單的將一個(gè)圖像矩陣轉(zhuǎn)換為一維向量。而CDBN利用鄰域像素的空域關(guān)系,通過(guò)一個(gè)稱為卷積RBM(CRBM)的模型達(dá)到生成模型的變換不變性,而且可以容易得變換到高維圖像。
          DBN并沒(méi)有明確地處理對(duì)觀察變量的時(shí)間聯(lián)系的學(xué)習(xí)上,Conditional RBM通過(guò)考慮前一時(shí)刻的可見(jiàn)層單元變量作為附加的條件輸入,以模擬序列數(shù)據(jù),這種變體在語(yǔ)音信號(hào)處理領(lǐng)域應(yīng)用較多。

          3.2 CNN(Convolution Neural Networks)卷積神經(jīng)網(wǎng)絡(luò)

          卷積神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)的一種,已成為當(dāng)前語(yǔ)音分析和圖像識(shí)別領(lǐng)域的研究熱點(diǎn)。它的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類似于生物神經(jīng)網(wǎng)絡(luò),降低了網(wǎng)絡(luò)模型的復(fù)雜度,減少了權(quán)值的數(shù)量。該優(yōu)點(diǎn)在網(wǎng)絡(luò)的輸入是多維圖像時(shí)表現(xiàn)的更為明顯,使圖像可以直接作為網(wǎng)絡(luò)的輸入,避免了傳統(tǒng)識(shí)別算法中復(fù)雜的特征提取和數(shù)據(jù)重建過(guò)程。
          全鏈接DNN的結(jié)構(gòu)里下層神經(jīng)元和所有上層神經(jīng)元都能夠形成連接,帶來(lái)了參數(shù)數(shù)量的膨脹問(wèn)題。例如,1000*1000的像素圖像,光這一層就有10^12個(gè)權(quán)重需要訓(xùn)練。此時(shí)我們可以用卷積神經(jīng)網(wǎng)絡(luò)CNN,對(duì)于CNN來(lái)說(shuō),并不是所有上下層神經(jīng)元都能直接相連,而是通過(guò)“卷積核”作為中介。同一個(gè)卷積核在所有圖像內(nèi)是共享的,圖像通過(guò)卷積操作后仍然保留原先的位置關(guān)系。圖像輸入層到隱含層的參數(shù)瞬間降低到了100*100*100=10^6個(gè)
          卷積網(wǎng)絡(luò)是為識(shí)別二維形狀而特殊設(shè)計(jì)的一個(gè)多層感知器,這種網(wǎng)絡(luò)結(jié)構(gòu)對(duì)平移、比例縮放、傾斜或者共他形式的變形具有高度不變性。

          3.2.1 網(wǎng)絡(luò)結(jié)構(gòu)

          卷積神經(jīng)網(wǎng)絡(luò)是一個(gè)多層的神經(jīng)網(wǎng)絡(luò),其基本運(yùn)算單元包括:卷積運(yùn)算、池化運(yùn)算、全連接運(yùn)算和識(shí)別運(yùn)算。

          • 卷積運(yùn)算:前一層的特征圖與一個(gè)可學(xué)習(xí)的卷積核進(jìn)行卷積運(yùn)算,卷積的結(jié)果經(jīng)過(guò)激活函數(shù)后的輸出形成這一層的神經(jīng)元,從而構(gòu)成該層特征圖,也稱特征提取層,每個(gè)神經(jīng)元的輸入與前一層的局部感受野相連接,并提取該局部的特征,一旦該局部特征被提取,它與其它特征之間的位置關(guān)系就被確定。l
          • 池化運(yùn)算:能很好的聚合特征、降維來(lái)減少運(yùn)算量。它把輸入信號(hào)分割成不重疊的區(qū)域,對(duì)于每個(gè)區(qū)域通過(guò)池化(下采樣)運(yùn)算來(lái)降低網(wǎng)絡(luò)的空間分辨率,比如最大值池化是選擇區(qū)域內(nèi)的最大值,均值池化是計(jì)算區(qū)域內(nèi)的平均值。通過(guò)該運(yùn)算來(lái)消除信號(hào)的偏移和扭曲。
          • 全連接運(yùn)算:輸入信號(hào)經(jīng)過(guò)多次卷積核池化運(yùn)算后,輸出為多組信號(hào),經(jīng)過(guò)全連接運(yùn)算,將多組信號(hào)依次組合為一組信號(hào)。
            識(shí)別運(yùn)算:上述運(yùn)算過(guò)程為特征學(xué)習(xí)運(yùn)算,需在上述運(yùn)算基礎(chǔ)上根據(jù)業(yè)務(wù)需求(分類或回歸問(wèn)題)增加一層網(wǎng)絡(luò)用于分類或回歸計(jì)算。

          3.2.2 訓(xùn)練過(guò)程和優(yōu)缺點(diǎn)

          卷積網(wǎng)絡(luò)在本質(zhì)上是一種輸入到輸出的映射,它能夠?qū)W習(xí)大量的輸入與輸出之間的映射關(guān)系,而不需要任何輸入和輸出之間的精確的數(shù)學(xué)表達(dá)式,只要用已知的模式對(duì)卷積網(wǎng)絡(luò)加以訓(xùn)練,網(wǎng)絡(luò)就具有輸入輸出對(duì)之間的映射能力。卷積網(wǎng)絡(luò)執(zhí)行的是有監(jiān)督訓(xùn)練,所以其樣本集是由形如:(輸入信號(hào),標(biāo)簽值)的向量對(duì)構(gòu)成的。

          1、優(yōu)點(diǎn):
          - 權(quán)重共享策略減少了需要訓(xùn)練的參數(shù),相同的權(quán)重可以讓濾波器不受信號(hào)位置的影響來(lái)檢測(cè)信號(hào)的特性,使得訓(xùn)練出來(lái)的模型的泛化能力更強(qiáng);
          - 池化運(yùn)算可以降低網(wǎng)絡(luò)的空間分辨率,從而消除信號(hào)的微小偏移和扭曲,從而對(duì)輸入數(shù)據(jù)的平移不變性要求不高。

          2、缺點(diǎn):
          - 深度模型容易出現(xiàn)梯度消散問(wèn)題。

          3.2.3 改進(jìn)模型

          卷積神經(jīng)網(wǎng)絡(luò)因?yàn)槠湓诟鱾€(gè)領(lǐng)域中取得了好的效果,是近幾年來(lái)研究和應(yīng)用最為廣泛的深度神經(jīng)網(wǎng)絡(luò)。比較有名的卷積神經(jīng)網(wǎng)絡(luò)模型主要包括1986年Lenet,2012年的Alexnet,2014年的GoogleNet,2014年的VGG,2015年的Deep Residual Learning。這些卷積神經(jīng)網(wǎng)絡(luò)的改進(jìn)版本或者模型的深度,或者模型的組織結(jié)構(gòu)有一定的差異,但是組成模型的機(jī)構(gòu)構(gòu)建是相同的,基本都包含了卷積運(yùn)算、池化運(yùn)算、全連接運(yùn)算和識(shí)別運(yùn)算。

          3.3 RNN(Recurrent neural network) 遞歸神經(jīng)網(wǎng)絡(luò)

          全連接的DNN除了以上問(wèn)題以外還存在著另一個(gè)問(wèn)題——無(wú)法對(duì)時(shí)間序列上的變化進(jìn)行建模。然而,樣本出現(xiàn)的時(shí)間順序?qū)τ谧匀徽Z(yǔ)言處理、語(yǔ)音識(shí)別、手寫體識(shí)別等應(yīng)用非常重要。對(duì)了適應(yīng)這種需求,就出現(xiàn)了題主所說(shuō)的另一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)——循環(huán)神經(jīng)網(wǎng)絡(luò)RNN(不知道為什么很多叫循環(huán)的。計(jì)算機(jī)術(shù)語(yǔ)里循環(huán)一般是同一層次的,Recurrent 其實(shí)是時(shí)間遞歸,所以本文叫他遞歸神經(jīng)網(wǎng)絡(luò))。
          在普通的全連接網(wǎng)絡(luò)或CNN中,每層神經(jīng)元的信號(hào)只能向上一層傳播,樣本的處理在各個(gè)時(shí)刻獨(dú)立,因此又被成為前向神經(jīng)網(wǎng)絡(luò)(Feed-forward Neural Networks)。而在RNN中,神經(jīng)元的輸出可以在下一個(gè)時(shí)間戳直接作用到自身。
          即:(t+1)時(shí)刻網(wǎng)絡(luò)的最終結(jié)果O(t+1)是該時(shí)刻輸入和所有歷史共同作用的結(jié)果。RNN可以看成一個(gè)在時(shí)間上傳遞的神經(jīng)網(wǎng)絡(luò),它的深度是時(shí)間的長(zhǎng)度!正如我們上面所說(shuō),“梯度消失”現(xiàn)象又要出現(xiàn)了,只不過(guò)這次發(fā)生在時(shí)間軸上
          為了解決時(shí)間上的梯度消失,機(jī)器學(xué)習(xí)領(lǐng)域發(fā)展出了長(zhǎng)短時(shí)記憶單元(LSTM),通過(guò)門的開(kāi)關(guān)實(shí)現(xiàn)時(shí)間上記憶功能,并防止梯度消失。

          3.3.1 網(wǎng)絡(luò)結(jié)構(gòu)


          左側(cè)是遞歸神經(jīng)網(wǎng)絡(luò)的原始結(jié)構(gòu),如果先拋棄中間那個(gè)令人生畏的閉環(huán),那其實(shí)就是簡(jiǎn)單“輸入層=>隱藏層=>輸出層”的三層結(jié)構(gòu),但是圖中多了一個(gè)非常陌生的閉環(huán),也就是說(shuō)輸入到隱藏層之后,隱藏層還會(huì)輸入給自己,使得該網(wǎng)絡(luò)可以擁有記憶能力。我們說(shuō)遞歸神經(jīng)網(wǎng)絡(luò)擁有記憶能力,而這種能力就是通過(guò)W將以往的輸入狀態(tài)進(jìn)行總結(jié),而作為下次輸入的輔助??梢赃@樣理解隱藏狀態(tài):h=f(現(xiàn)有的輸入+過(guò)去記憶總結(jié))

          3.3.2 訓(xùn)練過(guò)程和優(yōu)缺點(diǎn)

          遞歸神經(jīng)網(wǎng)絡(luò)中由于輸入時(shí)疊加了之前的信號(hào),所以反向傳導(dǎo)時(shí)不同于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),因?yàn)閷?duì)于時(shí)刻t的輸入層,其殘差不僅來(lái)自于輸出,還來(lái)自于之后的隱層。通過(guò)反向傳遞算法,利用輸出層的誤差,求解各個(gè)權(quán)重的梯度,然后利用梯度下降法更新各個(gè)權(quán)重。
          1、優(yōu)點(diǎn):

          • 模型是時(shí)間維度上的深度模型,可以對(duì)序列內(nèi)容建模。

          2、缺點(diǎn):
          - 需要訓(xùn)練的參數(shù)較多,容易出現(xiàn)梯度消散或梯度爆炸問(wèn)題;
          - 不具有特征學(xué)習(xí)能力。

          3.3.3 改進(jìn)模型

          遞歸神經(jīng)網(wǎng)絡(luò)模型可以用來(lái)處理序列數(shù)據(jù),遞歸神經(jīng)網(wǎng)絡(luò)包含了大量參數(shù),且難于訓(xùn)練(時(shí)間維度的梯度消散或梯度爆炸),所以出現(xiàn)一系列對(duì)RNN優(yōu)化,比如網(wǎng)絡(luò)結(jié)構(gòu)、求解算法與并行化。
          近年來(lái)bidirectional RNN (BRNN)與 LSTM在image captioning, language translation, and handwriting recognition這幾個(gè)方向上有了突破性進(jìn)展 。

          3.4 混合結(jié)構(gòu)

          除了以上三種網(wǎng)絡(luò),和我之前提到的深度殘差學(xué)習(xí)、LSTM外,深度學(xué)習(xí)還有許多其他的結(jié)構(gòu)。舉個(gè)例子,RNN既然能繼承歷史信息,是不是也能吸收點(diǎn)未來(lái)的信息呢?因?yàn)樵谛蛄行盘?hào)分析中,如果我能預(yù)知未來(lái),對(duì)識(shí)別一定也是有所幫助的。因此就有了雙向RNN、雙向LSTM,同時(shí)利用歷史和未來(lái)的信息。雙向RNN、雙向LSTM,同時(shí)利用歷史和未來(lái)的信息。
          事實(shí)上,不論是那種網(wǎng)絡(luò),他們?cè)趯?shí)際應(yīng)用中常常都混合著使用,比如CNN和RNN在上層輸出之前往往會(huì)接上全連接層,很難說(shuō)某個(gè)網(wǎng)絡(luò)到底屬于哪個(gè)類別。
          不難想象隨著深度學(xué)習(xí)熱度的延續(xù),更靈活的組合方式、更多的網(wǎng)絡(luò)結(jié)構(gòu)將被發(fā)展出來(lái)。盡管看起來(lái)千變?nèi)f化,但研究者們的出發(fā)點(diǎn)肯定都是為了解決特定的問(wèn)題。如果想進(jìn)行這方面的研究,不妨仔細(xì)分析一下這些結(jié)構(gòu)各自的特點(diǎn)以及它們達(dá)成目標(biāo)的手段。

          3.5 CNN和RNN的比較

          RNN的重要特性是可以處理不定長(zhǎng)的輸入,得到一定的輸出。當(dāng)你的輸入可長(zhǎng)可短, 比如訓(xùn)練翻譯模型的時(shí)候, 你的句子長(zhǎng)度都不固定,你是無(wú)法像一個(gè)訓(xùn)練固定像素的圖像那樣用CNN搞定的。而利用RNN的循環(huán)特性可以輕松搞定。
          在序列信號(hào)的應(yīng)用上,CNN是只響應(yīng)預(yù)先設(shè)定的信號(hào)長(zhǎng)度(輸入向量的長(zhǎng)度),RNN的響應(yīng)長(zhǎng)度是學(xué)習(xí)出來(lái)的。

          CNN對(duì)特征的響應(yīng)是線性的,RNN在這個(gè)遞進(jìn)方向上是非線性響應(yīng)的。這也帶來(lái)了很大的差別。

          CNN 專門解決圖像問(wèn)題的,可用把它看作特征提取層,放在輸入層上,最后用MLP 做分類。
          RNN 專門解決時(shí)間序列問(wèn)題的,用來(lái)提取時(shí)間序列信息,放在特征提取層(如CNN)之后。

          RNN,遞歸型網(wǎng)絡(luò),用于序列數(shù)據(jù),并且有了一定的記憶效應(yīng),輔之以lstm。
          CNN應(yīng)該側(cè)重空間映射,圖像數(shù)據(jù)尤為貼合此場(chǎng)景。

          CNN 卷積擅長(zhǎng)從局部特征逼近整體特征,
          RNN 擅長(zhǎng)對(duì)付時(shí)間序列。

          四、一些基本概念和知識(shí)

          4.1 線性回歸、線性神經(jīng)網(wǎng)絡(luò)、Logistic/Softmax回歸

          這個(gè)參考http://blog.csdn.net/erlib/article/details/53585134
          或者其他資料。

          4.2 關(guān)于卷積、池化、激活函數(shù)等

          入門參考:http://blog.csdn.net/u010859498/article/details/78794405
          詳細(xì)了解可自己谷歌百度

          4.3 推薦一個(gè)比較好的入門資料

          臺(tái)大電機(jī)系李宏毅教授的講義《一天搞懂深度學(xué)習(xí)》
          有人做簡(jiǎn)略的翻譯過(guò)
          https://www.jianshu.com/p/c30f7c944b66

          參考資料:
          http://blog.csdn.net/erlib/article/details/53585134
          https://www.zhihu.com/question/34681168/answer/156552873
          http://blog.csdn.net/u010859498/article/details/78794405

          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
          打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          機(jī)器學(xué)習(xí):簡(jiǎn)單入門的深度學(xué)習(xí)筆記Part2
          十大深度學(xué)習(xí)算法的原理解析
          四種深度學(xué)習(xí)模型介紹
          深度學(xué)習(xí)大熱以后各種模型層出不窮,主流的深度學(xué)習(xí)模型有哪些?
          前沿: 深度學(xué)習(xí)在經(jīng)濟(jì)學(xué)中的全面應(yīng)用, 一篇系統(tǒng)性的綜述!
          腦機(jī)接口與深度學(xué)習(xí)
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服