目錄
1.VGG網(wǎng)絡(luò)簡介
一.VGG概述
?二.VGG結(jié)構(gòu)簡介
2.VGG的優(yōu)點(diǎn)
3.VGG亮點(diǎn)所在
計(jì)算量
感受野
1.VGG網(wǎng)絡(luò)簡介
一.VGG概述
VGGNet是牛津大學(xué)視覺幾何組(Visual Geometry Group)提出的模型,該模型在2014ImageNet圖像分類與定位挑戰(zhàn)賽 ILSVRC-2014中取得在分類任務(wù)第二,定位任務(wù)第一的優(yōu)異成績。VGGNet突出的貢獻(xiàn)是證明了很小的卷積,通過增加網(wǎng)絡(luò)深度可以有效提高性能。VGG很好的繼承了Alexnet的衣缽?fù)瑫r(shí)擁有著鮮明的特點(diǎn)。相比Alexnet ,VGG使用了更深的網(wǎng)絡(luò)結(jié)構(gòu),證明了增加網(wǎng)絡(luò)深度能夠在一定程度上影響網(wǎng)絡(luò)性能。
說得簡單點(diǎn),VGG就是五次卷積的卷積神經(jīng)網(wǎng)絡(luò)。
?二.VGG結(jié)構(gòu)簡介
我們上文已經(jīng)說了,VGG其實(shí)就是五層卷積。我們來看這個(gè)圖:
這個(gè)圖是作者當(dāng)時(shí)六次實(shí)驗(yàn)的結(jié)果圖。在介紹這個(gè)圖前,我先進(jìn)行幾個(gè)概念說明:卷積層全部為3*3的卷積核,用conv3-xxx來表示,xxx表示通道數(shù)。
在這個(gè)表格中,我們可以看到,
第一組(A)就是個(gè)簡單的卷積神經(jīng)網(wǎng)絡(luò),沒有啥花里胡哨的地方。
第二組(A-LRN)在第一組的卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上加了LRN(小白們不用太過了解這個(gè),現(xiàn)在已經(jīng)不是主流了,LRN是Alexnet中提出的方法,在Alexnet中有不錯(cuò)的表現(xiàn)?)
第三組(B)在A的基礎(chǔ)上加了兩個(gè)conv3,即多加了兩個(gè)3*3卷積核
第四組(C)在B的基礎(chǔ)上加了三個(gè)conv1,即多加了三個(gè)1*1卷積核
第五組(D)在C的基礎(chǔ)上把三個(gè)conv1換成了三個(gè)3*3卷積核
第六組(E)在D的基礎(chǔ)上又加了三個(gè)conv3,即多加了三個(gè)3*3卷積核
初高中就告訴我們,實(shí)驗(yàn)要控制變量(單一變量),你看,用到了吧
那么,我們從這一組實(shí)驗(yàn)中能得到什么結(jié)果呢?
1.第一組和第二組進(jìn)行對比,LRN在這里并沒有很好的表現(xiàn),所以LRN就讓他一邊去吧
2.第四組和第五組進(jìn)行對比,cov3比conv1好使
3.統(tǒng)籌看這六組實(shí)驗(yàn),會(huì)發(fā)現(xiàn)隨著網(wǎng)絡(luò)層數(shù)的加深,模型的表現(xiàn)會(huì)越來越好
據(jù)此,咱們可以簡單總結(jié)一下:論文作者一共實(shí)驗(yàn)了6種網(wǎng)絡(luò)結(jié)構(gòu),其中VGG16和VGG19分類效果最好(16、19層隱藏層),證明了增加網(wǎng)絡(luò)深度能在一定程度上影響最終的性能。 兩者沒有本質(zhì)的區(qū)別,只是網(wǎng)絡(luò)的深度不一樣。
接下來,以VGG16為例作具體講解:
?
相信有小白會(huì)疑惑:組號下面那個(gè)weight layers 是啥意思?別急,看下面:
看這幾個(gè)數(shù)字加起來,是不是就是16?
就像上圖展示的,除了黃色的maxpool(池化層),其他所有層數(shù)的總和,就是16,同理,VGG19也一樣。
那么,為什么不算池化層呢?
這是因?yàn)椋鼗瘜記]有權(quán)重系數(shù),而其他層都有,所以.....
?那么,我們接下來去看VGG是如何工作的:
?看,一個(gè)長224,寬224,通道數(shù)3的圖,經(jīng)過第一個(gè)模塊,通道數(shù)增加到64,隨后經(jīng)過池化層長寬減半。然后到第二個(gè)模塊,通道數(shù)增加到128,到池化層長寬再減半......
一直到最后一次池化,得到7×7×512的結(jié)果,然后通過三個(gè)全連接層,變成最后的1×1×1000的分類結(jié)果(也不一定是一千,這里的1000是當(dāng)時(shí)的比賽結(jié)果)
2.VGG的優(yōu)點(diǎn)
1.小卷積核組:作者通過堆疊多個(gè)3*3的卷積核(少數(shù)使用1*1)來替代大的卷積核,以減少所需參數(shù);
2.小池化核:相比較于AlexNet使用的3*3的池化核,VGG全部為2*2的池化核;
3.網(wǎng)絡(luò)更深特征圖更寬:卷積核專注于擴(kuò)大通道數(shù),池化專注于縮小高和寬,使得模型更深更寬的同時(shí),計(jì)算量的增加不斷放緩;
4.將卷積核替代全連接:作者在測試階段將三個(gè)全連接層替換為三個(gè)卷積,使得測試得到的模型結(jié)構(gòu)可以接收任意高度或?qū)挾鹊妮斎搿?/span>
5.多尺度:作者從多尺度訓(xùn)練可以提升性能受到啟發(fā),訓(xùn)練和測試時(shí)使用整張圖片的不同尺度的圖像,以提高模型的性能。
6.去掉了LRN層:作者發(fā)現(xiàn)深度網(wǎng)絡(luò)中LRN(Local Response Normalization,局部響應(yīng)歸一化)層作用不明顯。
3.VGG亮點(diǎn)所在
在AlexNet中,作者使用了11x11和5x5的大卷積,但大多數(shù)還是3x3卷積,對于stride=4的11x11的大卷積核,理由在于一開始原圖的尺寸很大因而冗余,最為原始的紋理細(xì)節(jié)的特征變化可以用大卷積核盡早捕捉到,后面更深的層數(shù)害怕會(huì)丟失掉較大局部范圍內(nèi)的特征相關(guān)性,后面轉(zhuǎn)而使用更多3x3的小卷積核和一個(gè)5x5卷積去捕捉細(xì)節(jié)變化。
而VGGNet則全部使用3x3卷積。因?yàn)榫矸e不僅涉及到計(jì)算量,還影響到感受野。前者關(guān)系到是否方便部署到移動(dòng)端、是否能滿足實(shí)時(shí)處理、是否易于訓(xùn)練等,后者關(guān)系到參數(shù)更新、特征圖的大小、特征是否提取的足夠多、模型的復(fù)雜度和參數(shù)量等。
計(jì)算量
VGG16相比AlexNet的一個(gè)改進(jìn)是采用連續(xù)的幾個(gè)3x3的卷積核代替AlexNet中的較大卷積核(11x11,7x7,5x5)。對于給定的感受野(與輸出有關(guān)的輸入圖片的局部大小),采用堆積的小卷積核是優(yōu)于采用大的卷積核,因?yàn)槎鄬拥姆蔷€性層可以增加網(wǎng)絡(luò)深度來保證學(xué)習(xí)更復(fù)雜的模式,而且代價(jià)還比較?。▍?shù)更少)。
在VGG中,使用了3個(gè)3x3卷積核來代替7x7卷積核,使用了2個(gè)3x3卷積核來代替5*5卷積核,這樣做的主要目的是在保證具有相同感知野的條件下,提升網(wǎng)絡(luò)的深度,在一定程度上提升神經(jīng)網(wǎng)絡(luò)的效果。
比如,3個(gè)3x3連續(xù)卷積相當(dāng)于1個(gè)7x7卷積:3個(gè)3*3卷積的參數(shù)總量為 3x(3×3×C2) =27C2,1個(gè)7x7卷積核參數(shù)總量為1×7×7×C2 ,這里 C 指的是輸入和輸出的通道數(shù)。很明顯,27<49,即最終減少了參數(shù),而且3x3卷積核有利于更好地保持圖像性質(zhì),多個(gè)小卷積核的堆疊也帶來了精度的提升。
感受野
簡單理解就是輸出feature map上的一個(gè)對應(yīng)輸入層上的區(qū)域大小。
計(jì)算公式:(從深層推向淺層)
F(i)為第i層感受野
strider為第i步的步距
ksize為卷積核或池化核尺寸
說白了,感受野其實(shí)就是結(jié)果層一個(gè)神經(jīng)元節(jié)點(diǎn)發(fā)生變動(dòng)能影響多少個(gè)輸入層神經(jīng)元節(jié)點(diǎn)。
以下圖為例:
第一幅圖大家可以看到,1個(gè)神經(jīng)元連接了上一層3個(gè)神經(jīng)元,第二幅圖連接5個(gè),第三幅圖連接7個(gè)。并且大家發(fā)現(xiàn)沒有,一次5*5卷積下來和兩次3*3卷積得到的神經(jīng)元相同,?一次7*7卷積下來和三次3*3卷積得到的神經(jīng)元相同。
并且,大家也可以在最左邊的圖推一推,更改最后一層的一個(gè)節(jié)點(diǎn)將會(huì)影響第一層的7個(gè)節(jié)點(diǎn),再看看最右邊的圖,改最后一層的一個(gè)節(jié)點(diǎn)將會(huì)影響第一層的7個(gè)節(jié)點(diǎn)。這就代表了3個(gè)conv3與一個(gè)conv7最終所得到的結(jié)果的感受野相同。
于是,在相同感受野的情況下:文章來源:http://www.zghlxwxcb.cn/news/detail-492348.html
堆疊小卷積核相比使用大卷積核具有更多的激活函數(shù)、更豐富的特征,更強(qiáng)的辨別能力。卷積后都伴有激活函數(shù),可使決策函數(shù)更加具有辨別能力;此外,3x3比7x7就足以捕獲細(xì)節(jié)特征的變化:3x3的9個(gè)格子,最中間的格子是一個(gè)感受野中心,可以捕獲上下左右以及斜對角的特征變化;3個(gè)3x3堆疊近似一個(gè)7x7,網(wǎng)絡(luò)深了兩層且多出了兩個(gè)非線性ReLU函數(shù),網(wǎng)絡(luò)容量更大,對于不同類別的區(qū)分能力更強(qiáng)文章來源地址http://www.zghlxwxcb.cn/news/detail-492348.html
到了這里,關(guān)于VGG網(wǎng)絡(luò)講解——小白也能懂的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!