第一步:subtract out or zero out the mean 零均值化
第二步:normalize the variance 归一化方差
即等同于以下:
为什么要归一化呢
之所以要对输入进行标准化操作,主要是为了让所有输入归一化同样的尺度上,方便进行梯度下降算法时能够更快更准确地找到全局最优解。
假如输入特征是二维的,且x1的范围是[1,1000],x2的范围是[0,1]。
如果不进行归一化,x1与x2之间分布极不平衡,训练得到的w1和w2也会在数量级上差别很大。cost function与w和b的关系可能是一个非常细长的椭圆形碗。那么需要设置较小的学习率,避免J发生震荡,得到最优解。图形如上图左侧两张
如果进行了标准化操作,x1与x2分布均匀,w1和w2数值差别不大,得到的cost function与w和b的关系是类似圆形碗。对其进行梯度下降算法时,αα可以选择相对大一些,且J一般不会发生振荡,保证了J是单调下降的。图形如上图右侧两张。