学习笔记之Batch Normalization

学习笔记之Batch Normalization

本文参考:台大李宏毅老师

梯度消失或者梯度爆炸是什么?

链接1
链接2

特征缩放

  • 输入值大小不一样会导致出现梯度消失或者爆炸的现象
  • 比如x1的是1,2,…,x2的是100,200,…如果x1和x2一样重要(w1,w2一样),那么显然x2对a的结果影响大
  • 这样会导致training变的不容易,橫方向上要给较大的learning rate ,纵方向上给较小的learning rate。不容易设置训练参数
    学习笔记之Batch Normalization

怎么变换?

学习笔记之Batch Normalization

输入数据的每一个维度计算均值方差然后对x的每一个维度进行变换。

Hidden Layer怎么做?

学习笔记之Batch Normalization

要解决内部协变量移位的问题。这里举了一个例子来理解Internal Covariate Shift问题,图中的第二个小人,左边的人让他的传话筒往下走,右边的人让他的传话筒往上走,这其实都是在基于另一边不变的情况下说的,两边都变就是(内部协变量移位)问题。

  • 设置较小的学习率是可以解决,但是导致训练速度慢

对反向传播的影响

学习笔记之Batch Normalization

更新时要考虑μ和sigma,因为μ是来自于z的。

Batch Normalization的好处

学习笔记之Batch Normalization