何为归一化
一般意义上的归一化指的就是将不同scale的特征,基于它们各自的均值和标准差进行值压缩。处理后的值具有0均值和单位方差。
为何需要归一化
归一化通常用于解决不同特征的scale差异过大导致参数训练困难的问题。通常情况下,如果我们不对不同scale的特征进行处理而直接使用梯度下降的方法去进行优化,会导致不同scale的特征权值更新优化的方向不均衡的情况发生。举个简单的例子,假设我们只有两个特征f1和f2。其中f1的scale很小,范围在10-20之间,而f2的scale相对较大,范围在100-200之间。w1 和 w2分别对应它们的权重。那么由于特征f2的scale较大的缘故,w2一点微小的变化就会对最终结果产生巨大的影响,也会使损失函数的结果产生巨大的变化。体现在下图中就是w2 维度上的等loss曲线分布密集,而w1维度上的等loss曲线分布稀疏。
显然,这样的loss曲线分布会导致从图中任意的一个起始点到最终的loss最小值点的优化过程非常缓慢,因为我们需要配合f2这个大scale的数值而选择比较小的学习率,不然非常容易产生优化过冲而一直到不了loss最小值点。
然而