ResNet残差网络——Deep Residual Learning for image recongnition
作者簡(jiǎn)介——何凱明
2003 年廣東省理科高考狀元(2000后的業(yè)界翹楚的狀元郎),2016年前在微軟亞洲研究院,2016后在Facebbok AI 研究院。
知名論文:
motivation
研究人員開始意識(shí)到在深度神經(jīng)網(wǎng)絡(luò)里面,深度depth是影響網(wǎng)絡(luò)性能最重要的一個(gè)元素。但是簡(jiǎn)單的在淺層網(wǎng)絡(luò)堆疊新的神經(jīng)層的做法會(huì)有問題:
為了解決上述問題,一個(gè)na?ve的想法是:在淺層網(wǎng)絡(luò)的基礎(chǔ)上再加一層網(wǎng)絡(luò),只不過這層網(wǎng)絡(luò)很特殊:它是一個(gè)恒等映射,相當(dāng)于就是把原淺層網(wǎng)絡(luò)的輸出原模原樣的在本層輸出。因?yàn)樗且粋€(gè)恒等映射層,所以他的訓(xùn)練誤差啥的不會(huì)比淺層網(wǎng)絡(luò)更差。
但是這種na?ve 的方法是指望網(wǎng)絡(luò)自己把這新加的一層學(xué)成一個(gè)恒等映射。這是相當(dāng)困難的。
方法
為了解決超深的神經(jīng)網(wǎng)絡(luò)的degradation的問題,何凱明在那個(gè)na?ve 的思想的基礎(chǔ)上,提出顯式指定新加這一層就是個(gè)近似恒等映射 而不是去指望網(wǎng)絡(luò)自己會(huì)擬合成一個(gè)恒等映射的思想。他把這個(gè)叫做殘差學(xué)習(xí)。
換句話說:原來(lái)na?ve 的想法是讓新的一層學(xué)習(xí)得到一個(gè)函數(shù) F ( x ) F(x) F(x),只不過我們想讓 F ( x ) = H ( x ) F(x)=H(x) F(x)=H(x),其中 H ( x ) = x + ? H(x)=x+\epsilon H(x)=x+? 是個(gè)近似恒等映射。
現(xiàn)在何凱明變化一個(gè)思路,讓這個(gè)新的層學(xué)習(xí)到的函數(shù)為: F ( x ) = H ( x ) ? x F(x)=H(x)-x F(x)=H(x)?x, H ( x ) H(x) H(x) 是我們想要學(xué)習(xí)的目標(biāo)函數(shù),而 F ( x ) F(x) F(x)是網(wǎng)絡(luò)擬合的結(jié)果。當(dāng) F ( x ) F(x) F(x)趨于零的時(shí)候, H ( x ) ? x ≈ 0 H(x)-x \approx 0 H(x)?x≈0,那么我們就可以得到一個(gè)近似的恒等映射了。
Figure2 圖顯示了殘差網(wǎng)絡(luò)的核心結(jié)構(gòu)。 x x x是原來(lái)淺層網(wǎng)絡(luò)的輸入,后面兩層是
新加的網(wǎng)絡(luò)。這個(gè)網(wǎng)絡(luò)學(xué)的一個(gè)函數(shù) F ( x ) F(x) F(x)然后在輸出的地方讓 F ( x ) F(x) F(x)逐元素與 x x x相加。這么做的好處:與na?ve 方法相比 F ( x ) F(x) F(x)更容易趨于0。
實(shí)驗(yàn)結(jié)果
resnet與plain-net
plainnet指的是那種直接不斷堆疊網(wǎng)絡(luò)層的深度網(wǎng)絡(luò),沒有使用殘差的那種網(wǎng)絡(luò)。
Resnet在網(wǎng)絡(luò)深度加深的時(shí)候,不會(huì)出現(xiàn)degradation的問題。
當(dāng)網(wǎng)絡(luò)不是很深的時(shí)候,例如網(wǎng)絡(luò)為18層,resnet和普通的網(wǎng)絡(luò)泛化能力類似。但是resnet在訓(xùn)練前期會(huì)更快收斂。然而最終他們收斂使用的時(shí)間是差不多的。
不同加和方法的影響
如Figure 2所示,resnet有一個(gè) F ( x ) + x F(x)+x F(x)+x的操作,當(dāng) F ( x ) F(x) F(x)與 x x x的維度相同的時(shí)候
可以直接逐元素加。但如果 F ( x ) F(x) F(x)與 x x x維度不同時(shí),有兩種策略
Table3 第二部分:
- A:使用填充方法加和
- B:在F(x)與X維度不同時(shí),使用線性變換的方法加和。
- C:不管F(x),x維度是否相同,加和前都讓x線性變換到與F(x)同維度。
結(jié)果顯示差別不大,還是使用A方式比較好,不會(huì)增大計(jì)算量。
ImageNet 2015測(cè)試結(jié)果
分析:
其他任務(wù)
作者又拿著ResNet去CIFAR-10上跑了。為的是驗(yàn)證殘差網(wǎng)絡(luò)是通用的,而不僅僅只適用于ImageNet這一個(gè)數(shù)據(jù)集。
實(shí)驗(yàn)結(jié)果很好,resNet 32層就吊打其他最好模型了。
ResNet達(dá)到1202層后,出現(xiàn)了過擬合。因?yàn)樗臏y(cè)試誤差比restNet 110 更大。
ResNet的優(yōu)點(diǎn)
啟發(fā)
總結(jié)
以上是生活随笔為你收集整理的ResNet残差网络——Deep Residual Learning for image recongnition的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv学习日记——娜扎小姐姐与猫咪
- 下一篇: LayUi的使用