为什么要进行特征缩放
比如说我们这里有一个函数:
y=b+w1x1+w2x2y=b+w_1x_1+w_2x_2y=b+w1x1+w2x2
接下来我们分两种情况来对比一下,从而说明我们为什么要进行特征缩放:

左上角的框图和右上角的框图都能表示我们在最开始提出的函数,不同的是左上角的框图中x1x_1x1的取值是1,2····;x2x_2x2的取值是100,200······;右上角的框图中x1x_1x1的取值是1,2······;x2x_2x2的取值是1,2······。将左上角所示的式子的等高图画出来如左下角所示,因为在左上角的情况下随着w1w_1w1的改变,yyy的变化比较小,而随着w2w_2w2的变化yyy的变化会比较大,因此形成了左下角所示的椭圆形状。将右上角所示的式子的等高图画出来如右下角所示,因为在右上角的情况下随着w1w_1w1和w2w_2w2的改变,yyy的变化基本相同,因此形成了右下角所示的圆形。
我们知道梯度下降的方向是沿着等高线的法线方向的如图中红色箭头所示,可以看到右下角的红色箭头几乎是沿一条直线朝着最低点运动过去的,而左下角的红色箭头是改变了多次方向才朝着最低点运动过去的。
所以当特征值有相似的范围的话梯度下降会比较快。
怎么进行特征缩放

也就是说要对红色框里面的xirx_i^rxir进行特征缩放的话,就要先求出绿框里面元素的平均值mim_imi,再求出绿框里面元素的标准差σi\sigma_iσi,最后代入xir−miσi\frac{x_i^r-m_i}{\sigma_i}σixir−mi就可以求出缩放后的特征值了。
本文探讨了特征缩放在机器学习中的重要性,通过对比不同特征尺度下的梯度下降过程,解释了特征缩放如何加速学习算法的收敛速度。文章还详细介绍了特征缩放的具体实施步骤。
1万+

被折叠的 条评论
为什么被折叠?



