VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION--论文笔记

论文笔记

论文来源

Very Deep Convolutional Networks for Large-Scale Image Recognition

代码来源

还没上传

数据集

这里采用的是猫狗数据集
还没上传

1论文摘要的翻译

在这项工作中,我们研究了卷积网络深度对其在大规模图像识别设置中的准确性的影响。我们的主要贡献是使用具有非常小(3 × 3)卷积滤波器的架构对增加深度的网络进行全面评估,这表明通过将深度推至16-19权重层可以实现对现有技术配置的显着改进。这些发现是我们2014年ImageNet挑战赛提交的基础,我们的团队分别在本地化和分类轨道中获得了第一名和第二名。我们还表明,我们的表示可以很好地推广到其他数据集,从而获得最先进的结果。我们已经公开了两个表现最好的ConvNet模型,以促进在计算机视觉中使用深度视觉表示的进一步研究。

2论文的创新点

  • 使用具有非常小(3 × 3)卷积滤波器的架构对增加深度的网络
  • 从卷积网络的深度来考虑,通过添加卷积层来增加深度
  • 三层非线性纠偏而不是单一的纠偏层,使决策函数更具判别性

3 论文方法的概述

3.1 ARCHITECTURE

图片 固定大小 224 * 224
并减去RGB均值
模型架构:
卷积层:卷积核3 * 3 或这个1 * 1 padding 为1 stride 为1
池化: 最大池化(2 * 2, stride = 2)

模型配置

网络A中的11个权重层(8个卷积层和3个FC层)到网络E中的19个权重层(16个卷积层和3个FC层)。卷积层的宽度(通道的数量)相当小,从第一层的64开始,然后在每个最大池化层之后增加2倍,直到达到512。如下图所示。

  • 最大池化在一个2 × 2像素的窗口上执行,步幅为2
  • 所有函数使用了Rulu函数
    在这里插入图片描述

模型参数对比

下表中是每个配置的参数数量。尽管深度很大,但网络中的权重数量并不大于具有更大卷积层宽度和接受域的更浅的网络中的权重数量
在这里插入图片描述

3.2训练框架

训练是遵循带动量的小批量梯度下降(基于反向传播)优化多项逻辑回归目标来进行的。批量大小设置为256动量设置为0.9。训练通过权重衰减(L2正则项为 5 ∗ 1 0 − 4 5*10^{-4} 5104)和前两个完全连接层的dropout正则化(dropout ratio设置为0.5)进行正则化。

学习率最初设置为10−2,当验证集精度停止提高时,学习率降低10倍。

图像预处理:随机裁剪固定图像大小裁剪224 * 224
当图大小 S > 224 S>224 S>224时候,包含小物体或一个物体部分即可, S = 224 S= 224 S=224时,可以完全训练完整图像数据
数据增强:随机水平翻转,随机RGB颜色偏移

网络采取随机初始化(平均值为零、方差为10 - 2的正态分布中采样权重),避免学习停滞,biases偏差初始值为零。

3.3测试框架

  • 首先,将其各向同性地重新缩放到预定义的最小图像边,记为Q(我们也称其为测试尺度)。
  • 我们还通过水平翻转图像来扩大测试集;对原始图像和翻转图像的软最大类后验进行平均,得到图像的最终分数。

4 论文实验

数据集

ILSVRC-2012数据集
该数据集包括1000个类的图像,并分为三组:训练(1.3M图像),验证(50K图像)和测试(100K带有固定类标签的图像)。

4.1 单尺度评价

测试图像大小设置如下:固定 S S S Q = S Q = S Q=S,抖动 S ∈ [ S m i n , S m a x ] S∈[S_{min}, S_{max}] S[Smin,Smax]为Q = 0.5( S m i n + S m a x S_{min} + S_{max} Smin+Smax)。的结果如下表所示。
分析结果

  • 在没有任何归一化层的情况下,使用局部响应归一化(A- LRN网络)并不能改善模型A。因此,我们不会在更深的架构(B-E)中使用规范化
  • 分类误差随着卷积神经网络深度的增加而减小:从A的11层到e的19层。值得注意的是,尽管深度相同,配置C(包含三个1 × 1的卷积层)的性能比使用3 × 3卷积的配置D差
  • 训练时尺度抖动( S ∈ [ 256 ; 512 ] S∈[256;512] S[256;512])的结果明显好于对固定最小边的图像进行训练( S = 256 S = 256 S=256 S = 384 S = 384 S=384),即使在测试时使用单一尺度。这证实了通过尺度抖动增强训练集确实有助于捕获多尺度图像统计。

在这里插入图片描述

4.2 多尺度评价

