Residual Networks Behave Like Ensembles of Relatively Shallow Networks

本文研究为什么残差网络 ResNet 可以构建深层网络的原因,提出残差网络不同于以前 “串式” 网络结构的视觉模型,其分层提取特征的概念不在 ResNet 中体现,因为:(1) 删除任意一层,对效果影响不大:比较 VGG 删除任意一层和 ResNet 删除任意一层,ResNet 仅删除下采样模块性能变差明显,说明残差网络层之间不是相互依赖的;(2) 随机删除 ResNet 的任意数量模块:性能平滑变差,说明残差网络的层表现出整体现象;(3) 随机打乱残差网络的层顺序:性能平滑变差,说明残差网络可以在运行时配置网络;(4)梯度贡献在短路径上:在训练期间贡献梯度通过网络的路径比预期的要短。事实上,训练期间不需要深路径,因为它们不提供任何梯度

ResNet 遵从 "计算机视觉中顺序分层抽象的说法"?

  • 对于顺序连接的神经网络,通过观察神经网络的输出,可以发现不同层的激活区域有规律性,比如浅层关注颜色、纹理和形状信息,高层关注接近人类理解的东西
  • 对于具有跨连接的神经网络,不遵循这个规则,这类网络更像是 [[机器学习集成算法通用知识 #^zb23j7 | 集成学习 (ensemble)]],因为减少某些层数,只是效果变差,而不是像 VGG 一样完全不正确了

ResNet 就可以被看作是一系列路径集合组装而成的一个集成模型

  • Residual Networks Behave Like Ensembles of Relatively Shallow Networks-20230408154107
  • 3 个残差块组成的残差网络,展开后可以看作 8 条路径组成的神经网络
  • 在测试时,删去残差网络的部分网络层(即丢弃一部分路径)、或交换某些网络模块的顺序(改变网络的结构,丢弃一部分路径的同时引入新路径)。实验结果表明,网络的表现与正确网络路径数平滑相关(在路径变化时,网络表现没有剧烈变化)
  • 总结:任意删除路径,效果保持表明残差网络展开后的路径具有一定的独立性和冗余性,使得残差网络表现得像一个集成模型

ResNet 删除任意一层和 VGG 删除任意一层对结果有什么影响?

  • Residual Networks Behave Like Ensembles of Relatively Shallow Networks-20230408154108
  • [[VGG]] 删除任意一层网络都导致性能的极大降低,而残差网络删除单个模块影响不大,仅删除下采样模块性能变差明显
  • 总结:任意删除残差块,效果保持残差网络层之间不是相互依赖的

ResNet 删除任意数量的层后,有什么现象?

  • Residual Networks Behave Like Ensembles of Relatively Shallow Networks-20230408154108-1
  • 随机删除 Resnet 任意数量的模块,刚开始性能影响不大,随着数量越多,效果越差
  • 总结:残差网络的层表现出整体现象,删除少数层不影响结果

ResNet 中短路径的作用?

  • Residual Networks Behave Like Ensembles of Relatively Shallow Networks-20230408154108-2
  • 通过剩余网络的所有可能路径长度的分布遵循二项分布,路径长度紧紧围绕着 n/2 的平均值。图 6 (a) 显示了具有 54 个模块的剩余网络的路径长度分布;超过 95% 的路径通过 19 到 35 个模块
  • 图 6 (b) 结果表明,路径的梯度大小随向后通过的模块数量呈指数下降
  • 将每个路径长度的频率与预期梯度大小相乘。结果如图 6 © 所示。令人惊讶的是,训练期间几乎所有的梯度更新都来自 5 到 17 个模块长的路径。这些是有效路径,尽管它们仅占通过该网络的所有路径的 0.45%。
  • 总结:ResNet 主要通过短路径监督网络学习,即有效路径相对较浅