




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、深度學(xué)習(xí)報(bào)告在寫本扌報(bào)告前,閱讀了TheHistoryBeganfromAlexNet:AComprehensiveSurveyonDeepLearningApproaches,并在網(wǎng)上查看了一些相關(guān)的內(nèi)容,對(duì)其整合和理解。但是其中的很多細(xì)節(jié)還沒(méi)有足夠的時(shí)間去探索,有的概念也不是很確定自己說(shuō)的對(duì)不對(duì),還望指正。這篇扌告的主要目標(biāo)是介紹深度學(xué)習(xí)的總體思路及其應(yīng)用相關(guān)領(lǐng)域,包括有監(jiān)督(如DNN、CNN和RNN)、無(wú)監(jiān)督(如AE、GAN)(有時(shí)GAN也用于半監(jiān)督學(xué)習(xí)任務(wù))和深度強(qiáng)化學(xué)習(xí)(DRL)的思路。在某些情況下,深度強(qiáng)化學(xué)習(xí)被認(rèn)為是半監(jiān)督無(wú)監(jiān)督的方法。本論文的其余部分的組織方式如下:第一節(jié)主要介
2、紹深度學(xué)習(xí)分類和特征。第二節(jié)討論DNN,第三節(jié)討論CNN;第四節(jié)介紹了不同的先進(jìn)技術(shù),以有效地訓(xùn)練深度學(xué)習(xí)模型;第五節(jié)討論RNN;第六節(jié)討論AE;第七節(jié)討GAN;第八節(jié)中介紹強(qiáng)化學(xué)習(xí)(RL);第九節(jié)解釋遷移學(xué)習(xí);第十節(jié)介紹了深度學(xué)習(xí)的高效應(yīng)用方法和硬件;第十一節(jié)討論了深度學(xué)習(xí)框架和標(biāo)準(zhǔn)開(kāi)發(fā)工具包(SDK)。下面是AI,ML,NN,DL的關(guān)系圖:一.深度學(xué)習(xí)分類和特征深度學(xué)習(xí)類型深度學(xué)習(xí)方法可以分為以下幾個(gè)類:監(jiān)督學(xué)習(xí),半監(jiān)督學(xué)習(xí),無(wú)監(jiān)督學(xué)習(xí),此外,還有另一類學(xué)習(xí)方法稱為強(qiáng)化學(xué)習(xí)(RL)或深度強(qiáng)化學(xué)習(xí)(DRL),它們經(jīng)常在半監(jiān)督或有時(shí)在非監(jiān)督學(xué)習(xí)方法的范圍內(nèi)討論。(1)監(jiān)督學(xué)習(xí)將大量的數(shù)據(jù)輸入機(jī)
3、器,這些數(shù)據(jù)被事先貼上標(biāo)簽,例如,要訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)識(shí)別蘋果或者橙子的圖片,就需要給這些圖片貼上標(biāo)簽,機(jī)器通過(guò)識(shí)別所有被標(biāo)記為蘋果或橙子的圖片來(lái)理解數(shù)據(jù),這些圖片有共同點(diǎn),因此機(jī)器可以利用這些已識(shí)別的圖片來(lái)更準(zhǔn)確的預(yù)測(cè)新圖片中的內(nèi)容到底是蘋果還是橙子。他們看到的標(biāo)記數(shù)據(jù)越多,看到的數(shù)據(jù)集越大,預(yù)測(cè)準(zhǔn)確性就越高。所以監(jiān)督學(xué)習(xí)是一種使用標(biāo)注數(shù)據(jù)的學(xué)習(xí)技術(shù)。在其案例中,環(huán)境包含一組對(duì)應(yīng)的輸入輸出。比如,輸入是x_t,智能體預(yù)測(cè)后的值與標(biāo)簽對(duì)比來(lái)獲得損失值。接著智能體不斷迭代調(diào)整網(wǎng)絡(luò)參數(shù),從而更好地近似期望輸出。成功訓(xùn)練之后,智能體可對(duì)環(huán)境問(wèn)題做出正確回答。監(jiān)督學(xué)習(xí)主要有以下幾種:深度神經(jīng)網(wǎng)絡(luò)(DN
4、N)、卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)(2)無(wú)監(jiān)督學(xué)習(xí)一種不使用標(biāo)注數(shù)據(jù)的學(xué)習(xí)技術(shù),即不知道輸入數(shù)據(jù)對(duì)應(yīng)的輸出結(jié)果是什么。在這種情況下,無(wú)監(jiān)督學(xué)習(xí)只能默默的讀取數(shù)據(jù),自己尋找數(shù)據(jù)的模型和規(guī)律,而不需要監(jiān)護(hù)人的指導(dǎo)。無(wú)監(jiān)督學(xué)習(xí)方法通常有聚類、降維和生成技術(shù)等。有些深度學(xué)習(xí)技術(shù)擅長(zhǎng)聚類和非線性降維,如自編碼器(AE)和GAN等。此外,RNN(比如LSTM)和RL也被用作半監(jiān)督學(xué)習(xí)243。到目前為止,在任何方面無(wú)監(jiān)督學(xué)習(xí)都達(dá)不到監(jiān)督學(xué)習(xí)的準(zhǔn)確性和有效性。(3)半監(jiān)督學(xué)習(xí)一種使用部分標(biāo)注數(shù)據(jù)的學(xué)習(xí)技術(shù)(通常被稱之為強(qiáng)化學(xué)習(xí)),半監(jiān)督學(xué)習(xí)訓(xùn)練中使用的數(shù)據(jù),只有一小部分是標(biāo)記過(guò)的,而大部分是
5、沒(méi)有標(biāo)記的。因此和監(jiān)督學(xué)習(xí)相比,半監(jiān)督學(xué)習(xí)的成本較低,但是又能達(dá)到較高的準(zhǔn)確度。在一些案例中,深度強(qiáng)化學(xué)習(xí)(DRL)和生成對(duì)抗網(wǎng)絡(luò)(GAN)常被用作半監(jiān)督學(xué)習(xí)技術(shù)。此外,包含LSTM的RNN和GRU也可劃分為半監(jiān)督學(xué)習(xí)。(4)強(qiáng)化學(xué)習(xí)(RL)強(qiáng)化學(xué)習(xí)(RL)不同于監(jiān)督學(xué)習(xí)和非監(jiān)督學(xué)習(xí)。在強(qiáng)化學(xué)習(xí)RL)中沒(méi)有原始已知數(shù)據(jù)可以學(xué)習(xí)。強(qiáng)化學(xué)習(xí)面對(duì)的是一個(gè)不斷變化的狀態(tài)空間要解決的是一個(gè)決策鏈問(wèn)題。其目的是找到在當(dāng)前環(huán)境(狀態(tài)空間)下最佳決策是什么。這里的挑戰(zhàn)是,當(dāng)下的決策好壞當(dāng)下無(wú)法驗(yàn)證和評(píng)估,要根據(jù)多次決策以后才能知道。就像下棋,當(dāng)前的決策(棋子落點(diǎn))要在五步十步棋之后才能判斷是好是壞。所以強(qiáng)化學(xué)
6、習(xí)中并沒(méi)有大量的原始已知輸入數(shù)據(jù),機(jī)器需要在變化的環(huán)境中通過(guò)多次的試錯(cuò)學(xué)習(xí),再根據(jù)某種規(guī)則找到產(chǎn)生最佳結(jié)果的最佳路徑,從而做出最佳決策。比較常見(jiàn)的應(yīng)用有下棋(包括下圍棋和象棋)、機(jī)器人、自動(dòng)駕駛等,這些人工智能技術(shù)中都用到了強(qiáng)化學(xué)習(xí)。特征學(xué)習(xí)通過(guò)機(jī)器學(xué)習(xí)解決問(wèn)題的思路:傳感器獲得數(shù)據(jù)預(yù)處理特征提取特征選擇推理,預(yù)測(cè)和識(shí)別(機(jī)器學(xué)習(xí)的部分),中間三部分也叫特征表達(dá),而特征是機(jī)器學(xué)習(xí)系統(tǒng)的原材料,對(duì)最終模型影響很重要,數(shù)據(jù)要能夠被很好的表達(dá)成特征,但是這一部分一般是靠人工提取特征,而手工提取需要專業(yè)知識(shí),費(fèi)時(shí),靠經(jīng)驗(yàn)和運(yùn)氣。傳統(tǒng)的機(jī)器學(xué)習(xí)特征提取算法包括:尺度不變特征變換(SIFT)、加速魯棒特征
7、(SURF)、GIST、RANSAC、直方圖方向梯度(HOG)、局部二元模式(LBP)、經(jīng)驗(yàn)?zāi)J椒纸猓‥MD)語(yǔ)音分析,支持向量機(jī)(SVM)、隨機(jī)森林(RF)、主成分分析(PCA)、核主成分分析(KPCA)、線性遞減分析(LDA)、Fisher遞減分析(FDA)等。所以就想到能不能自動(dòng)的學(xué)習(xí)一些特征,深度學(xué)習(xí)就是來(lái)干這個(gè)事的,不需要人參與特征選擇的過(guò)程,而讓機(jī)器自動(dòng)的學(xué)習(xí)良好的特征。應(yīng)用深度學(xué)習(xí)的時(shí)機(jī)和領(lǐng)域人工智能在以下領(lǐng)域十分有用,深度學(xué)習(xí)在其中扮演重要角色:缺乏人類專家(火星導(dǎo)航);人們尚無(wú)法解釋的專業(yè)知識(shí)(演講、認(rèn)知、視覺(jué)和語(yǔ)言理解);3問(wèn)題的解決方案隨時(shí)間不斷變化(追蹤、天氣預(yù)報(bào)、偏好
8、、股票、價(jià)格預(yù)測(cè));解決方案需要適應(yīng)特定情況(生物統(tǒng)計(jì)學(xué)、個(gè)性化);人類的推理能力有限,而問(wèn)題的規(guī)模卻很大(計(jì)算網(wǎng)頁(yè)排名、將廣告匹配到Facebook、情感分析)。目前幾乎所有領(lǐng)域都在應(yīng)用深度學(xué)習(xí)。因此,這種方法通常被稱為通用學(xué)習(xí)方法。下圖顯示了一些示例應(yīng)用程序ObjectdetectiDiLmVidCaptiQumz衛(wèi)皿aiaicpisCarSpsechreccgritiotLSsiurib-3SiDe險(xiǎn)倍RrianCanrtWBptticvn深度學(xué)習(xí)的前沿發(fā)展深度學(xué)習(xí)在計(jì)算機(jī)視覺(jué)和語(yǔ)音識(shí)別領(lǐng)域有一些突出的成就,如下所述:1)ImageNet數(shù)據(jù)集上的圖像分類Imagenet數(shù)據(jù)集是目前深度
9、學(xué)習(xí)圖像領(lǐng)域應(yīng)用得非常多的一個(gè)領(lǐng)域關(guān)于圖像分類、定位、檢測(cè)等研究工作大多基于此數(shù)據(jù)集展開(kāi)。它有1400多萬(wàn)幅圖片,涵蓋2萬(wàn)多個(gè)類別。Imagenet數(shù)據(jù)集文檔詳細(xì),有專門的團(tuán)隊(duì)維護(hù),使用非常方便,在計(jì)算機(jī)視覺(jué)領(lǐng)域研究論文中應(yīng)用非常廣,幾乎成為了目前深度學(xué)習(xí)圖像領(lǐng)域算法性能檢驗(yàn)的“標(biāo)準(zhǔn)”數(shù)據(jù)集。下圖顯示了2012年深度學(xué)習(xí)技術(shù)的發(fā)展歷程。時(shí)至今日,我們開(kāi)發(fā)的模型ResNet-152在這個(gè)數(shù)據(jù)集上只有3.57%的誤差,低于人類約5%的誤差。TheetperimentairesultsonImageNet-2012IB16.4161412童ID20122013201420142015AlfiKNel
10、7ClarifiaBVGG-169GoogLeNet-R&sNet-Human19uq13211Model&Year2)自動(dòng)語(yǔ)音識(shí)別深度學(xué)習(xí)通過(guò)TIMIT數(shù)據(jù)集(通用數(shù)據(jù)集通常用于評(píng)估)完成的小規(guī)模識(shí)別任務(wù)是深度學(xué)習(xí)在語(yǔ)音識(shí)別領(lǐng)域的初次成功體現(xiàn)TIMIT連續(xù)聲音語(yǔ)音語(yǔ)料庫(kù)包含630位來(lái)自美國(guó)的八種主要英語(yǔ)口音使用者,每位發(fā)言人讀取10個(gè)句子。下圖總結(jié)了包括早期結(jié)果在內(nèi)的錯(cuò)誤率,并以過(guò)去20年的電話錯(cuò)誤率(PER)來(lái)衡量。條形圖清楚地表明,與TIMIT數(shù)據(jù)集上以前的機(jī)器學(xué)習(xí)方法相比,最近開(kāi)發(fā)的深度學(xué)習(xí)方法(圖頂部)表現(xiàn)更好。Phoneerrorrate(PERinpercentagef%)深度學(xué)
11、習(xí)面臨的挑戰(zhàn)使用深度學(xué)習(xí)進(jìn)行大數(shù)據(jù)的分析(針對(duì)此問(wèn)題,解決方案正在高性能的計(jì)算機(jī)系統(tǒng)上進(jìn)行部署)深度學(xué)習(xí)方法要有可擴(kuò)展性(要能在多個(gè)服務(wù)器上運(yùn)行,節(jié)約時(shí)間)在在數(shù)據(jù)不可用于學(xué)習(xí)系統(tǒng)的情況下(尤其是對(duì)于計(jì)算機(jī)視覺(jué)任務(wù),例如反向圖形),生成數(shù)據(jù)的能力非常重要。(對(duì)生成模型進(jìn)行研究)4特殊用途設(shè)備的低能耗技術(shù),如移動(dòng)端智能,F(xiàn)PGA等。(正在對(duì)網(wǎng)絡(luò)架構(gòu)和硬件方面高效率深度學(xué)習(xí)方法進(jìn)行研究)5.多任務(wù)和遷移學(xué)習(xí)(泛化)或多模塊學(xué)習(xí)。這意味著要從不同的領(lǐng)域或不同的模型一起學(xué)習(xí)。(谷歌提交的論文OneModelToLearnThemAll29介紹了一種新方法,其可以從不同的應(yīng)用領(lǐng)域?qū)W習(xí),包括ImageNe
12、t、多種翻譯任務(wù)、圖像標(biāo)題(MS-COCO數(shù)據(jù)集)、語(yǔ)音識(shí)別語(yǔ)料庫(kù)和英語(yǔ)解析任務(wù))6在學(xué)習(xí)中處理因果關(guān)系。二深度神經(jīng)網(wǎng)絡(luò)DNN)DNN介紹神經(jīng)網(wǎng)絡(luò)需要通過(guò)學(xué)習(xí)過(guò)程來(lái)從其環(huán)境中獲取知識(shí),這個(gè)過(guò)程模擬了生物大腦的工作方式?;镜挠?jì)算元素(神經(jīng)元)被稱為接受外部源輸入的節(jié)點(diǎn)(或單元),具有一些內(nèi)部參數(shù)(包括在訓(xùn)練期間學(xué)習(xí)到的權(quán)重和偏差)并產(chǎn)生輸出。這個(gè)單位被稱為感知器。單層感知器(SLP)感知器的最簡(jiǎn)單形式是在輸入和輸出之間有一個(gè)單層的權(quán)重連接,模型圖如下:機(jī)-.比Output其中x1,x2.xm是輸入信號(hào),wk1,wk2.wkm是權(quán)重,這個(gè)參數(shù)表示了每個(gè)特征xj的重要性,bk是偏差,神經(jīng)元公式可以
13、用數(shù)學(xué)表達(dá)式如下:瑰=叫可片=緘匹+%)其中(.)是非線性的,叫做激活函數(shù)。激活函數(shù)的作用是將非線性引入神經(jīng)元的輸出為網(wǎng)絡(luò)提供非線性的建模能力。如果沒(méi)有激活函數(shù),那么該網(wǎng)絡(luò)僅能夠表達(dá)線性射。比時(shí)即使有再多的隱藏層,其整個(gè)網(wǎng)絡(luò)跟單層神經(jīng)網(wǎng)絡(luò)也是等價(jià)的。因此可以認(rèn)為,只有加入了激活函數(shù),深度神經(jīng)網(wǎng)絡(luò)才具備了分層的非線性映射。激舌函數(shù)都接受一個(gè)數(shù)字,并進(jìn)行特定,固定的計(jì)算。在實(shí)踐中,可能會(huì)碰到幾種激活函數(shù):Sigmoid(S型激活函數(shù)):輸入一個(gè)實(shí)值,輸出一個(gè)0至1間的值o(x)=1/(1+exp(-x)tanh(雙曲正切函數(shù)):輸入一個(gè)實(shí)值,輸出一個(gè)-1,1間的值tanh(x)=2o(2x)-1R
14、eLU:ReLU代表修正線性單元。輸出一個(gè)實(shí)值,并設(shè)定0的閾值(函數(shù)會(huì)將負(fù)值變?yōu)榱?f(x)=max(0,x)。ReLu激活函數(shù)是最近幾年比較受歡迎的激活函數(shù),相比于其它兩種,它能在SGD中快速收斂。2)多層感知器人工神經(jīng)網(wǎng)絡(luò)或者一般神經(jīng)網(wǎng)絡(luò)由多層感知器(MLP)由組成,其中包括一個(gè)或多個(gè)隱藏層,每個(gè)隱藏層包括多個(gè)隱藏單元(神經(jīng)元),具有MLP的NN模型模型如下:*1bw多層感知器可以用數(shù)學(xué)表達(dá)式(這是一個(gè)符合函數(shù))表示如下:yfx)=爭(zhēng)(說(shuō)沖(iv制(“&4-+眄+旳DL和傳統(tǒng)神經(jīng)網(wǎng)絡(luò)由相同的地方也有不同的地方。二者的相同在于deeplearning采用了神經(jīng)網(wǎng)絡(luò)相似的分層結(jié)構(gòu),系統(tǒng)由包括輸
15、入層、隱層(多層)、輸出層組成的多層網(wǎng)絡(luò),只有相鄰層節(jié)點(diǎn)之間有連接,同一層以及跨層節(jié)點(diǎn)之間相互無(wú)連接,這種分層結(jié)構(gòu),是比較接近人類大腦的結(jié)構(gòu)的。不同之處是為了克服傳統(tǒng)神經(jīng)網(wǎng)絡(luò)訓(xùn)練中的問(wèn)題,DL采用了與神經(jīng)網(wǎng)絡(luò)很不同的訓(xùn)練機(jī)制。傳統(tǒng)神經(jīng)網(wǎng)絡(luò)中一般采用的是backpropagation的方式進(jìn)行,簡(jiǎn)單來(lái)講就是采用迭代的算法來(lái)訓(xùn)練整個(gè)網(wǎng)絡(luò),隨機(jī)設(shè)定初值計(jì)算當(dāng)前網(wǎng)絡(luò)的輸出,然后根據(jù)當(dāng)前輸出和label之間的差去改變前面各層的參數(shù),直到收斂。而DL是逐層訓(xùn)練的訓(xùn)練機(jī)制。簡(jiǎn)單的說(shuō),可以分為兩步,一是每次訓(xùn)練一層網(wǎng)絡(luò),二是調(diào)優(yōu),使原始表示x向上生成的高級(jí)表示r和該高級(jí)表示r向下生成的x盡可能一致。梯度下降梯
16、度下降是一種常用的權(quán)重優(yōu)化函數(shù),根據(jù)權(quán)重造成的誤差來(lái)調(diào)整函數(shù),得到更好的優(yōu)化代價(jià)函數(shù),定義代價(jià)函數(shù)如下,其中x是輸入值,a是輸出值。n是訓(xùn)練數(shù)據(jù)集實(shí)例個(gè)數(shù),b是偏差,C被稱為二次代價(jià)函數(shù)。C(w,b)越小越好,輸出的預(yù)測(cè)值和真實(shí)值差別越小越好。我們訓(xùn)練神經(jīng)網(wǎng)絡(luò)的目的是能找到能最小化二次代價(jià)函數(shù)C(w,b)的權(quán)重和偏置:上面的函數(shù)有另個(gè)變量w,b,通常可以用微積分表示,重復(fù)計(jì)算梯度度C,然后沿著相反的方向移動(dòng),沿著山谷“滾落”。每下降到一個(gè)地方,就要計(jì)算下一步要往哪個(gè)方向下去求得極值過(guò)程過(guò)程可以用下圖表示:橫坐標(biāo)為wk,縱坐標(biāo)為Co權(quán)值和偏置的更新規(guī)則:n是學(xué)習(xí)率,下面將會(huì)對(duì)其進(jìn)行講解。隨機(jī)梯度
17、下降(SGD)傳統(tǒng)梯度下降法會(huì)讓學(xué)習(xí)變得相當(dāng)緩慢,因?yàn)樗看味紩?huì)使用全部訓(xùn)練樣本,如果訓(xùn)練數(shù)據(jù)集過(guò)大,會(huì)花費(fèi)很長(zhǎng)的時(shí)間。而隨機(jī)梯度下降算法每次只隨機(jī)選擇一個(gè)樣本來(lái)更新模型參數(shù),可能最后只用其中幾萬(wàn)條或者幾千條的樣本,就已經(jīng)將迭代到最優(yōu)解了。因此每次的學(xué)習(xí)是非??焖俚?。但是缺點(diǎn)是:準(zhǔn)確度下降,并不是全局最優(yōu);小批量梯度下降(Mini-batchGradientDescent)小批量梯度下降是上面兩種方法的折中。MBGD在每次更新參數(shù)時(shí)使用b個(gè)樣本(b一般為10),算法的訓(xùn)練過(guò)程比較快,而且也能保證最終參數(shù)訓(xùn)練的準(zhǔn)確率舉個(gè)例子第一個(gè)人看一幅畫(huà)(輸入數(shù)據(jù)),描述給第二個(gè)人(隱層)依此類推,到最后一個(gè)
18、人(輸出)的時(shí)候,畫(huà)出來(lái)的畫(huà)肯定不能看了(誤差較大)反向傳播把畫(huà)拿給最后一個(gè)人看(求取誤差),然后最后一個(gè)人就會(huì)告訴前面的人下次描述時(shí)需要注意哪里(權(quán)值修正)在深度學(xué)習(xí)中,反向傳播就是根據(jù)最后的損失值C(w,b)用梯度下降法調(diào)整前面每一層的權(quán)重取值。不斷地交替進(jìn)行正向傳播(求損失值)和反向傳播來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)。動(dòng)量動(dòng)量是一種有利于以SGD方法加速訓(xùn)練過(guò)程的方法。如圖所示,紅色為SGD+Momenttum.黑色為SGD學(xué)習(xí)率學(xué)習(xí)率是一個(gè)重要的超參數(shù),控制著我們基于損失梯度調(diào)整神經(jīng)網(wǎng)絡(luò)權(quán)值的速度,即以多塊的速度收斂到局部最小值。學(xué)習(xí)率過(guò)小,意味著要花更多的時(shí)間收斂,學(xué)習(xí)率過(guò)大,收我們使用隨機(jī)梯度下降
19、法和一批大小為128、動(dòng)力為0.9、權(quán)重衰減為0.0005的樣例來(lái)訓(xùn)練我們的網(wǎng)絡(luò)。我們發(fā)現(xiàn),這少量的權(quán)重衰減對(duì)于模型學(xué)習(xí)是重要的。換句話說(shuō),這里的權(quán)重衰減不僅僅是一個(gè)正則化矩陣:它減少了模型的訓(xùn)練誤差。對(duì)于權(quán)重w的更新規(guī)則為0*9*坯一0.0005-wdL其中i是迭代指數(shù),v是動(dòng)力變量,&是學(xué)習(xí)率,這里寫圖片描述是目標(biāo)關(guān)于w、對(duì)這里寫圖片描述求值的導(dǎo)數(shù)在第i批樣例這里寫圖片描述上的平均值。我們用一個(gè)均值為0、標(biāo)準(zhǔn)差為0.01的高斯分布初始化了每一層的權(quán)重。我們用常數(shù)1初始化了第二、第四和第五個(gè)卷積層以及全連接隱層的神經(jīng)元偏差。該初始化通過(guò)提供帶正輸入的ReLU來(lái)加速學(xué)習(xí)的初級(jí)階段。我們?cè)谄溆鄬?/p>
20、用常數(shù)0初始化神經(jīng)元偏差。我們對(duì)于所有層都使用了相等的學(xué)習(xí)率,這是在整個(gè)訓(xùn)練過(guò)程中手動(dòng)調(diào)整的。我們遵循的啟發(fā)式是,當(dāng)驗(yàn)證誤差率在當(dāng)前學(xué)習(xí)率下不再提高時(shí),就將學(xué)習(xí)率除以10。學(xué)習(xí)率初始化為0.01,在終止前降低三次。我們訓(xùn)練該網(wǎng)絡(luò)時(shí)大致將這120萬(wàn)張圖像的訓(xùn)練集循環(huán)了90次,在兩個(gè)NVIDIAGTX5803GBGPU上花了五到六天。三卷積神經(jīng)網(wǎng)絡(luò)CNN)A.CNN介紹上面所說(shuō)的全連接網(wǎng)絡(luò)不太適合圖像識(shí)別任務(wù),主要有以下幾個(gè)方面的問(wèn)題:參數(shù)數(shù)量太多:考慮一個(gè)輸入1000*1000像素的圖片(一百萬(wàn)像素,現(xiàn)在已經(jīng)不能算大圖了),輸入層有1000*1000=100萬(wàn)節(jié)點(diǎn)。假設(shè)第一個(gè)隱藏層有100個(gè)節(jié)點(diǎn)
21、(這個(gè)數(shù)量并不多),那么僅這一層就有(1000*1000+1)*100=1億參數(shù),這實(shí)在是太多了!我們看到圖像只擴(kuò)大一點(diǎn),參數(shù)數(shù)量就會(huì)多很多,因此它的擴(kuò)展性很差。沒(méi)有利用像素之間的位置信息對(duì)于圖像識(shí)別任務(wù)來(lái)說(shuō),每個(gè)像素和其周圍像素的聯(lián)系是比較緊密的和離得很遠(yuǎn)的像素的聯(lián)系可能就很小了。如果一個(gè)神經(jīng)元和上一層所有神經(jīng)元相連,那么就相當(dāng)于對(duì)于一個(gè)像素來(lái)說(shuō),把圖像的所有像素都等同看待,這不符合前面的假設(shè)。當(dāng)我們完成每個(gè)連接權(quán)重的學(xué)習(xí)之后,最終可能會(huì)發(fā)現(xiàn),有大量的權(quán)重,它們的值都是很小的(也就是這些連接其實(shí)無(wú)關(guān)緊要)。努力學(xué)習(xí)大量并不重要的權(quán)重,這樣的學(xué)習(xí)必將是非常低效的。那么,卷積神經(jīng)網(wǎng)絡(luò)又是怎樣解決
22、這個(gè)問(wèn)題的呢?主要有三個(gè)思路盡可能保留重要的參數(shù),去掉大量不重要的參數(shù),來(lái)達(dá)到更好的學(xué)習(xí)效果:局部連接:這個(gè)是最容易想到的,每個(gè)神經(jīng)元不再和上一層的所有神經(jīng)元相連,而只和一小部分神經(jīng)元相連。這樣就減少了很多參數(shù)。權(quán)值共享:一組連接可以共享同一個(gè)權(quán)重,而不是每個(gè)連接有一個(gè)不同的權(quán)重,這樣又減少了很多參數(shù)。3下采樣:可以使用Pooling來(lái)減少每層的樣本數(shù),進(jìn)一步減少參數(shù)數(shù)量,同時(shí)還可以提升模型的魯棒性。inputimafleJPeaiire3FeaureMaps禍弼ConvolutionLayerPoolingLayerSFeakire5FtaiurtMapsMapsOutputLayerPoo
23、lirigLayerFullyConnectedMeiwcrk下圖為CNN的結(jié)構(gòu)圖:ConycluticnLayer1)卷積層(ConvolutionLayer)卷積層是用來(lái)進(jìn)行特征提取的,每層神經(jīng)元只和上一層部分神經(jīng)元相連(卷積計(jì)算規(guī)則),第一個(gè)卷積層對(duì)這幅圖像進(jìn)行了卷積操作,得到了三個(gè)FeatureMap。這里的3實(shí)際上就是這個(gè)卷積層包含三個(gè)Filter,也就是三套參數(shù),每個(gè)Filter都可以把原始輸入圖像卷積得到一個(gè)FeatureMap,三個(gè)Filter就可以得到三個(gè)FeatureMap。這其中體現(xiàn)了局部連接和特征共享。參數(shù)數(shù)量明顯減少。2)池化層(PoolingLayer)Poolin
24、g層主要的作用是下采樣,通過(guò)去掉FeatureMap中不重要的樣本,進(jìn)一步減少參數(shù)數(shù)量。Pooling的方法很多,最常用的是MaxPooling。池化層引用了平移不變性,也就是說(shuō)網(wǎng)絡(luò)對(duì)識(shí)別對(duì)象在圖片中的位置不敏感,例如對(duì)兩張?zhí)O果的圖片,一個(gè)是正放,一個(gè)是倒放,最后都可以將它識(shí)別為蘋果這一類。3)全連接層連接所有的特征,將輸出值送給分類器(如softmax分類器)B.流行的CNN體系結(jié)構(gòu)體系結(jié)構(gòu)通常由多個(gè)卷積層和最大池層組成,最后是完全連接的SoftMax層。這些模型的一些例子是LeNet,AlexNet,VGGNet,NiN和所有卷積(AllConv)。其他替代和更高效的高級(jí)體系結(jié)構(gòu)已經(jīng)被提出
25、,其中包括GoogLeNet和InceptionNetworks,ResidualNetworks,DenseNet和FractalNet。這些架構(gòu)中的基本構(gòu)建組件(卷積和池化)幾乎相同。下面圖顯示了近18年深度神經(jīng)網(wǎng)絡(luò)的架構(gòu)發(fā)展情況。Inception-v3ReaNet-50KesWet-34Reshet-18GoogleNetBNAlexNetAlexNpt圖中的坐標(biāo)軸我們可以看出橫坐標(biāo)是操作的復(fù)雜度,縱坐標(biāo)是精度。模型設(shè)計(jì)一開(kāi)始的時(shí)候模型權(quán)重越多模型越大,其精度越高,后來(lái)出現(xiàn)了resNet、GoogleNet、Inception等網(wǎng)絡(luò)架構(gòu)之后,在取得相同或者更高精度之下,其權(quán)重參數(shù)不斷下
26、降。值得注意的是,并不是意味著橫坐標(biāo)越往右,它的運(yùn)算時(shí)間越大。在這里并沒(méi)有對(duì)時(shí)間進(jìn)行統(tǒng)計(jì),而是對(duì)模型參數(shù)和網(wǎng)絡(luò)的精度進(jìn)行了縱橫對(duì)比。1)LeNet雖然LeNet是在20世紀(jì)90年代提出的,但計(jì)算能力和內(nèi)存容量有限使得該算法難以實(shí)現(xiàn),直到2010年。然而,LeCun使用反向傳播算法提出了CNN,并在手寫數(shù)字?jǐn)?shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),以獲得最先進(jìn)的精確度。他的架構(gòu)被稱為L(zhǎng)eNet5。LeNet-5的基本配置是如下圖:2個(gè)卷積(conv)層,2個(gè)池化層,2個(gè)完全連接的層以及一個(gè)具有高斯連接的輸出層。高斯連接輸出層)豆麗4口置五LDKClJi2)AlexNet2012年,AlexKrizhevesky和其他
27、人提出了一個(gè)與LeNet相比更深更廣的CNN模型,并在2012年贏得了視覺(jué)對(duì)象識(shí)別最困難的ImageNet挑戰(zhàn)-稱為ImageNet大規(guī)模視覺(jué)識(shí)別挑戰(zhàn)(ILSVRC)7.這個(gè)model的意義比后面那些model都大很多,首先它證明了CNN在復(fù)雜模型下的有效性,然后GPU實(shí)現(xiàn)使得訓(xùn)練在可接受的時(shí)間范圍內(nèi)得到結(jié)果,讓CNN和GPU都大火了一把,順便推動(dòng)了有監(jiān)督DL的發(fā)展AlexNet針對(duì)所有傳統(tǒng)的機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺(jué)方法,實(shí)現(xiàn)了最先進(jìn)的識(shí)別精度。這是視覺(jué)識(shí)別和分類任務(wù)中機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺(jué)領(lǐng)域的重大突破,也是對(duì)深度學(xué)習(xí)興趣迅速增長(zhǎng)的歷史時(shí)刻。AlexNet的架構(gòu)如下所示,可以看出它有8個(gè)權(quán)重層,包
28、括5層的Con+pool,2層FC,1層softmax。它的網(wǎng)絡(luò)結(jié)構(gòu)詳細(xì)如下:poolipjgpokingiwnWax今天的問(wèn)題:1卷積計(jì)算詳細(xì)過(guò)程。卷積層2filter指代什么,怎么選取3池化池化層(平均,最大怎么選)4全連接5softmax6dropout7給一個(gè)cnn例子A卷積層過(guò)程假設(shè)有一個(gè)5*5的圖像,使用一個(gè)3*3的filter進(jìn)行卷積,步幅取1,會(huì)得到一個(gè)3*3的FeatureMap,如下圖所示:image5*5計(jì)算結(jié)果如下:filter3*3featuremap3*3filter3*3featuremap3*3image5*5一直計(jì)算完得到:filter3*3featurema
29、p3*3111000111000I.1:00Qo01Q.QiImageE00S0a3ConvolvedFeature還可以將步幅設(shè)為大于1的數(shù)。例如,當(dāng)步幅為2時(shí),F(xiàn)eatureMap計(jì)算如下:bias=Ofilter3*3featuremap2*2filter3*3featuremap2k21110001110001110011001100filter3*3featuremap2*2image5*5101010101bias=Ofilter3*3featuremap2*2一張彩色圖片在計(jì)算機(jī)中是以像素存儲(chǔ)的,它由三原色(紅,綠,藍(lán))以不同比例相加產(chǎn)生多種多樣的色光,所以可以看成有三個(gè)通道RG
30、B。比如下圖可以看成是一個(gè)5*5*3的輸入圖片,3表示圖片的3個(gè)通道,經(jīng)過(guò)兩個(gè)3*3*3filter的卷積(步幅為2),這里卷積的深度也要取為3和前面保持一致,得到一個(gè)3*3*2的輸出。在后面的卷積層中,卷積的深度要和前一層輸入的FeaturnMap保持一致。InputXblmne(-pad1)(m)x::#FilterWOMji3)沁:0G100200001100001-000000000Q100Q/01124001a孑0y01X410U0二0勺2r0010X000從全局看:featuremap)iOOxlOOxm-100-10000才-1-1FilterW:沖-1Q0-LQ1100uioe
31、mentOutputalmne3-I-198x98xn動(dòng)圖鏈接: HYPERLINK https:/cs231n.github.io/assets/conv-demo/index.html https:/cs231n.github.io/assets/conv-demo/index.html可以看到,最后得到的FeatureMap的個(gè)數(shù)取決于卷積核的個(gè)數(shù)。卷積核的選擇:個(gè)數(shù)選擇:2的次方大小選擇:根據(jù)輸入數(shù)據(jù)和圖像特征,比如你的圖像很大,你想插入的距離稍微大點(diǎn),就可以選擇大點(diǎn)的卷積核。但是一般取小一點(diǎn)比較好,比如3*3。卷積核用于提取特征,卷積核個(gè)數(shù)越多,提取的特征越多,理論上精度也會(huì)更高,但
32、是,也意味著訓(xùn)練的參數(shù)的個(gè)數(shù)越多。深度選擇:與輸入數(shù)據(jù)一致內(nèi)部信息:隨機(jī)初始化,然后再通過(guò)反向傳播進(jìn)行調(diào)整。步長(zhǎng)選擇:步長(zhǎng)小重疊信息比較多,計(jì)算比較冗余。步長(zhǎng)大信息可能會(huì)丟失。B.池化層過(guò)程1使用最多的是最大池化層(maxpooling),計(jì)算圖像區(qū)域內(nèi)的最大值,提取紋理效果好Singledepthslicemaxpoolwitfi2x2filtersandstride26H保留背景更好2平均池化層(meanpooling),計(jì)算圖像區(qū)域的平均值,SingledepthsliceTneanpoolvvlth2x2filtersordstride23.25525C.全連接層的作用全連接層在整個(gè)卷
33、積神經(jīng)網(wǎng)絡(luò)中起到“分類器”的作用。如果說(shuō)卷積層,池化層等操作是將原始數(shù)據(jù)映射到隱層特征空間的話(即特征提取),全連接層則起到將學(xué)到的“分布式特征表示”映射到樣本標(biāo)記空間的作用(分類),對(duì)特征進(jìn)行重新擬合,減少特征信息的丟失。假設(shè)一個(gè)識(shí)別圖片內(nèi)容的神經(jīng)網(wǎng)絡(luò)已經(jīng)訓(xùn)練完了,全連接層已經(jīng)知道當(dāng)我們得到以上特征,我們就可以判定這個(gè)圖片是貓從下圖可以看到紅色的神經(jīng)元表示這個(gè)特征被找到了,同一層的其他神經(jīng)元,要么貓的特征不明顯,要么沒(méi)找到,當(dāng)我們把這些找到的特征組合在一起時(shí),發(fā)現(xiàn)最符合要求的是貓。往前走一層,要對(duì)子特征進(jìn)行分類,就是對(duì)貓頭,貓尾巴,貓腿等進(jìn)行分類,下面把貓頭找出來(lái)貓頭的子特征如上,在上一層中
34、,找到這些特征,神經(jīng)元就被激活(下圖紅色圓圈)這子特征就是通過(guò)前面的卷積層和池化層得來(lái)的。Dsoftmax如果是多分類問(wèn)題,一般會(huì)在全連接層后面接一個(gè)softmax層。它的輸入是T*1的向量,輸出也是T*1的向量,這個(gè)向量的每個(gè)值表示這個(gè)樣本屬于每個(gè)類的概率(在01之間,總和為1),Softmax公式:例如上面的圖,最后是4分類問(wèn)題,假設(shè)是將圖片分為貓,狗,鳥(niǎo),鴨。如下圖,最后選擇概率值最大的分類,該圖片是貓。-eOOyl沖13口F面詳細(xì)的講解LeNet-5,它是用于手寫字體識(shí)別的一個(gè)經(jīng)典的CNN:C3:f.FRaps;1610 x10mans.qj-samplingFullconnectio
35、n輸入:32*32的手寫字體圖片,這些手寫字體包含09數(shù)字,也就是相當(dāng)于10個(gè)類別的圖片輸出:分類結(jié)果,09之間的一個(gè)數(shù)。因此我們可以知道,這是一個(gè)多分類問(wèn)題,總共有十個(gè)類,因此神經(jīng)網(wǎng)絡(luò)的最后輸出層必然是SoftMax問(wèn)題,然后神經(jīng)元的個(gè)數(shù)是10個(gè)。LeNet-5結(jié)構(gòu):輸入層:32*32的圖片,也就是相當(dāng)于1024個(gè)神經(jīng)元Cl層:選擇6個(gè)filter,然后filter大小選擇5*5,這樣我們可以得到6個(gè)FeatureMap,然后每個(gè)特征圖的大小為32-5+1=28(步長(zhǎng)為1),也就是神經(jīng)元的個(gè)數(shù)為6*28*28=784。S2層:這就是下采樣層,也就是使用最大池化進(jìn)行下采樣,池化的size,選擇
36、(2,2)(步長(zhǎng)為2),也就是相當(dāng)于對(duì)C1層28*28的圖片,進(jìn)行分塊,每個(gè)塊的大小為2*2,這樣我們可以得到14*14個(gè)塊,然后我們統(tǒng)計(jì)每個(gè)塊中,最大的值作為下采樣的新像素,因此我們可以得到S1結(jié)果為:14*14大小的圖片,共有6個(gè)這樣的圖片。C3層:選擇16個(gè)filter,然后filter大小選擇5*5,那么每個(gè)特征圖的大小為14-5+1=10(步長(zhǎng)為1),這樣我們可以得到16個(gè)FeatureMap。S4層:下采樣層,比較簡(jiǎn)單,也是知己對(duì)C3的16張10*10的圖片進(jìn)行最大池化,池化塊的大小為2*2。因此最后S4層為16張大小為5*5的圖片。至此我們的神經(jīng)元個(gè)數(shù)已經(jīng)減少為:16*5*5=4
37、00。C5層:我們繼續(xù)用5*5的卷積核進(jìn)行卷積,然后我們希望得到120個(gè)特征圖。這樣C5層圖片的大小為5-5+1=1,也就是相當(dāng)于1個(gè)神經(jīng)元,120個(gè)特征圖,因此最后只剩下120個(gè)神經(jīng)元了。F6層:將上圖中的86個(gè)神經(jīng)元改為10個(gè),應(yīng)為后面的softmax是10分類問(wèn)題Softmax層:計(jì)算每個(gè)數(shù)字的概率,概率最大的類判定為圖片中的手寫字類別。E.訓(xùn)練過(guò)程(1)全連接層參數(shù)更新過(guò)程假設(shè),你有這樣一個(gè)網(wǎng)絡(luò)層:第一層是輸入層,包含兩個(gè)神經(jīng)元il,i2,和截距項(xiàng)bl;第二層是隱含層,包含兩個(gè)神經(jīng)元h1,h2和截距項(xiàng)b2,第三層是輸出o1,o2,每條線上標(biāo)的wi是層與層之間連接的權(quán)重,激活函數(shù)我們默認(rèn)
38、為sigmoid函數(shù)?,F(xiàn)在對(duì)他們隨機(jī)賦上初值,如下圖:.45W60125w350w30w45515w1.20w2其中,輸入數(shù)據(jù)輸出數(shù)據(jù)初始權(quán)重i1=0.05,i2=0.10;o1=0.01,o2=0.99;w1=0.15,w2=0.20,w3=0.25,w4=0.30;w5=0.40,w6=0.45,w7=0.50,w8=0.55目標(biāo):給出輸入數(shù)據(jù)il,i2(0.05和0.10),使輸出盡可能與原始輸出ol,o2(0.01和0.99)接近。Step1前向傳播1.輸入層隱含層:計(jì)算神經(jīng)元h1的輸入加權(quán)和:=加*!j-I-*1nethl=0.15%005十0.2木0.1+0.35牛I=0.3775
39、神經(jīng)元h1的輸出o1:(此處用到激活函數(shù)為sigmoid函數(shù)):outhl=卄匕叫1=幻粘=0.593269992同理,可計(jì)算出神經(jīng)元h2的輸出o2:outh2=0.59G8843782隱含層輸出層:計(jì)算輸出層神經(jīng)元o1和o2的值:net(x+outhi十w6+f皿曲b*1net=0.4爭(zhēng)0.593269992+().45*0.596884378+().6床1=1.105905967。訶01_|_c-1.10T9D59G/-1()51365(1/outo2=0772928465這樣前向傳播的過(guò)程就結(jié)束了,我們得到輸出值為0.75136079,0.772928465,與實(shí)際值0.01,0.99相
40、差還很遠(yuǎn),現(xiàn)在我們對(duì)誤差進(jìn)行反向傳播,更新權(quán)值,重新計(jì)算輸出。Step2反向傳播1.計(jì)算總誤差總誤差:(squareerror)Etotai=刀garget-output)2但是有兩個(gè)輸出,所以分別計(jì)算o1和o2的誤差,總誤差為兩者之和:E01=targetoi-outo)2=|(0.01-0.75136507)2=0.274811083E楓=0,023560026=EO1+Eo2=0,274811083+0.023560026=0.2983711092隱含層輸出層的權(quán)值更新:以權(quán)重參數(shù)w5為例,如果我們想知道w5對(duì)整體誤差產(chǎn)生了多少影響,可以用整體誤差對(duì)w5求偏導(dǎo)求出:(鏈?zhǔn)椒▌t)8Et如_
41、BEgtcd水%肚俎*加1doutoidnetoidw下面的圖可以更直觀的看清楚誤差是怎樣反向傳播的:b2outputEO1=I4(targeto1-outo1)totalE+Eo2*曲*Em謚dti小output現(xiàn)在我們來(lái)分別計(jì)算每個(gè)式子的值:計(jì)算:d如=(targetol-out屏+j(targeto2-out)2爲(wèi)晉=-(target張晉=2*tar(jetol-呃如尸一】*-1+0Htol)=-(0.01-0.75136507)=0.74136507計(jì)算亦訊i=ou.toll-outol)=0.75130507(1-0.75136507)=0J86815602這一步實(shí)際上就是對(duì)sigm
42、oid函數(shù)求導(dǎo))計(jì)算neto-地水outhi十簾o(wú)uth2十b半1務(wù)斜=1水皿切水於it)()十()=outhA=0.593269992最后三者相乘:dncti074136507左0.1SG815602羋0,593269992=(L082167041這樣我們就計(jì)算出整體誤差E(total)對(duì)w5的偏導(dǎo)值?;剡^(guò)頭來(lái)再看看上面的公式,發(fā)現(xiàn):驚f=(targetolouto)*OUt0y(10Utoi)*OUth為了表達(dá)方便,用來(lái)表示輸出層的誤差靈敏度:x丈円fi1dE如0outoidnetodneto50-(targetoidoA)*outol1out亦)因此,整體誤差E(total)對(duì)w5的偏導(dǎo)
43、公式可以寫成:最后我們來(lái)更新w5的值:(其中,是學(xué)習(xí)速率,這里我們?nèi)?.5)同理,可更新w6,w7,w8:乩訃=0.408666186wt=0.511301270wt=0.5613701213隱含層輸入層的權(quán)值更新:方法其實(shí)與上面說(shuō)的差不多,但是有個(gè)地方需要變一下,在上文計(jì)算總誤差對(duì)w5的偏導(dǎo)時(shí),是從out(ol)net(ol)w5,但是在隱含層之間的權(quán)值更新時(shí),是out(hl)net(hl)w1,而out(hl)會(huì)接受E(ol)和E(o2)兩個(gè)地方傳來(lái)的誤差,所以這個(gè)地方兩個(gè)都要計(jì)算。netol=W5水0泌hl十6*O祖h2十2*1dout.hiw5=0.40込i=douth-爲(wèi)茁水牆忙=0
44、.138498562曲0.40=0.055399425同理,計(jì)算出:蔬一0.019049119兩者相加得到總值:&=7&十脇7=05399425十-0X)19049119=0.036350306再計(jì)算dnethlouthi14-e_nethloi叫15nethiouthl(l一outhl)-0.59326999(1一59326999)-0.241300709dwi再計(jì)算=Wy*右+W2*勺2十b*1最后,三者相乘:BE如Qi_8%如羋%如*刃肚如dwjdoutf,dnetfii乃的S3S*!IM(I”H(3)池化操作反向傳播0doQ14ab5D0O00O0/Lo00h0Li151osQSJz工
45、!r芬力北防軸遞率百旳祿聲擁.它的網(wǎng)絡(luò)特點(diǎn)有:(1)RELU的使用AlexNet使用RELU作為激活函數(shù),相比于反正切,該方法訓(xùn)練速度大約有6倍提升。下圖是一個(gè)基于CIFARTO的四層卷積網(wǎng)絡(luò)在tanh和ReLU達(dá)到25%的trainingerror的迭代次數(shù):實(shí)線、間斷線分別代表的是ReLU、tanh的trainingerror,可見(jiàn)ReLU比tanh冃能夠更快的收斂。(2)LRN(LocalResponseNormalization局部響應(yīng)標(biāo)準(zhǔn)化)LRN加在RELU的激活后面,能夠增加網(wǎng)絡(luò)的泛化能力,并在ILSVRC-2012上降低1%的錯(cuò)誤率(不是很了解)(3)OverlappingPo
46、oliing(重疊池化)重疊池化的意思是,池化步伐小于kernelsize,這樣池化后的featuremap的感受野其實(shí)是有部分重疊的。(作用是什么?)(4)DataAgumentation(數(shù)據(jù)增強(qiáng))數(shù)據(jù)增強(qiáng)是為了增強(qiáng)模型性能,通過(guò)擴(kuò)充樣本的數(shù)量防止模型過(guò)擬合。例如通過(guò)PCA擴(kuò)展數(shù)據(jù)集。另外,其實(shí)還有更多的方法視你的業(yè)務(wù)場(chǎng)景去使用,比如做基本的圖像轉(zhuǎn)換如增加減少亮度,一些濾光算法等等之類的,這是一種特別有效地手段,尤其是當(dāng)數(shù)據(jù)量不夠大的時(shí)候。(5)DropOut訓(xùn)練階段:卷積神經(jīng)網(wǎng)絡(luò)的計(jì)算量其實(shí)主要集中在全連接層,這些層參數(shù)太多了,也最容易發(fā)生過(guò)擬合。所謂的Dropout指的是在用前向傳播算
47、法和反向傳播算法訓(xùn)練DNN模型時(shí),一批數(shù)據(jù)迭代時(shí),隨機(jī)的從全連接DNN網(wǎng)絡(luò)中去掉一部分隱藏層的神經(jīng)元?,F(xiàn)在它已經(jīng)是主流的做法了。比如我們本來(lái)的DNN模型對(duì)應(yīng)的結(jié)構(gòu)是這樣的:在對(duì)訓(xùn)練集中的一批數(shù)據(jù)進(jìn)行訓(xùn)練時(shí),我們隨機(jī)去掉一部分隱藏層的神經(jīng)元,以概率P舍棄部分神經(jīng)元,其他神經(jīng)元以概率q=p-1被保留,每個(gè)神經(jīng)元被“舍棄”的概率是一樣的。并用去掉隱藏層的神經(jīng)元的網(wǎng)絡(luò)來(lái)擬合我們的一批訓(xùn)練數(shù)據(jù)。如下圖,去掉了一半的隱藏層神經(jīng)元:然后用這個(gè)去掉隱藏層的神經(jīng)元的網(wǎng)絡(luò)來(lái)反向傳播,更新相應(yīng)的W,b。在下一批數(shù)據(jù)迭代前,我們會(huì)把DNN模型恢復(fù)成最初的全連接模型,然后再用隨機(jī)的方法去掉部分隱藏層的神經(jīng)元,接著去迭代
48、更新W,b。測(cè)試階段:在網(wǎng)絡(luò)前向傳播到輸出層前時(shí)隱含層節(jié)點(diǎn)的輸出值都要縮減到(1-v)倍;例如正常的隱層輸出為a,此時(shí)需要縮減為a(1-v)o這里網(wǎng)上看到的一個(gè)解釋是:假設(shè)比例v=0.5,即在訓(xùn)練階段,以0.5的比例忽略隱層節(jié)點(diǎn);那么假設(shè)隱層有80個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)輸出值為1,那么此時(shí)只有40個(gè)節(jié)點(diǎn)正常工作;也就是說(shuō)總的輸出為40個(gè)1和40個(gè)0;輸出總和為40;而在測(cè)試階段,由于我們的權(quán)值已經(jīng)訓(xùn)練完成,此時(shí)就不在按照0.5的比例忽略隱層輸出,假設(shè)此時(shí)每個(gè)隱層的輸出還是1,那么此時(shí)總的輸出為80個(gè)1,明顯比dropout訓(xùn)練時(shí)輸出大一倍(由于dropout比例為0.5);所以為了得到和訓(xùn)練時(shí)一樣的
49、輸出結(jié)果,就縮減隱層輸出為a(1-v);即此時(shí)輸出80個(gè)0.5,總和也為40.這樣就使得測(cè)試階段和訓(xùn)練階段的輸出“一致”了。一般p取0.5,能使泛華能力最好。3)NiN(網(wǎng)絡(luò)中的網(wǎng)絡(luò))這個(gè)模型與之前引入一些新概念的模型略有不同。第一個(gè)概念是使用多層感知卷積,其中使用1X1濾波器執(zhí)行卷積,這有助于在模型中增加更多的非線性。這有助于增加網(wǎng)絡(luò)的深度,然后可以通過(guò)丟失來(lái)調(diào)整網(wǎng)絡(luò)的深度。這個(gè)概念經(jīng)常用在深度學(xué)習(xí)模型的瓶頸層面。第二個(gè)概念是使用全局平均池(GAP)作為完全連接層的替代方案。這有助于顯著減少網(wǎng)絡(luò)參數(shù)的數(shù)量。GAP顯著改變網(wǎng)絡(luò)結(jié)構(gòu)。通過(guò)在大特征映射上應(yīng)用GAP,我們可以生成最終的低維特征向量而
50、不減少特征映射的維度。4)VGG5)GoogLeNet6)ResNet(剩余網(wǎng)絡(luò))ILSVRC2015的獲勝者是剩余網(wǎng)絡(luò)架構(gòu),ResNet。Resnet是由KaimingHe開(kāi)發(fā)的,目的是設(shè)計(jì)超深網(wǎng)絡(luò),這種網(wǎng)絡(luò)不會(huì)遇到前輩們所遇到的漸變梯度問(wèn)題。ResNet開(kāi)發(fā)了許多不同數(shù)量的層;34,50,101,152和甚至1202。流行的ResNet50在網(wǎng)絡(luò)末端包含49個(gè)卷積層和1個(gè)完全連接層。7)DenseNet(密度鏈接網(wǎng))8)FractalNet其他模型還有很多其他網(wǎng)絡(luò)架構(gòu)計(jì)算機(jī)視覺(jué)社區(qū)中:XceptionRCNN(遞歸卷積神經(jīng)網(wǎng)絡(luò))IRCNN(初始卷積遞歸神經(jīng)網(wǎng)絡(luò))。分割任務(wù):FCN(完全卷積
51、網(wǎng)絡(luò))。其他最近提出的CNN模型包括具有隨機(jī)深度的深度網(wǎng)絡(luò),深度監(jiān)督網(wǎng)絡(luò)和梯形網(wǎng)絡(luò)79,80,81CNN的應(yīng)用1)用于解決圖形問(wèn)題的CNN學(xué)習(xí)圖形數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)任務(wù)中各種不同應(yīng)用的常見(jiàn)問(wèn)題。DL技術(shù)已經(jīng)成為機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘團(tuán)隊(duì)之間的橋梁。2016年提出了一種用于任意圖形處理的高效CNN。2)圖像處理和計(jì)算機(jī)視覺(jué)最新研究上面討論的大多數(shù)模型都應(yīng)用于不同的應(yīng)用領(lǐng)域,包括圖像分類,檢測(cè),分割,定位,字幕,視頻分類等等。有關(guān)圖像處理和計(jì)算機(jī)視覺(jué)相關(guān)任務(wù)的深度學(xué)習(xí)方法有很好的調(diào)查。使用CNN方法的單幅圖像超分辨率。使用塊匹配CNN進(jìn)行圖像去噪。使用A-Lamp的照片美學(xué)評(píng)估。DCNN用于
52、使用馬爾可夫隨機(jī)場(chǎng)(MRF)進(jìn)行分割的高光譜成像。使用CNN進(jìn)行圖像注冊(cè)。用于快速藝術(shù)風(fēng)格轉(zhuǎn)移的分層深度CNN。使用DCNN進(jìn)行背景分割。使用DCNN方法的手寫字符識(shí)別。使用深度學(xué)習(xí)方法的光學(xué)圖像分類。使用蜂窩同時(shí)循環(huán)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行目標(biāo)識(shí)別。3)語(yǔ)音處理CNN方法也用于語(yǔ)音處理:使用多模式深度CNN的語(yǔ)音增強(qiáng)和使用卷積門控循環(huán)網(wǎng)絡(luò)(CGRN)的音頻標(biāo)記。4)用于醫(yī)學(xué)成像的CNN一項(xiàng)關(guān)于DL用于分類,檢測(cè)和分割任務(wù)的醫(yī)學(xué)成像的良好調(diào)查。本次調(diào)查后發(fā)表了一些論文。MDNet是為圖像診斷和相應(yīng)的文字描述而開(kāi)發(fā)的。使用短軸MRI進(jìn)行心臟分割104。使用CNN對(duì)視盤和視網(wǎng)膜血管進(jìn)行分割。使用具有
53、完全卷積神經(jīng)網(wǎng)絡(luò)(FCNN)學(xué)習(xí)功能的隨機(jī)森林進(jìn)行腦腫瘤分割106。最近,U-Net300的改進(jìn)版本使用了回歸殘余卷積神經(jīng)網(wǎng)絡(luò)(RRCNN),名為R2U-Net301。四高效培訓(xùn)技術(shù)上一節(jié)缺少的是高級(jí)培訓(xùn)技術(shù)或組件,需要認(rèn)真考慮高效培訓(xùn)DL方法。,應(yīng)用,接下來(lái)討論高效培訓(xùn)DL方法,應(yīng)用不同的高級(jí)技術(shù)來(lái)更好的訓(xùn)練深度學(xué)習(xí)模型。這些技術(shù)包括輸入預(yù)處理,更好的初始化方法,批量歸一化,替代卷積方法,高級(jí)激活函數(shù),替代池化技術(shù),網(wǎng)絡(luò)正規(guī)則化等等A準(zhǔn)備數(shù)據(jù)集在將數(shù)據(jù)饋送到網(wǎng)絡(luò)之前,目前已經(jīng)應(yīng)用了不同的方法。準(zhǔn)備數(shù)據(jù)集的不同操作如下:樣本重新縮放,平均減法,隨機(jī)裁剪,相應(yīng)于水平或垂直軸的翻轉(zhuǎn)數(shù)據(jù),顏色抖動(dòng),
54、PCA/ZCA白化等等。網(wǎng)絡(luò)初始化深度網(wǎng)絡(luò)的初始化對(duì)整體識(shí)別精度有很大影響。以前,大多數(shù)網(wǎng)絡(luò)已經(jīng)用隨機(jī)權(quán)重初始化。對(duì)于具有高維數(shù)據(jù)訓(xùn)練的復(fù)雜任務(wù),DNN變得困難,因?yàn)橛捎诜聪騻鞑ミ^(guò)程,權(quán)重不應(yīng)該是對(duì)稱的。因此,有效的初始化技術(shù)對(duì)于培訓(xùn)這種類型的DNN非常重要。但是,在過(guò)去的幾年中,有許多有效的技術(shù)已經(jīng)提出。1998年,LeCun和Y.Bengio在2010年提出了一種簡(jiǎn)單而有效的方法。在這種方法中,權(quán)重通過(guò)該層的輸入神經(jīng)元數(shù)量的平方根的倒數(shù)來(lái)縮放,其可以表示為其中N2是仕層的輸入神經(jīng)元的數(shù)量。針對(duì)線性假設(shè),基于對(duì)稱激活函數(shù)提出了Xavier的深度網(wǎng)絡(luò)初始化方法。這種方法被稱為“Xavier”初
55、始化方法。最近在2016年,DmytroM.等人提出層順序單元不變性(LSUV),這是一種數(shù)據(jù)驅(qū)動(dòng)的初始化方法,并且在幾個(gè)基準(zhǔn)數(shù)據(jù)集(包括ImageNet)上提供了良好的識(shí)別準(zhǔn)確性。其中一種流行的初始化方法由KimingHe在2015年提出。第l層權(quán)重的分布為均值為零,方差為2的正態(tài)分布,BatchNormalization(批量標(biāo)準(zhǔn)化)BN的提出還是為了克服深度神經(jīng)網(wǎng)絡(luò)難以訓(xùn)練的弊病,BN的原理是為了防止“梯度消0.9300.4失”,梯度消失的一個(gè)例子就是0.4,在BN中,是通過(guò)將activation規(guī)范為均值和方差一致的手段使得原本會(huì)減小的activation的scale變大。另一種卷積方
56、式已提出替代性和計(jì)算效率高的卷積技術(shù),可將乘法成本降低2.5倍激活函數(shù)過(guò)去幾十年來(lái),傳統(tǒng)的Sigmoid和Tanh激活函數(shù)已被用于實(shí)施神經(jīng)網(wǎng)絡(luò)方法。2010年提出的稱為整流線性單元(ReLU)的流行激活函數(shù)解決了用于訓(xùn)練深度學(xué)習(xí)方法的消失梯度問(wèn)題。ReLU激活在AlexNet中首次使用,這是Hinton在2012年提出的一項(xiàng)突破性CNN技術(shù)。由于激活函數(shù)在深入體系結(jié)構(gòu)的權(quán)重學(xué)習(xí)中起著至關(guān)重要的作用。許多研究人員把重點(diǎn)放在這里,因?yàn)檫@方面有很多工作要做。同時(shí),已經(jīng)提出了幾種改進(jìn)的ReLU版本,與ReLU激活功能相比,它提供了更好的準(zhǔn)確性。ReLU激活函數(shù)的有效改進(jìn)版本稱為KaimingHe等人提
57、出的參數(shù)ReLU(PReLU)。圖26顯示了LeakyReLU和ELU激活功能的圖示。這項(xiàng)技術(shù)可以自動(dòng)學(xué)習(xí)參數(shù),并以可忽略的額外計(jì)算成本提高精度。最近提出的指數(shù)線性單位激活函數(shù),可以使DCNN結(jié)構(gòu)更快更準(zhǔn)確的版本。此外,調(diào)整激活函數(shù)的負(fù)向部分會(huì)產(chǎn)生最近提出的具有多指數(shù)線性單元(MELU)的泄漏ReLU。S形整流線性激活單元在2015年提出?,F(xiàn)代激活功能調(diào)查于2015年進(jìn)行。池層目前,兩種不同的技術(shù)已經(jīng)被用于在池層實(shí)現(xiàn)深度網(wǎng)絡(luò):平均池和最大池。LeNet首次使用平均池層的概念,AlexNet在2012年使用了最大池層7。最大池化和平均池化操作的概念圖如圖所示。多尺度金字塔池匯于2015年提出11
58、8。正則化方法上面說(shuō)的DropOut就是一種正則化方法,除此之外還有別的方法,但是此方法現(xiàn)在比較流行。DL的其他優(yōu)化方法有不同的優(yōu)化方法,如SGD,Adagrad,AdaDelta,RMSprop和Adam等等五.循環(huán)神經(jīng)網(wǎng)絡(luò)RNN)RNN介紹傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),輸入與輸出都是互相獨(dú)立的。比如說(shuō)在用卷積神經(jīng)網(wǎng)絡(luò)做圖像識(shí)別的時(shí)候,一個(gè)圖片中的貓和狗是被分割開(kāi)的,是互相獨(dú)立的。然而在有些場(chǎng)景下,后續(xù)的輸出和之前的內(nèi)容是相關(guān)的。比如“我是中國(guó)人,我的母語(yǔ)是_”,空格中要填寫的需要依賴于前文中的“中國(guó)人”。其實(shí)就像英語(yǔ)考試中的完形填空一樣,要知道這個(gè)空中填什么,必須要看上下文。因此,RDD中引入了“記憶”
59、的概念?!拜敵觥币蕾囉凇拜斎搿焙蜕弦粋€(gè)時(shí)間點(diǎn)的”記憶“。記憶使得前文中的東西仍然對(duì)后文產(chǎn)生了影響。RNN網(wǎng)絡(luò)結(jié)構(gòu)在普通的全連接網(wǎng)絡(luò)或者CNN中,每層神經(jīng)元的信號(hào)只能向上一層傳播,樣本的處理在各個(gè)時(shí)刻獨(dú)立。而在RNN中,神經(jīng)元的輸出可以在下一個(gè)時(shí)間戳直接作用到自身,即第i層神經(jīng)元在在m時(shí)刻的輸入,除了(i-1)層神經(jīng)元在該時(shí)刻的輸出外,還包括自身在(m-1)時(shí)刻的輸出,表示成圖如下:OutputLayerHlddenLayerInputLayer從上圖可以看到隱含層節(jié)點(diǎn)之間增加了互連。將RNN在時(shí)間上展開(kāi),得到下圖所示結(jié)構(gòu):OvVWJJUO-Unfold9O-上圖的右邊部分。從左到右是時(shí)間發(fā)展的
60、過(guò)程,第一個(gè)是t-i的時(shí)刻,中間是t時(shí)刻,第三個(gè)是t+1時(shí)刻。St是t時(shí)刻的記憶,x是指輸入,O是指輸出,W是指從上一個(gè)時(shí)刻t-1到這個(gè)時(shí)刻t的權(quán)重,U是指輸入到隱層的權(quán)重。很直觀的看到,在t時(shí)刻,St被兩個(gè)箭頭所指向,分別是來(lái)自于t-1時(shí)刻的st-1*W的影響,和t時(shí)刻的輸入Xt*U的影響。也就是說(shuō),和傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)相比,RNN多了一份對(duì)過(guò)去的記憶。公式如下:RNN結(jié)構(gòu)細(xì)節(jié):1可以把隱狀態(tài)St視作“記憶體”,它捕捉了之前時(shí)間點(diǎn)上的信息。2.輸出Ot由當(dāng)前時(shí)間及之前所有的“記憶”共同得到。雖然指向St的只有上一個(gè)時(shí)刻的記憶StT,但是StT是由St-2的記憶得到的,逐層往前推,其實(shí)St是受到了
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 管道工程行業(yè)自律與規(guī)范完善路徑探索與實(shí)施策略考核試卷
- 紡織面料鞋制造節(jié)能減排技術(shù)考核試卷
- 雙十一銷量增長(zhǎng)秘籍
- 四川農(nóng)業(yè)大學(xué)《生物質(zhì)廢棄物資源化利用》2023-2024學(xué)年第二學(xué)期期末試卷
- 寧夏衛(wèi)生健康職業(yè)技術(shù)學(xué)院《圖形圖像處理技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 寧夏職業(yè)技術(shù)學(xué)院《生物工程概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 天津市東麗區(qū)名校2025年初三第二次聯(lián)考考生物試題理試題含解析
- 昆明學(xué)院《生物工程與技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林省白城市一中2025屆高三第二學(xué)期調(diào)研考試(語(yǔ)文試題)試題含解析
- 2025年網(wǎng)絡(luò)工程師水平測(cè)試試卷及答案
- 2025屆高三化學(xué)備考:山東高考模擬練習(xí)-工業(yè)流程61道
- 聯(lián)營(yíng)采購(gòu)合同協(xié)議
- JJF 2230-2025混凝土電阻率測(cè)試儀校準(zhǔn)規(guī)范
- 【9數(shù)一?!?025年安徽合肥市第四十五中學(xué)九年級(jí)中考一模數(shù)學(xué)試卷(含答案)
- 掛靠法人免責(zé)協(xié)議書(shū)
- 煤炭加工中的選煤技術(shù)與選煤機(jī)械考核試卷
- 2025年中石油政工師理論考試題庫(kù)(含答案)
- 2024年江蘇師范大學(xué)科文學(xué)院招聘專任教師筆試真題
- 微生物檢驗(yàn)員專業(yè)考試試題及答案
- 西方哲學(xué)試題庫(kù)及答案
- 人教版數(shù)學(xué)七年級(jí)上冊(cè)《整式的加減》單元作業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論