LayerNorm的图是不是画错了

这是网上一张很流行的说明几个 Normalization 区别的图

这图出自Kaiming的文章 Group Norm

但是他这个 Layer Norm 的图是不是画错了? 我大四写毕设的时候就想问🤣🤣🤣 这都几年过去了

我觉得图应该是这样画的,相同颜色的区域做标准化

仨方块代表Batch_size = 3

每个方块内,前后向代表channel维度,左右代表宽,上下代表高

也就是同Batch, xy位置相同的特征像素,不同的channel里做标准化

接下来代码验证一下,只需要在 Channel 维度做一下标准化

python 复制代码
import torch
import torch.nn as nn

# torch.manual_seed(1107)
torch.manual_seed(1942)

# 假设x的形状是(B, W, H, C)
x = torch.rand(32, 256, 256, 128)  # 添加一个维度以匹配四维输入

m = nn.LayerNorm(128, elementwise_affine=False)
m.eval()  # 设置为评估模式

y = m(x)

# 手动计算LayerNorm
x_mean = x.mean(dim=-1, keepdim=True)
x_var = x.var(dim=-1, keepdim=True, unbiased=False)
eps = m.eps

y_manual = (x - x_mean) / ((x_var + eps).sqrt())

print("结果是否一致:", torch.allclose(y, y_manual, atol=1e-6))

(大佬们路过,教我一下🥲🥲🥲)

相关推荐
aloha_7891 分钟前
python基础面经八股
开发语言·python
短视频矩阵源码定制8 分钟前
矩阵系统源头厂家
大数据·人工智能·矩阵
老赵聊算法、大模型备案9 分钟前
《人工智能拟人化互动服务管理暂行办法(征求意见稿)》深度解读:AI“拟人”时代迎来首个专项监管框架
人工智能·算法·安全·aigc
西西弗Sisyphus17 分钟前
极限的常数倍数性质证明和可视化代码
python·微积分·极限
亚马逊云开发者19 分钟前
使用 Kiro AI IDE 开发 Amazon CDK 部署架构:从模糊需求到三层堆栈的协作实战
人工智能
心无旁骛~21 分钟前
ModelEngine Nexent 智能体从创建到部署全流程深度体验:自动化利器让 AI 开发效率拉满!
运维·人工智能·自动化
老徐电商数据笔记24 分钟前
数据仓库工程师在AI时代的走向探究
数据仓库·人工智能
小鸡吃米…29 分钟前
机器学习——生命周期
人工智能·python·机器学习
bugtraq202129 分钟前
PentestGPT的部署和使用本地大模型的调试记录
linux·服务器·python