(ResNet v2)Identity Mappings in Deep Residual Networks论文阅读笔记2016
Abstract
深度残差网络作为一种及其深的网络结构已经取得了很好的准确率和收敛能力。本文中,我们分析了残差building block的传播公式,且表明当使用identity mapping作为跳跃连接以及加上之后的激活之后,前向和反向传播信号可以直接从一个block传播到另一个block中。我们做了一系列实验来验证这些identity mapping的重要性。这激励我们提出了一个新的残差单元,可以使得训练更贱大,提升了generalization。我们使用1001层的ResNet在CIFAR-10和CIFAR-100上提升了结果,使用200层ResNet在ImageNet上提升了效果。
1. Introduction
ResNet由许多堆叠的残差单元来组成,每个单元(图1a)可以以一个通用的表达式来表示:
这里xl和 x l + 1 x_{l+1} xl+1是第l个单元的输入和输出,F是残差函数,在ResNet中h(xl) =xl
是identity mapping,f是ReLU函数。
超过100层的ResNet已经取得了SOTA的准确率,在ImageNet和COCO的一些挑战中。ResNet的核心想法是使用identity mapping h(xl) =xl
来学习相对于h(xl)的加性残差函数F,这通过连接一个identity skip connection(shortcut)来实现。
本文中,我们分析了深度残差网络,==聚焦在创造一个direct
的路径来传递信息(不仅是在残差单元之间,同时可以在整个网络之间传播)。我们的推导表明,如果h和f都是identity mapping的话,信号在正向和反向传播的时候就可以直接在unit之间传播。==我们实验表明这样训练会更加容易。
为了理解shortcut的作用,我们分析并比较了不同种类的h(xl),我们发现ResNet中的h(xl) =xl
这种形式取得最快的错误reduction和最低的训练loss,其他的比如scaling、gating、1 * 1卷积的loss和错误率都更高。这些实验表明使用更简洁的path对于优化来说更容易。
构建identity mapping时候,我们把激活函数(ReLU和BN)看作前激活,与传统的后激活相反。这种想法让我们提出了一个新的残差单元设计,如图1b所示。基于这种单元,我们使用1001层ResNet在CIFAR-10/100上取得了与原来ResNet相当的结果,且更容易训练,概括的更好。之后我们又使用200层ResNet在ImageNet上训练,这时原来的模型就开始过拟合了。这些结果表明扩展网络深度方面,还有许多提升空间。