视觉人工智能指南

残差网络

残差网络 (ResNet) 是深度神经网络,它添加了“跳跃连接”,让各层学习小的调整而不是完整的转换。

阅读时间:2分钟最后更新

概述

This simple trick made it possible to train networks hundreds of layers deep, sparking a leap in image recognition accuracy.

深入探讨

在 ResNets 出现之前,堆叠许多层反而会导致网络表现更差,即使在训练数据上也是如此,这个问题称为退化。 2015 年,Microsoft 研究人员 Kaiming He 及其同事引入了残差块:他们没有要求一堆层直接产生输出 H(x),而是让它学习残差 F(x) = H(x) - x,然后通过快捷方式将原始输入 x 添加回来。如果不需要某个层,它可以简单地学习什么都不做(F(x) = 0)。 ResNet-152 以约 3.6% 的前 5 名错误率赢得了 2015 年 ImageNet 竞赛,超过了人类水平的估计,其架构成为检测、分割和医学成像的基础骨干。

技术洞察

跳跃连接将每个块的工作变成 y = F(x) + x。在反向传播过程中,梯度不变地流过恒等捷径,因此即使跨越数百层,梯度也不会消失到接近零。这使得深筹码可以训练。身份快捷方式不添加额外的参数;仅当输入和输出大小不同时,小投影(1x1 卷积)才会在相加之前调整尺寸。

战略影响

速度与规模

视觉人工智能可以大规模自动化检查、检测和标记任务。

构建选择

创意团队可以通过更少的手动修改更快地构建概念原型。

团队与工作流程

操作可以使用以前难以处理的图像和视频信号。

残差网络的未来

残差连接现在几乎是普遍的:变压器、扩散模型和大型语言模型都使用它们来稳定非常深的堆栈的训练。对预激活 ResNet、ResNeXt 分组路径等变体的研究仍在继续,并将残余想法与无归一化训练相结合。即使周围的架构从纯卷积转向注意力和混合设计,核心跳跃连接原则仍将作为默认构建块持续存在。

现实世界的实施

ImageNet 分类主干网(ResNet-50、ResNet-101)用作迁移学习的预训练特征提取器

使用基于 ResNet 的编码器在放射学和病理学图像中检测肿瘤和病变

使用 ResNet 主干的对象检测和实例分割框架,例如 Faster R-CNN 和 Mask R-CNN

自动驾驶感知管道,可根据摄像头图像对行人、车辆和标志进行分类

风险与防护栏

如果出处不明,肖像权和同意可能会成为法律风险。

模型性能可能因光照、人口统计和环境的不同而有所不同。

除非监控置信阈值,否则误报可能会被忽视。

实施路线图

1

定义精确度、召回率和错误成本的接受标准。

2

使用符合实际生产条件的数据进行测试。

3

为低置信度或高影响力的预测添加人工审核。

4

跟踪模型漂移并在相机或数据集更改后重新验证。

不断探索

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Residual Networks quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

开始测验

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

下一个指南

特征金字塔网络

常见问题

What is Residual Networks?

残差网络 (ResNet) 是深度神经网络,它添加了“跳跃连接”,让各层学习小的调整而不是完整的转换。这个简单的技巧使得训练数百层深度的网络成为可能,从而引发了图像识别准确性的飞跃。

残差连接具体解决了什么问题?

在 ResNets 出现之前,添加更多层会导致准确性下降,甚至在训练数据上也是如此。跳过连接通过使层易于优化来解决这个问题。

残差块实际上计算什么作为其输出?

残差块输出 y = F(x) + x,通过跳跃连接将学习到的残差添加到输入中。

为什么跳过连接有助于训练期间的梯度?

恒等快捷方式为梯度不变地向后流动提供了直接路径,防止了非常深的堆栈中的梯度消失问题。

2015 年获胜的 ResNet 模型大约有多少层?

具有 152 层的 ResNet-152 赢得了 2015 年 ImageNet 竞赛,证明现在可以成功训练非常深的网络。

如果残差块的层学习 F(x) = 0,那么该块会做什么?

当 F(x) = 0 时,输出只是 x,因此该块成为恒等映射。如果不需要的话,这使得额外的层无害。