news 2026/8/21 2:04:25

面试官:深层网络梯度消失的根本原因是什么?除了 ResNet,还有哪些架构能有效缓解?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
面试官:深层网络梯度消失的根本原因是什么?除了 ResNet,还有哪些架构能有效缓解?

📚推荐阅读

面试官:Transformer如何优化到线性级?

面试官:模型的量化了解吗?解释一下非对称量化与对称量化

面试官:模型剪枝了解吗?解释一下结构化剪枝与非结构化剪枝

面试官:为什么 Adam 在部分任务上会比 SGD 收敛更快,但泛化性更差?如何改进?

面试官:BatchNorm、LayerNorm、GroupNorm、InstanceNorm 有什么本质区别?

面试官:深层网络梯度消失的根本原因是什么?除了 ResNet,还有哪些架构能有效缓解?

这题是典中典。很多人听到“梯度消失”就背一句——“因为深度太深”,但要真能把原因讲透机制解释清改进方案说全,那就不只是“知道问题”,而是理解问题的结构本质了。

今天这篇,我们就彻底搞清楚:

  • 梯度为什么会消失(根本原因)?
  • ResNet 是怎么解决的?
  • 还有哪些架构能有效缓解?

有相关源码示例、流程图、模型配置与知识库构建技巧,我也将持续更新在Github:LLMHub,欢迎关注收藏!

一、什么是梯度消失?

“梯度消失”(Vanishing Gradient)指的是在反向传播过程中,梯度在层与层之间不断相乘,到达前面层时已经接近 0,导致这些层几乎学不到东西

这个问题的根本,在于链式法则的累乘效应

对于一个深度网络:y = f L ( f L − 1 ( . . . f 1 ( x ) . . . ) ) y = f_L(f_{L-1}( ... f_1(x) ... ))y=fL(fL1(...f1(x)...))

反向传播时梯度为:∂ L ∂ x = ∂ L ∂ y ∏ i = 1 L ∂ f i ∂ f i − 1 \frac{\partial L}{\partial x} = \frac{\partial L}{\partial y} \prod_{i=1}^{L} \frac{\partial f_i}{\partial f_{i-1}}xL=yLi=1Lfi1fi

当每个∂ f i ∂ f i − 1 \frac{\partial f_i}{\partial f_{i-1}}fi1fi的范数 < 1 时,随着层数增加,梯度会呈指数级衰减。

假设每层的权重矩阵为W i W_iWi,激活函数为 σ:∂ L ∂ x = ∂ L ∂ y ( W L σ ′ ( z L ) ) ( W L − 1 σ ′ ( z L − 1 ) ) . . . ( W 1 σ ′ ( z 1 ) ) \frac{\partial L}{\partial x} = \frac{\partial L}{\partial y} (W_L σ'(z_L)) (W_{L-1} σ'(z_{L-1})) ... (W_1 σ'(z_1))xL=yL(WLσ(zL))(WL1σ(zL1))...(W1σ(z1))

如果激活函数的导数平均小于 1(如 sigmoid, tanh),或者权重初始化不当(如方差太小),那么梯度会被不断缩小,最终趋近于 0。这就是梯度消失的本质:链式相乘中的指数衰减

二、激活函数与初始化的双重作用

激活函数问题

像 sigmoid 或 tanh,这类函数的导数在饱和区间非常小:

函数导数区间问题
Sigmoid(0, 0.25)饱和后梯度极小
Tanh(0, 1)仍会衰减
ReLU0 或 1解决了一部分问题

ReLU 的出现让梯度能在正区间传播不衰减,这就是为什么 ReLU 成为深度学习的标配。

权重初始化问题

如果初始化方差太小,梯度被压缩;如果太大,梯度爆炸。

He Initialization(ReLU)和 Xavier Initialization(tanh)就是为了解决“梯度稳定传播”的问题,让方差在层间保持恒定。

三、ResNet 是怎么缓解的?

ResNet 的关键思想:恒等映射(Identity Mapping) + 残差连接(Skip Connection)

残差块:y=F(x)+x

反向传播时:∂ L ∂ x = ∂ L ∂ y ( 1 + ∂ F ∂ x ) \frac{\partial L}{\partial x} = \frac{\partial L}{\partial y} (1 + \frac{\partial F}{\partial x})xL=yL(1+xF)

即使∂ F ∂ x \frac{\partial F}{\partial x}xF很小,梯度仍可通过恒等路径“直接传回前层”。这让梯度流不再完全依赖非线性层的累乘。

四、缓解梯度消失的其他架构?

ResNet 是经典,但并不是唯一的解。我们来看几类常见的缓解梯度消失的其他架构

1. DenseNet — “全连接式残差”

DenseNet 在每一层都把前面所有层的特征拼接起来:x l = [ x 0 , x 1 , . . . , x l − 1 ] x_l = [x_0, x_1, ..., x_{l-1}]xl=[x0,x1,...,xl1]

这样每一层都能直接访问前面层的输出,梯度可以多路径回流,并且可以实现信息复用,缓解梯度消失。

2. Highway Network — “门控残差”

Highway Network 在 ResNet 的基础上加了门控机制:y = T(x) * F(x) + (1 - T(x)) * x

其中 T(x) 是一个可学习的门函数,控制信息通过多少。

这种结构让网络能动态控制梯度通道的流量,在 RNN、语音建模中也常用。

3. LSTM / GRU — 时间维度的残差思想

在序列模型中,梯度消失更严重(因为时间展开更深)。


LSTM 通过“门控 + 线性通道”让梯度能长期传播:c t = f t ∗ c t − 1 + i t ∗ c ~ t c_t = f_t * c_{t-1} + i_t * \tilde{c}_tct=ftct1+itc~t

这其实就是在时间维度上做了“残差连接”,让梯度在时间上传递更稳定。

4. Transformer — LayerNorm + 残差 + 注意力机制

Transformer 的每一层都有:

x’ = x + MultiHeadAttention(x)

y = x’ + FeedForward(x’)

同时配合 LayerNorm 稳定分布,使得残差通道保持梯度流,LayerNorm 保证数值不发散,整体训练稳定,能堆叠上百层。

总结一下,梯度消失的根本原因是链式相乘中的指数衰减,ResNet 只是第一个成功的缓解梯度消失设计,后来 DenseNet、LSTM、Transformer 都在不同维度上继续拓宽了这条路。

关于深度学习和大模型相关的知识和前沿技术更新,请关注公众号coting

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 12:38:09

Recon-ng数据导出实战指南:5大格式选择与转换技巧

Recon-ng数据导出实战指南&#xff1a;5大格式选择与转换技巧 【免费下载链接】recon-ng Open Source Intelligence gathering tool aimed at reducing the time spent harvesting information from open sources. 项目地址: https://gitcode.com/gh_mirrors/re/recon-ng …

作者头像 李华
网站建设 2026/8/21 4:41:52

Bazel构建工具插件生态终极指南:从零到精通实战手册

Bazel作为快速、可扩展、多语言支持的构建系统&#xff0c;其强大的插件生态为现代软件开发提供了完整的解决方案。本指南将深入解析Bazel插件架构的核心原理&#xff0c;提供从基础配置到高级优化的完整实践路径&#xff0c;帮助开发者构建高效可靠的构建流程。 【免费下载链接…

作者头像 李华
网站建设 2026/8/21 17:30:11

利用 `Performance API` 记录 React 组件在 Render, Pre-commit 和 Commit 阶段的耗时

各位专家同仁&#xff0c;大家好。今天我们共同探讨一个在现代前端开发中至关重要的议题&#xff1a;React 组件的性能优化。尤其是在大型复杂应用中&#xff0c;理解组件在不同生命周期阶段的耗时&#xff0c;是诊断和解决性能瓶颈的关键。我们将深入研究如何利用浏览器原生的…

作者头像 李华
网站建设 2026/8/20 12:27:20

腾讯混元A13B:130亿活跃参数的智能推理新标杆

腾讯混元A13B&#xff1a;130亿活跃参数的智能推理新标杆 【免费下载链接】Hunyuan-A13B-Instruct Hunyuan-A13B-Instruct是一款基于混合专家架构的开源大语言模型&#xff0c;以13亿活跃参数实现媲美更大模型的卓越性能。其独特之处在于支持快慢双思维模式&#xff0c;用户可自…

作者头像 李华
网站建设 2026/8/21 1:41:15

MateChat完整使用指南:从零开始构建智能对话应用

MateChat完整使用指南&#xff1a;从零开始构建智能对话应用 【免费下载链接】MateChat 前端智能化场景解决方案UI库&#xff0c;轻松构建你的AI应用&#xff0c;我们将持续完善更新&#xff0c;欢迎你的使用与建议。 官网地址&#xff1a;https://matechat.gitcode.com 项目…

作者头像 李华
网站建设 2026/8/21 22:40:21

OpenWebRX 终极指南:通过浏览器轻松探索无线电世界

OpenWebRX 是一款革命性的开源软件定义无线电接收器&#xff0c;让任何人都能通过网络浏览器直接访问和探索无线电频谱。无论您是无线电爱好者、教育工作者还是技术探索者&#xff0c;这个多用户SDR接收软件都能为您打开全新的无线电世界大门。&#x1f3af; 【免费下载链接】o…

作者头像 李华