當前位置:吉日网官网 - 傳統節日 - 用於深度學習的卷積神經網絡經典模型

用於深度學習的卷積神經網絡經典模型

LeNet-5模型在CNN中的應用,字符識別系統中使用的LeNet-5模型是非常經典的模型。LeNet-5模型是Yann LeCun教授在1998中提出的。它是第壹個大規模成功應用於手寫數字識別的卷積神經網絡,在MNIST數據集上的正確率可以達到99.2%。

下面詳細介紹LeNet-5模型的工作原理。

LeNet-5模型* * *有七層,每層包含很多參數,也就是卷積神經網絡中的參數。雖然只有七層,在當今龐大的神經網絡中是很少的,但它包括卷積層、池層和全連接層,可以說麻雀雖小,五臟俱全。為方便起見,我們將卷積層稱為C層,將下采樣層稱為下采樣層。

首先,輸入層輸入原始圖像,原始圖像被處理成32×32像素的值。然後,下面的隱藏層計量器在卷積和子采樣之間交替。C1層是卷積層,包含六個特征圖。每個映射是28x28個神經元。卷積核可以是5×5的十字,這28×28個神經元* * *共享卷積核的權重參數。通過卷積運算,增強了原始信號的特征,也降低了噪聲。當卷積核不同時,從圖像中提取的特征是不同的。C2層是壹個匯集層。上面已經介紹了池層的功能。它平均局部像素值以實現子采樣。

pooling圖層包含六個要素地圖,每個地圖的像素值為14x14。這個池層非常重要,可以保證壹定程度上提取網絡的特征,同時大大降低計算復雜度,從而降低網絡結構過擬合的風險。由於卷積層和池層交替出現,隱藏層的第三層是另壹個卷積層,第二個卷積層由16個特征圖組成,每個特征圖用於加權和計算的卷積核是10x10。第四個隱藏層,即第二個池層,也包含16個特征圖,每個特征圖使用的卷積核為5x5。第五隱層采用5×5卷積核運算,包含120個神經元,也是該網絡卷積運算的最後壹層。

之後第六層是全連通層,包含84個特征圖。在全連接層,對輸入進行點乘,然後加上偏置,再通過壹個激活函數傳遞給輸出層的神經元。最後壹層,第七層,為了得到輸出向量,設置了十個神經元進行分類,相當於輸出壹個十個元素的壹維數組,即0到9。

AlexNet模型

AlexNet簡介

在2012的Imagenet圖像識別大賽中,Alext提出的alexnet網絡模型壹鳴驚人,掀起了神經網絡的應用熱潮,獲得了2012圖像識別大賽的冠軍,也讓卷積神經網絡真正成為圖像處理中的核心算法。上面介紹的LeNet-5出現在上個世紀。雖然是經典,但由於各種復雜的現實場景,只能用在壹些領域。然而,隨著SVM等手工設計功能的快速發展,LeNet-5並沒有形成很大的應用局面。隨著ReLU和dropout的提出,以及GPU帶來的計算能力的突破和互聯網時代大數據的爆發,卷積神經網絡帶來了歷史性的突破,AlexNet的提出將深度學習置於人工智能的前沿。

圖像預處理

AlexNet的訓練數據采用ImageNet子集中的ILSVRC2010數據集,包括1000個類別,***1.2萬個訓練圖像,50000個驗證集,150000個測試集。在網絡訓練之前,我們需要對數據集圖像進行預處理。首先,我們需要把不同分辨率的圖片全部換成256x256的圖像。變換方法是將圖片的短邊縮放到256像素值,然後截取長邊中間的256像素值,得到256x256的圖像。除了對圖像大小進行預處理,還需要減去圖像的平均值。圖像壹般由RGB三原色組成,根據RGB三個分量分別取平均值,可以突出圖像的特點,便於後期計算。

另外,為了保證訓練效果,我們還需要對訓練數據進行更加苛刻的處理。在256x256大小的圖像中截取227x227大小的圖像,然後鏡像圖像,使原始數據增加(256-224)x(256-224)x2= 2048倍。最後RGB空間是PCA,然後主成分是高斯擾動的(0,0.1)。結果,錯誤率降低了1%。對於測試數據,我們提取圖像四角大小為224,224的圖像,中心大小為224,224的圖像以及它們的鏡像,這樣可以得到65,438+00個圖像,我們可以使用softmax進行預測,將所有預測進行平均,作為最終的分類結果。

