ResNet-50

义项:50层残差神经网络
ResNet-50

ResNet-50是深度残差网络(ResNet)家族中深度为50层的卷积神经网络模型,由何恺明、张祥雨、任少卿、孙剑在2015年的论文《Deep Residual Learning for Image Recognition》中提出,隶属微软研究院。它通过跨层直连的残差结构缓解深层网络的退化与梯度传播困难,并在ImageNet分类任务上取得领先成绩,此后长期作为图像分类、目标检测与分割等任务的常用骨干网络。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

ResNet-50是残差网络(Residual Network)的一个具体深度版本,全称可理解为含有50层的残差卷积神经网络,其中“50”指网络的层数配置[1]。它在ImageNet大规模图像分类数据集上完成训练,输入尺寸为224×224的彩色图像,输出为1000个类别的判别结果[2]。

该模型出自微软研究院的研究工作,与18层、34层、101层、152层等版本同属一个网络家族,其中50层版本在速度与精度之间取得较好平衡,因而被广泛采用[1]。原始模型代码以MIT许可证发布,允许商业使用、修改与再分发,前提是保留版权声明[3]。

原理

残差网络的基本单元建立在残差学习框架之上。设若干堆叠层期望拟合的目标映射为 $\mathcal{H}(x)$,作者让这些层改为拟合残差函数 $\mathcal{F}(x)=\mathcal{H}(x)-x$,原映射则写成 $\mathcal{F}(x)+x$,并通过跳过一个或多个层的捷径连接实现[4]。当恒等映射已是最优时,把残差压到零比用非线性层重新拟合并保持恒等映射更容易优化;这种恒等捷径不增加参数和计算量,网络仍可用随机梯度下降与反向传播端到端训练[4]。

网络层数达到50层以上时,采用基本块会使计算量偏大,因此ResNet-50、ResNet-101与ResNet-152改用瓶颈块(bottleneck):先用1×1卷积把通道数压缩,再在低维空间做3×3卷积,最后用1×1卷积恢复通道维度[5]。整个网络由若干阶段堆叠的瓶颈残差块组成,输出端通过池化与全连接层得到分类结果,原始实现的图像特征在最后一个卷积块输出为7×7×2048的张量[6]。


flowchart LR

A[输入图像 224×224] --> B[卷积与池化]

B --> C[瓶颈残差块组 conv2_x]

C --> D[conv3_x]

D --> E[conv4_x]

E --> F[conv5_x]

F --> G[全局池化]

G --> H[全连接层 1000类]

C -.恒等捷径.-> C

发展历程

2015年,何恺明、张祥雨、任少卿、孙剑发表论文,提出以残差学习训练极深网络的方法,并给出深度最高达152层的网络,其复杂度仍低于VGG网络[4]。论文指出,在网络已能收敛的前提下继续加深层数会出现精度饱和甚至下降的退化现象,且这种退化并非过拟合所致,增加层数反而带来更高的训练误差[4]。

这些模型用于ILSVRC与COCO 2015竞赛,在ImageNet分类、ImageNet检测、ImageNet定位、COCO检测与COCO分割5项任务中均获得第1名[7]。在ImageNet验证集上,ResNet-50的单裁剪top-1错误率为24.7%,top-5错误率为7.8%;10裁剪下分别为22.9%和6.7%[8]。

2016年,该论文发表于IEEE计算机视觉与模式识别会议(CVPR)[9]。此后各主流框架陆续收录该模型,其中PyTorch、TensorFlow与NVIDIA NGC等实现多采用v1.5变体,把瓶颈块中步长为2的下采样位置由第一个1×1卷积移到3×3卷积,top-1精度约高0.5%,吞吐量略有代价[3]。

在开源实现中,ResNet-50在ImageNet验证集50000幅图像上的测试结果被反复引用,例如有实现报告top-1准确率76.96%、top-5准确率93.24%[1]。参数规模方面,该模型的近似参数量为2560万[3]。

应用

图像分类是ResNet-50最直接的应用,它可把ImageNet图像划入1000个目标类别,典型报告准确率约76%[9]。在医学影像、工业质检等场景中,该网络常被用作特征提取器,与词袋模型等传统描述子结合构建分类或检索系统[10]。

作为骨干网络(backbone),ResNet-50被用于Faster R-CNN、Mask R-CNN、RetinaNet等目标检测与实例分割框架,也用于语义分割任务[3]。由于其结构成熟、预训练权重易得,它还常被迁移到数据规模较小的垂直领域,例如在深度学习框架上对数千张蘑菇图像做10类识别训练[11]。

局限

残差结构缓解的是深层网络的优化困难,并不改变模型对数据与算力的依赖。ResNet-50的输入固定为224×224的裁剪图像,其单裁剪与10裁剪的精度差异说明结果对图像裁剪与缩放方式敏感[8]。在ImageNet分类上,50层版本的top-1错误率约为24.7%,低于101层与152层版本的23.6%与23.0%,即层数增加仍能带来一定精度收益[8]。

该网络的参数规模约2560万,原始版本的训练与推理成本对当时的硬件提出较高要求[3]。v1.5变体对下采样位置的调整虽使精度略有提升,却带来吞吐量上的损失,说明结构微调往往需要在精度与效率之间权衡[3]。此外,残差学习解决的是退化问题,论文中将其作为通用训练框架讨论,并未保证在任意数据与任务上都能取得最优结果[4]。

参见

  • 残差网络 —— ResNet-50所属的网络家族,以跨层捷径连接为核心结构。

  • 卷积神经网络 —— ResNet-50的基本类型,通过卷积层提取图像特征。

  • ImageNet —— ResNet-50训练与评测所使用的大规模图像数据集。

  • ILSVRC —— 2015年ResNet系列模型夺冠的图像识别竞赛。

  • 残差学习 —— 让堆叠层拟合残差函数以简化极深网络训练的方法。

  • 批归一化 —— 深层网络训练中常用的归一化技术,ResNet实现中广泛使用。

参考资料

  1. ResNet50_for_PyTorch [引用日期2026-10-29]
  2. resnet50¶ [引用日期2026-10-29]
  3. ResNet-50: Overview, Resources & Licensing | Roboflow [引用日期2026-10-29]
  4. huggingface.co 上的网页 [引用日期2026-10-29]
  5. Deep Residual Learning for Image Recognition(2015) [引用日期2026-10-29]
  6. google.com 上的网页 [引用日期2026-10-29]
  7. README [引用日期2026-10-29]
  8. Deep Residual Networks [引用日期2026-10-29]
  9. 目录 [引用日期2026-10-29]
  10. nih.gov 上的网页 [引用日期2026-10-29]
  11. 技术实践丨基于MindSpore的ResNet-50蘑菇“君”的识别应用体验 [引用日期2026-10-29]
词条评价
词条统计

浏览次数:0 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-28T18:29:56Z

历史版本

本条目引用的词条
ImageNet 残差学习 ILSVRC 残差网络 卷积神经网络 批归一化