【论文阅读总结】ResNet残差网络翻译总结

基于深度残差学习的图像识别

  • 1.摘要
  • 2.引言
    • 2.1 增加深度带来的问题
      • 2.1.1梯度消失与爆炸问题
      • 2.1.2退化问题
    • 2.2 模型优化思想
    • 2.3 深度残差学习框架
      • 2.3.1构建思想
    • 2.4 实验结论
      • 2.4.1ImageNet数据
      • 2.4.2 CIFAR-10数据
      • 2.4.3 实验证据表明
  • 3. 文献综述【不知道在讲什么】
    • 3.1 残差表示【Residual Representations】
    • 3.2 快捷连接【Shortcut Connections】
  • 4.深度残差网络【重点】
    • 4.1 残差学习
    • 4.2 通过快捷连接进行恒等映射
    • 4.3 网络体系结构
      • 4.3.1 Plain Network【普通网络】
      • 4.3.2 Residual Network【残差网络】
    • 4.4 实现步骤
  • 5.实验
    • 5.1 ImageNet分类数据集
      • 5.1.1 普通网络
      • 5.1.2 残差网络
      • 5.1.3 投影捷径对比
      • 5.1.4 更深层次的瓶颈架构
  • 6.总结

  • 论文链接:
    • https://arxiv.org/pdf/1512.03385.pdf

1.摘要

  • 深度对于许多视觉识别任务是至关重要的。
  • 残差学习框架:由于更深层次的神经网络更难训练。提出了残差学习框架,以简化比以前网络深度更深的网络训练。
    • 将这些层重新定义为学习参考层输入的残差函数,而不是学习未引用的函数
    • 表明了’这些残差网络更容易优化,并且可以从显著增加的深度中获得准确性。
  • 在ImageNet数据集上,我们评估了深度高达152层的残差网络,比VGG网络深8倍,但仍然具有较低的复杂性。

2.引言

  • 深度卷积神经网络在图像分类方面取得了一系列突破。
  • 深度网络自然地将【低-中-高】级特征和分类器以端到端的多层方式集成在一起,特征的“层”可以通过堆叠层数(深度)来丰富。
  • 最近揭示了网络深度是至关重要的:在ImageNet数据集上的主要结果都利用了“非常深的”模型,深度为16到30。许多其他重要的视觉识别任务也已完成受益于非常深入的模型.

2.1 增加深度带来的问题

2.1.1梯度消失与爆炸问题

  • 梯度消失与爆炸:一开始就阻碍了收敛。
  • 解决:这个问题已经通过归一化,初始化和中间归一化层得到了很大程度的解决,这使得具有数十层的网络开始收敛随机梯度下降(SGD)与反向传播。

2.1.2退化问题

  • 当更深层的网络能够开始收敛时,退化问题就会暴露。但是,这种退化并不是由过拟合引起的,在适当深度的模型中增加更多的层会导致更高的训练误差。
    • 退化问题:随着网络深度的增加,准确度会饱和,然后迅速退化。
      【论文阅读总结】ResNet残差网络翻译总结_第1张图片

2.2 模型优化思想

让我们考虑一个较浅的体系结构和在其上添加更多层的较深的对应结构。通过构造深层模型存在一个解决方案:添加的层是身份映射,其他层是从学习的浅层模型复制而来。这个构造解的存在表明,较深的模型应该不会比较浅的模型产生更高的训练误差。但实验表明,我们现有的求解器无法找到这样的解

  • 退化问题表明,并非所有系统都同样容易优化。
  • 构造深层模型:在一个较浅的体系结构上添加更多层的较深的对应结构。
    • 构造深层模型思想:添加的层是恒等映射,其他层是从浅层模型学习复制而来。【上一层的模型输出+上一层的模型输出残差=下一层的模型输入】
      • 表明了较深的模型应该不会比较浅的模型产生更高的训练误差。
    • 实验表明:我们现有的求解器无法找到比构造模型相当好或更好的解(或在可行时间内无法做到)。

2.3 深度残差学习框架

  • 引入深度残差学习框架解决退化问题。

2.3.1构建思想

  • 我们不是希望每几个堆叠层直接适合底层映射,而是让这些层适合残差映射。【自我理解:不希望适应于由几个堆叠的层拟合得到的底层函数H(x)=F(x)+x,而是适应于堆叠的非线性层拟合得到的残差函数F(x):= H(x)−x】。
  • 我们假设优化残差映射比优化原始的、未引用的映射更容易。
  • 在极端情况下,如果一个恒等映射是最优的,那么将残差推到零比通过一堆非线性层来拟合一个恒等映射要容易得多。
  • F(x) + x公式可以通过具有“快捷连接”的前馈神经网络来实现。
  • 快捷连接
    • 含义:跳过一个或多个层的连接【跨层连接】。
    • 快捷连接只执行恒等映射,输出被添加到堆叠层的输出中。
    • 快捷连接不会增加额外参数与计算复杂度。整个网络仍然可以由SGD通过反向传播进行端到端训练,并且可以很容易地使用公共库(例如Caffe)而无需修改求解器。

2.4 实验结论

2.4.1ImageNet数据

  • 在ImageNet上进行了全面的实验,以显示退化问题并评估方法。表明:
    • “普通”网络(简单地堆叠层)在深度增加时表现出更高的训练误差,但极深残差网络很容易优化
    • 深度残差网络可以很容易地从深度的大幅增加中获得精度收益,产生的结果比以前的网络要好得多。
  • 在ImageNet分类数据集上,我们利用极深残差网获得了很好的结果。我们的152层残差网络是ImageNet上最深的网络,但仍然比VGG网络的复杂度低。

2.4.2 CIFAR-10数据

  • 在CIFAR-10集合上也显示了类似的现象,这表明此方法的优化困难和效果不仅仅类似于特定的数据集。 在这个超过100层的数据集上展示了成功训练的模型,并探索了超过1000层的模型。

2.4.3 实验证据表明

  • 证据表明:残差学习原理是通用的,我们期望它适用于其他视觉和非视觉问题。

3. 文献综述【不知道在讲什么】

3.1 残差表示【Residual Representations】

  • 在图像识别中,VLAD是由残差向量相对于字典进行编码的表示,Fisher Vector可以表述为VLAD的概率版本。它们都是用于图像检索和分类的强大浅层表示。对于矢量量化,编码残差向量被证明比编码原始向量更有效。
  • 在低级视觉和计算机图形学中,为了求解偏微分方程,广泛使用的多重网格方法将系统重新定义为多个尺度上的子问题,其中每个子问题负责粗尺度和细尺度之间的残差解。 Multigrid的另一种替代方案是分层基预处理,它依赖于表示两个尺度之间的残差向量的变量。已经证明这些求解器比不知道解的残差性质的标准求解器收敛得快得多。这些方法表明,良好的重新配方或预处理可以简化优化过程。

3.2 快捷连接【Shortcut Connections】

  • 快捷连接的实践和理论已经被研究了很长时间。
  • 训练多层感知器(mlp)的早期实践是添加一个从网络输入连接到输出的线性层。一些中间层直接连接到辅助分类器,用于处理消失/爆炸梯度。提出了定心层响应、梯度和传播误差的方法,通过快捷连接实现。“初始”层由一个快捷分支和一些较深的分支组成。
  • “highway networks”【门控函数】提供了带有控制功能的快捷连接。这些门控函数依赖于数据并具有参数,我们定义的快捷连接与此相反没有参数
  • 当门控捷径是“封闭的”(接近零)时,门控函数中的层表示非残差函数。门控函数在深度极大增加(例如超过100层)时,并没有显示出精度的提高。
  • **注意:**我们的公式总是学习残差函数;我们的身份捷径永远不会关闭,所有的信息总是传递出去,还有额外的残差函数需要学习。

4.深度残差网络【重点】

4.1 残差学习

  • 如果假设多个非线性层可以渐近逼近复杂函数,就等价于假设它们可以渐近逼近残差函数,即H(x)−x(假设输入和输出具有相同的维度)。
  • 期望堆叠层近似H(x),这些层近似残差函数F(x):= H(x)−x。原始函数因此变成F(x)+x。尽管这两种形式都应该能够渐近地近似所需的函数(如假设的那样),但学习的容易程度可能是不同的。
  • 如果添加的层可以构造为恒等映射,那么较深的模型的训练误差应该不大于较浅的模型。
  • 退化问题表明:求解器可能有困难逼近的单位映射由多个非线性层。通过残差学习重构,如果单位映射是最优的,求解器可以简单地将多个非线性层的权值向零驱动以接近单位映射。
  • 在实际情况下,单位映射不太可能是最优的,但我们的重新表述可能有助于解决这个问题。如果最优函数更接近恒等映射而不是零映射,那么求解者就更容易找到与恒等映射相关的扰动,而不是将其作为一个新函数来学习。通过实验表明,学习到的残差函数通常具有较小的响应,这表明恒等映射提供了合理的前提条件

4.2 通过快捷连接进行恒等映射

  • 我们对每几个堆叠层采用残差学习。将构建块定义为:

    参数 含义
    x 输入
    y 输出
    F ( x , { W i } ) F(x,\{W_i\}) F(x{Wi}) 学习的残差映射
    σ ( x ) \sigma(x) σ(x) Relu激活函数,为了简化符号,省略了偏差
    H(x) 作为一个底层映射【由几个堆叠的层(不一定是整个网络)拟合】

【论文阅读总结】ResNet残差网络翻译总结_第2张图片

  • 公式(1)不会增加额外参数与计算复杂度,这不仅在实践中很有吸引力,而且在我们比较普通网络和剩余网络时也很重要。我们可以公平地比较同时具有相同数量的参数、深度、宽度和计算成本的普通/剩余网络(除了可以忽略不计的元素添加)。

  • x和F的维数必须相等。
    在这里插入图片描述
    在这里插入图片描述

  • 如果维数不相等(例如,当改变输入/输出通道时),通过快捷连接执行线性投影 W s W_s Ws来匹配维度

  • 也可以在公式(1)中使用一个方阵 W s W_s Ws。但实验证明,恒等映射足以解决退化问题,并且是经济的,因此仅在匹配维度时使用 W s W_s Ws
    在这里插入图片描述

  • 残差函数F的形式是灵活的。本实验的函数F有两层或三层,也可以有更多的层。但如果F只有单层,则公式(1)类似于线性层:y = W1x + x,对此我们没有观察到优势。

  • 尽管上面的符号是关于全连接层的,但它们适用于卷积层。函数F(x, {Wi})可以表示多个卷积层。逐个通道地在两个特性映射上执行元素添加。

4.3 网络体系结构

【论文阅读总结】ResNet残差网络翻译总结_第3张图片

  • 测试了各种普通网络/残差网络,并观察到一致的现象

4.3.1 Plain Network【普通网络】

  • 我们的朴素基线主要是受到VGG nets理念启发。
    • 卷积层大多具有3×3过滤器.
    • 遵循两个简单的设计规则:
      • 对于相同的输出特征映射大小,层具有相同数量的过滤器;
      • 如果特征图大小减半,则过滤器数量加倍,以保持每层的时间复杂度。
    • 通过步幅为2的卷积层直接执行下采样。网络以全局平均池化层和softmax的1000全连接层结束,加权层数为图中的34层。
  • 此模型比VGG nets的过滤器更少,复杂度更低。我们的34层基线有36亿次flop(乘法-加法),仅为VGG-19(196亿次flop)的18%

4.3.2 Residual Network【残差网络】

  • 普通网络的基础上,插入快捷连接,将网络变成对应的残差版本。
  • 当输入和输出维度相同时,可以直接使用公式.(1)(图中实线)进行快捷连接。
  • 当维度增加时(图中虚线),有两种选择:
    • 1.快捷键仍然执行单位映射,增加维度时填充额外的零项。该选项不引入额外参数;
    • 2.公式(2)中的投影快捷方式用于匹配维度(由1×1 卷积完成)。
  • 当维度增加时,当快捷连接穿过两种大小的特征映射时,它们的步幅为2。

4.4 实现步骤

  • 训练
    • 调整图像大小,其较短的一侧随机采样在[256,480]规模扩大。
    • 224×224裁剪是从图像或其水平翻转中随机抽取的,逐像素平均值减去。使用标准颜色增强。
    • 在每次卷积之后激活之前,采用批量归一化(BN)。
    • 初始化权重,并从头训练所有普通/残差网络。
    • 我们使用SGD, mini-batch批量大小为256
    • 学习率从0.1开始,当误差达到峰值时除以10,训练模型最多60 × 104次迭代。
    • 使用的权重衰减为0.0001,动量为0.9
    • 没有使用dropout
  • 在测试中,为了进行比较研究,采用标准的10作物测试。为了获得最佳结果,我们采用全卷积形式,并在多个尺度上平均分数(图像调整大小,使较短的边为{224,256,384,480,640})

5.实验

5.1 ImageNet分类数据集

  • 该数据集包含1000个类。模型在128万张训练图像上进行训练,并在50k张验证图像上进行评估。我们还获得了测试服务器报告的100k测试图像的最终结果。评估了top-1和top-5的错误率

5.1.1 普通网络

  • 评估18层和34层 普通网络。结构如图:
    【论文阅读总结】ResNet残差网络翻译总结_第4张图片

  • 结果:深34层普通网络比浅18层普通网络具有更高的验证误差。

  • 原因:比较了在训练过程中的训练/验证误差。观察到退化问题

  • 认为这种优化困难不太可能是由消失的梯度引起的。这些普通网络使用BN训练,确保前向传播的信号具有非零方差。

  • 我们还验证了反向传播梯度与BN表现出健康的规范。所以前进和后退信号都不会消失。事实上,34层普通网络仍然能够达到竞争精度,说明该求解器在一定程度上是可行的。我们推测深层普通网络可能具有指数级的低收敛速度,这影响了训练误差的减小。造成这种优化困难的原因将在以后进行研究。

5.1.2 残差网络

  • 评估了18层和34层残差网络(ResNets)。
  • 基线架构与上面的普通网络相同,每对3×3过滤器添加一个快捷连接。我们对所有快捷连接使用恒等映射,对增加维度使用零填充(选项A)。因此,与普通的对应项相比,它们没有额外的参数。
  • 结果
    • 34层ResNet比18层ResNet好(2.8%)。34层ResNet显示出相当低的训练误差,并可推广到验证数据。
      • 这表明退化问题在这种设置中得到了很好的解决,我们设法从增加深度中获得精度增益。
    • 与普通的34层相比ResNet将top-1误差降低了3.5%,这是由于成功地降低了训练误差。
      • 这个比较验证了残差学习在极深系统上的有效性
    • 18层普通网络/残差网络相对准确,但18层ResNet收敛更快。
    • 当网“不太深”(这里是18层)时,当前的SGD求解器仍然能够找到普通网的良好解。在这种情况下,ResNet通过在早期提供更快的收敛来简化优化。
  • 相关图
    【论文阅读总结】ResNet残差网络翻译总结_第5张图片
    【论文阅读总结】ResNet残差网络翻译总结_第6张图片
    【论文阅读总结】ResNet残差网络翻译总结_第7张图片

