思想与BatchNorm一致,都是通过将某一部分变为均值为0,方差为1来正则化,并且可以通过学习参数 γ 将其变为方差/均值为任意值的参数。
不同点:
- BatchNorm是对feature即col进行归一化,而LayerNorm是对每一个batch即row进行归一化。
- batchnorm是对全局做一个均值方差,这样碰到sequence长度不一致的时候,会导致之前拟合的参数不好用了。
- layernorm则是以batch为单位计算均值方差,相对来说更加稳定。
思想与BatchNorm一致,都是通过将某一部分变为均值为0,方差为1来正则化,并且可以通过学习参数 γ 将其变为方差/均值为任意值的参数。
不同点: