guodong's blog

master@zhejiang university
   

目标检测模型 ResNet 理解

1、ResNet解决了什么问题

随着网络深度的增加,越来越容易出现退化的情况:因为深度增加,精确度变得饱和,然后迅速退化。

如图所示,较深的网络中前面的层数可以被shallow network 代替,然后剩下的层可以作为identity function。

在更深的网络中,附加层比其较浅的计数器部分更好地近似映射,并且将误差减小很多。理论情况下,浅层网络和深层的变种应该有着相同的准确度,深层网络相对与浅层网络应该有个更好的准确度,但实验表明较深的模型并表现不佳。所以使用深层模型退化了模型的表现。

2、how to solve

不是直接用x到y(H(x)几堆非线性层)的映射,而是使用残差函数 F(x)=H(x)-x ,也就是H(x)=F(x)+x,其中F(x)代表堆积的非线性层,x代表输入。因为作者认为优化F(x)比优化原始的未引用的H(x)简单。

3、残差块(residual blocks)的描述

如果直接映射是可以调优的,我们可以很轻松的将残差推到0,而不是寻找一个非线性网络曾使得输入等于输出。对于编程语言来说,通过一堆非线性层来判断F(x)=0比判断F(x)=x容易得多,所以F(x)被称为残差函数。

4、design resnet

  • 使用3*3滤波器
  • 步长stride=2来下采样
  • 全局平局池化,1000-way全连接层,softmax函数

这里有两种残差连接方式:

  • 当维度相等的时候,恒等快捷连接(x)可以直接被用来加减。
  • 当维度改变的时候
    • 可以对x进行0填充
    • 对x进行1*1的卷积操作来使维度相等

第一种情况不用添加额外的参数,第二种情况需要权重W_S

5、进一步研究

每一个resnet block 在18, 34层里都是两层深,在50,101,152层深的网络里都是3层深。

 

6、结论

  • 残差网络收敛相对于plain更快
  • Identity vs Projection shortcut:用 Projection shortcut时增益增长太少,所以当输入输出维度相等时直接用identity,只有当维度不同时采用projections shortcut。
  • winning 1st place in ILSVRC-2015



上一篇:
下一篇:

guodong

没有评论


你先离开吧:)



发表评论

电子邮件地址不会被公开。 必填项已用*标注