resnet模型的图像分类结构图_深度学习|图像分类:ResNet(一)
论文名称:Deep Residual Learning for Image Recognition1. 动机ResNet是ImageNet 2015年的冠军,而且首次超过人类识别的精度,将错误率降到了3.57%。达到这种效果主要归功于残差结构的设计,至于为什么要设计残差结构,主要是因为在之前的网络中,随着网络的加深,精度先是提高,但再继续加深,精度反而会降低,作者认为这并不符合常理。而且这种退化不
论文名称:Deep Residual Learning for Image Recognition
1. 动机
ResNet是ImageNet 2015年的冠军,而且首次超过人类识别的精度,将错误率降到了3.57%。达到这种效果主要归功于残差结构的设计,至于为什么要设计残差结构,主要是因为在之前的网络中,随着网络的加深,精度先是提高,但再继续加深,精度反而会降低,作者认为这并不符合常理。而且这种退化不是由过拟合引起的,并且在适当的深度模型上添加更多的层会导致更高的训练误差,而且这种猜测由实验完全证实,下图就显示了一个典型的例子。
作者对这种现象给出了相应的解释:退化(训练准确率)表明不是所有的系统都很容易优化。让我们考虑一个较浅的架构及其更深层次的对象,为其添加更多的层。存在通过构建得到更深层模型的解决方案:添加的层是恒等映射,其他层是从学习到的较浅模型的拷贝。 这种构造解决方案的存在表明,较深的模型不应该产生比其对应的较浅模型更高的训练误差。但是实验表明,我们目前现有的解决方案无法找到与构建的解决方案相比相对不错或更好的解决方案(或在合理的时间内无法实现)。
原因分析清楚了,解决办法自然也就有了。
2. 核心思路
作者对自己思路的解释是这样的在本文中,我们通过引入深度残差学习框架解决了退化问题。我们明确地让这些层拟合残差映射,而不是希望每几个堆叠的层直接拟合期望的底层映射。形式上,将期望的底层映射表示为H(x),我们将堆叠的非线性层拟合另一个映射F(x):=H(x)−x。原始的映射重写为F(x)+x。我们假设残差映射比原始的、未参考的映射更容易优化。在极端情况下,如果一个恒等映射是最优的,那么将残差置为零比通过一堆非线性层来拟合恒等映射更容易。
也就是说,拟合的是残差,而不是函数本身,拟合之后再加上原始值的映射作为输出。对应这种思想,在网络结构中实现的模块如下
以上就是残差结构的思路和具体的实现方式,整个残差网络也是以这种结构为核心组建出来的。
3. 设计方法
ResNet的设计思路并不是直接凭空去设计一个网络,而是在原有网络的基础上去改进,之前提到过VGG,同时也提到,VGG随着网络进一步加深,精度也会下降,所以作者就在VGG基础上,先加深网络,然后再添加残差结构,以体现残差方法的有效性。具体的网络改进过程可以从下图中体现。
4. 实验效果
先看下面这张图
这样图可以用下面三句话来解释,基本也就说明了ResNet的有效性。
1)34层plain net(不带residual function)比18层plain net的error大
2)34层residual net(不带residual function)比18层residual net的error小,更比34层plain net小了3.5%(top1)
3)18层residual net比18层plain net收敛快
更多推荐



所有评论(0)