【动手学深度学习】(八)数值稳定和模型初始化

文章目录

一、理论知识

1.神经网络的梯度

考虑如下有d层的神经网络

计算损失l关于参数Wt的梯度(链式法则)

2.数值稳定性常见的两个问题

3.梯度爆炸

4.梯度爆炸的问题

  • 值超出阈值
    • 对于16位浮点数尤为严重
  • 对学习率敏感
    • 如果学习率太大-> 大参数值 -> 更大的梯度
    • 如果学习率太小->训练无进展
    • 我们可能需要在训练过程中不断调整学习率
      5.梯度消失
  • 使用sigmoid作为激活函数

    6.梯度消失的问题
  • 梯度值变为0
    • 对16位浮点数尤为严重
  • 训练没有进展
    • 不管如何选择学习率
  • 对于底部层尤为严重
    • 仅仅顶部层训练的较好
    • 无法让神经网络更深
      7.让训练更加稳定
  • 目标:让梯度值在合理的范围内,ex[1e-6,1e3]
  • 将乘法变加法
    • ResNet,LSTM
  • 归一化
    • 梯度归一化,梯度裁剪
  • 合理的权重初始和激活函数
    8.让每层的方差是一个常数

    9.权重初始化
  • 在合理值区间里随机初始化参数
  • 训练开始的时候更容易有数值不稳定
    • 远离最优解的地方损失函数表面可能很复杂
    • 最优解附近表面会比较平
      使用来初始化可能对小网络没问题,但不能保证深度神经网络
相关推荐
CoovallyAIHub14 分钟前
告别等待!十条高效PyTorch数据增强流水线,让你的GPU不再"饥饿"
深度学习·算法·计算机视觉
共绩算力23 分钟前
OpenAI Whisper 语音识别模型:技术与应用全面分析
人工智能·whisper·语音识别·共绩算力
工藤学编程34 分钟前
零基础学AI大模型之Stream流式输出实战
人工智能
不良人龍木木1 小时前
机器学习-常用库
人工智能·机器学习
罗橙7号1 小时前
【pyTorch】关于PyTorch的高级索引机制理解
人工智能·pytorch·python
rengang661 小时前
09-随机森林:介绍集成学习中通过多决策树提升性能的算法
人工智能·算法·随机森林·机器学习·集成学习
CoovallyAIHub1 小时前
量子计算迎来诺奖时刻!谷歌赢麻了
深度学习·算法·计算机视觉
zskj_qcxjqr1 小时前
数字大健康浪潮下:智能设备重构人力生态,传统技艺如何新生?
大数据·人工智能·科技·机器人
动能小子ohhh1 小时前
AI智能体(Agent)大模型入门【9】--如何在pycharm等其他编译软件调用ocr工具【只写后端代码不演示】
人工智能·python·深度学习·机器学习·pycharm·ocr
mit6.8242 小时前
[Tongyi] 工具集成 | run_react_infer
人工智能·深度学习·算法