首页 > 其他分享 >【DL经典论文精读】ResNet

【DL经典论文精读】ResNet

时间:2022-11-11 19:57:52浏览次数:47  
标签:DL 精读 映射 错误率 梯度 投影 ResNet 网络 256

Abstract

  • 利用残差学习架构释放深度

  • 152层深度是VGG的8倍,且复杂度更低

  • ImageNet上的错误率3.57%

  • 在ILSVRC和2015COCO竞赛,在多项任务拿到第一

 

3.1 Introduction

Figure 1:

普通深度神经网络的训练错误率和测试错误率,结果表明,层数越高,错误率越大

  • 回答网络过深导致的梯度下降和梯度爆炸问题:通过归一初始化层和中间归一层来解决

  • 普通网络随着层数加深导致准确率退化

  • 底层映射为H(X),则我们堆叠的非线性层去拟合另一个映射F(X)=H(X)-X,则原始映射就变成F(X)+X

image-20221010105318927

 

核心思想

image-20221012155022377

 

 

 

3.2 Related Work

3.2.1残差表示

看不懂

 

3.2.2快速连接

  • 文献[39,38,31,47]提出了对于中心层响应、梯度,传播误差,可以通过快速连接实现

  • “高速公路网络”提供了带有门控功能的快速连接

 

3.3.Deep Residual Learning

3.3.1 Residual Learning

  • 普通网络深度加深所带来的错误率退化问题激发了重塑结构的想法,这个问题也表明,求解器在近似映射多个非线性层上存在困难

 

3.3.2 Identity Mapping by Shortcuts

看不懂

3.3.3 Network Architectures

 

 

 

构造了两种模型,34层普通网络以及34层残差网络

Plain Network

  • 参考了VGG网络

  • 卷积层大多数有3x3的卷积核,还有两个设计规则: (i) 对于同一个输出的特征图大小,该层有相同的滤波器数 (ii) 如果特征图大小减半,滤波器的数量加倍

  • 最后是1000路的全连接层和softmax输出

  • 模型比VGG有更少的滤波器和更低的复杂度

     

Residual Network

  • 输入输出维度相同,则直接使用 identity shortcut

  • 如果维度增加则(A)快速通道仍然执行identity mapping,用零填充来增加维度 (B)Eqn.(2)中的投影快捷方式用于匹配维度(通过1×1卷积完成)。对于这两种选项,当快速通道跨越两种大小的特征映射时,它们的步幅为2

 

 

 

 

Implementation

一些实现的细节

  • 图片被重新调整大小短边随机采样在[256,480]范围

  • 每个像素减均值

  • 标准的增强,亮度、饱和度的东西调一调

  • 批量大小256,学习率0.1,当错误率比较平的时候就除10(目前不用这种方法)

  • 测试时给一张图片,在里面随机采样十个图片,然后预测十个子图,最后取平均

 

3.4. Experiments

3.4.1 ImageNet Classification

  • 通过对18,34层的普通网络和残差网络进行实验对比,普通网络的34层比18层在ImageNet上的错误率高,而残差网络的实验结果则相反

  • 当网 "不是太深"(这里是18层)时,目前的SGD求解器仍然能够找到普通网络的良好解决方案。在这种情况下,ResNet通过在早期阶段提供更快的收敛而缓解了优化

 

Identity vs. Projection Shortcuts

标识捷径 vs 投影捷径

 

 

 

 

比较三种不同的捷径结构

A:零填充捷径来增加维度 B:输出通道数改变才用投影 C:所有都用投影

 

注:输入和输出通道数不同的时候要投影,投影就是乘上一个1x1矩阵,不改变输入大小,只改变通道

 

结果表明都比普通网络要好

但是A/B/C之间的微小差异表明,投影捷径对于解决退化问题并不重要。所以我们在本文的其余部分不使用选项C,以减少内存/时间复杂性和模型大小。

 

Deeper Bottleneck Architectures

作者给出若设计大于50层更深的resnet的思路,就是引入Bottleneck(瓶颈)

 

 

 

设计思路:

当网络更深,可以学到更多的模式,通道数就会变大,计算复杂度会提高,64*4 = 256,解决该问题可以先用1x1的卷积将256维映射为64维,然后再映射回256维,

 

 

 

34层的resnet和50层的作对比,因为引入了Bottleneck结构,使得层数变深,通道数翻倍的情况下,FLOPs提升得也不是很多

 

更深的层设计:

101-layer and 152-layer ResNets:

与目前的sota模型比较:

 

 

 

 

3.4.2 CIFAR-10数据集上的训练分析

提出在训练集上训练,在测试集上评估的实验

采用简单的网络架构

 

 

 

Resnet在梯度消失上的作用:

 

 

 

红色部分为未加Resnet的梯度推导,层数越深则,按链式乘法法则会导致梯度越来越小

蓝色部分为Resnet的梯度推导,加上了g(X)则避免了上述问题

标签:DL,精读,映射,错误率,梯度,投影,ResNet,网络,256
From: https://www.cnblogs.com/overlord/p/16881574.html

相关文章