[cv] VGG--CNN经典模型

在图像识别这一方面ImageNet挑战赛会定期产出优秀的模型从最初的 AlexNetVGGRESNet,再到最新的DenseNet。VGG在2014年被提出并拿来参加ImageNet挑战赛,最终实现了92.3%的正确率,得到了当年的亚军。虽然多年过去,又有很多新模型被提出,但是由于VGG 简单优美的结构和稳定的性能 ,它现在仍然被广泛学习和使用。

优点: VGG模型在多个迁移学习任务中的表现要优于 googLeNet。而且,从图像中提取CNN特征,VGG模型是首选算法。
缺点 : 参数量有140M之多,需要更大的存储空间。但是这个模型很有研究价值。

价值: 他提出了卷积神经网络的深度增加小卷积核的使用对网络的最终分类识别效果有很大的作用。后两个网络对卷积核的开刀的优化方法也证明了这一观点。

1*1 卷积核&激活函数的作用
激活函数:在不影响感受野的情况下,增加模型的非线性性
1x1卷机相当于线性变换,非线性激活函数起到非线性作用
网络深度对结果的影响(同年google也独立发布了深度为22层的网络GoogleNet)

网络结构
在这里插入图片描述在这里插入图片描述
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结构图画出来非常美观,实现起来也很规整。

网络参数设置
输入为的经过去均值处理的224x224大小的RGB图片。
特征标准化/去均值处理/去均值标准化:(计算每一个维度上数据的均值(使用全体数据计算),之后在每一个维度上都减去该均值。下一步便是在数据的每一维度上除以该维度上数据的标准差。)
卷积核大小均是3x3,步长为1(stride = 1)Padding 为 1。
池化层均采用max pooling,但不是所有的卷积层都有池化层,池化窗口为2x2,步长为2。
所有隐藏层都接上ReLU层

讨论选用3x3卷积核的原因
2个3x3的卷积核串联和用一个5x5的卷积核有相同的感知野,3个3x3的卷积核串联和用一个7x7的卷积核有相同的感知野,因此发现采用3x3的可以减少参数数量

假设输入feature map的大小为32x32x3(宽 x 高 x 通道数)
如果采用1个5x5的卷积核stride=1,padding=2 (补零),输出特征图的大小等于:
(32+2∗pad−5)/1+1=32(32+2∗pad−5)/1+1=32
参数的数量为3∗(5∗5)=753∗(5∗5)=75个(每个通道25个,共3个通道)

如果采用2个3x3的卷积核,stride=1,padding=1(补零), 输出大小等于:
(32+2∗pad−3)/1+1=32(32+2∗pad−3)/1+1=32,
第二次卷积输出特征图的大小等于: (32+2∗pad−3)/1+1=32(32+2∗pad−3)/1+1=32,总参数的数量为2∗3∗(3∗3)=542∗3∗(3∗3)=54个(每个通道9个,共3个通道,2个卷积层),比单独使用一个55的卷积核少了21个。
在这里插入图片描述
在这里插入图片描述
模型训练
训练和AlexNet基本相同(除了从多尺度训练图像上采样裁切的输入图像,稍后会解释)。也就是说,通过使用含动量的小批量(mini-batch)梯度下降(基于反向传播)优化多元逻辑回归来对模型进行训练。小批量的尺寸为256,动量为0.9。通过权值衰减(L2惩罚系数设置为5⋅10−4)以及对前两个全连接层执行dropout(dropout比率设置为0.5)来对训练进行正则化。初始学习率设置为10−2,当验证集准确率稳定时将学习率除以10。学习率总共降低了3次,训练一共进行了370K次迭代(74个epoch)。采用2种设置训练图像大小方法:
(1)固定训练集图片大小,如256
256和384*384;
(2)多尺度训练,让训练集的大小在一个范围内随机变化,如S∈[Smin,Smax]=[256,512]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心心喵

喵喵(*^▽^*)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值