详解三种常用尺度化:Batch Norm、Layer Norm和RMSNorm

[复制链接]
发表于 2025-11-4 17:18:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
在深度学习中,尺度化技能是提拔模子练习速率、稳固性和性能的紧张本事。本文将详细先容三种常用的尺度化方法:Batch Normalization(批量尺度化)、Layer Normalization(层尺度化)和 RMS Normalization(RMS尺度化),并对其原理、实现和应用场景举行深入分析。
一、Batch Normalization

1.1 Batch Normalization的原理

Batch Normalization(BN)通过在每个小批量数据的每个神经元输出上举行尺度化来淘汰内部协变量偏移。详细步调如下:
      
  • 盘算小批量的均值和方差:
    对于每个神经元的输出,盘算该神经元在当前小批量中的均值和方差。
    [
    \muB = \frac{1}{m} \sum{i=1}^m x_i
    ]
    [
    \sigmaB^2 = \frac{1}{m} \sum{i=1}^m (x_i - \mu_B)^2
    ]
      
  • 尺度化:
    使用盘算得到的均值和方差对数据举行尺度化。
    [
    \hat{x}_i = \frac{x_i - \mu_B}{\sqrt{\sigma_B^2 + \epsilon}}
    ]
      
  • 缩放宁静移:
    引入可学习的参数举行缩放宁静移。
    [
    y_i = \gamma \hat{x}_i + \beta
    ]
    此中,(\gamma)和(\beta)是可学习的参数。

1.2 Batch Normalization的实现

在PyTorch中,Batch Normalization可
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表