用于最小化成本 J 的正则方程算法

梯度下降提供了一种最小化 J 的方法。第二种方法,这次明确地执行最小化,而不诉诸迭代算法。在“正则方程”方法中,我们将通过明确取其对 θj 的导数并将其设置为零来最小化 J。这使我们能够在不进行迭代的情况下找到最佳 theta。正态方程公式如下:\theta = (X^T X)^{-1}X^T yθ=(XTX)−1XTy使用正态方程不需要进行特征缩放。以下是梯度下降和正态方程的比较:梯度下降正态方程需要选择alpha不需要选择alpha需要多次迭代不需要迭代O (kn^2kn2)O (n^3n3),需要计算X^TX的逆XTX在n很大时效果很好如果n非常大则速度很慢使用正态方程,计算逆的复杂度为\mathcal{O}(n^3)O(n3)。因此,如果我们拥有非常多的特征,正态方程就会很慢。在实践中,当n超过10,000时,可能是从正常解决方案转向迭代过程的好时机。我发现这种正态方程方法的推导非常直观。

来源:Ankit-AI | 分享人工智能

梯度下降提供了一种最小化 J 的方法。第二种方法,这次显式地执行最小化,而不诉诸迭代算法。在“正则方程”方法中,我们将通过显式地取其对 θj 的导数并将其设置为零来最小化 J。这使我们能够在不进行迭代的情况下找到最佳 theta。正则方程公式如下:

梯度下降提供了一种最小化 J 的方法。第二种方法,这次显式地执行最小化,而不诉诸迭代算法。在“正则方程”方法中,我们将通过显式地取其对 θj 的导数并将其设置为零来最小化 J。这使我们能够在不进行迭代的情况下找到最佳 theta。正态方程公式如下: \theta = (X^T X)^{-1}X^T yθ=(XTX)−1XTy \theta = (X^T X)^{-1}X^T y \theta = (X^T X)^{-1}X^T y \theta = (X^T X)^{-1}X^T y \theta = (X^T X)^{-1}X^T y θ=(XTX)−1XTy θ=(XTX)−1XTy θ = ( XT X T T T T T T T X )−1 ) -1 -1 -1 −1 −1 −1 −1 1 XT X T T T T T T T y

无需使用法线方程进行特征缩放。

无需使用法线方程进行特征缩放。 不需要

以下是梯度下降和法线方程的比较:

以下是梯度下降和法线方程的比较: 梯度下降法线方程需要选择alpha不需要选择alpha需要多次迭代不需要迭代O (kn^2kn2)O (n^3n3),需要计算X^TXXTX的逆当n很大时效果很好如果n很大则速度很慢
梯度下降法线方程需要选择alpha不需要选择alpha需要多次迭代不需要迭代O (kn^2kn2)O (n^3n3),需要计算X^TXXTX的逆当n很大时效果很好如果n很大则速度很慢 梯度下降法线方程 梯度下降 梯度下降 法线方程 法线方程 需要选择 alpha 不需要选择 alpha 需要选择 alpha 需要选择 alpha 不需要选择 alpha 不需要选择 alpha kn^2kn2 k n