在单一尺度上评估了卷积神经网络模型之后,现在评估尺度抖动在测试时的影响。它包括在测试图像的几个重新缩放版本上运行一个模型(对应于不同的Q值),然后对结果类后验进行平均。考虑到训练尺度和测试尺度之间的较大差异会导致性能下降,使用固定S训练的模型在接近训练图像的三种测试图像尺寸上进行评估:Q = { S − 32 , S , S + 32 } \{S−32,S, S + 32\} {S32,S,S+32}。同时,训练时的尺度抖动使得网络在测试时可以应用于更大范围的尺度,所以用变量 S ∈ [ S m i n , S m a x ] S∈[S_{min}, S_{max}] S[Smin,Smax], Q = { S m i n , 0.5 ∗ ( S m i n + S m a x ) , S m a x } Q = \{S_{min}, 0.5*(S_{min} + S_{max}), S_{max}\} Q={Smin,0.5(Smin+Smax)Smax}
如下表所示的结果表明,测试时的尺度抖动会带来更好的性能(与在单个尺度上评估同一模型相比,如表3所示)。与之前一样,最深配置(D和E)表现最好,并且尺度抖动优于固定最小侧s的训练。我们在验证集上的最佳单网络性能为24.8%/7.5% top-1/top-5误差(表4中粗体突出显示)。配置E达到7.3%的top-5误差。
在这里插入图片描述

4.3 MULTI-CROP EVALUATION

multi-crop
经常使用的卷积层+全连接层。通过将测试图片缩放到不同大小Q,Q可以不等于S(训练时图片大小)。在QQ图片上裁剪出多个SS的图像块,将这些图像块进行测试,得到多个1*n维的向量。通过对这些向量每一纬求平均,得到在某一类上的概率。这种方法叫做multi-crop。
我们比较了密集卷积神经网络评价与MULTI-CROP EVALUATION)。我们还通过平均其softmax输出来评估两种评估技术的互补性。结果如下表,可以看出,使用MULTI-CROP的性能略好于dense evaluation,并且这两种方法确实是互补的,因为它们的组合优于它们中的任何一种
在这里插入图片描述

5 总结

在这项工作中,我们评估了用于大规模图像分类的非常深的卷积网络(多达19个权重层)。
研究表明,表示深度有利于分类精度,并且使用传统的ConvNet架构可以在ImageNet挑战数据集上实现最先进的性能,深度大幅增加。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/14663.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp 蓝牙分包发送数据

// 连接蓝牙设备并发送数据 function sendDataOverBLE(deviceId, data) {// 首先连接蓝牙设备uni.createBLEConnection({deviceId: deviceId,success: function(res) {// 连接成功后,获取服务uni.getBLEDeviceServices({deviceId: deviceId,success: function(res) …

CSP模板生成系统

开门见山&#xff0c;直接放一百分代码&#xff1a; #include<iostream> #include<algorithm> #include<cstring> #include<bits/stdc.h> using namespace std; const int N 2e4 10; string a[1010]; unordered_map<string , string> mp;void…

防火墙技术基础篇:解析入侵检测与预防系统(IDPS)功能

防火墙技术基础篇&#xff1a;解析入侵检测与预防系统&#xff08;IDPS&#xff09;功能 入侵检测与预防系统&#xff08;Intrusion Detection and Prevention Systems, IDPS&#xff09;作为防火墙技术的核心组成部分&#xff0c;扮演着保护网络安全的关键角色。本文将全面讲…

mysqlbinlog解析

安装mysql后在bin文件夹下搜索mysqlbinlog.exe&#xff0c;用cmd执行以下命令 mysqlbinlog --no-defaults --base64-outputdecode-rows -vv C:\Users\Desktop\mysql-bin.001914 > C:\Users\Desktop\output14.sql–no-defaults&#xff1a;不要读取任何选项文件。如果由于从…

【力扣一轮】344.反转字符串 541.反转字符串Ⅱ

344.反转字符串 思路 两个指针向中间移动&#xff0c;反转字符串即可。 伪代码 遍历字符串两个指针分别指向开头及末尾交换开头及末尾元素代码 void reverseString(string & s) {for(int i 0, j s.size()-1 ; i < s.size()/2 ; i , j--){char temp s[i];s[i]s…

OSPF状态机及网络接口类型

、OSPF 状态机 Down一旦接收到hello 包进人下一个状态机 Init 初始化接收到的hello 包中&#xff0c;若存在本地的 RID&#xff0c;进入下一状态 2way 双向通讯--邻居关系建立的标志 条件匹配:点到点网络直接进入下一个状态机 MA 网络将进行 DR/BDR 选举(40S) 非 DR…

一个程序员的牢狱生涯(34)利害

星期一 利害 老杨让我把煤气灶上的炒瓢里倒了一瓢水后,又让我帮他打开面粉袋,然后一边从里面抓出一把面粉放到水瓢里,一边和我说道: “我也怀疑是小X州,但当时你并没有证据能证明是他放的,对吧!” 我点点头后,老杨继续说道: “不要看别人好像在号子里想起来就能欺负他…

东北师范大学信息科学与技术学院课程攻略 共享计划

