3_2018-11-11_VGG16和VGG19介紹

image.png

《Very Deep Convolutional Networks for Large-Scale Image Recognition》

前言

VGG是Oxford的Visual Geometry Group的組提出的(大家應(yīng)該能看出VGG名字的由來(lái)了)矛渴。該網(wǎng)絡(luò)是在ILSVRC 2014上的相關(guān)工作伏嗜,主要工作是證明了增加網(wǎng)絡(luò)的深度能夠在一定程度上影響網(wǎng)絡(luò)最終的性能钮呀。VGG有兩種結(jié)構(gòu),分別是VGG16和VGG19,兩者并沒(méi)有本質(zhì)上的區(qū)別蘸际,只是網(wǎng)絡(luò)深度不一樣。

VGG原理

VGG16相比AlexNet的一個(gè)改進(jìn)是采用連續(xù)的幾個(gè)3x3的卷積核代替AlexNet中的較大卷積核(11x11,7x7衩辟,5x5)。對(duì)于給定的感受野(與輸出有關(guān)的輸入圖片的局部大胁ǜ健)艺晴,采用堆積的小卷積核是優(yōu)于采用大的卷積核,因?yàn)槎鄬臃蔷€性層可以增加網(wǎng)絡(luò)深度來(lái)保證學(xué)習(xí)更復(fù)雜的模式掸屡,而且代價(jià)還比較蟹饽(參數(shù)更少)。

簡(jiǎn)單來(lái)說(shuō)仅财,在VGG中狈究,使用了3個(gè)3x3卷積核來(lái)代替7x7卷積核,使用了2個(gè)3x3卷積核來(lái)代替5*5卷積核盏求,這樣做的主要目的是在保證具有相同感知野的條件下抖锥,提升了網(wǎng)絡(luò)的深度亿眠,在一定程度上提升了神經(jīng)網(wǎng)絡(luò)的效果。

比如磅废,3個(gè)步長(zhǎng)為1的3x3卷積核的一層層疊加作用可看成一個(gè)大小為7的感受野(其實(shí)就表示3個(gè)3x3連續(xù)卷積相當(dāng)于一個(gè)7x7卷積)纳像,其參數(shù)總量為 3x(9xC^2) ,如果直接使用7x7卷積核拯勉,其參數(shù)總量為 49xC^2 竟趾,這里 C 指的是輸入和輸出的通道數(shù)。很明顯宫峦,27xC2小于49xC2岔帽,即減少了參數(shù);而且3x3卷積核有利于更好地保持圖像性質(zhì)导绷。

這里解釋一下為什么使用2個(gè)3x3卷積核可以來(lái)代替55卷積核:*

5x5卷積看做一個(gè)小的全連接網(wǎng)絡(luò)在5x5區(qū)域滑動(dòng)山卦,我們可以先用一個(gè)3x3的卷積濾波器卷積,然后再用一個(gè)全連接層連接這個(gè)3x3卷積輸出诵次,這個(gè)全連接層我們也可以看做一個(gè)3x3卷積層账蓉。這樣我們就可以用兩個(gè)3x3卷積級(jí)聯(lián)(疊加)起來(lái)代替一個(gè) 5x5卷積。

具體如下圖所示:


image.png

至于為什么使用3個(gè)3x3卷積核可以來(lái)代替7*7卷積核逾一,推導(dǎo)過(guò)程與上述類(lèi)似铸本,大家可以自行繪圖理解。
參考
3x3卷積的作用
連續(xù)使用兩個(gè)3x3的卷積核的感受野相當(dāng)于5x5遵堵,連續(xù)使用三個(gè)3x3的卷積核的感受野相當(dāng)于7x7箱玷。 那么舉例來(lái)說(shuō),使用3個(gè)3x3的卷積核而不是一個(gè)7x7的卷積核的好處是什么陌宿?有兩點(diǎn)原因:

我們使用了3次非線性函數(shù)而不是1次锡足,這樣增加了函數(shù)的判別能力。
這樣減少了參數(shù)的數(shù)量:假設(shè)三個(gè)堆疊的3x3卷積層的輸入和輸出的通道數(shù)都是C壳坪,參數(shù)數(shù)目為舶得。對(duì)于一個(gè)7x7的卷積核,參數(shù)數(shù)目為爽蝴。這相當(dāng)于對(duì)7x7的卷積核施加了正則化沐批。
1x1卷積的作用
增加決策函數(shù)(decision function)的非線性,因?yàn)橐肓朔蔷€性激活函數(shù)蝎亚。

VGG網(wǎng)絡(luò)結(jié)構(gòu)

下面是VGG網(wǎng)絡(luò)的結(jié)構(gòu)(VGG16和VGG19都在):


image.png
  • VGG16包含了16個(gè)隱藏層(13個(gè)卷積層和3個(gè)全連接層)九孩,如上圖中的D列所示

  • VGG19包含了19個(gè)隱藏層(16個(gè)卷積層和3個(gè)全連接層),如上圖中的E列所示

VGG網(wǎng)絡(luò)的結(jié)構(gòu)非常一致发框,從頭到尾全部使用的是3x3的卷積和2x2的max pooling躺彬。

如果你想看到更加形象化的VGG網(wǎng)絡(luò),可以使用經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)(CNN)結(jié)構(gòu)可視化工具來(lái)查看高清無(wú)碼的VGG網(wǎng)絡(luò)

VGG優(yōu)缺點(diǎn)

VGG優(yōu)點(diǎn)

  • VGGNet的結(jié)構(gòu)非常簡(jiǎn)潔宪拥,整個(gè)網(wǎng)絡(luò)都使用了同樣大小的卷積核尺寸(3x3)和最大池化尺寸(2x2)仿野。
  • 幾個(gè)小濾波器(3x3)卷積層的組合比一個(gè)大濾波器(5x5或7x7)卷積層好:
  • 驗(yàn)證了通過(guò)不斷加深網(wǎng)絡(luò)結(jié)構(gòu)可以提升性能。

VGG缺點(diǎn)

  • VGG耗費(fèi)更多計(jì)算資源江解,并且使用了更多的參數(shù)(這里不是3x3卷積的鍋),導(dǎo)致更多的內(nèi)存占用(140M)徙歼。其中絕大多數(shù)的參數(shù)都是來(lái)自于第一個(gè)全連接層犁河。VGG可是有3個(gè)全連接層啊魄梯!

PS:有的文章稱:發(fā)現(xiàn)這些全連接層即使被去除桨螺,對(duì)于性能也沒(méi)有什么影響,這樣就顯著降低了參數(shù)數(shù)量酿秸。

注:很多pretrained的方法就是使用VGG的model(主要是16和19)灭翔,VGG相對(duì)其他的方法,參數(shù)空間很大辣苏,最終的model有500多m肝箱,AlexNet只有200m,GoogLeNet更少稀蟋,所以train一個(gè)vgg模型通常要花費(fèi)更長(zhǎng)的時(shí)間煌张,所幸有公開(kāi)的pretrained model讓我們很方便的使用。

代碼篇:VGG訓(xùn)練與測(cè)試

這里推薦兩個(gè)開(kāi)源庫(kù)退客,訓(xùn)練請(qǐng)參考tensorflow-vgg骏融,快速測(cè)試請(qǐng)參考VGG-in TensorFlow

代碼我就不介紹了萌狂,其實(shí)跟上述內(nèi)容一致档玻,跟著原理看code應(yīng)該會(huì)很快。我快速跑了一下茫藏,VGG-in TensorFlow误趴,代碼親測(cè)可用,效果很nice务傲,就是model下載比較煩冤留。

貼心的Amusi已經(jīng)為你準(zhǔn)備好了[VGG-in TensorFlow](VGG in TensorFlow)的測(cè)試代碼吆豹、model和圖像污筷。需要的同學(xué)可以關(guān)注CVer微信公眾號(hào)锅劝,后臺(tái)回復(fù):VGG培慌。

天道酬勤慎皱,還有很多知識(shí)要學(xué)娃肿,想想都刺激~Fighting儡蔓!

參考

[1409.1556] Very Deep Convolutional Networks for Large-Scale Image Recognition

深度網(wǎng)絡(luò)VGG理解 - CSDN博客

深度學(xué)習(xí)經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)之VGGNet - CSDN博客

Netscope CNN Analyzer

machrisaa/tensorflow-vgg

VGG in TensorFlow

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末优床,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子烘豹,更是在濱河造成了極大的恐慌瓜贾,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件携悯,死亡現(xiàn)場(chǎng)離奇詭異祭芦,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)憔鬼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)龟劲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人轴或,你說(shuō)我怎么就攤上這事昌跌。” “怎么了照雁?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵蚕愤,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我饺蚊,道長(zhǎng)萍诱,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任污呼,我火速辦了婚禮砂沛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘曙求。我一直安慰自己碍庵,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布悟狱。 她就那樣靜靜地躺著静浴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪挤渐。 梳的紋絲不亂的頭發(fā)上苹享,一...
    開(kāi)封第一講書(shū)人閱讀 49,829評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音浴麻,去河邊找鬼得问。 笑死,一個(gè)胖子當(dāng)著我的面吹牛软免,可吹牛的內(nèi)容都是我干的宫纬。 我是一名探鬼主播,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼膏萧,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼漓骚!你這毒婦竟也來(lái)了蝌衔?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蝌蹂,失蹤者是張志新(化名)和其女友劉穎噩斟,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體孤个,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡剃允,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了齐鲤。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片斥废。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖佳遂,靈堂內(nèi)的尸體忽然破棺而出营袜,到底是詐尸還是另有隱情撒顿,我是刑警寧澤丑罪,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布,位于F島的核電站凤壁,受9級(jí)特大地震影響吩屹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拧抖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一煤搜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧唧席,春花似錦擦盾、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至徒仓,卻和暖如春腐碱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背掉弛。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工症见, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人殃饿。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓谋作,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親乎芳。 傳聞我的和親對(duì)象是個(gè)殘疾皇子瓷们,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349