批标准化(batch normalization)与层标准化(layer normalization)比较

批标准化(batch normalization,BN)与层标准化(layer normalization,LN)应该都是为了解决网络训练过程中的协变量漂移问题。

BN与LN的归一化方法都是先减均值,再除以标准差。只不过针对的对象不同。

BN:取不同样本的同一个通道的特征做归一化,逐特征维度归一化;

LN:取的是同一个样本的不同通道做归一化,逐个样本归一化。

BN在大batchsize的情况下效果好,缺点是:1)batchsize小的情况下效果不好;2)不适用于序列模型,如RNN,LSTM等,尤其当序列样本的长度不同时。

所以,当batchsize较小,RNN,LSTM情况下,使用LN好些。其他情况,应该是使用BN好一些。

 

参考:https://zhuanlan.zhihu.com/p/54530247

https://blog.csdn.net/sinat_34072381/article/details/106173365

https://blog.csdn.net/leviopku/article/details/83182194

https://blog.csdn.net/sinat_34072381/article/details/106173365?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242

 

你可能感兴趣的:(批标准化(batch normalization)与层标准化(layer normalization)比较)