当前位置: 首页 > news >正文

batch normalization和layer normalization区别

Normalization无非就是这样一个操作:
在这里插入图片描述
其中x是输入数据,维度为(B,T,C),其中B是batchsize,T是序列长度,C是embedding维度;括号内是标准化操作,γ和β是仿射变换参数。

BN和LN的不同,仅仅在于均值和方差的计算方式而已,下面给出计算公式:

1.Batch Normalization

在这里插入图片描述

2.Layer Normalization

在这里插入图片描述
在这里插入图片描述

可以发现,BN是对前2个维度进行统计计算,LN是对最后一个维度进行统计计算。公式很简单,怎么理解呢?

先看LN。可以理解为:对于每个样本(batch)中的每个token,都分别统计其自身所包含的所有特征维度,作为归一化的依据。在大语言模型中,输入序列的长度通常是不固定的,因此对每个 token 单独进行归一化,是一种更合理、灵活的方式。

再来看 BN,它更常用于固定长度的序列或图像任务中。以等长序列为例,BN 的归一化是对所有 batch 中相同位置(如第一个 token、第二个 token 等)上的特征维度进行统计。因此,它统计的是同一维度在不同样本、不同 token 上的分布。由于序列长度一致,数据结构规整,就不需要像 LN 那样对每个 token 单独归一化。

参考链接

https://arxiv.org/abs/2503.10622

http://www.dtcms.com/a/169791.html

相关文章:

  • 驱动总裁v2.19(含离线版)驱动工具软件下载及安装教程
  • Windows系统下Node.js环境部署指南:使用nvm管理多版本
  • Vmware设置静态IP和主机访问
  • 【连载10】基础智能体的进展与挑战综述-自我进化
  • 《Spring Boot实战指南:从零开始构建现代Java应用》
  • 泰迪杯特等奖案例学习资料:基于时空图卷积网络的城市排水系统水位精准重建与异常检测
  • Oracle无法正常OPEN(四)
  • 【文献阅读】中国湿地随着保护和修复的反弹
  • Mysql常用语句汇总
  • C++虚函数完全指南:从内存布局到动态多态的实现奥秘
  • AVIOContext 再学习
  • Linux之基础开发工具(yum,vim,gcc,g++)
  • C与指针5——字符串合集
  • 第二章:一致性基础 A Primer on Memory Consistency and Cache Coherence - 2nd Edition
  • 共铸价值:RWA 联合曲线价值模型,撬动现实资产生态
  • 【算法应用】基于灰狼算法优化深度信念网络回归预测(GWO-DBN)
  • 快速掌握--cursor
  • C# 编程核心:控制流与方法调用详解
  • word论文排版常见问题汇总
  • 【时间之外】官网视频风波
  • 鼠标交互初体验:点击屏幕生成彩色气泡(EGE 库基础)
  • LeetCode —— 102. 二叉树的层序遍历
  • 【项目实践】boost 搜索引擎
  • CSS布局
  • React18组件通信与插槽
  • 图论之幻想迷宫
  • dstack 是 Kubernetes 和 Slurm 的开源替代方案,旨在简化 ML 团队跨顶级云、本地集群和加速器的 GPU 分配和 AI 工作负载编排
  • Linux常用命令29——delgroup删除组
  • AI Agent开发第48课-DIFY中利用AI动态判断下一步流程-DIFY调用API、REDIS、LLM
  • 卷积神经网络进化史:从LeNet-5到现代架构的完整发展脉络