ReLU激活功能

我們前面提到常用的非線性激活函數是sigmoid,它可以確定輸入在0到1之間的所有連續實值。但這就帶來了壹個問題,當壹個負數的絕對值很大時,那麽輸出就是0;如果是絕對值非常大的正數,則輸出為1。這會導致飽和現象,在這種情況下神經元的梯度會變得特別小,這必然會增加網絡的學習難度。另外,sigmoid輸出的值不是0作為平均值,因為這樣會導致上層輸出的非零平均值信號會直接輸入到後壹層的神經元。所以AlexNet模型提出了ReLU函數,公式為:f(x)=max(0,x)f(x)=max(0,x)。

用ReLU代替sigmoid,發現ReLU得到的SGD收斂速度比Sigmoid快很多,這成為AlexNet模型的優點之壹。

拒絕傳統社會的人

AlexNet模型提出了壹種有效的模型組合方法,只需要單個模型兩倍的時間,這種方法被稱為Dropout。在整個神經網絡中,隨機選擇壹半的神經元,使其輸出變為0。通過這種方式,網絡關閉了壹些神經元,減少了過擬合現象。同時,訓練的叠代次數也在增加。當時壹個GTX580 GPU只有3GB內存,無法進行大規模計算。但是隨著硬件水平的發展,當時的GPU已經能夠實現並行計算。並行計算後,兩個GPU可以互相通信傳輸數據,充分利用了GPU資源,所以模型設計采用兩個GPU並行運行,大大提高了運行效率。

模型分析

AlexNet模型* * *有八層,其中前五層是卷積層,其中前兩個卷積層和第五個卷積層有池層,其他卷積層沒有。後三層完全連接,約65萬個神經元,約6000萬個待訓練參數。

圖像預處理後,原始圖像進入第壹卷積層C1後變成55x55像素大小。這時,壹個* * *有96個頻道。模型分為上下兩塊,方便GPU運行,通道數為48更適合GPU並行運行。在上面的模型中,第48層直接變成了壹個曲面,這使得模型看起來更像壹個立方體,大小為55x55x48。在第二卷積層C2中,卷積核的大小為5x5x48,因此再次執行卷積運算。C1和C2卷積層卷積運算後會有壹個池層,大大降低了特征提取後特征圖像的像素值,方便了運算,使特征更加明顯。第三層的卷積層C3更為特殊。第三層的卷積層合並通道,將前面兩個通道的數據再次合並,這是壹個拼接操作。在第三層之後,由於串聯連接,通道的數量變為256。全卷積的卷積核大小變成13×13×25613×13×256。4096個這樣大小的卷積核對輸入圖像進行4096次全卷積運算,最後的結果是壹個列向量,壹個* * *,4096個數。這是最終的輸出,但是AlexNet最終會分成1000個類,所以通過第八層,也就是全連通的第三層,會得到1000個類輸出。

Alexnet網絡中各層作用不同,ReLU,多CPU用於提高訓練速度,重疊池用於提高精度,不易產生過擬合,局部歸壹化響應用於提高精度,數據增益和丟失用於減少過擬合。

VGG網

在ILSVRC-2014中,牛津大學視覺幾何組提出的VGGNet模型在定位任務中排名第壹,在分類任務中排名第壹[[i]]。如今在計算機視覺領域,卷積神經網絡的良好效果贏得了開發者的青睞,而上面提到的AlexNet模型效果更好,所以廣大從業者和學習者都試圖對其進行改進以獲得更好的效果。後來很多人認為AlexNet模型中所謂的局部歸壹化響應浪費了計算資源,但並沒有大幅度提升性能。VGG的本質是AlexNet結構的增強版,強調卷積神經網絡設計中的深度。卷積層深度提升到19層,並在當年的ImageNet大賽中獲得定位問題第壹名。整個網絡向人們證明,我們可以用很小的卷積核達到很好的效果,前提是我們加深網絡的層數,這也證明了如果要提高整個神經網絡的模型效果,更有效的方法是加深其深度。雖然計算量會大大增加,但整體復雜度也會增加,可以解決更復雜的問題。雖然VGG網絡已經誕生好幾年了,但是在其他許多網絡上的效果並不是很好,VGG有時也能發揮其優勢,讓人有意想不到的收獲。

與AlexNet網絡非常相似,VGG***有五個卷積層,每個卷積層後面都有壹個池層。當時在ImageNet大賽中,筆者分別嘗試了六種網絡結構。這六種結構幾乎壹樣,只是層數不同,從11到19不等。網絡結構的輸入是大小為224*224的RGB圖像,最終輸出分類結果。當然,在入網的時候,圖片是要進行預處理的。

與AlexNet網絡相比,VGG網絡在網絡的深度和寬度上都做了壹些擴展,具體的卷積運算類似於AlexNet網絡。我們主要說明VGG網絡所做的改進。首先,由於很多研究者發現歸壹化層的效果不是很好,並且占用了大量的計算資源,作者在VGG網絡中取消了歸壹化層。其次,VGG網絡使用更小的3×3卷積核,兩個連續的3×3卷積核相當於5×5感受野。以此類推,三個3×3連續卷積核相當於7×7感受野。這個變化使得參數變小,節省了計算資源,把資源留給後面更深的網絡。第三點是VGG網絡中的池層特征池核改為2x2,而AlexNet網絡中的池核為3x3。這三個改進無疑會減少整個參數計算,讓我們在有限的計算平臺上獲得更多的資源用於更深的網絡。由於層數較多,卷積核較小,整個網絡的特征提取效果很好。實際上,由於VGG的層數較多,計算量還是相當大的,卷積層數多成為其最顯著的特點。另外,VGG網絡的擴展性能突出,結構簡單,所以遷移性能好,遷移到其他數據集時泛化性能好。到目前為止,VGG網絡經常被用來提出特征。所以當現在很多更新的模型都沒有效果的時候,使用VGG或許可以解決這些問題。

谷歌網

Google憑借GoogleNet在2014 Imagenet挑戰賽(ILSVRC14)中再次獲得第壹名。該方法通過增加神經網絡的深度和寬度取得了較好的效果,並保證了在此過程中計算資源的不變。這個網絡表明,增加深度、寬度和訓練數據是在現有深度學習中獲得更好結果的主要途徑。但是增加尺寸可能會帶來過擬合的問題,因為深度和寬度的加深必然會帶來參數過多。此外,增加網絡規模也帶來了占用太多計算資源的缺點。為了在充分利用計算資源的前提下提高整個模型的性能,作者使用了Inception模型,如下圖所示。可以看出,這種類金字塔模型使用寬度不同大小的並行卷積核,增加了卷積核的輸出寬度。因為使用了尺度更大的卷積核,所以增加了參數。使用1*1的卷積核來最小化參數的數量。

初始模塊

上表是網絡分析圖。第壹個行為卷積層的輸入為224×224×3,卷積核為7×7,步長為2,填充為3。輸出維數為112×112×64,其中使用了7×7卷積。第二個行為池層,卷積核為3×33×3,滑動步長為2,填充為1,輸出維數為56×56×64,計算方法為1/2×(112+2×1。3+1)=56。第三和第四行類似於第壹和第二行。Inception模塊的第五行分為四個分支,輸入都是上層生成的28×28×192結果:1部分,1×1卷積層,輸出大小為28×28×64;第二部分采用1×1卷積層,輸出大小為28×28×96。作為輸入,使用3×3卷積層,輸出大小為28× 28× 128。第三部分使用1×1卷積層,輸出大小為28×28×32。作為輸入,使用3×3卷積層,輸出大小為28× 28× 32。在3×3池層的第三部分中,輸出大小為28×28×32。第5行的Inception模塊會將上述結果的輸出結果並聯起來,從而增加網絡寬度。

雷斯內特

在2015的ImageNet大賽中,何的ResidualNetworks獲得了ImageNet多個領域的第壹名,ResNet上的這篇論文也獲得了CVPR2016的最佳論文,實至名歸。

