当前位置:网站首页>深度学习分类网络--VGGNet
深度学习分类网络--VGGNet
2022-07-02 05:50:00 【有时候。】
深度学习分类网络总结
1. AlexNet
2. VGGNet
文章目录
前言
VGGNet是2014年ILSVRC的第二名,第一名是GoogLeNet。提出VGG的动机主要是研究网络深度对其精度的影响,主要思路是只使用3×3卷积搭建深层网络。结果表明,当网络的深度达到16~19时能够取得较好的性能。
一、网络结构
论文中一共设计了6种网络结构,这样设计有一定的目的:
- 对比A和A-LRN在测试集上的表现来确定LRN是否有效;
- 对比A和B来确定在网络浅层增加卷积层是否有效;
- 对比B和C来确定在网络深层增加1×1卷积层是否有效;
- 对比C和D来确定1×1卷积核3×3卷积孰优孰劣;
- 对比D和E来确定在网络深层增加3×3卷积是否有效;
二、要点
1. 弃用LRN
网络A-LRN的top1和top5错误率均高于网络A,因此在后续的B、C、D、E中均未使用LRN层。
2. 小尺寸卷积
- 使用堆叠的3×3卷积代替5×5或7×7卷积,有两点优势:
① 在保持感受野不变的基础上增加更多非线性,同时网络也更深。假设使用3个3×3卷积代替一个7×7卷积,每个卷积后都有一个ReLU,就相当于增加了两个额外的ReLU;
② 减少参数量。假设输入输出通道均为C,则使用7×7卷积的参数量为 7 ∗ 7 ∗ C ∗ C = 49 C 2 7*7*C*C=49C^2 7∗7∗C∗C=49C2,使用3个3×3卷积的参数量为 3 ∗ 3 ∗ C ∗ C ∗ 3 = 27 C 2 3*3*C*C*3=27C^2 3∗3∗C∗C∗3=27C2,减少了约45%。 - 使用1×1卷积增加非线性且不影响感受野。(1×1卷积在Network In Network架构中使用过)
3. 权重初始化
- 随机初始化A网络的weights和bias,对A网络进行训练。
- 在训练更深的BCDE网络时,使用A网络的参数来初始化它们的前4个卷积层和后3个全连接层,中间层随机初始化,不改变预初始化层的学习率。
- 随机初始化: w ∼ N ( 0 , 0.01 ) w\sim N(0,0.01) w∼N(0,0.01), b i a s = 0 bias=0 bias=0
注:文中提到Xavier(glorot)初始化可以在没有预训练的情况下初始化权重。
4. 多尺度训练
令S为重新缩放后训练图像的最小边边长,在重新缩放后的图像中裁剪224*224作为网络的输入,因此S≥224。文中使用了两种方式来设置S:
- 固定S,对应单尺度训练:使用S=256和S=384两种尺度,先用S=256训练网络,为了加速S=384网络的训练,使用S=256的参数初始化S=384网络的权重,并且使用较小的学习率0.001。
- 从[256,512]范围内随机采样S,对应多尺度训练:出于速度上的原因,通过fine-tune具有相同配置的单尺度(S=384)预训练模型的所有层来训练多尺度模型。
为什么要进行多尺度训练?
- 同一类物体在不同图像中可以是不同尺度的,因此在训练时考虑多尺度对网络的学习来说是有益的;
- 可以看作一种数据增强,以训练一个可以识别各种尺度物体的单个模型
5. 多尺度&多裁剪测试
多尺度测试(文中将该方法称为‘dense’)分为以下步骤:
- 将训练图像重新缩放至尺度Q(即最小边边长),并且Q不需要等于S,因为文中提出了将全连接层转换为卷积层,所以能够适应不同大小的输入;
- Q的选择有两种:对于单尺度训练,Q={S-32, S, S+32};对于多尺度训练,Q={256, 384, 512} ;
- 将缩放至尺度Q的图像直接输入全卷积网络,对每个尺度所得到的特征图在空间维度上进行平均,得到类别分数向量,再对所有尺度的类别分数向量进行平均以获取最终结果。
关于“将全连接层转换为卷积层”:由于训练时的输入是224×224,最大池化后的输出特征图size固定为7×7×512,第一个全连接层的输入通道为7×7×512=25088,输出通道为4096,那么转换为卷积层就是4096个7×7×512的卷积核。同理,第二和第三个全连接层转换为包含4096个尺寸为1×1×4096的卷积核的卷积层。
多裁剪测试(multi-crop):对于每个尺度,从中裁剪50幅224*224的图像,三个尺度共150幅图像,平均所有图像的类别分数向量作为最终结果。
三、实验结果&结论
1. 单尺度测试
- 使用局部响应归一化(A-LRN网络)并不能改进没有任何归一化层的模型A,因此不在更深层次的架构(B-E)中使用LRN;
- A~E错误率递减,说明一定范围内增加网络深度能提高分类精度;
- 虽然额外的非线性(1×1卷积)确实能提升精度(C比B更好),但通过使用3×3卷积来捕获空间上下文也很重要(D比C好);
- 多尺度训练优于单尺度训练,证实了通过尺度抖动增强训练集确实有助于捕获多尺度图像统计数据。
2.多尺度&多裁剪测试
- 多尺度和多裁剪测试均能降低错误率,两者结合能进一步降低错误率。
参考资料
边栏推荐
- Alibaba: open source and self-developed liquid cooling data center technology
- Fabric. JS basic brush
- Thread pool overview
- Visual studio import
- A collection of commonly used plug-ins for idea development tools
- Fabric. JS gradient
- "Simple" infinite magic cube
- c语言中的几个关键字
- Lingyunguang rushes to the scientific innovation board: the annual accounts receivable reaches 800million. Dachen and Xiaomi are shareholders
- 我所理解的DRM显示框架
猜你喜欢
Centos8 installation mysql8.0.22 tutorial
[golang syntax] be careful with the copy of slices
Lingyunguang rushes to the scientific innovation board: the annual accounts receivable reaches 800million. Dachen and Xiaomi are shareholders
RGB infinite cube (advanced version)
KMP idea and template code
【论文翻译】GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond
Basic use of form
Cambrian was reduced by Paleozoic venture capital and Zhike shengxun: a total of more than 700million cash
centos8安装mysql8.0.22教程
"Original, excellent and vulgar" in operation and maintenance work
随机推荐
RGB infinite cube (advanced version)
I want to understand the swift code before I learn it. I understand it
Visual Studio導入
软件测试基础篇
H5 jump applet
all3dp.com网站中全部Arduino项目(2022.7.1)
Installation du tutoriel MySQL 8.0.22 par centos8
Generate QR code
Test case
【LeetCode】Day92-盛最多水的容器
GRBL 软件:简单解释的基础知识
Thunder on the ground! Another domestic 5g chip comes out: surpass Huawei and lead the world in performance?
Lingyunguang rushes to the scientific innovation board: the annual accounts receivable reaches 800million. Dachen and Xiaomi are shareholders
3D printer G code command: complete list and tutorial
LCD之MIPI协议的一些说明
线程池概述
Pytorch Basics
[technical notes-08]
Minimum value ruler method for the length of continuous subsequences whose sum is not less than s
Fabric. JS iText superscript and subscript