← 返回文章

结构笔记 · 5 分钟

ResNet:identity 留下了什么

用 out += identity 阅读残差连接,而不是把它当成性能承诺。
深度学习PyTorchResNet

一条不绕路的路径

残差块的核心可以写得很短:

identity = x
out = block(x)
out += identity

主分支学习的是 F(x),而 identity 路径直接保留输入 x。相加之后得到 F(x) + x。阅读代码时,这条直达路径比“更深网络一定更好”这种结论更重要。

什么时候不能直接相加

逐元素相加要求形状一致。当主分支改变空间尺寸或通道数时,identity 也要经过投影,常见做法是使用 1×1 卷积和适当的 stride。

结构不是结果承诺

残差连接提供了不同的信息和梯度路径,但具体实验结果仍然依赖数据、优化器、训练轮数与随机性。理解 out += identity 能解释结构,不能替代实验。