在进行机器学习算法建模的时候,我们通常需要对输入数据进行归一化处理,那么为啥要处理呢,有些不处理可以吗?为啥归一化能加快梯度下降法求解优化的速度呢?这在面试中可能经常会被问到。
简单的答案是:归一化后的数据有助于在求解是缓解求解过程中的参数寻优的动荡,以加快收敛。对于不归一化的收敛,可以发现其参数更新、收敛如左图,归一化后的收敛如右图。可以看到在左边是呈现出之字形的寻优路线,在右边则是呈现较快的梯度下降。
因此如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛。但是同学们思考一下,是不是对于所有的机器学习模型,都需要进行归一化呢?常见的归一化方法有哪些呢?归一化和标准化有啥区别呢?也请各位稍微回顾一下这些基本的问题。
参考:
https://www.cnblogs.com/bonelee/p/7124695.html
https://www.cnblogs.com/sddai/p/6250094.html
https://blog.csdn.net/u010315668/article/details/80374711