ResNet:残差网络

19 2025年7月 | 阅读 5 分钟

ResNet(残差网络)是一种由微软研究院的 Kaiming He、Xiangyu Zhang、Shaoqing Ren 和 Jian Sun 于 2015 年提出的神经网络架构。它旨在解决深度神经网络中的梯度消失问题,该问题阻碍了它们在大规模图像识别任务上的性能。

本教程将详细介绍 ResNet 架构,包括其历史、主要特点和在各个领域的应用。

ResNet 架构通常分为四个部分,每个部分包含多个不同深度的残差块。网络的第一个部分由一个卷积层和一个最大池化层组成,用于减小输入的空间维度。网络的第二部分包含 64 个滤波器,而第三部分和第四部分分别包含 128 个和 256 个滤波器。网络的最后部分由全局平均池化和用于产生输出的全连接层组成。

背景

深度神经网络通过在各种任务(如图像分类、目标检测和语义分割)上取得最先进的结果,彻底改变了计算机视觉领域。然而,由于梯度消失问题,训练深度神经网络可能具有挑战性。

当反向传播期间梯度变得太小时,就会出现梯度消失问题,这会导致网络的收敛缓慢和性能不佳。随着网络深度的增加,这个问题变得更加严重,传统的权重初始化和批量归一化等方法不足以克服它。

残差学习

残差学习是 ResNet 架构中引入的概念,用于解决梯度消失问题。在传统的深度神经网络中,每一层都对输入应用一组变换来获得输出。ResNet 引入了残差连接,使网络能够学习残差映射,即层输入和输出之间的差异。

残差连接通过将输入添加到层的输出来形成,这使得梯度可以直接流过网络而不会衰减。这使得网络能够使用绕过层变换的快捷连接来学习残差映射。

ResNet 架构

ResNet 架构由多个层组成,每个层都包含残差块。残差块是一组层,它们对输入执行一组变换以获得输出,并包含一个将输入添加到输出的快捷连接。

ResNet 架构有多种变体,包括 ResNet-18、ResNet-34、ResNet-50、ResNet-101 和 ResNet-152。每个变体中的数字对应于网络中的层数。例如,ResNet-50 包含 50 层,而 ResNet-152 包含 152 层。

ResNet-50 架构是最受欢迎的变体之一,它包含五个阶段,每个阶段包含多个残差块。第一阶段由一个卷积层和一个最大池化层组成,用于减小输入的空间维度。

第二阶段包含三个残差块,每个残差块包含两个卷积层和一个快捷连接。第三、第四和第五阶段分别包含四个、六个和三个残差块。这些阶段中的每个块都包含多个卷积层和一个快捷连接。

最后一个阶段的输出被馈送到全局平均池化层,该层将特征图的空间维度减小为每个通道的单个值。然后将全局平均池化层的输出馈送到具有 softmax 激活的全连接层,该层产生网络的最终输出。

应用

ResNet 在图像分类、目标检测和语义分割等各种计算机视觉任务上取得了最先进的成果。在 2015 年的 ImageNet 大规模视觉识别挑战赛 (ILSVRC) 中,ResNet-152 架构实现了 3.57% 的 top-5 错误率,远优于之前的最先进错误率 3.57%。

ResNet 的优点

ResNet 具有多种优点,使其成为深度学习应用的流行选择

  • 更深的网络

ResNet 能够构建比以往更深的网络(超过一百层),这在以前由于梯度消失问题而无法实现。残差连接使网络能够学习更好的表示并优化梯度流,从而更容易训练更深的网络。

  • 提高准确性

ResNet 在 ImageNet、CIFAR-10 和 CIFAR-100 等多个基准数据集上取得了最先进的性能,证明了其与其他深度神经网络架构相比具有卓越的准确性。

  • 更快的收敛

得益于残差连接,ResNet 可以在训练过程中实现更快的收敛,从而更好地进行梯度流和优化。这使得训练更快,并且能更好地收敛到最优解。

  • 迁移学习

ResNet 适用于迁移学习,允许网络重用先前

学习到的特征用于新任务。当标记数据量有限时,这尤其有用,因为预先训练的 ResNet 可以在新数据集上进行微调以获得良好的性能。

ResNet 的缺点

尽管 ResNet 有许多优点,但也有一些缺点需要考虑

  • 复杂度

ResNet 是一种复杂的架构,比浅层网络需要更多的内存和计算资源。在资源有限的情况下,例如移动设备或嵌入式系统,这可能是一个限制。

  • 过拟合

ResNet 容易过拟合,尤其是在网络太深或数据集太小的情况下。这可以通过正则化技术(如 dropout)或使用层数较少的较小网络来缓解。

  • 可解释性

ResNet 的可解释性可能具有挑战性,因为网络学习到的表示复杂且抽象,难以理解。在可解释性至关重要的场景中,例如医疗诊断或欺诈检测,这可能是一个限制。

结论

ResNet 是一种强大的深度神经网络架构,它通过构建更深、更精确的网络彻底改变了计算机视觉领域。其残差连接可实现更好的梯度流和优化,从而使训练更深的网络更容易,并在基准数据集上取得更好的性能。

然而,ResNet 存在复杂性、易过拟合和可解释性有限等限制。在为特定任务选择 ResNet 或任何其他深度神经网络架构时,应考虑这些缺点。

总的来说,ResNet 对深度学习和计算机视觉产生了重大影响,其原理已扩展到自然语言处理和语音识别等其他领域。随着深度学习研究的不断发展,可能会开发出新的架构和技术来解决 ResNet 和其他现有架构的当前局限性。