(完整版)一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN_第1頁
(完整版)一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN_第2頁
(完整版)一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN_第3頁
(完整版)一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN_第4頁
(完整版)一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、一文讀懂卷積神經(jīng)網(wǎng)絡(luò)CNN第一點(diǎn)在學(xué)習(xí)Deeplearning和CNN之前總以為它們是很了不得的知識(shí),總以為它們能解決很多問題,學(xué)習(xí)了之后,才知道它們不過與其他機(jī)器學(xué)習(xí)算法如SVM等相似,仍然可以把它當(dāng)作一個(gè)分類器,仍然可以像使用一個(gè)黑盒子那樣使用它。第二點(diǎn),DeepLearning強(qiáng)大的地方就是可以利用網(wǎng)絡(luò)中間某一層的輸出當(dāng)作是數(shù)據(jù)的另一種表達(dá),從而可以將其認(rèn)為是經(jīng)過網(wǎng)絡(luò)學(xué)習(xí)到的特征?;谠撎卣鳎梢赃M(jìn)行進(jìn)一步的相似度比較等。第三點(diǎn),DeepLearning算法能夠有效的關(guān)鍵其實(shí)是大規(guī)模的數(shù)據(jù),這一點(diǎn)原因在于每個(gè)DL都有眾多的參數(shù),少量數(shù)據(jù)無法將參數(shù)訓(xùn)練充分。接下來話不多說,接奔入主題開始C

2、NN之旅。卷積神經(jīng)網(wǎng)絡(luò)簡介(ConvolutionalNeuralNetworks,簡稱CNN),卷積神經(jīng)網(wǎng)絡(luò)是近年發(fā)展起來并引起廣泛重視的一種高效識(shí)別方法。20世紀(jì)60年代,Hubei和Wiesel在研究貓腦皮層中用于局部敏感和方向選擇的神經(jīng)元時(shí)發(fā)現(xiàn)其獨(dú)特的網(wǎng)絡(luò)結(jié)構(gòu)可以有效地降低反饋神經(jīng)網(wǎng)絡(luò)的復(fù)雜性,繼而提出了卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetworks-簡稱CNN)?,F(xiàn)在/CNN已經(jīng)成為眾多科學(xué)領(lǐng)域的研究熱點(diǎn)之一,特別是在模式分類領(lǐng)域,由于該網(wǎng)絡(luò)避免了對(duì)圖像的復(fù)雜前期預(yù)處理,可以直接輸入原始圖像,因而得到了更為廣泛的應(yīng)用。K.Fukushima在1980年提出的新識(shí)

3、別機(jī)是卷積神經(jīng)網(wǎng)絡(luò)的第一個(gè)實(shí)現(xiàn)網(wǎng)絡(luò)。隨后,更多的科研工作者對(duì)該網(wǎng)絡(luò)進(jìn)行了改進(jìn)。其中,具有代表性的研究成果是Alexander和Taylor提出的“改進(jìn)認(rèn)知機(jī)”,該方法綜合了各種改進(jìn)方法的優(yōu)點(diǎn)并避免了耗時(shí)的誤差反向傳播。般地,CNN的基本結(jié)構(gòu)包括兩層,其一為特征提取層,每個(gè)神經(jīng)元的輸入與前一層的局部接受域相連,并提取該局部的特征。一旦該局部特征被提取后,它與其它特征間的位置關(guān)系也隨之確定下來;其二是特征映射層,網(wǎng)絡(luò)的每個(gè)計(jì)算層由多個(gè)特征映射組成/每個(gè)特征映射是一個(gè)平面/平面上所有神經(jīng)元的權(quán)值相等。特征映射結(jié)構(gòu)采用影響函數(shù)核小的sigmoid函數(shù)作為卷積網(wǎng)絡(luò)的激活函數(shù),使得特征映射具有位移不變性。

