这篇文章虽然写的是Image Recognition,但是它提出残差网络的思想在其他任务中也有很多应用,具有广泛的借鉴意义。
背景
随着网络结构的加深,带来了两个问题:一是vanishing/exploding gradient,导致了训练十分难收敛,这类问题能够通过normalized initialization 和intermediate normalization layers解决;另一个是被称为degradation的退化现象。对合适的深度模型继续增加层数,模型准确率会下滑(不是overfit造成),training error和test error都会很高,相应的现象在CIFAR-10和ImageNet都有出现。
Deep Residual Network
ResNet作者提出了如上图所示的残差网络结构。原本经过两个layer的映射可以表示为,现在令。这样原来用于训练的网络,现在用来训练。称作残差函数。这个思路跟「Highway Network」很类似,所不同的是Highway Network里面使用了加权和。
背景中提到56层网络与20层网络的对比,可以做如下假设:在20层网络模型的基础上,增加36层的恒等映射层,结果会与20层的网络相等。但是往往很难训练这样的网络,因为在接近恒等映射的layer,其梯度都非常小。而对于ResNet来说,因为训练目标是残差函数,就很容易捕捉微小的映射波动。
网友评论