论文地址: Deep Residual Learning for Image Recognition
工程代码: Github链接

0. 摘要

  众所周知,神经网络的效果和神经网络的层数有很大的关系,通常越深的网络效果越好,训练难度也就越大。但是随着深度进一步增加,网络的训练代价大幅上升,但效果却没有提升,甚至有所下降,为了解决这个问题,论文提出了深度残差模块并在此基础上形成了深度残差学习框架ResNet,网络层数更深,优化更加简单,并且能够得到和深度对应的更好的训练结果。

1. 简介

  深度卷积神经网络不断发展,带来了图片分类任务的一次次突破,这些模型能够集成低/中/高层的特征然后进行端到端的分类,特征的层次可以通过使用更深的模型来进行丰富。不断有实验表明模型层数越深,学习的效果也就越好,从Alexnet到VGG,正是如此。
  但是训练一个深层的模型要比设计深层的模型难的多,比如梯度不稳定问题(梯度弥散和梯度爆炸),这个问题在某种程度上已经通过正则化[归一化初始化和BN层]得到了解决,使得有数十层的网络能够通过SGD和后向传播算法得到收敛。
  另一个问题是当更深的层能够收敛的时候,网络的精度会开始快速下降。这种下降和过拟合无关,带来了更大的训练误差。这个问题说明并不是所有的模型都易于训练,浅层模型和在其基础简单重复模型layer的深层模型相比,效果可能会更好。
  该论文中为了解决深层网络精度下降的问题提出了一中深度残差学习框架,其使用恒等快捷链接,如下图所示,将最终得到的结果记为H(x)H(x)H(x),令F(x):=H(x)−xF(x):=H(x)-xF(x):=H(x)−x。其中xxx是恒等映射,F(x)F(x)F(x)是残差映射。如此一来,如果残差模块的原始版本能够收敛,那么残差版本会更容易收敛。

  在ImageNet上的实验结果表明:

  • 论文提出的深度残差网络更容易优化而且相比对应的没有shortcut连接的版本训练误差更低;
  • 论文提出的深度残差网络能够获得层数增加带来的精度提升。

2. 深度残差学习

2.1 恒等快速连接

  恒等快捷链接也就是残差模块定义为:
y=F(x,Wi)+xy=F(x,{W_i})+xy=F(x,Wi​)+x

  其中,x和y是输入和输出,函数F代表的是需要学习的残差映射,在恒等快捷连接的示意图中这个模块有两层,则残差学习可以表示为:
F=W2σ(W1x)F=W_2 \sigma(W_1x)F=W2​σ(W1​x)

  其中σ\sigmaσ表示ReLu激活函数(为了表示简单,bias被省略)
  这样一来F+xF+xF+x通过快速连接“相遇”然后执行逐元素相加,这就要求FFF和xxx的维度相同,如果不相同需要一个线性投影来调整以完成维度的匹配,其中WsW_sWs​是一个卷积操作,用于调整x通道的个数:
y=F(x,wi)+Wsxy=F(x,{w_i})+W_sxy=F(x,wi​)+Ws​x

  ResNet结构中F通常包含多层,当其只有一层的时候和其他线性层相似:
y=Wix+xy=W_ix+xy=Wi​x+x

  然而这样做在实验中并没有观察到优势。

2.2 网络架构

  网络和VGG16以及其Plain版本的结构图如下:

  残差网络有几个特点:

  • 网络较瘦,控制了参数数量
  • 存在明显层级,特征图个数逐层递进,保证输出特征表达能力
  • 使用了较少的池化层,大量使用下采样,提高传播效率
  • 没有使用Dropout,利用BN和全局平均池化进行正则化,加快了训练速度
  • 层数较高时减少了3x3卷积个数,并用1x1卷积控制了3x3卷积的输入输出特征图数量(瓶颈结构)

2.3 实现

  • 将图片的最小边缩放到一个尺寸,论文中从[256, 480] 范围进行采样,然后截取 224×224 的区域
  • 让截取区域的每个像素减去均值
  • 使用标准颜色增强
  • 在卷积层与激活层中间加入 BN层
  • 初始化权重,并从头开始训练,使用批次大小为256 的 SGD
  • 学习速率从 0.1 开始,每次误差停止下降时就让学习速率下降10倍。
  • 模型迭代次数达到 60x10460x10^460x104次
  • 动量为 0.9,权重衰减 0.0001
  • 不使用 Dropout。

3. 深入理解ResNet

  残差网络单元可以进行分解,如下图,可以看出残差网络其实是由多种路径组合的一个网络,即多并行子网络的组合,整个网络相当与一个多人投票系统。

  因为若整个网络是一个投票系统,那么删除网络的一部分就是少一些投票的人对最后的影响应该很小,而且最后的分类错误率应该是和删除的残差单元的个数成正比的,实验结果如下图:

  根据上面的残差单元分解结构可以看出,网络较深的路径还是少数,也就是说ResNet是由大多数中度网络和小部分的浅度和深度网络组成的,虽然表面上看起来深,但实际起作用的网络层数并没有很深,ResNet的大多数梯度几种在中间的路径上,称为effective path。这样看来,ResNet作为一个多人投票系统,并没有完全解决深度网络梯度小时的问题。
欢迎扫描二维码关注微信公众号 深度学习与数学   [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]

主干网络系列(1) -ResNet: Deep Residual Learning for Image Recognition相关推荐

  1. resnet(Deep Residual Learning for Image Recognition )

    resnet的提出解决了网络加深后的退化问题. vgg-net的两条构建准则:1 特征图尺寸一样的时候,滤波器的个数相同 2 特征图尺寸减半,滤波器的个数加倍. 上面的网络结构都是在stage的第一个 ...

  2. Deep Residual Learning for Image Recognition(ResNet)论文翻译及学习笔记

    [论文翻译]:Deep Residual Learning for Image Recognition [论文来源]:Deep Residual Learning for Image Recognit ...

  3. 图像分类经典卷积神经网络—ResNet论文翻译(中英文对照版)—Deep Residual Learning for Image Recognition(深度残差学习的图像识别)

    图像分类经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为中英文对照版,纯中文版请稳步:[ResNet纯中文版] Deep Residual Learning for Image ...

  4. 深度学习论文阅读图像分类篇(五):ResNet《Deep Residual Learning for Image Recognition》

    深度学习论文阅读图像分类篇(五):ResNet<Deep Residual Learning for Image Recognition> Abstract 摘要 1. Introduct ...

  5. 图像分类经典卷积神经网络—ResNet论文翻译(纯中文版)—Deep Residual Learning for Image Recognition(深度残差学习的图像识别)

    图像分类经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[ResNet中英文对照版] Deep Residual Learning for Ima ...

  6. 【读点论文】Deep Residual Learning for Image Recognition 训练更深的网络

    Deep Residual Learning for Image Recognition 深层次的神经网络更难训练.何凯明等人提出了一个残差学习框架,以简化比以前使用的网络更深的网络训练. 明确地将层 ...

  7. Deep Residual Learning for Image Recognition(深度残差网络用于图像识别)理解

    本文转载于https://blog.csdn.net/dulingtingzi/article/details/79870486,个人觉得博主写的通俗易懂,故将其转发,欢迎大家一起学习,一起进步 其实 ...

  8. 【ResNet】Deep Residual Learning for Image Recognition

    ResNet一直不太能看懂,先记录一下了. 为什么需要设计ResNet degenrate(退化问题) 训练深度神经网络失败的罪魁祸首不是梯度消失,而是退化 在深度的重要性的驱使下,出现了一个新的问题 ...

  9. 深度学习论文:Deep Residual Learning for Image Recognition

    论文: He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the ...

  10. 【论文翻译】Deep Residual Learning for Image Recognition

    [论文翻译]Deep Residual Learning for Image Recognition [论文题目]Deep Residual Learning for Image Recognitio ...

最新文章

  1. ISME:宏基因组探究美洲河狸粪便微生物
  2. 基于微服务架构的token生成和使用
  3. session存储的替代方法redis
  4. 图解23种设计模式,不信你学不会!(建议收藏)
  5. explain的用法_这次是真拯救了我,MySQL索引优化,explain讲得非常清楚了
  6. 20190831:(leetcode习题)汉明距离
  7. 各浏览器的Hack写法
  8. php \n不能换行
  9. alexa全攻略(转)
  10. 分析完百年飞机空难数据,我发现了这几条“保命”小秘诀
  11. 【XLSX】Excel表格的导入和导出
  12. 停课不停学的网络教学方案
  13. MR:二:什么是MR混合现实技术?
  14. 短址(short URL)原理及其实现 来源:http://blog.csdn.net/beiyeqingteng
  15. C++单元测试框架Gtest的配置与使用过程
  16. 云呐机房动环FSU监控系统,fsu监控设备怎么调
  17. 电信计费系列1-座机计费
  18. 如何下载并使用HTK工具包
  19. git基本操作及gitee仓库代码的拉取与上传
  20. 乳腺癌组织病理图像分类

热门文章

  1. Java线程池 与Lambda
  2. (hdu 1568) Fibonacci
  3. 夺命雷公狗---linux NO:26 linux下的用户和用户组的管理
  4. python中的not具体使用及意思
  5. 使用EntityFramework连接 Mysql
  6. phpFreeChat 2.0.0 发布,Web 聊天室
  7. WinXP IIS配置
  8. 理解Java - JDK动态代理原理
  9. top命令详解(转载)
  10. leetcode探索哈希表(一)