机器学习之最小二乘法

最小二乘法概述

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。

简而言之,最小二乘法同梯度下降类似,都是一种求解无约束最优化问题的常用方法,并且也可以用于曲线拟合,来解决回归问题。

要解决的问题

在工程应用中,我们经常会用一组观测数据去估计模型的参数,比如我们有一组观测数据(x1,y1)(一维),通过一些数据分析我们猜测y和x之间存在线性关系,那么我们的模型就可以定为:f(x)=kx+b

这个模型只有两个参数,所以理论上,我们只需要观测两组数据建立两个方程,即可解出两个未知数。类似的,假如模型有n个参数,我们只需要观测n组数据就可求出参数,换句话说,在这种情况下,模型的参数是唯一确定解。

但是在实际应用中,由于我们的观测会存在误差(偶然误差、系统误差等),所以我们总会做多余观测。比如在上述例子中,尽管只有两个参数,但是我们可能会观测n组数据(x1,y1)..,(xn,yn),这会导致我们无法找到一条直线经过所有的点,也就是说,方程无确定解。

image

这就是我们要解决的问题:虽然没有确定解,但是我们能不能求出近似解,使得模型能在各个观测点上达到"最佳"拟合。那么"最佳"的准则是什么?可以是所有观测点到直线的距离和最小,也可以是所有观测点到直线的误差(真实值-理论值)绝对值和最小,也可以是其它,如果是你面临这个问题你会怎么做?

早在19世纪,勒让德就认为让"误差的平方和最小"估计出来的模型是最接近真实情形的。

为什么是误差平方而不是其它的,这个问题连欧拉、拉普拉斯都未能成功回答,后来是高斯建立了一套误差分析理论,从而证明了确实是使误差平方和最小的情况下系统是最优的。

按照勒让德的最佳原则,于是就是求:

image

这个目标函数取得最小值时的函数参数,这就是最小二乘法的思想,所谓"二乘"就是平方的意思。从这里我们可以看到,最小二乘法其实就是用来做函数拟合的一种思想。

至于怎么求出具体的参数那就是另外一个问题了,理论上可以用导数法、几何法,工程上可以用梯度下降法。

参考

一文让你彻底搞懂最小二乘法(超详细推导)
机器学习回顾篇(2):最小二乘法
机器学习十大经典算法之最小二乘法

posted @ 2024-02-08 09:16  strongmore  阅读(215)  评论(0编辑  收藏  举报