卷積神經網絡——本質上是在利用卷積做特征壓縮,然后再全連接


原文:https://www.zybuluo.com/hanbingtao/note/485480 寫得非常好,可以細讀

全連接網絡 VS 卷積網絡

全連接神經網絡之所以不太適合圖像識別任務,主要有以下幾個方面的問題:

  • 參數數量太多 考慮一個輸入1000*1000像素的圖片(一百萬像素,現在已經不能算大圖了),輸入層有1000*1000=100萬節點。假設第一個隱藏層有100個節點(這個數量並不多),那么僅這一層就有(1000*1000+1)*100=1億參數,這實在是太多了!我們看到圖像只擴大一點,參數數量就會多很多,因此它的擴展性很差。
  • 沒有利用像素之間的位置信息 對於圖像識別任務來說,每個像素和其周圍像素的聯系是比較緊密的,和離得很遠的像素的聯系可能就很小了。如果一個神經元和上一層所有神經元相連,那么就相當於對於一個像素來說,把圖像的所有像素都等同看待,這不符合前面的假設。當我們完成每個連接權重的學習之后,最終可能會發現,有大量的權重,它們的值都是很小的(也就是這些連接其實無關緊要)。努力學習大量並不重要的權重,這樣的學習必將是非常低效的。
  • 網絡層數限制 我們知道網絡層數越多其表達能力越強,但是通過梯度下降方法訓練深度全連接神經網絡很困難,因為全連接神經網絡的梯度很難傳遞超過3層。因此,我們不可能得到一個很深的全連接神經網絡,也就限制了它的能力。

那么,卷積神經網絡又是怎樣解決這個問題的呢?主要有三個思路:

  • 局部連接 這個是最容易想到的,每個神經元不再和上一層的所有神經元相連,而只和一小部分神經元相連。這樣就減少了很多參數。
  • 權值共享 一組連接可以共享同一個權重,而不是每個連接有一個不同的權重,這樣又減少了很多參數。
  • 下采樣 可以使用Pooling來減少每層的樣本數,進一步減少參數數量,同時還可以提升模型的魯棒性。

對於圖像識別任務來說,卷積神經網絡通過盡可能保留重要的參數,去掉大量不重要的參數,來達到更好的學習效果。

接下來,我們將詳述卷積神經網絡到底是何方神聖。

卷積神經網絡是啥

首先,我們先獲取一個感性認識,下圖是一個卷積神經網絡的示意圖:

圖1 卷積神經網絡

 

網絡架構

如圖1所示,一個卷積神經網絡由若干卷積層、Pooling層、全連接層組成。你可以構建各種不同的卷積神經網絡,它的常用架構模式為:

INPUT -> [[CONV]*N -> POOL?]*M -> [FC]*K

也就是N個卷積層疊加,然后(可選)疊加一個Pooling層,重復這個結構M次,最后疊加K個全連接層。

對於圖1展示的卷積神經網絡:

INPUT -> CONV -> POOL -> CONV -> POOL -> FC -> FC

卷積神經網絡輸出值的計算

卷積層輸出值的計算

我們用一個簡單的例子來講述如何計算卷積,然后,我們抽象出卷積層的一些重要概念和計算方法。

假設有一個5*5的圖像,使用一個3*3的filter進行卷積,想得到一個3*3的Feature Map,如下所示:

為了清楚的描述卷積計算過程,我們首先對圖像的每個像素進行編號,用表示圖像的第行第列元素;對filter的每個權重進行編號,用表示第行第列權重,用表示filter的偏置項;對Feature Map的每個元素進行編號,用表示Feature Map的第行第列元素;用表示激活函數(這個例子選擇relu函數作為激活函數)。

例如,對於Feature Map左上角元素來說,其卷積計算方法為:

 

計算結果如下圖所示:

下面的動畫顯示了整個Feature Map的計算過程:

圖2 卷積計算

上面的計算過程中,步幅(stride)為1。步幅可以設為大於1的數。例如,當步幅為2時,Feature Map計算如下:

Pooling層輸出值的計算

Pooling層主要的作用是下采樣,通過去掉Feature Map中不重要的樣本,進一步減少參數數量。Pooling的方法很多,最常用的是Max Pooling。Max Pooling實際上就是在n*n的樣本中取最大值,作為采樣后的樣本值。下圖是2*2 max pooling:

除了Max Pooing之外,常用的還有Mean Pooling——取各樣本的平均值。

全連接層

全連接層輸出值的計算和上一篇文章零基礎入門深度學習(3) - 神經網絡和反向傳播算法講過的全連接神經網絡是一樣的,這里就不再贅述了。

 

卷積神經網絡的訓練

和全連接神經網絡相比,卷積神經網絡的訓練要復雜一些。但訓練的原理是一樣的:利用鏈式求導計算損失函數對每個權重的偏導數(梯度),然后根據梯度下降公式更新權重。訓練算法依然是反向傳播算法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM