Deep Residual Learning for Image Recognition

简介

这是何大佬的一篇非常经典的神经网络的论文,也就是大名鼎鼎的ResNet残差网络,论文主要通过构建了一种新的网络结构来解决当网络层数过高之后更深层的网络的效果没有稍浅层网络好的问题,并且做出了适当解释,用ResNet很好的解决了这个问题。

背景

深度卷积神经网络已经在图像分类问题中大放异彩了,近来的研究也表明,网络的深度对精度起着至关重要的作用。但是,随着网络的加深,有一个问题值得注意,随着网络一直堆叠加深,网络的效果一直会越来越好吗?显然会遇到梯度消失或者是梯度爆炸问题,而这个问题,已经可以通过在初始化的时候归一化输入解决,但是当网络最终收敛之后,又会出现“退化”问题,导致准确率降低(不是overfitting),因此尽管可以不断堆叠网络层数,让其可以训练并且收敛,但是遇到退化问题仍然没办法。作者认为现在通过一些训练手段来解决这个问题远远没有通过改变网络结构来解决这个问题来的更加彻底。图为56层的误差高于20层的误差。

Deep Residual Learning

Residual Learning

ResNet是通过将一层的输入和另一层的输出结果一起作为一个块的输出,假设x是一个块的输入,一块由两层组成,那么他先经过一个卷积层并且relu激活得到F(x),然后F(x)再经过卷积层之后的结果加上之前的输入x
得到一个结果,将结果通过relu激活作为该块的输出。对于普通的卷积网络,我们输出的是F(x),但是在ResNet中,我们输出的是H(x) = F(x) + x,但是我们仍然你和F(x) = H(x) - x.这样有什么好处呢?这样做改变了学习的目标,把原来学习让目标函数等于一个已知的恒定值改变为使输出与输入的残差为0,也就是恒等映射,导致的是,引入残差后映射对输出的变化更为敏感。

比如把5映射到5.1,那么引入残差前是F'(5)=5.1,引入残差后是H(5)=5.1, H(5)=F(5)+5, F(5)=0.1。这里的F'和F都表示网络参数映射,引入残差后的映射对输出的变化更敏感。比如s输出从5.1变到5.2,映射F'的输出增加了1/51=2%,而对于残差结构输出从5.1到5.2,映射F是从0.1到0.2,增加了100%。明显后者输出变化对权重的调整作用更大,所以效果更好。残差的思想都是去掉相同的主体部分,从而突出微小的变化。

可以看下面这张图理解:

而实际过程中我们会想到,输入x和经过layer之后的输出结果的维度不一样,那么他们就不能被直接相加,为了解决这个问题,我们将x卷积变换一下,将x变换为和输出结果一样的维度就可以了。

可以多个层作为一个块,不一定是两层、三层。

H(x)作者称为shortcut connection,意为将x像短路一样加到F(x)后面作为输出

Network Architectures

[论文理解]Deep Residual Learning for Image Recognition的更多相关文章

  1. 论文笔记——Deep Residual Learning for Image Recognition

    论文地址:Deep Residual Learning for Image Recognition ResNet--MSRA何凯明团队的Residual Networks,在2015年ImageNet ...

  2. [论文阅读] Deep Residual Learning for Image Recognition(ResNet)

    ResNet网络,本文获得2016 CVPR best paper,获得了ILSVRC2015的分类任务第一名. 本篇文章解决了深度神经网络中产生的退化问题(degradation problem). ...

  3. Deep Residual Learning for Image Recognition这篇文章

    作者:何凯明等,来自微软亚洲研究院: 这篇文章为CVPR的最佳论文奖:(conference on computer vision and pattern recognition) 在神经网络中,常遇 ...

  4. Deep Residual Learning for Image Recognition (ResNet)

    目录 主要内容 代码 He K, Zhang X, Ren S, et al. Deep Residual Learning for Image Recognition[C]. computer vi ...

  5. Deep Residual Learning for Image Recognition论文笔记

    Abstract We present a residual learning framework to ease the training of networks that are substant ...

  6. Deep Residual Learning for Image Recognition

    Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun           Microsoft Research {kahe, v-xiangz, v-sh ...

  7. Deep Residual Learning for Image Recognition(残差网络)

    深度在神经网络中有及其重要的作用,但越深的网络越难训练. 随着深度的增加,从训练一开始,梯度消失或梯度爆炸就会阻止收敛,normalized initialization和intermediate n ...

  8. 【网络结构】Deep Residual Learning for Image Recognition(ResNet) 论文解析

    目录 0. 论文链接 1. 概述 2. 残差学习 3. Identity Mapping by shortcuts 4. Network Architectures 5. 训练细节 6. 实验 @ 0 ...

  9. Deep Residual Learning for Image Recognition(MSRA-深度残差学习)

    转自:http://blog.csdn.net/solomonlangrui/article/details/52455638   ABSTRACT:           神经网络的训练因其层次加深而 ...

随机推荐

  1. QDUOJ 河老师的新年礼物(尺取法)

    河老师的新年礼物 发布时间: 2017年1月1日 15:11   最后更新: 2017年1月1日 15:13   时间限制: 1000ms   内存限制: 256M 描述 河老师的新年礼物是一个长度为 ...

  2. iTween研究院之学习笔记Move移动篇(一)

    http://www.xuanyusong.com/archives/2052 iTween.MoveTo(): 让模型移动到一个位置,它的底层函数是通过动态的修改模型每一帧的transform.po ...

  3. django后台管理系统(admin)的简单使用

    目录 django后台管理系统的使用 检查配置文件 检查根urls.py文件 启动项目,浏览器输入ip端口/admin 如: 127.0.0.1/8000/admin 回车 注册后台管理系统超级管理 ...

  4. appium自动化测试框架——自动化启动多台设备思路梳理

    今天,我们聊一聊如果自动化实现在多台设备上运行脚本. 一.首先我们回忆一下如何在一台设备上运行python脚本,一般分为三步 1.启动appium服务 2.创建驱动 3.运行python脚本 同样的, ...

  5. selenium IDE插件下载

    1.在https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/中下载Firefox的selenium-ide插件: 2.之后在Firef ...

  6. 进击JavaScript核心 --- (1)基本数据类型

    ES5之前提供了 5种基本数据类型 和 1种引用数据类型 基本数据类型:Undefined, Null, String, Number, Boolean 引用数据类型:Object ES6开始引入了一 ...

  7. Maven项目已启动但是报异常访问webapp下所有资源都404

  8. [题解]luogu_P2155_BZOJ_2186沙拉公主的困惑

    题意求1~N!中与M!互质的数的个数, 首先证明gcd(a,b)=1时gcd(a-kb,b)=1 gcd(a,b)=1 gcd(a%b,b)=1 gcd(a-kb,b)=1 即a-kb与b互质 这样由 ...

  9. 如何使用localStorage?

    首先使用localStorage的时候,我们需要判断浏览器是否支持localStorage这个属性. if(!window.localStorage){ alert("浏览器支持locals ...

  10. Linux操作学习笔记1

    Linux只有一个根目录/,所有的文件和设备都当成是文件进行管理: pwd 打印当前工作目录 (print working directory) whoami ls  列出当前目录面的文件 ls -l ...