版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
人工智能技術(shù)基礎(chǔ)卷積神經(jīng)網(wǎng)絡(luò)第三章
卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetworks,CNN)是一類包含卷積計(jì)算且具有深層結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)的研究始于20世紀(jì)80~90年代,LeNet-5是最早出現(xiàn)的卷積神經(jīng)網(wǎng)絡(luò);2012年,AlexKrizhevsky等憑借AlexNet得了當(dāng)年的視覺圖像挑戰(zhàn)賽,震驚世界。自此之后,各類采用卷積神經(jīng)網(wǎng)絡(luò)的算法紛紛成為大規(guī)模視覺識(shí)別競(jìng)賽的優(yōu)勝算法。如今,卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)成為計(jì)算機(jī)視覺領(lǐng)域最具有影響力的技術(shù)手段。
3卷積神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介1.了解圖像基本特點(diǎn),并掌握卷積神經(jīng)網(wǎng)絡(luò)的基本特性;2.掌握卷積神經(jīng)網(wǎng)絡(luò)的基本組成,卷積層、池化層和全連接層的特性;3.學(xué)習(xí)常用的幾種卷積操作、池化操作以及全連接層的卷積操作,掌握卷積層步長(zhǎng)的選擇和padding的選擇會(huì)實(shí)現(xiàn)圖像語義分割中常用的反卷積和空洞卷積;4.了解幾種經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型LeNet5、AlexNet、VGG、GoogleNet、ResNet、DenseNet和SE-Net。學(xué)習(xí)目標(biāo)3卷積神經(jīng)網(wǎng)絡(luò)目錄Contents3.1卷積神經(jīng)網(wǎng)絡(luò)的特性卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹本章小結(jié)3.23.33.401卷積神經(jīng)網(wǎng)絡(luò)特性3.1卷積神經(jīng)網(wǎng)絡(luò)特性
卷積神經(jīng)網(wǎng)絡(luò)具有的局部連接、權(quán)值共享和不變性與圖像的局部性、相同性和不變性相一致,特別適合處理與圖像相關(guān)的任務(wù),因此在計(jì)算機(jī)視覺領(lǐng)域發(fā)揮了重要作用。特征定義局部性當(dāng)需要從一張圖片中獲取某一特征時(shí),該特征通常不是由整張圖片決定的,而是僅由圖片中的一些局部區(qū)域來決定。相同性對(duì)于不同的圖片,如果它們具有相同特征,即使這些特征位于不同的位置,但是檢測(cè)所做的操作是一樣的。不變性對(duì)于一張圖片在進(jìn)行下采樣后,圖片的性質(zhì)基本上是保持不變的,改變的僅僅是圖片的尺寸。3.1卷積神經(jīng)網(wǎng)絡(luò)特性
全連接神經(jīng)網(wǎng)絡(luò)中的每個(gè)神經(jīng)元都與它前一層中的所有神經(jīng)元相連,如果將圖像的每一個(gè)像素看作一個(gè)神經(jīng)元,使用全連接網(wǎng)絡(luò)完成與圖像相關(guān)的任務(wù),無疑對(duì)計(jì)算機(jī)的存儲(chǔ)和運(yùn)算速度有著很高的要求,而且圖像越大,要求越高。并且對(duì)于圖像來說,每個(gè)像素和其周圍像素的聯(lián)系是相對(duì)比較緊密的,而和離得很遠(yuǎn)的像素的聯(lián)系可能就比較小了。如果一個(gè)神經(jīng)元和上一層所有的神經(jīng)元相連,那么就相當(dāng)于對(duì)于一個(gè)像素來說,把圖像的所有像素都同等看待了,缺少了位置信息。而卷積神經(jīng)網(wǎng)絡(luò)采用局部連接的方法,每個(gè)神經(jīng)元不再和上一層的所有神經(jīng)元相連,而只和一小部分神經(jīng)元相連,這樣就減少了很多的參數(shù),加快了學(xué)習(xí)速度。3.1.1局部連接局部連接全連接3.1卷積神經(jīng)網(wǎng)絡(luò)特性
一般神經(jīng)網(wǎng)絡(luò)層與層之間的連接是,每個(gè)神經(jīng)元與上一層的全部神經(jīng)元相連,這些連接權(quán)重獨(dú)立于其他的神經(jīng)元,所以假設(shè)上一層是m個(gè)神經(jīng)元,當(dāng)前層是n個(gè)神經(jīng)元,那么共有m×n個(gè)連接,也就有m×n個(gè)權(quán)重。權(quán)重矩陣就是m×n形狀。而在卷積神經(jīng)網(wǎng)絡(luò)中,給一張輸入圖片,通常的做法是用一個(gè)卷積核(類似于圖像處理中的濾波器,實(shí)質(zhì)為針對(duì)一個(gè)小區(qū)域的一組連接權(quán)重)去掃描這張圖,卷積核里面的數(shù)實(shí)質(zhì)就是神經(jīng)網(wǎng)絡(luò)中不同層神經(jīng)元之間的連接權(quán)。權(quán)值共享意味著每一個(gè)卷積核在遍歷整個(gè)圖像的時(shí)候,卷積核的參數(shù)(連接權(quán)值)是固定不變的,比如有3個(gè)卷積核,每個(gè)卷積核都會(huì)掃描整個(gè)圖像,在掃描的過程中,卷積核的參數(shù)值是固定不變的,即整個(gè)圖像的所有元素都“共享”了相同的權(quán)值。3.1.2權(quán)值共享3.1卷積神經(jīng)網(wǎng)絡(luò)特性
卷積神經(jīng)網(wǎng)絡(luò)中有一種重要的操作:池化操作(通常采用取最大值操作),它將前一層的一個(gè)小區(qū)域中所有像素值變成了下一層中的一個(gè)像素值。這就意味著即使圖像經(jīng)歷了一個(gè)小的平移或旋轉(zhuǎn)之后,依然會(huì)產(chǎn)生相同的特征,這使卷積神經(jīng)網(wǎng)絡(luò)對(duì)微小的平移和旋轉(zhuǎn)具有不變性。在很多任務(wù)中,例如物體檢測(cè)、語音識(shí)別等,我們都更希望得到具有平移和旋轉(zhuǎn)不變性的特征,希望即使圖像經(jīng)過了平移和旋轉(zhuǎn),圖像的標(biāo)記仍然保持不變。3.1.3不變性02卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練
卷積神經(jīng)網(wǎng)絡(luò)由卷積層、池化層和全連接層組成,其訓(xùn)練采用誤差反向傳播(BP)算法。3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練
3.2.1卷積層圖像的像素矩陣1Texthere卷積核填充
在卷積操作過程中,如果不對(duì)要進(jìn)行卷積的圖像(隱層的圖像稱特征圖)預(yù)先作填充處理,卷積后的圖像會(huì)變小,卷積層越多,卷積后的特征圖會(huì)越小。而且輸入特征圖四個(gè)角的邊緣像素只被計(jì)算一次,而中間像素則被卷積計(jì)算多次,意味著丟失圖像角落信息。此外,實(shí)際應(yīng)用中有時(shí)希望輸入和輸出在空間上尺寸是一致的。因此,為了解決上述問題,就對(duì)輸入特征圖進(jìn)行邊界填充,即填充像素。常用的邊界填充方法包括:零填充、邊界復(fù)制、鏡像、塊復(fù)制,常用的是零填充。卷積核
在進(jìn)行圖像處理時(shí),給定輸入圖像,輸出圖像中的每一個(gè)像素就是輸入圖像中一個(gè)小區(qū)域中像素的加權(quán)平均,其中權(quán)值由一個(gè)函數(shù)定義,這個(gè)函數(shù)即為卷積核。在卷積神經(jīng)網(wǎng)絡(luò)里,通常稱之為濾波器。
主要特點(diǎn):1.卷積核只關(guān)注局部特征,局部的程度取決于卷積核的大小;2.卷積核的深度要和輸入圖片的通道數(shù)相同;3.一個(gè)卷積核在與輸入圖片的不同區(qū)域做卷積時(shí),它的參數(shù)是固定不變的;4.在一個(gè)卷積層中,通常會(huì)有一整個(gè)集合的卷積核組(也稱濾波器組),每個(gè)卷積核組對(duì)應(yīng)檢測(cè)一種特征。步長(zhǎng)
步長(zhǎng)即卷積核在原始圖片上做卷積時(shí)每次滑動(dòng)的像素點(diǎn),步長(zhǎng)不同,所得到的輸出結(jié)果也是不同的。如不加以說明,默認(rèn)步長(zhǎng)為1。3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練步長(zhǎng)卷積層填充3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練幾種在圖像上的卷積過程:?jiǎn)瓮ǖ谰矸e多通道卷積3D卷積分組卷積混洗分組卷積3.2.1卷積層多通道+多卷積3D卷積分組卷積混洗分組卷積3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練
在卷積神經(jīng)網(wǎng)絡(luò)中,通常會(huì)在卷積層之間周期性的插入一個(gè)池化層(Pooling),也稱下采樣層(Downsampling),它的作用有三個(gè):池化層具有特征不變性池化能夠?qū)μ卣鬟M(jìn)行降維加入池化層能在一定程度上防止過擬合,更方便優(yōu)化。3.2.2池化層池化過程3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練常用的池化操作有最大池化(Max-pooling)、平均池化(Mean-pooling)。研究人員還提出了針對(duì)整個(gè)特征圖進(jìn)行的池化操作稱為全局池化,也分為全局最大值池化(GMP)和全局平均池化(GAP)。將GMP和GAP的結(jié)果并接后用于通道注意力和空間注意力中,提高CNN的性能已成為常用手段。3.2.2池化層3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練卷積層提取的是輸入圖片的局部特征,全連接層則是把提取到的局部特征重新排列為一維向量。全連接層將局部特征中的每一個(gè)點(diǎn)與輸出向量中的每一個(gè)點(diǎn)都互相連接起來,并且讓每個(gè)連接都具有獨(dú)立的權(quán)值,所以稱為全連接。在卷積神經(jīng)網(wǎng)絡(luò)中,全連接層充當(dāng)著網(wǎng)絡(luò)的分類器。全連接層可以整合卷積層或者池化層中具有類別區(qū)分性的局部信息。3.2.3全連接層卷積層——全連接層3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練直接采用第2章介紹的誤差反向傳播(BP)算法,只需注意各層神經(jīng)元的連接關(guān)系和共享特性。批正則化(BN)針對(duì)卷積網(wǎng)絡(luò)的每個(gè)神經(jīng)元,使數(shù)據(jù)在進(jìn)入激活函數(shù)之前,沿著通道計(jì)算每個(gè)批次(Batch)的均值、方差,‘強(qiáng)迫’數(shù)據(jù)保持均值為0,方差為1的正態(tài)分布,避免發(fā)生梯度消失。3.2.4卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練批正則化(BN)過程3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練BatchNormalization的優(yōu)勢(shì)與局限:優(yōu)勢(shì)極大提升了訓(xùn)練速度,收斂過程大大加快;還能增加分類效果,一種解釋是這是類似于Dropout的一種防止過擬合的正則化表達(dá)方式,所以不用Dropout也能達(dá)到相當(dāng)?shù)男Ч?;另外調(diào)參過程也簡(jiǎn)單多了,對(duì)于初始化要求沒那么高,而且可以使用大的學(xué)習(xí)率等。3.2.4卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練3.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練BatchNormalization的優(yōu)勢(shì)與局限:2.局限每次是在一個(gè)Batch上計(jì)算均值、方差,如果Batchsize太小,則計(jì)算的均值、方差不足以代表整個(gè)數(shù)據(jù)分布;Batchsize太大:會(huì)超過內(nèi)存容量;需要跑更多的Epoch,導(dǎo)致總訓(xùn)練時(shí)間變長(zhǎng);會(huì)直接固定梯度下降的方向,導(dǎo)致很難更新;不適用于動(dòng)態(tài)網(wǎng)絡(luò)結(jié)構(gòu),例如,RNN。3.2.4卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練03卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型LeNetAlexNetVGGGoogleNetResNetDenseNetSE-Net3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹LeNet-5模型是YannLeCun教授于1998年在論文《Gradient-basedlearningappliedtodocumentrecognition》中提出的,它是第一個(gè)成功應(yīng)用于手寫數(shù)字識(shí)別問題的卷積神經(jīng)網(wǎng)絡(luò)。LeNet的最大貢獻(xiàn)是:它定義了CNN的基本結(jié)構(gòu),可稱為CNN的鼻祖。自那時(shí)起,CNN最基本的架構(gòu)就定下來了:卷積層、池化層、全連接層。LeNet-5模型一共有7層,主要有2個(gè)卷積層、2個(gè)下采樣層(池化層)、3個(gè)全連接層。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹LeNet-5網(wǎng)絡(luò)結(jié)構(gòu)3.3.1LeNet網(wǎng)絡(luò)AlexNet是由2012年圖像識(shí)別大賽冠軍獲得者辛頓和他的學(xué)生亞歷克斯·克里熱夫斯基(AlexKrizhevsky)設(shè)計(jì)的,AlexNet的出現(xiàn)也使得CNN成為了圖像分類的核心算法模型。其官方提供的數(shù)據(jù)模型,準(zhǔn)確率Top-1達(dá)到57.1%,Top-5達(dá)到80.2%。這相對(duì)于傳統(tǒng)的機(jī)器學(xué)習(xí)分類算法而言,已經(jīng)相當(dāng)出色。因?yàn)槭遣捎脙膳_(tái)GPU服務(wù)器,所以會(huì)看到兩路網(wǎng)絡(luò)。AlexNet模型共有八層,其中包括5個(gè)卷積層和3個(gè)全連接層,每一個(gè)卷積層中都包含了ReLU激活函數(shù)和局部相應(yīng)歸一化(LocalResponseNormalization,LRN)處理。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹AlexNet網(wǎng)絡(luò)結(jié)構(gòu)3.3.2AlexNet網(wǎng)絡(luò)VGGNet是VisualGeometryGroup的縮寫,是由牛津大學(xué)計(jì)算機(jī)視覺組合和谷歌DeepMind公司研究員一起研發(fā)的深度卷積神經(jīng)網(wǎng)絡(luò)。VGGNet和GoogleNet同在2014年參賽,圖像分類任務(wù)中GoogLeNet第一,VGG第二,它們都是十分有意義的網(wǎng)絡(luò)結(jié)構(gòu)。VGGNet的提出,證明了用尺寸很小的卷積(3×3)來增加網(wǎng)絡(luò)深度能夠有效提升模型的效果,且此網(wǎng)絡(luò)對(duì)其他數(shù)據(jù)集有較好的泛化能力,同時(shí)證明了增加網(wǎng)絡(luò)的深度能夠在一定程度上提升網(wǎng)絡(luò)最終的性能。VGGNet有兩種結(jié)構(gòu),分別是VGG16和VGG19,兩者除了網(wǎng)絡(luò)深度不一樣,其本質(zhì)并沒有什么區(qū)別。其中VGG16是最常用的。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹VGGNet網(wǎng)絡(luò)結(jié)構(gòu)3.3.3VGGNet網(wǎng)絡(luò)LeNet-5、AlexNet、VGGNet屬于早期的網(wǎng)絡(luò)結(jié)構(gòu)。它們都是通過加深網(wǎng)絡(luò)、修改卷積核大小等手段來提升性能。雖然這三個(gè)網(wǎng)絡(luò)模型的性能有所提高,但是網(wǎng)絡(luò)的結(jié)構(gòu)仍然是卷積-池化串聯(lián)的方式。通過增加網(wǎng)絡(luò)層數(shù)的方式雖然在一定程度上能夠增強(qiáng)模型的性能,但是當(dāng)網(wǎng)絡(luò)的層數(shù)已經(jīng)很多時(shí),繼續(xù)增加網(wǎng)絡(luò)層數(shù),并不能提高模型性能。因此Inception-block、ResNet-block、DenseNet-block、SE-block等模塊的提出在一定程度上避免了這種問題,通過模塊與模塊的不斷堆疊組成了Inception、ResNet、DenseNet等經(jīng)典網(wǎng)絡(luò)。本節(jié)主要介紹Inception-block、ResNet-block、DenseNet-block、SE-block等模塊的基本結(jié)構(gòu)。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)1.Inception-blockInception網(wǎng)絡(luò)在ILSVRC14中達(dá)到了當(dāng)時(shí)最好的分類和檢測(cè)性能。這個(gè)架構(gòu)的主要特點(diǎn)是能夠更好地利用網(wǎng)絡(luò)內(nèi)部的計(jì)算資源。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)Inception原始模塊1.Inception-blockInception網(wǎng)絡(luò)在ILSVRC14中達(dá)到了當(dāng)時(shí)最好的分類和檢測(cè)性能。這個(gè)架構(gòu)的主要特點(diǎn)是能夠更好地利用網(wǎng)絡(luò)內(nèi)部的計(jì)算資源。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)Inception原始模塊實(shí)現(xiàn)降維Inception模塊1.Inception-blockInceptionv2和Inceptionv3來自同一篇論文《RethinkingtheInceptionArchitectureforComputerVision》,作者提出了一系列能夠增加準(zhǔn)確度和減少計(jì)算復(fù)雜度的修正方法。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)InceptionV2模塊擴(kuò)展后的模型1.Inception-blockInceptionv4在2015年被提出,大部分沿用了之前v1、v2的結(jié)構(gòu),主要是為分片訓(xùn)練考慮。2015年Tensorflow還沒有出現(xiàn),在分片訓(xùn)練時(shí)需要考慮各個(gè)機(jī)器上計(jì)算量的平衡來縮短總的訓(xùn)練時(shí)間,因此在設(shè)計(jì)結(jié)構(gòu)時(shí)會(huì)受到限制。2016年,Tensorflow開始被廣泛使用,其在內(nèi)存的占用上做了優(yōu)化,所以便不需要采取分片訓(xùn)練,在這一基礎(chǔ)上,Inception網(wǎng)絡(luò)做了優(yōu)化,于是就有了Iceptionv4。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)InceptionV4模塊2.ResNet-blockResNet引入了殘差網(wǎng)絡(luò)結(jié)構(gòu)(ResidualNetwork),通過這種殘差網(wǎng)絡(luò)結(jié)構(gòu),可以在加深網(wǎng)絡(luò)層數(shù)的同時(shí)得到非常不錯(cuò)的分類效果。殘差網(wǎng)絡(luò)借鑒了高速網(wǎng)絡(luò)(HighwayNetwork)的跨層連接思想,并在此基礎(chǔ)上進(jìn)行改善,殘差項(xiàng)原本是帶權(quán)值的,但是ResNet用恒等映射作為替代。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)殘差網(wǎng)絡(luò)基本結(jié)構(gòu)3.DenseNet-blockDenseNet-block的基本思路與ResNet-block一致,但是它建立的是前面所有層與后面層的密集連接(DenseConnection),它的名稱也是由此而來。DenseNet的另一大特色是通過特征在通道上的連接來實(shí)現(xiàn)特征重用(FeatureReuse)。這些特點(diǎn)讓DenseNet在參數(shù)和計(jì)算成本更少的情形下實(shí)現(xiàn)比ResNet更優(yōu)的性能,DenseNet也因此斬獲CVPR2017的最佳論文獎(jiǎng)。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)DenseNet-block的基本結(jié)構(gòu)4.SE-blockSE-Net與ResNext-154相結(jié)合以極高的準(zhǔn)確率獲得了最后一屆ImageNet2017競(jìng)賽圖片分類任務(wù)的冠軍,有興趣的讀者可以閱讀論文《Squeeze-and-ExcitationNetworks》。SE-Net的核心是擠壓(Squeeze)和激勵(lì)(Excitation)兩個(gè)操作。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)SE-Net基本結(jié)構(gòu)4.SE-blockSE-Net本質(zhì)是對(duì)每個(gè)通道的特征圖加權(quán),因此人們也把其稱作通道注意力,將其加入某種卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中使用。3.3卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹3.3.4其它經(jīng)典網(wǎng)絡(luò)的基本結(jié)構(gòu)SE-Net應(yīng)用04小結(jié)3.4本章總結(jié)
本章在介紹圖像基本特點(diǎn)的基礎(chǔ)上,引出了卷積神經(jīng)網(wǎng)絡(luò)的基本特性,進(jìn)而給出了卷積神經(jīng)網(wǎng)絡(luò)的基本組成,分別討論了卷積層、池化層和全連接層的特性,給出了常用的幾種卷積操作、池化操作以及全連接層的卷積操作,強(qiáng)調(diào)了在卷積層步長(zhǎng)的選擇和padding的選擇會(huì)實(shí)現(xiàn)圖像語義分割中常用的反卷積和空洞卷積。最后介紹了幾種經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型LeNet5、AlexNet、VGG、GoogleNet、ResNet、DenseNet和SE-Net。感謝您的觀看!人工智能技術(shù)基礎(chǔ)循環(huán)神經(jīng)網(wǎng)絡(luò)第四章
循環(huán)神經(jīng)網(wǎng)絡(luò)(RecurrentNeuralNetwork,RNN)是一類處理序列數(shù)據(jù)的人工神經(jīng)網(wǎng)絡(luò)。相較于卷積神經(jīng)網(wǎng)絡(luò)關(guān)注的是數(shù)據(jù)中的局部特征,循環(huán)神經(jīng)網(wǎng)絡(luò)關(guān)注的是序列數(shù)據(jù)中按照序列順序的前后依賴關(guān)系。它將先前數(shù)據(jù)的計(jì)算結(jié)果與之后的數(shù)據(jù)一同計(jì)算產(chǎn)生新的結(jié)果,如此循環(huán)往復(fù)。正是因?yàn)檠h(huán)網(wǎng)絡(luò)對(duì)于不同時(shí)間步的數(shù)據(jù)不是同時(shí)計(jì)算的,因而可以處理可變長(zhǎng)度的序列數(shù)據(jù),大大擴(kuò)大了應(yīng)用范圍。4循環(huán)神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介1.了解RNN的基本知識(shí)和形式化的數(shù)學(xué)模型表示;2.掌握循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法;3.掌握標(biāo)準(zhǔn)RNN的前向計(jì)算和時(shí)間反向傳播計(jì)算過程;4.掌握幾種流行的RNN變體結(jié)構(gòu);5.了解RNN的應(yīng)用結(jié)構(gòu)。學(xué)習(xí)目標(biāo)4循環(huán)神經(jīng)網(wǎng)絡(luò)目錄Contents4.1循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型循環(huán)神經(jīng)網(wǎng)絡(luò)的應(yīng)用結(jié)構(gòu)小結(jié)4.24.34.44.501循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)4.1循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)1990年,JeffreyElman將多層前向神經(jīng)網(wǎng)絡(luò)隱層的輸出引回到輸入層作為聯(lián)系單元與原輸入層單元并列與隱層神經(jīng)元相連接,構(gòu)成描述動(dòng)態(tài)系統(tǒng)狀態(tài)的神經(jīng)網(wǎng)絡(luò)模型,當(dāng)時(shí)被稱為Elman網(wǎng),也被稱為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),主要用于動(dòng)態(tài)系統(tǒng)建模解決復(fù)雜系統(tǒng)預(yù)測(cè)預(yù)報(bào)問題。1997年JürgenSchmidhuber將RNN中的簡(jiǎn)單常規(guī)神經(jīng)元替換成具有更多連接權(quán)值的復(fù)雜記憶單元,提出了長(zhǎng)短期記憶(LongShort-TermMemory,LSTM)模型,使RNN的能力大為提高。2003年YoshuaBengio把RNN用于解決傳統(tǒng)語言處理模型的“維度詛咒(CurseofDimensionality)”問題,使其在自然語言處理中開始應(yīng)用。2012年卷積神經(jīng)網(wǎng)絡(luò)在物體分類識(shí)別上的成功,使RNN返回研究人員的視野,已在機(jī)器翻譯、語音識(shí)別和個(gè)性化推薦等眾多領(lǐng)域效果顯著,成為解決與時(shí)序相關(guān)聯(lián)問題的主要深度神經(jīng)網(wǎng)絡(luò)模型。4.1循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)RNN物理結(jié)構(gòu)圖RNN按時(shí)序展開結(jié)構(gòu)圖4.1循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)從RNN按時(shí)序展開的結(jié)構(gòu)可以看到,RNN在每一時(shí)刻都有外部輸入,反饋形成的環(huán)(回)路展開后,上一時(shí)刻隱層的輸出與本時(shí)刻的外部輸入同時(shí)送入本時(shí)刻的隱層,展開的網(wǎng)絡(luò)深度與輸入的時(shí)序數(shù)據(jù)的長(zhǎng)度一致,數(shù)據(jù)越長(zhǎng),網(wǎng)絡(luò)越深,因此RNN本質(zhì)上也是深度前向神經(jīng)網(wǎng)絡(luò)。RNN按時(shí)序展開結(jié)構(gòu)不同于常規(guī)前向神經(jīng)網(wǎng)絡(luò),其各隱層的神經(jīng)元數(shù)量是相同的,且網(wǎng)絡(luò)各層中的輸入到隱層的連接權(quán)、隱層到隱層的反饋連接權(quán)和隱層到輸出層的連接權(quán)是全網(wǎng)絡(luò)共享不變的。需要注意的是RNN沒有強(qiáng)制要求輸入序列與輸出序列的長(zhǎng)度必須相等。RNN的數(shù)學(xué)模型如下:4.1循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)RNN中隱層神經(jīng)元激活函數(shù)通常采用tanh函數(shù),輸出神經(jīng)元的激活函數(shù)則依據(jù)所解決的問題確定,如果是二分類問題則使用Sigmoid函數(shù),如果是多分類問題則使用Softmax函數(shù)。RNN計(jì)算單元02循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法
RNN可以使用誤差反向傳播算法的思想進(jìn)行訓(xùn)練。訓(xùn)練RNN的算法為通過時(shí)間反向傳播BPTT(BackPropagationThroughTime,BPTT)算法,它和傳統(tǒng)的反向傳播算法BP有類似之處,它們的核心任務(wù)都是利用反向傳播調(diào)整參數(shù),從而使得損失函數(shù)最小化。通過時(shí)間反向傳播算法,也包含前向計(jì)算和反向計(jì)算兩個(gè)步驟。4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法標(biāo)準(zhǔn)結(jié)構(gòu)RNN的前向傳播過程,如下圖所示,為了有效區(qū)分不同類型的連接權(quán),分別用U、W、V代表輸入權(quán)、反饋權(quán)和輸出權(quán)。圖中各個(gè)符號(hào)的含義:x是輸入,h是隱層節(jié)點(diǎn),o為輸出,L為損失函數(shù),y為訓(xùn)練集的標(biāo)簽。這些元素右上角帶的t代表t時(shí)刻的狀態(tài),其中需要注意的是,因?yàn)閱卧猦在t時(shí)刻的表現(xiàn)不僅由此刻的輸入決定,還受t時(shí)刻之前時(shí)刻的影響。U、W、V是權(quán)值,同一類型的連接權(quán)值相同。4.2.1循環(huán)神經(jīng)網(wǎng)絡(luò)的前向輸出流程RNN的前向輸出流程4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法BPTT算法是常用的訓(xùn)練RNN的方法,其實(shí)本質(zhì)還是BP算法,只不過RNN處理的是時(shí)間序列數(shù)據(jù),所以要基于時(shí)間反向傳播,故叫隨時(shí)間反向傳播。BPTT的中心思想和BP算法相同,沿著需要優(yōu)化參數(shù)的負(fù)梯度方向不斷尋找更優(yōu)的點(diǎn)直至收斂。因此,BPTT算法還是BP算法,本質(zhì)上還是梯度下降,那么求各個(gè)參數(shù)的梯度便成了此算法的核心。需要尋優(yōu)的參數(shù)有三個(gè),分別是U、W、V。與BP算法不同的是,三個(gè)參數(shù)的尋優(yōu)過程需要追溯之前的歷史數(shù)據(jù)。4.2.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法——隨時(shí)間反向傳播4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法在梯度累乘過程中,如果取Sigmoid函數(shù)作為激活函數(shù)的話,那么必然是一堆小數(shù)在做乘法,結(jié)果就是越乘越小。隨著時(shí)間序列的不斷深入,小數(shù)的累乘就會(huì)導(dǎo)致梯度越來越小直到接近于0,這就是“梯度消失”現(xiàn)象。梯度消失就意味消失那一層的參數(shù)再也不更新,那么那一層隱層就變成了單純的映射層,毫無意義了,所以在深層神經(jīng)網(wǎng)絡(luò)中,有時(shí)候多增加層的神經(jīng)元數(shù)量可能會(huì)比多加層數(shù)即深度更好。RNN的特點(diǎn)就是能“追根溯源”利用歷史數(shù)據(jù),歷史數(shù)據(jù)越長(zhǎng)“梯度消失”越嚴(yán)重,因此解決“梯度消失”越是非常必要的。ReLU函數(shù)可以解決循環(huán)神經(jīng)網(wǎng)絡(luò)中的梯度消失問題。4.2.3循環(huán)神經(jīng)網(wǎng)絡(luò)中梯度消失和爆炸問題及解決方法1.梯度消失的原因與解決辦法4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法4.2.3循環(huán)神經(jīng)網(wǎng)絡(luò)中梯度消失和爆炸問題及解決方法1.梯度消失的原因與解決辦法Sigmoid函數(shù)及其導(dǎo)數(shù)圖tanh函數(shù)及其導(dǎo)數(shù)圖ReLU函數(shù)及其導(dǎo)數(shù)圖4.2循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法使用ReLU解決了RNN的“梯度消失”問題,但也帶來了另一個(gè)問題—“梯度爆炸”問題。一旦激活函數(shù)的導(dǎo)數(shù)恒為1,由于網(wǎng)絡(luò)權(quán)W的取值無約束,連乘很容易使損失函數(shù)對(duì)連接權(quán)的偏導(dǎo)數(shù)越來越大(時(shí)序越長(zhǎng),RNN展開結(jié)構(gòu)的隱層越多,乘積越大),導(dǎo)致“梯度爆炸”現(xiàn)象的發(fā)生。深度前向神經(jīng)網(wǎng)絡(luò)的激活函數(shù)采用ReLU同樣存在“梯度爆炸”問題?!疤荻缺ā眴栴}的解決比較簡(jiǎn)單,只需要給損失函數(shù)對(duì)三組連接權(quán)的梯度的絕對(duì)值設(shè)定合適的閾值,限制其最大值就可以解決這個(gè)問題。對(duì)于“梯度消失”和“梯度爆炸”,通過采取將網(wǎng)絡(luò)初始權(quán)值設(shè)為接近0的非常小的數(shù)值,對(duì)網(wǎng)絡(luò)的輸入值做正則化或歸一化處理和對(duì)網(wǎng)絡(luò)隱層輸出做逐層正則化(LN)處理等措施,也可在網(wǎng)絡(luò)訓(xùn)練過程中有效減少這兩種現(xiàn)象的發(fā)生,提高網(wǎng)絡(luò)的訓(xùn)練效率。4.2.3循環(huán)神經(jīng)網(wǎng)絡(luò)中梯度消失和爆炸問題及解決方法2.梯度爆炸的原因與解決辦法03循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型4.3循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型簡(jiǎn)單循環(huán)網(wǎng)絡(luò)是RNN的一種特殊情況,如圖所示,SRNN是一個(gè)三層網(wǎng)絡(luò),與傳統(tǒng)RNN網(wǎng)絡(luò)結(jié)構(gòu)相比,SRNN只是隱層神經(jīng)元自身有自反饋,這個(gè)反饋并不連接到其它隱層神經(jīng)元,相當(dāng)于只在隱層增加了上下文信息。SRNN在20世紀(jì)90年代被稱為對(duì)角回歸神經(jīng)網(wǎng)絡(luò)。圖中I1-In為網(wǎng)絡(luò)的輸入,Y1-Yn為網(wǎng)絡(luò)的隱層,M1-Mn為上下文單元。從圖中可以看出Y1-Yn與M1-Mn為一一對(duì)應(yīng)關(guān)系,即上下文單元節(jié)點(diǎn)與隱層中節(jié)點(diǎn)的連接是固定的,而且相應(yīng)的權(quán)值也是固定的。4.3.1簡(jiǎn)單循環(huán)網(wǎng)絡(luò)SRNN基本結(jié)構(gòu)4.3循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型在循環(huán)神經(jīng)網(wǎng)絡(luò)的輸入和輸出目標(biāo)之間添加與輸入時(shí)序長(zhǎng)度相同的暫存單元,存儲(chǔ)所有隱層的輸出信息,并增加一個(gè)具有反饋連接的隱層,該隱層按輸入時(shí)序相反的方向順序接收信息,即首先接受時(shí)序輸入的最后一個(gè)信息,再接受倒數(shù)第二個(gè)信息,最后接受第一個(gè)信息,進(jìn)而將兩個(gè)信息流動(dòng)方向相反的隱層輸出同時(shí)送入網(wǎng)絡(luò)的輸出層神經(jīng)元中。按上述思想構(gòu)造的循環(huán)神經(jīng)網(wǎng)絡(luò)被稱為雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(Bi-directionalRecurrentNeuralNetwork,BRNN)。4.3.2雙向循環(huán)網(wǎng)絡(luò)BRNN雙向網(wǎng)絡(luò)基本結(jié)構(gòu)4.3循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型1997年JürgenSchmidhuber提出的長(zhǎng)短期記憶(LongShort-TermMemory,LSTM)模型,將RNN中的簡(jiǎn)單MP神經(jīng)元替換成具有更多連接權(quán)值的復(fù)雜記憶單元,使其記憶能力和處理復(fù)雜系統(tǒng)問題的能力大大提高。LSTM是RNN的一種變體,它通過精妙的門控制將RNN中隱層的狀態(tài)信息(可以看做長(zhǎng)期記憶)和當(dāng)前時(shí)刻的輸入信息(可以看作短期記憶)結(jié)合起來,有效地提高了RNN解決復(fù)雜問題的能力。4.3.3長(zhǎng)短期記憶網(wǎng)絡(luò)長(zhǎng)短期記憶網(wǎng)絡(luò)基本結(jié)構(gòu)4.3循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型LSTM的關(guān)鍵就是細(xì)胞狀態(tài),水平線在圖上方貫穿運(yùn)行。細(xì)胞狀態(tài)類似于傳送帶,直接在整個(gè)鏈上運(yùn)行,只有一些少量的線性交互,信息在上面流傳保持不變會(huì)很容易。LSTM擁有三個(gè)門,來保護(hù)和控制細(xì)胞狀態(tài),分別為遺忘門、輸入門、輸出門。4.3.3長(zhǎng)短期記憶網(wǎng)絡(luò)遺忘門輸入門輸出門4.3循環(huán)神經(jīng)網(wǎng)絡(luò)拓展模型門控循環(huán)單元(GatedRecurrentUnit,GRU)網(wǎng)絡(luò)是這些LSTM變體中影響最大的變體。它只有兩個(gè)門,分別為更新門和重置門,它將遺忘門和輸入門合成了一個(gè)單一的更新門。更新門用于控制前一時(shí)刻的狀態(tài)信息被帶入到當(dāng)前狀態(tài)中的程度,更新門的值越大說明前一時(shí)刻的狀態(tài)信息帶入越多。重置門用于控制忽略前一時(shí)刻的狀態(tài)信息的程度,重置門的值越小說明忽略得越多。4.3.4門控循環(huán)單元網(wǎng)絡(luò)GRU網(wǎng)絡(luò)基本結(jié)構(gòu)04循環(huán)神經(jīng)網(wǎng)絡(luò)的應(yīng)用結(jié)構(gòu)循環(huán)神經(jīng)網(wǎng)絡(luò)本身的特性使其特別適合處理時(shí)序數(shù)據(jù),根據(jù)實(shí)際應(yīng)用場(chǎng)景的需要,RNN有四種常用的按時(shí)序展開結(jié)構(gòu):同步的序列到序列結(jié)構(gòu)、序列分類結(jié)構(gòu)、向量到序列結(jié)構(gòu)、異步的序列到序列的模式。它們是針對(duì)不同類型的輸入輸出分別設(shè)計(jì)的。4.4
溫馨提示
- 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025下半年安徽池州市貴池區(qū)事業(yè)單位招聘工作人員41人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年四川廣元?jiǎng)﹂w縣委組織部人社局考試招聘事業(yè)單位工作人員高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年四川事業(yè)單位聯(lián)考招聘歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年福建省寧德福安市事業(yè)單位招聘89人及歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年江蘇省鹽城事業(yè)單位招聘737人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年廣東深圳市光明區(qū)事業(yè)單位招聘工作人員24人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年四川廣元市利州區(qū)招聘事業(yè)單位工作人員50人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年體育場(chǎng)館工程項(xiàng)目經(jīng)理勞動(dòng)合同2篇
- 云南財(cái)經(jīng)職業(yè)學(xué)院《禮儀文化》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度股東借款及知識(shí)產(chǎn)權(quán)融資合同
- 應(yīng)用經(jīng)方治療頑固性心力衰竭課件
- 金剛石切割線行業(yè)報(bào)告
- 籌建康復(fù)醫(yī)院項(xiàng)目計(jì)劃書
- 斷點(diǎn)管理培訓(xùn)課件-供應(yīng)商版
- 初一數(shù)學(xué)寒假銜接班(寒假補(bǔ)課講義)
- 員工健康狀況篩查方案
- 執(zhí)行 如何完成任務(wù)的學(xué)問
- 浙江省杭州市西湖區(qū)2023-2024學(xué)年四年級(jí)上學(xué)期期末科學(xué)試卷
- 刑事辯護(hù)與刑事辯護(hù)策略
- (康德卷)重慶市2024屆高三一診英語試卷(含答案)
- 農(nóng)村排水渠道疏浚與治理
評(píng)論
0/150
提交評(píng)論