VGG网络结构(二)
深度學習論文隨記(二)---VGGNet模型解讀
?
Very Deep Convolutional Networks forLarge-Scale Image Recognition
Author: K Simonyan , A Zisserman
Year: 2014
?
1、? 導引
VGGNet是2014年ILSVRC競賽的第二名,沒錯你沒聽錯它是第二名,第一名是GoogLeNet(真不是我打錯google,是谷歌為了紀念LeNet,所以用的大寫L).為什么先講VGG,因為它這個模型在多個遷移學習任務中的表現(xiàn)要優(yōu)于googLeNet。而且,從圖像中提取CNN特征,VGG模型是首選算法。它的缺點在于,參數(shù)量有140M之多,需要更大的存儲空間。但是這個模型很有研究價值。
為什么叫VGG?
是牛津大學 Visual Geometry Group(視覺幾何組)的同志寫的論文,所以叫VGG.
?
?
2、? 模型解讀
VGG中的16指的是conv和FC的總和。
?
這張圖的意思是他們一共建了A, B, C, D, E, F ?6個不同的網絡進行效果的比對。
注:在你看這里的時候我已經假設你看懂了AlexNet,已經對神經網絡的結構有了個大致的印象。
?
?
?
結構A:和AlexNet類似,卷積層分為了5個stage,全連接層還是3層。只不過卷積層用的都是3x3大小的filter,具體的細節(jié)我會在下文接著闡述。
結構A-LRN:保留AlexNet里面LRN操作,其他與結構A無區(qū)別。
結構B:在A的stage2和stage3分別增加一個3x3的卷積層,共有10個卷積層。
結構C:在B的基礎上,stage3,stage4,stage5分別增加一個1x1的卷積層,有13個卷積層,總計16層。
結構D:在C的基礎上,stage3,stage4,stage5分別增加一個3x3的卷積層,有13個卷積層,總計16層。
結構E:在D的基礎上,stage3,stage4,stage5分別再增加一個3x3的卷積層,有16個卷積層,總計19層。
?
?
?
對比:
·A與A-LRN比較:A-LRN結果沒有A好,說明LRN作用不大。
·A與B, C, D, E比較,A是這當中l(wèi)ayer最少的,相比之下A效果不如B,C,D,E,說明Layer越深越好;
·B與C比較:增加1x1filter,增加了額外的非線性提升效果;
·C與D比較:3x3 的filter(結構D)比1x1(結構C)的效果好
?
3、 特點分析:(我們以最終的結構E來進行分析)
?
?
?
?
①可以看到共有5個池化層,所以可以把卷積部分視為5個部分,和AlexNet一樣,只不過每一個部分他用了不止一層卷積層。
②所有卷積層都是同樣大小的filter!尺寸3x3,卷積步長Stirde = 1,填充Padding = 1!
為什么這么搞?
A、3x3是最小的能夠捕獲左、右、上、下和中心概念的尺寸;
B、兩個3x3的卷積層連在一起可視為5x5的filter,三個連在一起可視為一個7x7的
?? 這是卷積的性質,受過#信號系統(tǒng)#這門課摧殘的同學應該記憶猶新…
C、多個3x3的卷積層比一個大尺寸的filter卷積層有更多的非線性,使得判決函數(shù)更加具有判斷性。
D、多個3x3的卷積層筆一個大尺寸的filter具有更少的參數(shù)。
?
③卷積層變多了。結構E有16層卷積層,加上全連接層共19層。這也是對深度學習繼續(xù)往深處走的一個推動。
實際上卷積層越多的話,圖像的細節(jié)信息的就能得到更好的提取,可以想象成拿放大鏡把細節(jié)放大再放大?我不知道我這個比喻是否恰當,但是便于理解。
?
4、? Multi-scale訓練
首先對原始圖片進行等比例縮放,使得短邊要大于224,然后在圖片上隨機提取224x224窗口,進行訓練。由于物體尺度變化多樣,所以多尺度(Multi-scale)可以更好地識別物體。
方法1:在不同的尺度下,訓練多個分類器:
參數(shù)S為短邊長。訓練S=256和S=384兩個分類器,其中S=384的分類器用S=256的進行初始化,且將步長調為10e-3
方法2:直接訓練一個分類器,每次數(shù)據(jù)輸入的時候,每張圖片被重新縮放,縮放的短邊S隨機從[256,512]中選擇一個。
Multi-scale其實本身不是一個新概念,學過圖像處理的同學都知道,圖像處理中已經有這個概念了,我們學過圖像金字塔,那就是一種多分辨率操作
只不過VGG網絡第一次在神經網絡的訓練過程中提出也要來搞多尺寸。目的是為了提取更多的特征信息。像后來做分割的網絡如DeepLab也采用了圖像金字塔的操作。
轉載自?https://blog.csdn.net/Teeyohuang/article/details/75214758
總結
以上是生活随笔為你收集整理的VGG网络结构(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python测试开发django1.简介
- 下一篇: Python脚本做接口测试,抛弃接口测试