5.1.3 投影捷径对比

  • 无参数的标识快捷方式有助于训练。接下来我们研究投影捷径(公式2)。
  • 我们比较了三种选项:
    • (A)使用零填充快捷方式来增加维度,并且所有快捷方式都是无参数的;
    • (B)投影捷径用于增维,其他捷径为恒等;
    • (C)所有的捷径都是投影
  • 结果
    • 这三个选项都比普通选项好得多。
    • B比A略好,我们认为这是因为A中的零填充维度确实没有残差学习。
    • C比B稍微好一点,我们把这归因于许多(13个)投影快捷方式引入的额外参数。但A/B/C之间的微小差异表明,投影捷径对于解决退化问题不是必要的。
    • 因此,我们在本文的其余部分不使用选项C,以减少内存/时间复杂度和模型大小
  • 标识快捷方式对于不增加下面介绍的瓶颈体系结构的复杂性特别重要。
  • 相关图
    【论文阅读总结】ResNet残差网络翻译总结_第8张图片

5.1.4 更深层次的瓶颈架构

  • ImageNet的深层网络。考虑到我们所能承受的培训时间,我们将构建块修改为瓶颈设计4。
    【论文阅读总结】ResNet残差网络翻译总结_第9张图片

    • 对于每个残差函数F,我们使用3层的堆栈而不是2层。
    • 这三层是1×1, 3×3和1×1卷积,其中1×1层负责减少然后增加(恢复)维数,使3×3层成为输入/输出维数较小的瓶颈。,其中两种设计具有相似的时间复杂度。
  • 无参数的标识快捷方式对于瓶颈体系结构特别重要。如果将身份快捷键替换为投影,可以看出时间复杂度和模型大小都增加了一倍,因为快捷键连接到两个高维端点。因此,标识捷径可以为瓶颈设计带来更有效的模型。

  • 50-layer ResNet

    • 我们用这个3层瓶颈块替换了34层网络中的每个2层块,生成了
      50层ResNet。我们使用选项B增加尺寸。该模型具有38亿FLOPs。
  • 101-layer and 152-layer ResNets

    • 我们通过使用更多的3层块构建101层和152层ResNet。
    • 尽管深度显著增加,但152层ResNet(113亿FLOPs)的复杂度仍然低于VGG-16/19网络(153 / 196亿FLOPs)。
    • 50/101/152层resnet比34层resnet更准确。
    • 没有观察到退化问题,因此从相当大的深度增加中获得了显著的精度提高。深度的好处在所有评价指标中都得到了证实
  • 之前的最佳单模型结果进行了比较

    • 基线34层ResNets已经达到了非常有竞争力的准确性。
    • 152层ResNet的单模型top-5验证误差为4.49%。
    • 这个单一模型的结果优于之前所有的集成结果。我们将六个不同深度的模型组合起来形成一个集成(在提交时只有两个152层的模型)。这导致测试集的top-5误差为3.57%。
      【论文阅读总结】ResNet残差网络翻译总结_第10张图片

6.总结

  • 实现思想
    • 由于更深层次的神经网络更难训练并且会出现退化问题。提出了残差学习框架
    • 希望网络学习的是残差函数,提出了恒等映射与快捷连接
    • F(x)与x必须是相同纬度,提出了不同投影捷径方式
  • 自我总结
    • 模型结构的提出需要多次的实验总结,最后才能呈现一个完整的算法。算法的思想是容易明白的,但是真正的是现实困难的,需要高昂的算力与时间。
    • 论文大部分内容都是实验结果与总结,需要实践中得到结论,作为学习者,我们需要理解其原理,实现可能需要不错的硬件设备,让我感觉到现在的我们是真正的站在巨人的肩膀上学习,也感觉自己的智商不够,有些东西还是理解不了。

你可能感兴趣的:(#,论文阅读,#,深度学习,Resnet,resnet残差网络,快捷连接,深度学习,残差连接)