笔记-归一化的必要性

归一化的理解:简单理解为缩放(可以当成归1化),将模型参数(theta) 的取值区间调整到[0-1]。

目的或者意义:正常情况下,模型参数(theta)的取值范围是负无穷到正无穷之间。梯度下降法中,梯度(grandients)是一个向量,每一项g(j)都需要求导找到第J列的梯度值。根据损失函数求导的到导函数 (y^-y)*Xj。根据导函数可知 梯度的值收到Xj的影响,即Xj越大梯度值就越大。在求梯度的时候,导致每一次下降的步伐越大(theta1 = theta0 - learning_rate * g) 。但是,实际上根据公式 y = w0 + w1*x1 + w2*x2 ......+wn*xn,可理解到,当y的值不变,x值越大与其对应的theta值越小。实际上于公式推导出的结果相矛盾。在不做归一化的情况下,会出现一种情况即在 x2>>x1的时候,theta2>>theta1,下降的幅度learning_rate * g2 >> learning_rate * g1。同事theta2 实际的值要远远小于 theta1的值,这个时候当theta2已经找到最优解g2的时候,g1还远远没有找到(原因是theta2实际的值很大,但是梯度下降幅度很小)。当g1还在梯度下降找最优解的时候,g2可能在最优解左右两边来回震荡。这些计算量是没有意义的浪费。

结论:在做了归一化后,使得所有的模型参数求梯度的过程中同时开始,同时结束。 不浪费

你可能感兴趣的:(笔记-归一化的必要性)