4、此外,由于一個(gè)映射面上的神經(jīng)元共享權(quán)值,因而減少了網(wǎng)絡(luò)自由參數(shù)的個(gè)數(shù)。卷積神經(jīng)網(wǎng)絡(luò)中的每一個(gè)卷積層都緊跟著一個(gè)用來求局部平均與二次提取的計(jì)算層,這種特有的兩次特征提取結(jié)構(gòu)減小了特征分辨率。CNN主要用來識(shí)別位移、縮放及其他形式扭曲不變性的二維圖形。由于CNN的特征檢測(cè)層通過訓(xùn)練數(shù)據(jù)進(jìn)行學(xué)習(xí),所以在使用CNN時(shí),避免了顯示的特征抽取,而隱式地從訓(xùn)練數(shù)據(jù)中進(jìn)行學(xué)習(xí);再者由于同一特征映射面上的神經(jīng)元權(quán)值相同,所以網(wǎng)絡(luò)可以并行學(xué)習(xí),這也是卷積網(wǎng)絡(luò)相對(duì)于神經(jīng)元彼此相連網(wǎng)絡(luò)的大優(yōu)勢(shì)。卷積神經(jīng)網(wǎng)絡(luò)以其局部權(quán)值共享的特殊結(jié)構(gòu)在語音識(shí)別和圖像處理方面有著獨(dú)特的優(yōu)越性,其布局更接近于實(shí)際的生物神經(jīng)網(wǎng)絡(luò),權(quán)值共享降

5、低了網(wǎng)絡(luò)的復(fù)雜性,特別是多維輸入向量的圖像可以直接輸入網(wǎng)絡(luò)這一特點(diǎn)避免了特征提取和分類過程中數(shù)據(jù)重建的復(fù)雜度。1、神經(jīng)網(wǎng)絡(luò)首先介紹神經(jīng)網(wǎng)絡(luò),這一步的詳細(xì)可以參考資源1。簡要介紹下。神經(jīng)網(wǎng)絡(luò)的每個(gè)單元如下:其對(duì)應(yīng)的公式如下:hw的=于(皿坯)=/(Si-iWiiIfe)其中,該單元也可以被稱作是Logistic回歸模型。當(dāng)將多個(gè)單元組合起來并具有分層結(jié)構(gòu)時(shí),就形成了神經(jīng)網(wǎng)絡(luò)模型。下圖展示了一個(gè)具有一個(gè)隱含層的神經(jīng)網(wǎng)絡(luò)。LayerL3LayerLtLayer其對(duì)應(yīng)的公式如下:妤=代畸仏I吧陀I函屮叼I址)忒)=f泓即卸+喊仏+喊尬+堺)42)=f(Wx,4肥;S丨唱彌I時(shí))曦a=劇=幾例?絆+朗?

6、坎+略閱)+蹭)比較類似的,可以拓展到有2,3,4,5,個(gè)隱含層。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法也同Logistic類似,不過由于其多層性,還需要利用鏈?zhǔn)角髮?dǎo)法則對(duì)隱含層的節(jié)點(diǎn)進(jìn)行求導(dǎo),即梯度下降+鏈?zhǔn)角髮?dǎo)法則,專業(yè)名稱為反向傳播。關(guān)于訓(xùn)練算法,本文暫不涉及。2、卷積神經(jīng)網(wǎng)絡(luò)在圖像處理中彳主往把圖像表示為像素的向量上匕如一個(gè)1000 x1000的圖像,可以表示為一個(gè)1000000的向量。在上一節(jié)中提到的神經(jīng)網(wǎng)絡(luò)中,如果隱含層數(shù)目與輸入層一樣,即也是1000000時(shí),那么輸入層到隱含層的參數(shù)數(shù)據(jù)為1000000 x1000000=10人12,這樣就太多了,基本沒法訓(xùn)練。所以圖像處理要想練成神經(jīng)網(wǎng)絡(luò)大法,必先

7、減少參數(shù)加快速度。就跟辟邪劍譜似的,普通人練得很挫,旦自宮后內(nèi)力變強(qiáng)劍法變快,就變的很牛了。2.1局部感知卷積神經(jīng)網(wǎng)絡(luò)有兩種神器可以降低參數(shù)數(shù)目,第一種神器叫做局部感知。一般認(rèn)為人對(duì)外界的認(rèn)知是從局部到全局的,而圖像的空間聯(lián)系也是局部的像素聯(lián)系較為緊密,而距離較遠(yuǎn)的像素相關(guān)性則較弱。因而,每個(gè)神經(jīng)元其實(shí)沒有必要對(duì)全局圖像進(jìn)行感知,只需要對(duì)局部進(jìn)行感知,然后在更高層將局部的信息綜合起來就得到了全局的信息。網(wǎng)絡(luò)部分連通的思想,也是受啟發(fā)于生物學(xué)里面的視覺系統(tǒng)結(jié)構(gòu)。視覺皮層的神經(jīng)元就是局部接受信息的(即這些神經(jīng)元只響應(yīng)某些特定區(qū)域的刺激)。如下圖所示:左圖為全連接,右圖為局部連接。full#coNN

