残差网络:ResNet

部署运行你感兴趣的模型镜像

ResNet(Residual Network,残差网络)是2015年由何凯明等人提出的深度卷积神经网络(CNN)架构,核心创新是残差连接(Residual Connection),解决了深度网络训练中的“梯度消失/梯度爆炸”问题,让构建数百甚至上千层的深层网络成为可能。

1. 核心痛点:为什么需要ResNet?

传统深层CNN(如VGG)在层数增加时,会出现性能饱和甚至下降——并非过拟合,而是梯度在反向传播时,经过多层权重相乘后逐渐趋近于0(梯度消失)或无穷大(梯度爆炸),导致浅层参数无法有效更新。
ResNet的残差连接正是为打破这种“梯度传播障碍”设计。

2. 核心设计:残差块(Residual Block)

ResNet的基本单元是“残差块”,分为两种主流结构:

  • 普通残差块(Basic Block):适用于较浅网络(如ResNet-18/34),由2个3×3卷积层组成,配合1×1卷积层调整维度(若输入输出通道数不同)。
  • 瓶颈残差块(Bottleneck Block):适用于较深网络(如ResNet-50/101/152),用“1×1卷积(降维)→3×3卷积(特征提取)→1×1卷积(升维)”的结构,减少计算量和参数规模。
核心公式:残差映射

设残差块的输入为x,卷积层的映射关系为F(x)(称为“残差函数”),则残差块的最终输出为:
H(x) = F(x) + x
其中,F(x) + x就是残差连接——直接将输入x(恒等映射,Identity Mapping)跳过卷积层,与卷积输出F(x)相加。若输入输出维度不匹配,会用1×1卷积将x调整为与F(x)同维度(记为W_s x),公式变为H(x) = F(x) + W_s x

3. 为什么残差连接有效?

  • 梯度传播更顺畅:反向传播时,梯度可通过残差连接直接传递到浅层(无需经过所有卷积层),避免梯度消失。例如,损失对x的梯度∂L/∂x = ∂L/∂H(x) × (∂F(x)/∂x + 1),“+1”项确保梯度不会因∂F(x)/∂x趋近于0而消失。
  • 学习目标更简单:网络无需直接学习复杂的“完整映射H(x)”,只需学习“残差F(x) = H(x) - x”——残差通常更接近0,学习难度更低。

4. 经典ResNet架构

基于残差块的堆叠,ResNet衍生出多个经典版本,核心差异是“层数”和“残差块类型”:

型号层数残差块类型应用场景
ResNet-1818普通块(Basic)轻量场景(如移动端)
ResNet-3434普通块(Basic)平衡性能与计算量
ResNet-5050瓶颈块(Bottleneck)主流场景(图像分类、检测)
ResNet-101101瓶颈块(Bottleneck)更高精度需求(复杂数据集)
ResNet-152152瓶颈块(Bottleneck)极致精度(代价是高计算量)

5. 影响与意义

  • 推动深度学习进入“深层时代”:首次实现上千层网络的有效训练,刷新了ImageNet等数据集的精度记录。
  • 成为基础架构:后续许多网络(如ResNeXt、DenseNet、Faster R-CNN)均以ResNet为骨干网络(Backbone),残差连接也成为深度学习的通用设计思路。
  • 拓展应用场景:不仅用于图像分类,还广泛应用于目标检测、图像分割、人脸识别等计算机视觉任务,甚至延伸到NLP(如残差Transformer)领域。

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.9

TensorFlow-v2.9

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值