在线性回归空间中使用梯度下降有什么好处?看起来我们可以用分析方法解决问题(找到最小的成本函数的theta0-n),那么为什么我们仍然要使用梯度下降来做同样的事情?谢谢
Answers:
当使用法线方程来解析成本函数时,您必须计算:
其中X是输入观测值的矩阵,y是输出向量的矩阵。该操作的问题是计算为O(n ^ 3)的nxn矩阵的逆的时间复杂度,并且随着n的增加,它可能需要很长时间才能完成。
当n低时(n <1000或n <10000),您可以将正则方程视为计算theta的更好选择,但是对于更大的值,Gradient Descent更快得多,所以唯一的原因是时间:)
您应该提供有关您的问题的更多详细信息-您到底在问什么-我们是在谈论一个或多个维度的线性回归吗?简单的还是广义的?
一般来说,为什么人们使用GD?
那么分析解决方案呢?好吧,我们确实使用过它们,您的主张在这里只是错误的(如果我们通常在谈论),例如OLS方法是一种封闭形式的解析解决方案,被广泛使用。如果您可以使用分析解决方案,那么它在计算上是可以负担的(因为有时GD更便宜或更快速),那么您可以甚至应该使用它。
不管怎样,这始终是一些利与弊的问题-分析解决方案与模型紧密相关,因此,如果您打算将来对模型进行泛化/更改,则实施解决方案可能会效率低下。它们有时效率不如其数值近似值,有时很难实现。如果以上都不是-您应该使用分析解决方案,而人们确实会这样做。
综上所述,如果满足以下条件,则宁可使用GD over分析解决方案:
我从/stats/23128/solving-for-regression-parameters-in-closed-form-vs-gradient-descent看到了一个很好的答案
基本上,原因是:
1.对于大多数非线性回归问题,没有封闭形式的解决方案。
2.即使是线性回归(使用封闭式解的少数情况之一),使用公式也可能不切实际。以下示例显示了发生这种情况的一种方式。
另一个原因是,当您对线性回归进行一般化时,梯度下降立即有用,尤其是当问题没有封闭形式的解决方案时,例如在Lasso中(它添加了基于权重向量的绝对值之和的正则项)。