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

LN 在 LLMs 中的不同位置 有什么区别么

Layer Normalization(LN)是一种在深度学习中用于稳定和加速神经网络训练的归一化技术。它通过对单个样本的所有激活进行归一化来工作,与Batch Normalization(BN)不同,BN是对一个mini-batch中的所有样本的激活进行归一化。LN的计算是在单个样本的特征维度上进行的,这意味着它不依赖于batch size,因此它特别适用于那些难以使用BN的场景,比如在循环神经网络(RNN)和变换器(Transformer)模型中,以及在处理不同长度的序列时。

LN的工作原理是,对于网络中的每一层,它都会计算该层所有激活的均值和方差,然后使用这些统计量来归一化激活,使得每个激活的分布更加稳定。这样做有助于减少内部协变量偏移(Internal Covariate Shift),即网络中某一层的输入分布随着网络参数的变化而变化,这可能导致训练过程变得困难。通过归一化,LN有助于保持网络中每一层的激活分布相对稳定,从而加速训练过程并提高模型性能。

LN在Transformer模型中尤其重要,因为它允许模型在处理不同长度的序列时保持稳定,这是BN难以做到的。此外,LN在训练和测试时执行相同的计算,这与BN不同,BN在训练时使用mini-batch的统计量,而在测试时使用运行时的统计量。LN的这些特性使其在自然语言处理(NLP)任务中非常有效,特别是在处理长序列时。

在大型语言模型(LLMs)中,Layer Normalization(LN)可以放置在不同的位置上,这些不同的位置对模型的训练和性能有不同的影响。以下是LN在LLMs中的几种不同位置及其区别:

  1. Post LN(后层归一化)

    • 位置:Layer Norm位于残差连接之后。
    • 缺点:在深层的Transformer中,后层归一化可能导致梯度范数逐渐增大,从而使得深层模型训练不稳定。
  2. Pre LN(前层归一化)

    • 位置:Layer Norm位于残差连接之前。
    • 优点:相比于后层归一化,前层归一化在深层的梯度范数近似相等,使得深层Transformer的训练更稳定,有助于缓解训练不稳定的问题。
    • 缺点:相比于后层归一化,前层归一化的模型效果略差。
  3. Sandwich LN(三明治层归一化)

    • 位置:在前层归一化的基础上,额外插入了一个Layer Norm。
    • 优点:某些模型(如Cogview)使用这种结构来避免值爆炸的问题。
    • 缺点:可能会导致训练不稳定,甚至训练崩溃。

Layer Normalization的位置选择对模型的训练动态和最终性能有显著影响。不同的模型架构和应用场景可能需要不同的Layer Normalization策略来优化性能。例如,BLOOM模型在embedding层后添加Layer Normalization,这有利于提升训练稳定性,但可能会带来性能损失。选择哪种Layer Normalization的放置方式,通常取决于模型的设计和特定的应用需求。

LLMs 各模型分别用了 哪种 Layer normalization

BLOOMembedding层后添加layer normalization,有利于提升训练稳定性:但可能会带来很大的性能损失。 


http://www.kler.cn/a/370761.html

相关文章:

  • 头盔识别技术
  • HTML基础与实践
  • 数字小偷:2025年全面防护指南
  • 【PHP】双方接口通信校验服务
  • LLMs之RAG:《EdgeRAG: Online-Indexed RAG for Edge Devices》翻译与解读
  • 【Linux】Mysql部署步骤
  • go语言中的Scan()和Scanln()输入函数
  • NLTK无法下载?
  • 超好玩又简单-猜数字游戏(有手就行)
  • 关于sse、websocket与流式渲染
  • Spring SPI、Solon SPI 有点儿像(Maven 与 Gradle)
  • zookeeper全系列学习之分布式锁实现
  • Java 实现协同过滤算法推荐算法
  • 【Linux】基础IO-下
  • STM32-Cube定时器TIM
  • 前端性能优化——加载性能优化
  • 代码学习:如何阅读开源代码
  • 行为设计模式 -命令模式- JAVA
  • 青少年编程与数学 02-002 Sql Server 数据库应用 17课题、事务处理
  • go语言多态性(接口interface)的使用
  • 雷池社区版compose配置文件解析-mgt
  • Spring Boot技术栈在论坛网站开发中的应用
  • WPF样式
  • dependencyManagement保持maven的多模块依赖版本一致
  • 【PnP】详细公式推导,使用DLT直接线性变换法求解相机外参
  • SpringBoot高级-底层原理