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))

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

相关推荐
答案是你1 分钟前
YOLOE 开放词汇检测 + ONNX / TensorRT 推理,开源了!
python·深度学习·yolo·目标检测·计算机视觉·视觉检测
2601_962885726 分钟前
AlphaFeed 支持哪些 K 线周期?period参数怎么传?
前端·数据库·python
老歌老听老掉牙10 分钟前
基于 Python 的顺次文本拼接:以 MCD 数控文件为例
python·数控·mcd
朝朝辞暮i11 分钟前
VLA 系统学习第 7 课:loss.backward() 到底做了什么?——从计算图到反向传播
人工智能·python·深度学习·神经网络·vla
serdes2113 分钟前
56G PAM4 SerDes RX MMCDR Mueller–Müller 误差检测与数据对齐设计
人工智能
倔强的石头10619 分钟前
DeepSeek系列_国产大模型的技术创新解析
人工智能·大模型
企业数字化笔记19 分钟前
AI工具的文件和参数怎么设计?上传校验、配置版本与可复现任务
前端·人工智能
seconp27 分钟前
AI 时代怎么做计算机毕业设计?
人工智能·毕业设计·软件工程·课程设计·毕设
外收内放29 分钟前
Python基础语法练习题(53-54)
python·学习