FilesLast commitLast update
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
README

GroupNormalizationGrad

产品支持情况

产品 是否支持
Atlas A2 训练系列产品/Atlas 800I A2 推理产品 √

功能说明

  • 算子功能:计算 Group Normalization 的输入梯度。
  • 计算公式:

输入按 [N, G, M] 布局组织,单 group 的计算公式为:

x^=(x−mean)⋅rstd\hat{x} = (x - mean) \cdot rstd

s1=∑(dy⋅gamma),s2=∑(dy⋅gamma⋅x^)s_1 = \sum(dy \cdot gamma), \quad s_2 = \sum(dy \cdot gamma \cdot \hat{x})

dx=rstdM⋅gamma⋅(M⋅dy−s1−x^⋅s2)dx = \frac{rstd}{M} \cdot gamma \cdot (M \cdot dy - s_1 - \hat{x} \cdot s_2)

其中 xx 为前向输入,dydy 为上游梯度,gammagamma 为已广播到 [N, G, M] 的缩放系数,meanmean 为每个 group 的均值(形状 [N, G]),rstdrstd 为每个 group 的标准差倒数(形状 [N, G]),dxdx 为输出输入梯度(形状与 xx 相同)。

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
x 输入 前向输入,公式中的 x。 FLOAT、FLOAT16、BFLOAT16 ND
dy 输入 上游梯度,公式中的 dy。 FLOAT、FLOAT16、BFLOAT16 ND
gamma 输入 已广播到 [N, G, M] 的缩放系数。 FLOAT、FLOAT16、BFLOAT16 ND
mean 输入 每个 group 的均值,形状为 [N, G]。 FLOAT、FLOAT16、BFLOAT16 ND
rstd 输入 每个 group 的标准差倒数,形状为 [N, G]。 FLOAT、FLOAT16、BFLOAT16 ND
dx 输出 输入梯度,公式中的 dx。 FLOAT、FLOAT16、BFLOAT16 ND

约束说明

  • 输入 x、dy、gamma 和输出 dx 的数据类型需保持一致。
  • 输入 x、dy、gamma 的 shape 需相同。
  • 输入维度至少为 3 维([N, G, M] 布局)。
  • mean 和 rstd 需为 [N, G] 形状。

贡献说明

贡献者 贡献方 贡献算子 贡献时间 贡献内容
Zhou Jianhua <@LePenseur> AISS Group, Harbin Institute of Technology (HIT) GroupNormalizationGrad 2026/05/12 GroupNormalizationGrad 算子架构迁移至标准 AscendC 框架