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

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

相关推荐
qq_3729069312 小时前
mysql用户无法访问存储过程权限提示_MySQL EXECUTE赋权方案
jvm·数据库·python
biubiubiu070612 小时前
python解释器安装
python
qq_3926906613 小时前
如何正确解析含 HTML 实体的 XML 字符串并渲染为 HTML 表格
jvm·数据库·python
乔江seven13 小时前
【李沐 | 动手学深度学习】 21 计算机视觉:微调
人工智能·深度学习·计算机视觉·微调
qq_4142565713 小时前
SQL如何处理时间序列缺失值_利用窗口函数进行前后值填充
jvm·数据库·python
2301_8038756114 小时前
CSS如何制作导航栏平滑移动_使用transition与left属性
jvm·数据库·python
2501_9333295519 小时前
媒介宣发技术实践:Infoseek舆情系统的AI中台架构与应用解析
开发语言·人工智能·架构·数据库开发
热爱生活的五柒19 小时前
026主流三大模型(GPT / Gemini / Claude Code)总结
人工智能·gpt
DuHz19 小时前
论文精读:大语言模型 (Large Language Models, LLM) —— 一项调查
论文阅读·人工智能·深度学习·算法·机器学习·计算机视觉·语言模型
AI木马人19 小时前
9.【AI任务队列实战】如何在高并发下保证系统不崩?(Redis + Celery完整方案)
数据库·人工智能·redis·神经网络·缓存