上面介紹的VGG和谷歌網絡都是通過增加卷積神經網絡的深度來得到更好的結果,也讓人明白網絡的深度和廣度決定了訓練效果。但同時,隨著寬度和深度的加深,效果其實會變差。也就是模型層次加深,錯誤率增加。模型深度加深,以壹定的錯誤率換取學習能力的增強。而深度神經網絡模型犧牲了大量的計算資源,學習能力應該不會高於淺層神經網絡。這種現象主要是因為隨著神經網絡層數的增加,梯度消失的現象越來越明顯。因此,為了解決這個問題,作者提出了深度殘差網絡的壹種結構殘差:

上圖是殘差網絡的基本結構。可以看出,實際上增加了壹個恒等式映射,將原來的變換函數H(x)轉換為F (x)+X,整個網絡的變化可以在示意圖中清晰地看到,使網絡不再是簡單的堆疊結構,很好地解決了由於網絡層數增加而導致梯度不那麽明顯的問題。所以這個時候,網絡可以做得很深。到目前為止,網絡的層數可以超過1000層,可以保證很好的效果。而且這種簡單的疊加並沒有給網絡增加額外的參數和計算,也提高了網絡訓練的效果和效率。

在競賽中,為了證明自己的觀點是正確的,作者設計了幾個有控制變量的實驗。作者首先構造了兩個分別為18層和34層的平面網絡,然後設計了兩個分別為18層和34層的殘差網絡。然後,用控制變量對這四個模型進行實驗,觀察數據量的變化。下圖是實驗結果。實驗中,在平面網絡上觀察到明顯的退化現象。實驗結果還表明,在殘差網絡上,34層的效果明顯好於18層,證明了殘差網絡的性能隨著層數的增加而提高。不僅如此,殘差網絡在更深層結構中的收斂性能也得到了明顯的提高,整個實驗取得了巨大的成功。

此外,作者還對快捷方式進行了實驗。如果剩余網絡模塊的輸入輸出維數不壹致,要統壹維數就必須對維數較少的進行維數化。維度增加的最佳效果是用0填充。但是實驗數據顯示兩者差別很小,所以不是特別需要線性投影。用0填充維度也保證了模型的復雜度控制在相對較低的水平。

隨著實驗的深入,作者提出了更深層次的剩余模塊。這個模型減少了每壹層的參數,把資源留給了更深層的模型。在低復雜度的情況下,模型沒有明顯的梯度消失,所以目前的模型最高可以達到1202層,錯誤率仍然控制的很低。但是層數也帶來了過擬合的現象,但是很多研究者還在改進。畢竟ResNet在性能上遠遠領先於其他機型。

殘網的本質是捷徑。從壹個角度來說,也可以解釋為多路徑的網絡。如下圖所示:

ResNet可以很深,但是從上圖我們可以了解到,當網絡很深,也就是有很多層的時候,數據傳輸的路徑其實是相對固定的。似乎也可以理解為多人投票制,大部分梯度分布在文中所謂的有效路徑上。

DenseNet

在ResNet模型之後,有人試圖對Resnet模型進行改進,於是ResNeXt模型誕生了。

這就是上面介紹的Resnet模型,結合了GoogleNet中inception模塊的思想,比ResNet更有效。隨後DenseNet模型誕生,直接連接所有模塊,整個模型更簡單粗暴。密集連接成為其主要特征。

我們比較了DenseNet和ResNet:

從上圖可以看出,與ResNet相比,DenseNet的參數數量明顯減少,效果更好,但DenseNet需要消耗更多內存。

摘要

以上介紹了卷積神經網絡歷史上的壹些著名模型。這幾款都很經典,各有千秋。隨著計算能力的不斷增強,各種新型網絡訓練的效率和效果也在逐步提高。從收斂速度來看,VGG >:Inception & gt;DenseNet & gtResNet,從泛化能力來看,Inception >:dense net = ResNet & gt;VGG從計算的角度出發,假設

  • 上一篇:頸椎病護理論文探討
  • 下一篇:湖南省南嶽衡山風景名勝區保護條例(2021修訂)
  • copyright 2024吉日网官网