深度學習04: 殘差網絡ResNet解讀

非常深的網絡是很難訓練的,因爲存在梯度消失梯度爆炸的問題;

由於網絡太深,反向傳播求導相乘項較多,當激活函數導數小於1,且初始權重不大時,過多的小數項(0~1.0)相乘結果趨於0,導致梯度消失;

當初始權重較大,激活函數接近1,這時容易導致梯度爆炸;

遠眺鏈接:可以從某一網絡層獲取激活,然後迅速反饋給另外一層,甚至是神經網絡的更深層;

利用遠眺鏈接構建能夠訓練深度網絡ResNets,有時超過100層;

殘差塊

在這裏插入圖片描述

a[l]a^{[l]}直接向後拷貝到網絡深層,a[l+2]a^{[l+2]},連接點在ReLu非線性激活前,線性激活z[l+2]z^{[l+2]}之後

這樣a[l+2]a^{[l+2]}的非線性輸出就變成a[l+2]=g(z[l+2]+a[l])a^{[l+2]} = g(z^{[l+2]}+a^{[l]})

也就是說a[l+2]a^{[l+2]}加上了a[l]a^{[l]}這個殘差塊;

這個叫捷徑(shorcut),有時候會聽到另一個術語“遠眺鏈接”(skip connection),就是指a[l]a^{[l]}跳過一層或好幾層,
將信息傳遞到神經網絡的更深層。

ResNet發明者發現用殘差塊可以訓練更深網絡,所以構建一個ResNet網絡就是通過將很多這樣的殘差塊堆積在一起,形成一個深度神經網絡。

殘差網絡Residual Network

在這裏插入圖片描述

如上圖所示,5個殘差塊鏈接在一起,構成一個殘差網絡;(除去藍色手寫部分,即是添加殘差塊之前的普通網絡plain network)

對比普通網絡,使用標準優化算法訓練一個普通網絡,如果沒有多餘的殘差,或者遠眺鏈接,憑經驗可知,隨網絡層數增加,
訓練錯誤會先增加後減小(如上圖左),而理論上應該訓練的越來越好纔對,因爲理論上網絡越深越好。
實際上,對於普通網絡,網絡越深,用優化算法越難訓練,出現錯誤越多;

有了ResNets就不一樣,即使網絡再深,訓練的表現也不錯,甚至有人在1000多層的神經網絡做過實驗。

這種方式有助於解決梯度消失和梯度爆炸的問題;讓我們可以在訓練更深網絡的時候,又能保證良好的性能。

也許從另外一個角度看,網絡會變得臃腫,但是ResNet確實在訓練深度網絡方面非常有效;

爲什麼ResNet能有如此好表現呢?

通常來講,一個網絡深度越深,它在訓練集上訓練的效率就會有所減弱,這也是有時候我們不希望加深網絡的原因。而事實並非如此,至少在訓練 ResNets
網絡時,並非完全如此,舉個例子。

在這裏插入圖片描述

如圖,爲方便說明,假設都是採用ReLu激活函數,在一個大網絡big NN後面添加兩層,

a[l+2]=g(z[l+2]+a[l])=g(w[l+2]al+1+b[l+2]+a[l])a^{[l+2]} = g(z^{[l+2]}+a^{[l]})=g(w^{[l+2]}a^{l+1} + b^{[l+2]} +a^{[l]})

如果使用L2正則化會壓縮w[l+2]w^{[l+2]}的值,對b應用權重衰減也有同樣效果,雖然不常用;

這裏假設w=0,b=0,這幾項就沒了,

a[l+2]=g(a[l])=a[l]a^{[l+2]}= g(a^{[l]}) = a^{[l]}

也就是這個遠眺鏈接是我們很容易得出恆等式a[l+2]=a[l]a^{[l+2]}= a^{[l]}

這意味着即使給神經網絡增加了這兩層,網絡的效率不遜色於普通網絡,因爲學習恆等式相對容易;

而相對普通網絡,添加殘差網絡可以學習到更多隱藏參數;

因此創建類似的殘差網絡可以提升網絡性能。

另一個值得注意,a[l]a^{[l]}z[l+2]z^{[l+2]}一般具有相同維度,之所以能實現跳躍鏈接是因爲same卷積保留了維度,所以很容易得出跳躍鏈接,並輸出兩個相同維度的向量。

如果輸入和輸出有不同維度,那麼就會生出一個WsW_s矩陣,將a[l]a^{[l]}z[l+2]z^{[l+2]}維度統一。

ResNet

2015年ImageNet優勝者,由微軟研究院開發

https://arxiv.org/pdf/1512.03385.pdf

下面是從論文中截取的網絡

在這裏插入圖片描述

上圖是個普通網絡,輸入一張圖片,結果多個卷基層,最後輸出一個softmax.

添加跳躍鏈接(same卷積保留了網絡維度),就構成一個殘差網絡。

ResNet in Keras

from keras.applications.resnet50 import ResNet50
model = ResNet50(weights='imagenet', include_top=False)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章