VGG是一個很經典的CNN模型,接觸深度學習的人大概都有所耳聞。VGG在2014年被提出並拿來參加ImageNet挑戰賽,最終實現了92.3%的正確率,得到了當年的亞軍。雖然多年過去,又有很多新模型被提出,但是由於VGG簡單優美的結構和穩定的性能,它現在仍然被廣泛學習和使用。由於對VGG的討論網上已經有很多,本文簡單介紹VGG的結構並探討它給我們帶來的啟發。
一、網絡結構

VGG的作者在論文中將它稱為是Very Deep Convolutional Network,如上圖所示的VGG16網絡帶權層就達到了16層,這在當時已經很深了。網絡的前半部分,每隔2~3個卷積層接一個最大池化層,4次池化共經歷了13個卷積層,加上最后3個全連接層共有16層,也正因此我們稱這個網絡為VGG16。
VGG16不僅結構清晰,層參數也很簡單。所有的卷積層都采用3x3的卷積核,步長為1;所有池化層都是2x2池化,步長為2。正因為此,我們看到圖片尺寸變化規律,從224x224到112x112等,直到最后變成7x7。同時我們注意到特征圖通道的數量也一直在加倍,從64到128最終變成512層。因此VGG16結構圖畫出來非常美觀,實現起來也很規整。
