动机:
没有BN之前,神经网络每一层的输出,一般都很容易进入激活函数的饱和区(尤其是Tanh函数),这样,在反向传播的时候,每一次
梯度更新的速度就会很小,要达到同样模型训练效果,需要更多的训练轮次,训练速度会很慢,甚至造成梯度消失的问题。
批标准化的好处:
- 减少了训练时间,而且可以进行深层网络的训练,同时可以使用更大的学习率
- 会减少梯度爆炸和梯度消失的问题,特别是对sigmoid, tanh这种激活函数
- BN使得学习过程更少收到初始化的影响
- 有对抗过拟合的作用,可以减少正则化的需求
为什么BN这么强
看完上面视频,提问:
- BN一般加在神经网络的哪里?
- 没有用Normallization处理的数据用Tanh激活后的分布是怎么样的?它的危害是什么?
- 用Normallization处理的数据用Tanh激活后的分布是怎么样的?它的好处是什么?
拓展: