VGG网络相关

概念:
近来研究VGG网络,将自己的学习的一些知识记录下来。
VGGNet是牛津大学计算机视觉组和Google DeepMind公司的研究员一起研发的深度卷积神经网络。VGG主要探究了卷积神经网络的深度和其性能之间的关系,通过反复堆叠33的小卷积核和22的最大赤化层,VGGNet成功地搭建了16或者19层的深度卷积神经网络。与之前的state-of-art的网络结构相比,错误率大幅度下降;同时,VGG的泛化能力非常好,在不同的图片数据集上都有良好的表现。到目前为止,VGG依然经常被用来提取特征图像。
需要补充的是,2014年,ILSVRC大赛中GoogleLenet与VGG分别夺得冠亚军。

原理:
VGG与AlexNet的一个改进是采用连续的几个33的卷积核代替AlexNet中的较大卷积核(11×11、7×7、5×5)。对于给定的感受野(与输出有关的输入图片的局部大小),采用堆积的小卷积核是优于采用大的卷积核,因为多层非线性层可以增加网络深度来保证学习更复杂的模式,而且代价还比较小(参数更少)。
简单来说,在VGG中,使用了3个3×3卷积核来代替7×7卷积核,使用了2个3×3卷积核来代替5×5卷积核,这样做的主要目的是保证具有相同感知野的条件下,提升了网络的深度,在一定程度上提升了网络的效果。
比如,3个步长为1的3×3的卷积核的一层层叠加作用可看成一个大小为7的感受野,其参数总量为3×(3×3
×C2),如果直接使用7×7卷积核,其参数总量为(7×7×C2),这里C指的是输入和输出的通道数。很明显,27×C2小于49×C2,参数量得到减少,而且3×3卷积核有利于更好地保持图像性质。

补充-为什么使用2个3×3卷积核可以来代替5×5卷积核:
5×5卷积看做一个小的全连接网络在5×5区域滑动,我们可以先用一个3×3的卷积滤波器卷积,然后再用一个全连接层连接这个3×3卷积输出,这个全连接层我们也可以看做一个3×3卷积层。这样我们就可以用两个3×3卷积级联(叠加)起来代替一个 5×5卷积。
在这里插入图片描述

网络结构:
在这里插入图片描述 VGG16包含了16个隐藏层(13个卷积层和3个全连接层),如上图中的D列所示;VGG19包含了19个隐藏层(16个卷积层和3个全连接层),如上图中的E列所示。
VGG网络的结构非常一致,从头到尾全部使用的是3x3的卷积和2x2的max pooling。
结构可视化:
找到一个深度神经网络结构可视化的网站:https://dgschwend.github.io/netscope/quickstart.html
里面包含了VGG-16的网络结构:https://dgschwend.github.io/netscope/#/preset/vgg-16

优缺点:
VGG优点
1、VGGNet的结构非常简洁,整个网络都使用了同样大小的卷积核尺寸(3x3)和最大池化尺寸(2x2)。
2、几个小滤波器(3x3)卷积层的组合比一个大滤波器(5x5或7x7)卷积层好:
验证了通过不断加深网络结构可以提升性能。
VGG缺点
VGG耗费更多计算资源,并且使用了更多的参数(这里不是3x3卷积的锅),导致更多的内存占用(140M)。其中绝大多数的参数都是来自于第一个全连接层。VGG可是有3个全连接层啊!
有的文章称:发现这些全连接层即使被去除,对于性能也没有什么影响,这样就显著降低了参数数量。
注:很多pretrained的方法就是使用VGG的model(主要是16和19),VGG相对其他的方法,参数空间很大,最终的model有500多m,AlexNet只有200m,GoogLeNet更少,所以train一个vgg模型通常要花费更长的时间,所幸有公开的pretrained model让我们很方便的使用。

代码练习:
想通过代码学习VGG的原理和结构,可以练习文献5中的实例-VGG网络提取输入图像的特征并显示特征图。

参考文献:
【1】https://zhuanlan.zhihu.com/p/41423739
【2】https://www.cnblogs.com/axxio/p/12819065.html
【3】https://www.jianshu.com/p/15e413985f25
【4】https://blog.csdn.net/weixin_43038752/article/details/112167500
【5】https://blog.csdn.net/c20081052/article/details/80207906

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值