最小二乘法怎么计算?
一、最小二乘法简介
最小二乘法是一种用于寻找数据最佳拟合线或曲线的方法。它的核心思想是,通过最小化 观测数据点与拟合线(或曲线)之间的垂直距离的平方和,来确定最佳拟合的参数。
想象一组散点数据,你想要找到一条直线或曲线,使得所有这些点到这条线(或曲线)的距离之和的平方尽可能小。最小二乘法就是为了找到这条线(或曲线),使得这个距离之和的平方最小。
这个方法在很多领域都有应用,比如统计学、机器学习和工程。通过数学计算,你可以找到最小二乘法的解析解,确定最佳拟合线的斜率和截距(如果是线性拟合的话),或者更复杂的参数(如果是多项式或非线性拟合)。
总的来说,最小二乘法是一种寻找最佳拟合模型的数学方法,通过最小化数据点与拟合模型之间的误差来找到最优解。
二、公式及分析
最小二乘法的基本公式是用于线性回归的。在简单线性回归中,我们试图拟合一个线性模型 y = mx + b 来最好地描述数据。
假设我们有 n 个数据点,表示为 (x_i, y_i),其中 i 是数据点的索引。我们的目标是找到最佳的斜率 m 和截距 b,使得拟合线与数据点的误差平方和最小。
拟合的线性模型的预测值为 {y}_i = mx_i + b。数据点 y_i 和预测值 {y}_i 之间的误差是 e_i = y_i - {y}_i。
最小二乘法的目标是最小化所有数据点的误差平方和:
为了找到最小化误差平方和的解析解,我们对误差平方和关于参数 m 和 b 分别求导数,并令导数等于零,然后解这个方程组。这样可以得到最佳的斜率 m 和截距 b 的估计值。
最终得到的解析解公式为:
这些公式通过对误差平方和进行求导,然后将导数等于零解方程得到。它们给出了最小二乘法用于简单线性回归的斜率和截距的估计值。
三、公式由来
当使用最小二乘法解决简单线性回归时,我们希望最小化误差平方和:
其中,S 是误差平方和,n 是数据点的数量,(x_i, y_i) 是每个数据点的坐标,m 是斜率,b 是截距。
要找到最小化 S 的 m 和 b,我们分别对 S 关于 m 和 b 求偏导数,并令偏导数等于零。
首先对 S 求关于 m 的偏导数:
接下来对 S 求关于 b 的偏导数:
然后,令这些偏导数等于零,然后解方程组来找到最优的 m 和 b 值。这些导数为零的方程将帮助我们找到最小化误差平方和的斜率和截距的估计值。
四、当用均值代替后的m和b的表达式
当用数据的均值来代替 $\sum_{i=1}^{n} x_i$、$\sum_{i=1}^{n} y_i$ 和 $\sum_{i=1}^{n} (x_i)^2$ 后,可以得到校准的 $m$ 和 $b$ 的表达式。
对于斜率 $m$ 的表达式,假设:
$aver_x$ 是 $x$ 的均值
$aver_y$ 是 $y$ 的均值
$aver_xy$ 是 $x \cdot y$ 的均值
$aver_xx$ 是 $x^2$ 的均值
斜率 $m$ 的表达式为:
对于截距 $b$ 的表达式:
这些表达式是用数据集的均值来估计直线拟合的斜率和截距的方法。在简单线性回归中,这些表达式提供了一个直观且简单的方式来计算拟合直线的参数。
五、为什么可以用均值替代
在最小二乘法的推导中,我们通过对误差平方和 $S = \sum_{i=1}^{n} (y_i - mx_i - b)^2$ 对 $m$ 和 $b$ 求偏导数并令其为零,来找到最佳的斜率 $m$ 和截距 $b$。
当我们使用均值来替代 $\sum_{i=1}^{n} x_i$、$\sum_{i=1}^{n} y_i$ 和 $\sum_{i=1}^{n} (x_i)^2$ 时,是因为最小二乘法的求解中,这些均值代表了数据的中心趋势和分布。
通过使用样本均值代替总和,我们在推导中实际上是在寻找一个拟合直线,使得该直线穿过了数据的中心(均值点)。在线性回归中,拟合直线的斜率和截距的计算中,样本均值提供了对数据集的一个代表性估计,因此可以用均值来近似表示总和。
这种代替方法是基于对数据的近似,通常在数据量较大时尤为有效。然而,在某些情况下,数据的均值可能无法很好地代表总和的准确值,特别是当数据分布不均匀或存在异常值时,使用均值来代替总和可能会导致估计的不准确性。
计算方法:
y = Ax + B:a = sigma[(yi-y均值)*(xi-x均值)] / sigma[(xi-x均值)的平方];b = y均值 - a*x均值。
知识拓展
最小二乘法求回归直线方程的推导过程
这里的是为了区分Y的实际值y(这里的实际值就是统计数据的真实值,我们称之为观察值),当x取值(i=1,2,3……n)时,Y的观察值为,近似值为(或者说对应的纵坐标是)。
其中式叫做Y对x的回归直线方程,b叫做回归系数。要想确定回归直线方程,我们只需确定a与回归系数b即可。
设x,Y的一组观察值为:
i = 1,2,3……n
其回归直线方程为:
当x取值(i=1,2,3……n)时,Y的观察值为,差刻画了实际观察值与回归直线上相应点纵坐标之间的偏离程度,见下图:
实际上我们希望这n个离差构成的总离差越小越好,只有如此才能使直线最贴近已知点。换句话说,我们求回归直线方程的过程其实就是求离差最小值的过程。
一个很自然的想法是把各个离差加起来作为总离差。可是,由于离差有正有负,直接相加会互相抵消,如此就无法反映这些数据的贴近程度,即这个总离差不能用n个离差之和来表示,见下图:
一般做法是我们用离差的平方和,即:
作为总离差 ,并使之达到最小。这样回归直线就是所有直线中Q取最小值的那一条。由于平方又叫二乘方,所以这种使“离差平方和为最小”的方法,叫做最小二乘法。
用最小二乘法求回归直线方程中的a、b的公式如下:
其中,、为和的均值,a、b的上方加“︿”表示是由观察值按最小二乘法求得的估计值,a、b求出后,回归直线方程也就建立起来了。
当然,我们肯定不能满足于直接得到公式,我们只有理解这个公式怎么来的才能记住它,用好它,因此给出上面两个公式的推导过程更加重要。在给出上述公式的推导过程之前,我们先给出推导过程中用到的两个关键变形公式的推导过程。首先是第一个公式:
接着是第二个公式:
基本变形公式准备完毕,我们可以开始最小二乘法求回归直线方程公式的推导了:
至此,公式变形部分结束,从最终式子我们可以看到后两项
与a、b无关,属于常数项,我们只需
即可得到最小的Q值,因此: