问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

面试必考:残差网络(ResNet)原理详解

创作时间:
作者:
@小白创作中心

面试必考:残差网络(ResNet)原理详解

引用
CSDN
1.
https://blog.csdn.net/Lewiz_124/article/details/141395848

本文是针对面试中常见的深度学习问题的详细解答,主要解释了什么是残差网络(ResNet),以及残差连接是如何起作用的。

什么是残差网络?

残差网络(Residual Network, ResNet)是一种深度神经网络架构,由何凯明等人在2015年提出,用于解决随着网络深度增加而导致的梯度消失和梯度爆炸问题。残差网络在图像分类、目标检测、语音识别等多个任务中取得了非常好的效果。

  • 定义:
    残差网络的核心思想是在每一层或每几层网络之间引入“残差连接”(Residual Connection),使网络能够学习残差函数(Residual Function),而不是直接学习映射函数。残差连接通过“捷径”将输入直接传递到后面的层,从而缓解了深度网络训练中的梯度消失问题。

  • 背景:
    在深度神经网络中,随着网络层数的增加,梯度传递过程中的消失和爆炸问题变得越来越严重,导致网络难以收敛,训练误差也可能会随着网络深度的增加而增大。这种现象使得网络难以通过简单地堆叠更多层来提升性能。

  • ResNet的提出:
    ResNet通过引入残差连接,使得网络能够更容易地训练更深的模型,并且有效解决了深度网络的退化问题,即随着网络深度增加,模型性能不再提升甚至下降。

残差具体是怎么起作用的?

2.1 残差块(Residual Block)

残差块是ResNet的基本构建单元。一个典型的残差块由两层或三层卷积层组成,卷积层之间通常使用ReLU作为激活函数。在残差块中,输入x不仅经过卷积层变换F(x),还通过一个捷径连接(shortcut connection)直接加到输出上。

图源

具体来说,假设一个残差块的输入为x,经过卷积层的输出为F(x),残差块的输出为y,那么:

y = F(x) + x

这里的F(x)是通过卷积层、批归一化层(Batch Normalization)和激活函数(如ReLU)所学到的特征变换。

  • 残差连接:
    残差连接(也称为捷径连接或跳跃连接)将输入x直接加到输出F(x)上,这一操作使得网络学习的目标变为学习输入与输出之间的残差F(x),而不是直接学习从输入到输出的复杂映射。

  • 直观理解:
    残差连接的一个关键作用在于它使得每一层至少保留了输入的信息,即使在深层网络中,信息也能通过残差连接直接传递到后面的层。这一特性帮助网络更好地传递梯度,避免了梯度消失和梯度爆炸的问题,从而更容易训练更深的模型。

2.2 残差的作用

  • 缓解梯度消失问题:
    在传统的深度网络中,随着层数的增加,梯度在反向传播过程中会逐渐衰减(或增长),导致梯度消失或爆炸,使得网络难以训练。而残差网络通过残差连接让梯度可以直接通过捷径传递,这样即使卷积层学到的梯度很小,残差连接也能保持梯度的传递,缓解了梯度消失的问题。

  • 简化模型优化:
    残差连接将网络的学习目标从直接拟合输出y = H(x)变为拟合残差F(x) = H(x) - x,这通常更容易优化。因为在很多情况下,学习一个小的残差比学习一个复杂的映射要容易得多。尤其是在深度网络中,输入和输出之间可能已经非常接近,直接学习残差可以加速收敛。

  • 支持更深的网络架构:
    残差网络的设计使得网络能够支持更深的架构(如ResNet-50、ResNet-101、ResNet-152等),这些深度网络能够更好地捕捉复杂的特征,从而提升模型的表现。实际中,ResNet-152层的网络能够在ImageNet等大规模数据集上取得优异的性能。

2.3 具体例子:

  • 浅层网络:
    假设一个简单的两层残差块,输入为x,经过两个卷积层后输出为F(x),然后加上输入x得到最终输出y。通过残差连接,即使卷积层的变换F(x)是一个小的调整,网络也能够保持输入信息,并在此基础上进行微调。

  • 深层网络:
    在一个更深的网络中,假设网络有10个残差块,这些块的输出通过残差连接逐层累加。每一层的变换都只是对前一层的微调,而不是对整个输入进行重新计算,这种设计使得网络能够稳定地学习更深层次的特征。

总结

残差网络(ResNet)是一种深度神经网络架构,通过引入残差连接,成功解决了深度网络中的梯度消失和梯度爆炸问题。残差连接通过直接传递输入到输出,使得网络能够学习残差函数,简化了模型的优化过程,并支持构建更深的网络结构。这种设计极大地提高了深度网络的训练效果和性能,使得ResNet在图像分类、目标检测等多个领域取得了显著的成功。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号