ResNet 为我解释一下这个是什么?
Created on: August 9, 2026
Answered using GPT-5.6 Thinking by Chat01
Created on: August 9, 2026
Answered using GPT-5.6 Thinking by Chat01
ResNet
为我解释一下这个是什么?
ResNet(Residual Network,残差网络)是一种经典的深度神经网络架构,主要用于图像识别和计算机视觉。它由微软研究院团队在 2015 年提出。
它最核心的创新可以浓缩成一句话:
不要让网络直接学习“最终结果”,而是让它学习“输入需要改变多少”。
传统卷积神经网络通常是这样一层层计算:
理论上,网络层数越深,模型就越强。但实际训练时,网络太深会出现一个问题:
层数增加以后,模型反而可能训练得更差。
原因包括梯度传播困难,以及深层网络很难学会“这一层其实什么都不用做”。
ResNet 为此加入了一条捷径(Skip Connection / Shortcut Connection):
也就是说,输入 不仅进入神经网络层,还可以直接“绕过去”,最后和网络计算出的 相加。
假设我们真正想学习的目标是:
普通神经网络直接学习:
ResNet 则换一个思路,让网络学习:
于是:
这里的 就叫做 Residual(残差)。
例如,你可以把它想成:
原图 → “需要修改的部分” → 加回原图 → 新结果
而不是:
原图 → 完全重新生成一个结果
这种方式通常更容易学习。
一个非常简化的 Residual Block(残差块)可以理解成:
text┌───────────────┐ │ │ │ x │ │ ↓ x ──→ Conv ──→ ReLU ──→ Conv ──→ (+) ──→ 输出 │ ↑ └──────────────────────────────┘ Shortcut
上面的卷积层负责学习:
下面那条直接连过去的线传递:
最后得到:
这就是 ResNet 最重要的结构——Residual Block。
一个很直观的原因是:
假如某几层实际上没什么需要学习的,普通网络还得费劲学出一个“原样输出”的函数。
而 ResNet 只需要让:
那么:
也就是说,这几层可以很容易地变成:
“没必要处理的话,就直接让信息通过。”
因此网络可以做得非常深。
于是就有了你经常看到的:
其中 ResNet-50 是非常常见的计算机视觉 backbone(骨干网络)。
你可以把普通神经网络理解成:
“请你重新计算一个答案。”
而 ResNet 更像:
“原来的答案先保留,你只告诉我需要修改什么。”
这一个看起来很简单的思想,让非常深的神经网络变得更容易训练,也是现代深度学习中非常重要的架构思想。
如果你正在学 CNN,我建议把 ResNet = CNN + Skip Connection + Residual Block 先记住,这样已经抓住它最核心的部分了。