AI知识分享AI知识分享
✿导航
  • 人工智能
  • 神经网络
  • 机器学习
  • 深度学习
  • 强化学习
  • 自然语言处理
  • 计算机视觉
  • 大模型基础
  • 动手学深度学习
  • 理论理解
  • 工程实践
  • 应用开发
  • AI For Everyone
  • AIGC_2024大会
  • AIGC_2025大会
  • Transformer
  • Pytorch
  • HuggingFace
  • 蒸馏
  • RAG
  • 目标检测
  • MCP
  • 概念
  • 意图识别
  • 工具
✿导航
  • 人工智能
  • 神经网络
  • 机器学习
  • 深度学习
  • 强化学习
  • 自然语言处理
  • 计算机视觉
  • 大模型基础
  • 动手学深度学习
  • 理论理解
  • 工程实践
  • 应用开发
  • AI For Everyone
  • AIGC_2024大会
  • AIGC_2025大会
  • Transformer
  • Pytorch
  • HuggingFace
  • 蒸馏
  • RAG
  • 目标检测
  • MCP
  • 概念
  • 意图识别
  • 工具
  • 大模型基础

    • 语言模型基础

      • 概述
      • 基于统计方法的语言模型
      • 基于神经网络的语言模型
      • 语言模型的采样方法
      • 语言模型的评测
    • 大语言模型架构

      • 概述
      • 主流模型架构
      • Encoder-only
      • Encoder-Decoder
      • Decoder-only
      • 非Transformer 架构
    • Prompt工程

      • 工程简介
      • 上下文学习
      • 思维链
      • 技巧
    • 参数高效微调

      • 概述
      • 参数附加方法
      • 参数选择方法
      • 低秩适配方法
      • 实践与应用
    • 模型编辑

      • 简介
      • 方法
      • 附加参数法
      • 定位编辑法
    • RAG

      • 基础
      • 架构
      • 知识检索
      • 生成增强
  • 动手学深度学习

    • 深度学习基础

      • 引言
      • 数据操作
      • 数据预处理
      • 数学知识(线代、矩阵计算、求导)
      • 线性回归
      • 基础优化方法
      • Softmax回归
      • 感知机
      • 模型选择
      • 过拟合和欠拟合
      • 环境和分布偏移
      • 权重衰减
      • Dropout
      • 数值稳定性
    • 卷积神经网络

      • 模型基本操作
      • 从全连接层到卷积
      • 填充和步长
      • 多个输入和输出通道
      • 池化层
      • LeNet
      • AlexNet
      • VGG
      • NiN网络
      • GoogleNet
      • 批量归一化
      • ResNet
    • 计算机视觉

      • 图像增广
      • 微调
      • 目标检测
      • 锚框
      • 区域卷积神经网络
      • 单发多框检测
      • 一次看完
      • 语义分割
      • 转置卷积
      • 全连接卷积神经网络
      • 样式迁移
    • 循环神经网络

      • 序列模型
      • 语言模型
      • 循环神经网络
      • 序列到序列学习
      • 搜索策略
    • 注意力机制

      • 优化算法

数值稳定性

神经网络的梯度

image-20260304202856647

数值稳定性的两个常见问题:梯度爆炸 和 梯度消失

image-20260304203006046
  • 梯度爆炸(gradient exploding)问题: 参数更新过大,破坏了模型的稳定收敛;
  • 梯度消失(gradient vanishing)问题: 参数更新过小,在每次更新时几乎不会移动,导致模型无法学习。

梯度消失与梯度爆炸 (Vanishing/Exploding Gradients)

在深层网络或 RNN/LSTM 中,连乘操作会导致数值极端化。

  • 爆炸:权重矩阵的特征值 >1>1>1,连乘后梯度趋向 Inf。

  • 消失:权重矩阵的特征值 <1<1<1,连乘后梯度趋向 0(下溢),导致浅层参数不更新。

  • 解决方案:

    1. 权重初始化:使用 Xavier (Glorot) 或 He (Kaiming) 初始化,确保初始方差适中。
    2. 激活函数:使用 ReLU, Leaky ReLU, GELU 等替代 Sigmoid/Tanh(Sigmoid 导数最大仅 0.25,连乘极易消失)。
    3. 归一化技术:Batch Normalization (BN) 或 Layer Normalization (LN)。它们强制将每一层的输入分布拉回到均值为 0、方差为 1 附近,从根本上切断连乘导致的数值发散。
    4. 梯度裁剪 (Gradient Clipping):在 RNN/Transformer 训练中常用。如果梯度的范数超过阈值(如 1.0 或 5.0),就将其强行缩放回阈值内。
      torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0)
      
    5. 残差连接 (Residual Connections):如 ResNet 和 Transformer 中的 x+F(x)x + F(x)x+F(x) 结构,提供了一条梯度可以直接回传的“高速公路”,避免梯度在深层传递中消失。

总结

  • 当数值过大或者过小时会导致数值问题
  • 常发生在深度模型中,因为其会对n个数累乘
最近更新: 2026/3/30 21:56
Contributors: klc407073648
Prev
Dropout