VGG论文学习笔记

题目:VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION

论文下载地址:VGG论文

摘要

目的:研究深度对精度的影响
方法:使用3*3滤波器不断增加深度,16和19效果显著
成绩:在ImageNet 2014挑战赛中定位项目第1名,分类项目第2名;在其它数据集上也表现良好。

1、介绍

卷积网络(ConvNets)取得成功,得益于大规模图片库(比如ImageNet)和快速计算系统(比如GPU),也得益于ILSVRC比赛的举行。
研究深度与精度的关系,并使用小的3*3滤波器。

2、ConvNet配置

2.1 配置

输入:224*224(固定尺寸)
预处理:每个像素减去平均RGB值,其 均值为[123.68,116.78,103.94].
滤波器:3*3,也有使用1*1
卷积层参数:stride=1,padding=1
最大池化层:滤波器2*2,stride=2
全连接层:3个(前两个4096个通道,最后一个为1000个,对应分类数)
最后一层:soft-max层
激活函数:ReLU
改进:取消LRN,因为没有增加精度,反而增加计算时间占用内存。
感受野:参考 感受野
重点:堆叠两个3*3的卷积核替代5*5卷积核,堆叠三个3*3的卷积核替代7*7卷积核。拥有相同的感受野,减少参数。

2.2 结构



在AlexNet第一层使用11*11滤波器,s=4;ZFNet第一层使用7*7滤波器,s=2的结构。而VGG全部使用3*3的滤波器,s=1,实现全像素卷积。通过堆叠3*3滤波器,也可以减少参数量。比如通道为C,3*3滤波器的参数量为 ,而同样通道的7*7滤波器,参数量为 ,参数量减少81%。

3 分类框架

3.1 训练

使用mini-batch gradient descent优化器,设置batch size=256,momentum=0.9.L2设置为5*10-4,dropout=0.5,学习率lr=0.01.
网络的初始化很重要。

3.3 细节

使用C++caffe工具箱,多GPU并行运行。

4 分类实验

数据集
使用ILSVRC-2012数据集,1000个类,分为三组:训练集(130万张)、验证集(5万张)、测试集(10万张)。用top-1和top-5错误率进行评价。

4.1 单尺度评估


使用LRN和没有使用LRN的效果差不多,所以后面的实验取消了LRN。
小的滤波器优于较大的滤波器。

4.2 多尺度评估


多尺度比单尺度效果更好,尤其层数越深表现越好。

4.3 多裁剪评估


两者组合效果更好。

4.4 卷积融合

4.5 与其他最好模型的比较


参考资料:
4.2 使用pytorch搭建VGG网络_哔哩哔哩_bilibili

相关推荐
蹦蹦跳跳真可爱5891 小时前
Python----循环神经网络(Transformer ----注意力机制)
人工智能·深度学习·nlp·transformer·循环神经网络
千宇宙航6 小时前
闲庭信步使用SV搭建图像测试平台:第三十一课——基于神经网络的手写数字识别
图像处理·人工智能·深度学习·神经网络·计算机视觉·fpga开发
onceco7 小时前
领域LLM九讲——第5讲 为什么选择OpenManus而不是QwenAgent(附LLM免费api邀请码)
人工智能·python·深度学习·语言模型·自然语言处理·自动化
天水幼麟7 小时前
动手学深度学习-学习笔记(总)
笔记·深度学习·学习
天水幼麟9 小时前
动手学深度学习-学习笔记【二】(基础知识)
笔记·深度学习·学习
强哥之神13 小时前
英伟达发布 Llama Nemotron Nano 4B:专为边缘 AI 和科研任务优化的高效开源推理模型
人工智能·深度学习·语言模型·架构·llm·transformer·边缘计算
陈敬雷-充电了么-CEO兼CTO14 小时前
大模型技术原理 - 基于Transformer的预训练语言模型
人工智能·深度学习·语言模型·自然语言处理·chatgpt·aigc·transformer
旷世奇才李先生15 小时前
Pillow 安装使用教程
深度学习·microsoft·pillow
acstdm18 小时前
DAY 48 CBAM注意力
人工智能·深度学习·机器学习
澪-sl18 小时前
基于CNN的人脸关键点检测
人工智能·深度学习·神经网络·计算机视觉·cnn·视觉检测·卷积神经网络