8、ecrebneuralnetSpatialcomlationJkoJ-BcHtrtcpirtresaircesdsewhereJExamplt;t0OT*10WimogcIMhiddenlimits斗10*12jKEThErilNLOCAUYCONNECTEDNEURALNETExamplaoaxiQWf呻IriAh”3entfiitsFiftfFsizelOvlO1X3MparamttersQanni在上右圖中,假如每個(gè)神經(jīng)元只和10 x10個(gè)像素值相連,那么權(quán)值數(shù)據(jù)為1000000 x100個(gè)參數(shù)減少為原來的千分之一而那10 x10個(gè)像素值對(duì)應(yīng)的10 x10個(gè)參數(shù),其實(shí)就相當(dāng)于卷積操作。2

9、.2參數(shù)共享但其實(shí)這樣的話參數(shù)仍然過多,那么就啟動(dòng)第二級(jí)神器,即權(quán)值共享。在上面的局部連接中/每個(gè)神經(jīng)元都對(duì)應(yīng)100個(gè)參數(shù),共1000000個(gè)神經(jīng)元,如果這1000000個(gè)神經(jīng)元的100個(gè)參數(shù)都是相等的,那么參數(shù)數(shù)目就變?yōu)?00了。怎么理解權(quán)值共享呢?我們可以將這100個(gè)參數(shù)(也就是卷積操作)看成是提取特征的方式,該方式與位置無關(guān)。這其中隱含的原理則是:圖像的一部分的統(tǒng)計(jì)特性與其他部分是一樣的。這也意味著我們?cè)谶@一部分學(xué)習(xí)的特征也能用在另一部分上,所以對(duì)于這個(gè)圖像上的所有位置,我們都能使用同樣的學(xué)習(xí)特征。更直觀一些,當(dāng)從一個(gè)大尺寸圖像中隨機(jī)選取一小塊,比如說8x8作為樣本,并且從這個(gè)小塊樣本中

10、學(xué)習(xí)到了一些特征,這時(shí)我們可以把從這個(gè)8x8樣本中學(xué)習(xí)到的特征作為探測(cè)器,應(yīng)用到這個(gè)圖像的任意地方中去。特別是,我們可以用從8x8樣本中所學(xué)習(xí)到的特征跟原本的大尺寸圖像作卷積,從而對(duì)這個(gè)大尺寸圖像上的任一位置獲得一個(gè)不同特征的激活值。如下圖所示,展示了一個(gè)33的卷積核在55的圖像上做卷積的過程。每個(gè)卷積都是一種特征提取方式,就像一個(gè)篩子,將圖像中符合條件(激活值越大越符合條件)的部分篩選出來。i000Qoi010QQo11001101104ImageConvolvedFeature2.3多卷積核上面所述只有100個(gè)參數(shù)時(shí),表明只有1個(gè)100*100的卷積核,顯然,特征提取是不充分的,我們可以添

11、加多個(gè)卷積核,比如32個(gè)卷積核,可以學(xué)習(xí)32種特征。在有多個(gè)卷積核時(shí),如下圖所示:LOWLtyCONNECTEDNEURALNETSTATTQMNRL貯StQtistiwismsloratdifferentlaJ*layerm-lhiddenlayerm所以在上圖由4個(gè)通道卷積得到2個(gè)通道的過程中參數(shù)的數(shù)目為4x2x2x2個(gè),其中4表示4個(gè)通道,第一個(gè)2表示生成2個(gè)通道,最后的2x2表示卷積核大小。在通過卷積獲得了特征(features)之后,下一步我們希望利用這些特征去做分類。理論上講,人們可以用所有提取得到的特征去訓(xùn)練分類器,例如softmax分類器,但這樣做面臨計(jì)算量的挑戰(zhàn)。例如:對(duì)于一

12、個(gè)96x96像素的圖像,假設(shè)我們已經(jīng)學(xué)習(xí)得到了400個(gè)定義在8x8輸入上的特征,每一個(gè)特征和圖像卷積都會(huì)得到一個(gè)(968+1)X(968+1)=7維的卷積特征,由于有400個(gè)特征,所以每個(gè)樣例(example)都會(huì)得到一個(gè)7921x400=3,168,400維的卷積特征向量。學(xué)習(xí)一個(gè)擁有超過3百萬特征輸入的分類器十分不便,并且容易出現(xiàn)過擬合(over-fitting)。為了解決這個(gè)問題,首先回憶一下,我們之所以決定使用卷積后的特征是因?yàn)閳D像具有一種“靜態(tài)性”的屬性,這也就意味著在一個(gè)圖像區(qū)域有用的特征極有可能在另一個(gè)區(qū)域同樣適用。因此,為了描述大的圖像,一個(gè)很自然的想法就是對(duì)不同位置的特征進(jìn)行

13、聚合統(tǒng)計(jì),例如,人們可以計(jì)算圖像一個(gè)區(qū)域上的某個(gè)特定特征的平均值(或最大值)。這些概要統(tǒng)計(jì)特征不僅具有低得多的維度(相比使用所有提取得到的特征),同時(shí)還會(huì)改善結(jié)果(不容易過擬合)。這種聚合的操作就叫做池化(pooling),有時(shí)也稱為平均池化或者最大池化(取決于計(jì)算池化的方法)。ConvolvedPooledfeaturefeature至此,卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)和原理已經(jīng)闡述完畢。2.5多層卷積在實(shí)際應(yīng)用中,往往使用多層卷積,然后再使用全連接層進(jìn)行訓(xùn)練,多層卷積的目的是一層卷積學(xué)到的特征往往是局部的,層數(shù)越高,學(xué)到的特征就越全局化。3、ImageNet-2010網(wǎng)絡(luò)結(jié)構(gòu)ImageNetLSV

14、RC是一個(gè)圖片分類的比賽,其訓(xùn)練集包括127W+張圖片,驗(yàn)證集有5W張圖片,測(cè)試集有15W張圖片。本文截取2010年AlexKrizhevsky的CNN結(jié)構(gòu)進(jìn)行說明,該結(jié)構(gòu)在2010年取得冠軍,top-5錯(cuò)誤率為15.3%。值得一提的是,在今年的ImageNetLSVRC比賽中,取得冠軍的GoogNet已經(jīng)達(dá)到了top-5錯(cuò)誤率6.67%。可見,深度學(xué)習(xí)的提升空間還很巨大。下圖即為Alex的CNN結(jié)構(gòu)圖。需要注意的是,該模型采用了2-GPU并行結(jié)構(gòu),即第1、2、4、5卷積層都是將模型參數(shù)分為2部分進(jìn)行訓(xùn)練的。在這里,更進(jìn)一步,并行結(jié)構(gòu)分為數(shù)據(jù)并行與模型并行。數(shù)據(jù)并行是指在不同的GPU上,模型結(jié)

15、構(gòu)相同,但將訓(xùn)練數(shù)據(jù)進(jìn)行切分,分別訓(xùn)練得到不同的模型,然后再將模型進(jìn)行融合。而模型并行則是,將若干層的模型參數(shù)進(jìn)行切分,不同的GPU上使用相同的數(shù)據(jù)進(jìn)行訓(xùn)練,得到的結(jié)果直接連接作為下一層的輸入。上圖模型的基本參數(shù)為:輸入:224x224大小的圖片,3通道第一層卷積:5x5大小的卷積核96個(gè),每個(gè)GPU上48個(gè)。第一層max-pooling:2x2的核。第二層卷積:3x3卷積核256個(gè),每個(gè)GPU上128個(gè)。第二層max-pooling:2x2的核。第三層卷積:與上一層是全連接,3*3的卷積核384個(gè)。分到兩個(gè)GPU上個(gè)192個(gè)。第四層卷積:3x3的卷積核384個(gè),兩個(gè)GPU各192個(gè)。該層與上

16、一層連接沒有經(jīng)過pooling層。第五層卷積:3x3的卷積核256個(gè),兩個(gè)GPU上個(gè)128個(gè)。第五層max-pooling:2x2的核。第一層全連接:4096維,將第五層max-pooling的輸出連接成為一一維向量,作為該層的輸入。第二層全連接:4096維Softmax層:輸出為1000,輸出的每一維都是圖片屬于該類別的概率。4、DeepID網(wǎng)絡(luò)結(jié)構(gòu)DeepID網(wǎng)絡(luò)結(jié)構(gòu)是香港中文大學(xué)的SunYi開發(fā)出來用來學(xué)習(xí)人臉特征的卷積神經(jīng)網(wǎng)絡(luò)。每張輸入的人臉被表示為160維的向量,學(xué)習(xí)到的向量經(jīng)過其他模型進(jìn)行分類,在人臉驗(yàn)證試驗(yàn)上得到了97.45%的正確率,更進(jìn)一步的,原作者改進(jìn)了CNN,又得到了99.15%的正確率。如下圖所示,該結(jié)構(gòu)與ImageNet的具體參數(shù)類似,所以只解釋一下不同的部分吧。ConvolutionalayjConvolutionallayer2ConvolutionalCo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論