正规方程法(Normal Equation)原理以及与梯度下降法的区别

  正规方程法是和梯度下降法类似的另一种可以用来解决多元线性回归问题的解法。不同于梯度下降法需要一次次的迭代更新,正规方程法只需要通过解方程的方法,就可以得到最优化结果。这篇文章就简单介绍一下它的原理以及与梯度下降法的不同之处。

  首先我们来看这样一幅图来引出一个问题环境。下图中J(θ1)损失函数Cost Function。假设它只有一个参数θ1,我们通过下图中公式(梯度下降法)中的方法,就可以找到一个局部或者是全局最优解。

  但我们并不是要讲梯度下降法,上图中额外值得注意的是,在这个点上J(θ1)对θ1的导数为0。那现在我们来到高维(如下图),有多个参数θ0和θ1,我们的最优解在图中箭头所指的位置。同样地,在这个点上,J(θ0,θ1)对所有参数的导数都为0

  首先补充一点前提知识:

  假如我们目前只有两个参数θ0和θ1需要优化,此时初始化拟合线为:

  损失函数为:

  现在我们将参数扩大到θn。因为我们知道:既然最优解所在的点对所有参数的导数都为0,那我们就可以先将这些约束写出来:

   这不就是一个方程组吗?有n+1个未知变量(从θ0到θn),以及n+1个等式。我们只需要解方程,就可以得到最优θ作为我们的结果了。最终我们通过解方程,就可以整理出来θ的最终形式:

  这样,正规方程法的思想就讲完了。

  等一下!不知你看完了最终结论的形式后,有没有感觉我们绕了一个大圈?实际上,按照上面的方式,我们的θ并不好解(虽然我已经把解写出来了)。而我们通过另一种等价且更加直接的方式,同样可以得到正规方程法的结果。

  具体θ该怎么算呢,下面用一个具体的房价预测例子,来更加清晰地描述X和y以及θ的关系形式,并且引出另一种求正规方程法结论的方式。在下面这个例子中,我们希望用现有的数据集,拟合出一个含5个参数θ0到θ4的回归曲线。直接看图就明白了:

  这种思路的本质就是:我们要求一个最优的θ,可以直接先假设Xθ=y,从而逆推出θ来。这是一个不严谨但简洁的思路。

   在第①步中,我们已知要想得到theta,只需要左右两边都乘以X的逆矩阵即可,但大多数情况下X不一定是方阵,不一定有逆矩阵,于是我们先都同时乘以X的转置矩阵,让其成为方阵。接着在第②步中,我们就可以通过乘以其逆矩阵将做出来的方阵移到右边,得到θ的最终解了。

Gradient Descent梯度下降法与 Normal Equation Method正规方程法的区别

  1.前者需要设置学习率α;后者不需要;

  2.前者需要多次迭代;后者不用,直接求解。

  3.当X的维度n很大时,梯度下降法更加合适;因为正规方程法涉及到的矩阵运算会很慢。

  4.梯度下降容易陷入局部最优解;正规方程法更容易求出最优解。

猜你喜欢

转载自blog.csdn.net/weixin_44492824/article/details/125876851