前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VGG网络结构分析

VGG网络结构分析

作者头像
DoubleV
发布2018-09-12 15:16:45
4.8K0
发布2018-09-12 15:16:45
举报
文章被收录于专栏:GAN&CVGAN&CV

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_25737169/article/details/79084205

一:VGG详解

本节主要对VGG网络结构做一个详细的解读,并针对它所在Alexnet上做出的改动做详解的分析。 首先,附上一张VGG的网络结构图:

这里写图片描述
这里写图片描述

由上图所知,VGG一共有五段卷积,每段卷积之后紧接着最大池化层,作者一共实验了6种网络结构。分别是VGG-11,VGG-13,VGG-16,VGG-19,网络的输入是224*224大小的图像,输出是图像分类结果(本文只针对网络在图像分类任务上,图像定位任务上暂不做分析) 接下来开始对VGG做详细的分析,首先VGG是基于Alexnet网络的,VGG在Alexnet基础上对深度神经网络在深度和宽度上做了更多深入的研究,业界普遍认为,更深的网络具有比浅网络更强的表达能力,更能刻画现实,完成更复杂的任务。 首先,VGG与Alexnet相比,具有如下改进几点:

  • 去掉了LRN层,作者发现深度网络中LRN的作用并不明显,干脆取消了
  • 采用更小的卷积核-3x3,Alexnet中使用了更大的卷积核,比如有7x7的,因此VGG相对于Alexnet而言,参数量更少
  • 池化核变小,VGG中的池化核是2x2,stride为2,Alexnet池化核是3x3,步长为2

这样做改进都是有一些原因的,首先为了更好的探究深度对网络的影响,必须要解决参数量的问题,更深的网络意味着更多的参数,训练更困难,使用大卷积核时尤其明显。作者通过分析,认为由于卷积神经网络的特性,3x3大小的卷积核足以捕捉到横、竖以及斜对角像素的变化。使用大卷积核会带来参数量的爆炸不说,而且图像中会存在一些部分被多次卷积,可能会给特征提取带来困难,所以在VGG中,普遍使用3x3的卷积。 另外在VGG网络的最后几层使用了三层全连接层,最终接一个softmax,事实上,这三层全连接层的参数在VGG的整体参数中占据了很大一部分,不过就目前来讲,为了减少参数量,后几层的全连接网络都被全剧平均池化(globalglobal averageaverage poolingpooling)和卷积操作代替了,但是全局平均池化也有很大的优点,下文会详细介绍。

众所周知,VGG是一个良好的特征提取器,其与训练好的模型也经常被用来做其他事情,比如计算perceptual loss(风格迁移和超分辨率任务中),尽管现在resnet和inception网络等等具有很高的精度和更加简便的网络结构,但是在特征提取上,VGG一直是一个很好的网络,所以说,当你的某些任务上resnet或者inception等表现并不好时,不妨试一下VGG,或许会有意想不到的结果。

VGG之所以是一个很好的特征提取器,除了和它的网络结构有关,我认为还和它的训练方式有关系,VGG并不是直接训练完成的,它使用了逐层训练的方法。

分析到这里可以得出结论,VGG对于Alexnet来说,改进并不是很大,主要改进就在于使用了小卷积核,网络是分段卷积网络,通过maxpooling过度,同时网络更深更宽。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年01月17日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一:VGG详解
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档