文章目录 介绍前言特性平台为什么采用 GitHub 项目作为平台&#xff1f;上传什么资料&#xff1f;警告 相关说明命名说明Watch、Star、Fork的说明 使用指南查找搜索文件下载方式贡献方法 开源力量许可附录东北师范大学学风建设实施细则第六章 规范与惩处&#xff08;学生&#…

[力扣题解] 841. 钥匙和房间

题目&#xff1a;841. 钥匙和房间 思路 深度优先搜索&#xff0c;只从0号房间进入&#xff0c;最后统计遍历情况&#xff0c;如果有没有遍历到的&#xff0c;返回false&#xff0c;否则返回true&#xff1b; 代码 class Solution { private:void dfs(vector<vector<i…

蓝桥杯物联网竞赛_STM32L071KBU6_关于TIM的新理解

最近在复习kbu6的模块&#xff0c;其中关于定时器的记忆比较模糊&#xff0c;再来强化强化 仔细看了看相关HAL库代码果然有一些额外的收获 对定时器tim7: 这个定时器还是比较准的&#xff0c;其调用方法如下&#xff1a; HAL_TIM_Base_Start_IT(&htim7);从上述代码中不难…

解决 Redis 击穿问题之黑名单

以商品列表为例&#xff1a; 主要思想&#xff1a; /* 1.先查黑名单是否存在当前商品&#xff0c;如果有就抛出异常 2.检查redis里面是否有该商品&#xff0c;如果有就直接返回&#xff0c; 3.如果没有就查询数据库&#xff0c;将数据缓存到redis 4.判断数据库中是否有该商品&…

哪个网盘最适合个人文件长期储存?用派盘最好

派盘是一款面向个人和企业的本地云存储解决方案,专为长期文件存储而设计。这种存储方式利用了本地硬盘的存储容量,通过“云化”的方式,可以将本地硬盘变成云存储空间。它具有强大的数据保护功能,确保了数据的私密性和安全性。 派盘的主要特点 高效的存取速度:由于使用本地…

这种电脑原来这么耗电……震惊了粉丝小姐姐

前言 在今年1月份的时候&#xff0c;一位来自重庆的小姐姐加了小白&#xff0c;咨询电脑的问题&#xff1a; 哦豁&#xff0c;这个电脑看着确实闪闪发光&#xff0c;是真的很漂亮&#xff5e;&#xff08;嗯&#xff0c;小姐姐也很漂亮&#xff09; 电脑无法开机&#xff0c;按…

什么是流量削峰?如何解决秒杀等业务的削峰场景

文章推荐 1 作为程序员&#xff0c;开发用过最好用的AI工具有哪些&#xff1f; 2 Github Copilot正版的激活成功&#xff0c;终于可以chat了 3 idea,pycharm等的ai assistant已成功激活 4 新手如何拿捏 Github Copilot AI助手&#xff0c;帮助你提高写代码效率 5 Jetbrains的a…

【Python设计模式02】设计原则

1.单一职责原则 单一职责原则&#xff08;Single Responsibility Principle, SRP&#xff09;是面向对象编程中SOLID原则的第一个原则。它强调每个类应该只有一个引起变化的原因&#xff0c;即一个类只负责一项职责。这一原则有助于提高代码的可维护性、可读性和可复用性。 单…

mysql锁表查看

命令 &#xff1a; show full processlist;//显示哪些线程正在运行

数字驱动,教育先行——低代码揭秘教育机构管理数字化转型

数字化时代为教育带来了许多变革和挑战&#xff0c;同时也为教育创新提供了无限可能。数字化转型可以帮助教育机构应对这些变革和挑战&#xff0c;提高教育效率和质量&#xff0c;满足学生个性化需求&#xff0c;优化教育管理和服务&#xff0c;并提高教育机构的竞争力。 并且…

docker 安装 yapi

文章目录 docker 安装 yapi一、拉取镜像二、创建目录三、添加配置文件四、初始化数据库表五、启动 yapi六、测试以及修改默认密码 没有 MongDB 的可以先看这个教程&#xff1a;MongDB安装教程 docker 安装 yapi 版本&#xff1a; 1.9.5 一、拉取镜像 docker pull yapipro/y…

以及Spring中为什么会出现IOC容器?@Autowired和@Resource注解?

以及Spring中为什么会出现IOC容器&#xff1f;Autowired和Resource注解&#xff1f; IOC容器发展史 没有IOC容器之前 首先说一下在Spring之前&#xff0c;我们的程序里面是没有IOC容器的&#xff0c;这个时候我们如果想要得到一个事先已经定义的对象该怎么得到呢&#xff1f;…

Flutter 中的 AnimatedSwitcher 小部件:全面指南

Flutter 中的 AnimatedSwitcher 小部件&#xff1a;全面指南 在 Flutter 中&#xff0c;动画是增强用户体验的重要工具。AnimatedSwitcher 是一个用于在两个 widget 之间执行平滑过渡动画的小部件。它可以自动处理两个状态之间的转换&#xff0c;提供丰富的动画效果。本文将详…