我正在使用多个功能进行线性回归。我决定用正规方程法找出线性模型的系数。如果我们使用梯度下降进行具有多个变量的线性回归,我们通常会进行特征缩放以加快梯度下降收敛。现在,我将使用正规方程公式:
我有两个相互矛盾的信息来源。在1-st中,声明正常方程不需要特征缩放。在另一个我可以看到必须完成功能标准化。 来源:
http://puriney.github.io/numb/2013/07/06/normal-equations-gradient-descent-and-linear-regression/
在这两篇文章的最后,有关正态方程中特征缩放的信息。
问题是我们是否需要在正态方程分析之前进行特征缩放?
答案 0 :(得分:2)
您可能确实不需要扩展您的功能,从理论的角度来看,您只需一步即可获得解决方案。然而,在实践中,事情可能会有所不同。
注意公式中的矩阵求逆。反转矩阵不是非常简单的计算操作。事实上,衡量矩阵(并执行其他一些计算)的难度是多少,称为condition number:
如果条件数不是太大(但它仍然可以是1的倍数),则矩阵被很好地调节,这意味着它的逆可以很好地计算。如果条件数非常大,则说矩阵是病态的。实际上,这样的矩阵几乎是单数的,并且其逆的计算或线性方程组的解决方案容易产生大的数值误差。不可逆的矩阵的条件数等于无穷大。
P.S。大条件数实际上是减缓梯度下降收敛的相同问题。
答案 1 :(得分:1)
使用常规方程时,您不需要执行特征缩放。它仅适用于梯度下降法以优化性能。斯坦福大学的文章提供了正确的信息。
当然,您也可以在这种情况下扩展功能,但它不会给您带来任何好处(并且会花费您额外的计算成本)。