VGG 网络结构是由牛津大学发表在 ICLR 2015 上发表的论文,其效果在当时还是不错,而且不少模型也是基于 VGG 做的拓展,比如目标检测的 SSD 等。
网络结构
VGG 网络结构的特点
VGG 网络结构
特点:
- 卷积层均采用相同的卷积核参数
- 池化层均采用相同的池化核参数
- 模型是由若干卷积层和池化层堆叠(stack)的方式构成,比较容易形成较深的网络结构(在2014年,16层已经被认为很深了)
5x5 等价于两个 3x3
总结
VGG 优点:
- VGG 的结构非常简洁,整个网络都使用了同样大小的卷积核尺寸(3x3)和最大池化尺寸(2x2)
- 几个小滤波器(3x3)卷积层的组合比一个大滤波器(5x5或7x7)卷积层好
- 验证了通过不断加深网络结构可以提升性能
VGG 缺点:
- VGG 耗费更多计算资源,并且使用了更多的参数,导致更多的内存占用(140M)。其中绝大多数的参数都是来自于第一个全连接层。并且单纯的增加神经网络的深度,会给训练带来困难,会出现梯度消失、不收敛等问题。
References
- VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION
- Tensorflow VGG16 and VGG19
- tensorflow-vgg16-train-and-test
- TensorFlow VGG-16 pre-trained model
- Data Preprocessing in UFLDL Tutorial
- Image Processing Tips Example Code
- Re-implementation of VGG Network in tensorflow
- ✳️ An easy implement of VGG19 with tensorflow, which has a detailed explanation.
- conversation of caffe vgg16 model to tensorflow
- ✳️ Implementing VGG13 for MNIST dataset in TensorFlow
- 利用卷积神经网络(VGG19)实现火灾分类(附tensorflow代码及训练集)
- A TensorFlow implementation of VGG networks for image classification
- Very Deep Convolutional Networks for Large-Scale Image Recognition
- Implementing VGG13 for MNIST dataset in TensorFlow
- VGG16学习笔记
- 深度学习VGG模型核心拆解