文章目录
- [layer norm的解释](#layer norm的解释)
- batchnorm和layernorm主要的区别
- [为什么要在序列转录模型中使用layer norm?](#为什么要在序列转录模型中使用layer norm?)
layer norm的解释
二维
红色为batchnorm,蓝色为layer norm
batchnorm对每一个特征算均值和方差
layer norm对每一个批次算均值和方差
三维
红色为batchnorm,蓝色为layer norm
batchnorm对每个句子的第K个词做归一化
layer norm对每个句子的每个词做归一化
batchnorm和layernorm主要的区别
在算均值和方差的上面
batchnorm
理论算矩阵中阴影面积中的方差和均值,实际算整个矩阵中的方差和均值阴影部分的长度为小批量中的句子长度,用0补全
-
均值和方差波动比较大
-
预测时,如果预测样本的长度超过训练样本的最大长度,使用训练的均值和方差效果可能不是那么好
layernorm
矩阵中阴影部分的面积算方差和均值
每个样本(每个句子里面自己所有的词)自己算均值和方差,不需要存一个全局的均值和方差,因为是对每个样本做的norm。
为什么要在序列转录模型中使用layer norm?
在时序的样本中,每个样本的长度可能发生变化
源自李沐论文讲解