为什么要提出残差网络?

  • 深度网络不是越深越好。会出现梯度消失或者梯度爆炸,网络训练难度加大。
  • 何凯明做了实验,浅层网络比深层网络的训练误差和测试误差都要小。

深度学习基础----残差网络

  • 梯度消失:反向传播的时候,越到前面(浅层网络),梯度越小。原因之一是sigmoid函数两边很平缓,即两边梯度衰减是很快的。

残差干了啥?

  • shortcut: 不经过权重和**函数

深度学习基础----残差网络

  • 解释: x是前面模块的输出,F(x)是后面模块的输出。则下面一个模块的输入即是x+F(x),即模块输入之差是F(x)(即残差)

真实的网络?

深度学习基础----残差网络

  • 即每两层之间加一个shortcut
  • 如果两个block的维数不一样,则做线性变换将两个变成一样的就好深度学习基础----残差网络

类似的网络DenseNet:

  • 深度学习基础----残差网络
  • (想法都很简单,主要是你能够做得出来并且证明人家有效)

相关文章: