一文带你读懂残差网络ResNet

 作者 :“码上有钱”
 文章简介 :AI-残差算法
 欢迎小伙伴们 点赞、收藏⭐、留言

简介

残差网络(Residual Neural Network, ResNet)是深度神经网络的一种。它通过增加跨层连接(skip connection)将输入信息直接传递到输出,有助于解决深层网络训练中的梯度消失和梯度爆炸问题减少了参数量提高了网络性能

问题

  1. 传统的神经网络结构,信号从输入到输出需要经过多个非线性映射,每一层映射的输出结果都作为下一层映射的输入进行处理。但是,这样的映射过程将产生一些问题,例如深层神经网络难以训练,梯度消失问题、梯度爆炸问题等。
  2. 同时由于神经网络层数的增多,会出现精度退却的问题。

如下图,层数多训练和测试精度反而不高。
一文带你读懂残差网络ResNet_第1张图片

残差结构

为了解决这些问题,ResNet提出了残差块,它采用了跳跃式连接的方法,在网络中加入直接连接以便于信息的快速传递。

一文带你读懂残差网络ResNet_第2张图片
在学习过程中,优先选择更短的路径学习,以至于效果至少不会太差!

优点

  1. 强大的非线性建模能力:残差网络由于可以通过堆叠多个隐藏层,从而可以学习到更复杂的非线性关系。这使得残差网络在许多复杂任务上比传统的神经网络表现更好。
  2. 避免梯度消失和梯度爆炸问题:由于深层网络的反向传播过程中的梯度会逐渐变小(梯度消失)或者变大(梯度爆炸),导致模型难以收敛或者训练不稳定。残差网络通过跨层连接直接传递梯度,有效地解决了这个问题。
  3. 可以训练更深的网络:传统的神经网络很难训练超过几十层,而残差网络则可以轻松地训练数百层甚至更深的网络结构。
  4. 更少的参数:相比普通的卷积神经网络,在保持相同性能的情况下,残差网络需要的参数数量要少很多。这是因为残差网络的每一个Residual Block只需要学习残差部分,而不需要重复学习输入数据。
  5. 加速训练:由于残差网络的结构,每个层只需要学习残差部分,可以减少训练参数的数量、减小计算量,从而加快网络的训练。
  6. 提高模型稳定性:由于残差网络的输入和输出是一致的,使得网络更容易收敛并且更稳定。

你可能感兴趣的:(目标检测,算法,深度学习,计算机视觉,神经网络)