最小二乘法详解:数学优化技术与曲线拟合应用指南

由于最近公司需要,所以赶紧转发这篇文章

最小二乘法详解:数学优化技术与曲线拟合应用指南

一、简介

首先我们看一下百度百科对最小二乘法的介绍: 最小二乘法(又称最小二乘法)是一种数学优化技术。它通过最小化误差平方和来找到数据的最佳功能匹配。利用最小二乘法可以方便地获得未知数据,并最小化获得的数据与实际数据之间的平方和误差。最小二乘法也可用于曲线拟合。其他一些优化问题也可以使用最小二乘法通过最小化能量或最大化熵来表达。

简而言之,最小二乘法类似于梯度下降。它是解决无约束优化问题的常用方法,也可用于曲线拟合来解决回归问题。最小二乘法的本质是最小化“均方误差”,均方误差为残差平方和的1/m(m为样本数)。同时,均方误差也是回归任务中最常用的性能衡量标准。

2. 对于一变量线性模型

如果用最简单的一变量线性模型来解释最小二乘法。在回归分析中,如果只包含一个自变量和一个因变量,并且两者之间的关系可以近似为一条直线,这种回归分析称为线性回归分析。如果回归分析中包含两个或多个自变量,且因变量与自变量之间存在线性关系,则称为多元线性回归分析。对于二维空间来说,线性就是一条直线;对于三维空间来说,线性是一个平面;对于多维空间,线性是一个超平面......

对于一变量线性回归模型,假设从总体中获得 m 组观测值 (X1, Y1), (X2, Y2), …, (Xm, Ym)。对于平面上的这m个点,可以用无数条曲线来拟合它们。要求样本回归函数尽可能地拟合这组值。综合来看,这条直线位于样本数据的中心是最合理的。选择最佳拟合曲线的标准可以确定为最小化总拟合误差(即总残差)。有三个标准可供选择:

(1)采用“残差最小和”来确定直线位置是一种方法。然而,在计算“残差之和”时可能会出现相互抵消的问题。

(2)利用“残差绝对值和最小”来确定直线位置也是一种方法。但绝对值的计算比较麻烦。

(3)最小二乘法的原理是通过“最小化残差平方和”来确定直线位置。使用最小二乘法除了计算起来更加方便之外,得到的估计量还具有优良的性能。该方法对异常值非常敏感。

最常用的方法是普通最小二乘法(OLS):所选回归模型应最小化所有观测值残差的平方和。

在谈论最小二乘的细节之前,我们首先澄清两点: 1.我们假设测量系统不存在系统误差,只有纯粹的偶然误差。例如,如果体重秤或身高计本身有问题,测量的数据就会太大或太小。这种错误是绝对不存在的。 (也就是说,这不能称为误差,才叫误差) 2、误差符合正态分布,所以最终误差的均值为0(这一点很重要)。

明确了以上两点后,关键点来了:为了计算β0和β1的值,我们采用以下规则:β0和β1应最小化计算出的函数曲线与函数曲线之差的平方和。观察值。用数学公式来描述就是:

其中,yie表示根据y=β0+β1x估计的值,yi为观测到的真实值。

为什么要最小化残差平方和?使用差值的绝对值不是可以吗?

下面是一个比较靠谱的解释:

我们假设直线是坐标 Xi 给出的预测 f(Xi) 的最可靠预测。所有坐标偏离 f(Xi) 的数据点都包含噪声。正是噪音使它们偏离了完美的直线。一个合理的假设是,距离路线越远,概率越小。小多少可以通过正态分布曲线来模拟。该分布曲线以直线对 Xi 给出的预测 f(Xi) 为中心,实际纵坐标为 Yi。点(Xi,Yi)出现的概率与EXP[-(ΔYi)^2]成正比。 (EXP(..) 表示以常数 e 为底的幂)。

所以我们在前两点提到,假设误差的分布是正态分布,就是这个原因。

另外说一下我自己的理解:从数学处理的角度来说,绝对值的数学处理比平方和的处理要复杂得多。做过机器学习的同学都知道,L1正则是绝对值的形式,而L2正则是平方和的形式。 L1可以生成稀疏特征,这对于大规模机器学习非常重要。但L1的求解过程实在是太痛苦了。所以即使L1可以产生稀疏特征,我们宁愿使用L2正则化作为最后的手段,因为L2正则化计算起来要方便得多。 。 。

明确了前面的代价函数后,后续的优化和求解过程就变得更加容易。

样本的回归模型很容易推导:

现在我们需要确定 β0 和 β1 来最小化成本函数。学过高等数学的同志都知道,求导数是可以的。对于这种形式的函数的求导,根据数学知识,我们知道函数的极值点就是偏导数为0的点。

稍微整理一下这两个方程并利用克莱姆定律,很容易求解:

这就是最小二乘法的解法,就是找到平方损失函数的极值点。需要注意的一点是,β0 是常数项对应的系数。这相当于加上一个特征值x0,x0始终为1。即目标函数中的β0可以看成β0x0。在这种情况下,不单独考虑常数项。 (这个性质将在后续的多元线性模型中用到)。

3. 对于多元线性模型

如果我们扩展到更一般的情况,如果有更多的模型变量x1,x2,⋯,xn,则可以表示为线性函数如下:

对于m个样本,可以用以下线性方程表示:

若将样本矩阵xij记为矩阵A,参数矩阵记为向量β,真实值记为向量Y,则上述线性方程组可表示为:

对于最小二乘法,最终的矩阵表达式可以表示为:

其中,m≥n,由于考虑了常数项,属性值的个数由n变为n+1。

该方程的解如下:

倒数第二行的中间两项是标量,因此它们相等。然后用这个公式推导向量β的导数:

(1)

根据矩阵求导规则:

可见式(1)的结果为:

令上式结果等于0,可得:

(2)

上式是最小二乘法的解析解,是全局最优解。

4.其他一些想法

1.最小二乘和梯度下降

乍一看,β 的最终结果看起来很熟悉。但仔细一看,这不就是NG的ML课程中教授的正规方程吗?事实上,NG提到的正规方程的解就是利用最小二乘法求解析解的解。

(1)线性回归问题中最小二乘法和梯度下降法的目标函数相同(或基本相同),都是通过最小化均方误差来构造拟合曲线。

(2)两者的区别见下图(正规方程为最小二乘法):

需要注意的一点是,最小二乘法仅适用于线性模型(这里一般指线性回归);梯度下降非常适用。一般来说,只要是凸函数,通过梯度下降法就可以得到全局最优值(对于非凸函数,可以得到局部最优解)。

只要保证目标函数具有一阶连续偏导数就可以使用梯度下降法。

2、最小二乘法的一些局限性及解决方法:

由第三部分的式(2)可知,要保证最小二乘法有解,必须保证ATA是可逆矩阵(非奇异矩阵);如果 ATA 不可逆怎么办?什么情况下ATA是不可逆的?

关于ATA不可逆转的情况:

(1)当样本数小于参数向量的维度(即β)时,此时ATA一定是不可逆的。例如:你有1000个特征,但是如果你的样本数小于1000,那么构建的ATA是不可逆的。

(2)如果一个特征与另一个特征之间存在线性相关性,或者所有特征中一个特征与几个特征之间存在线性相关性,此时ATA也是不可逆的。为什么?

具体地,假设A是m*n维矩阵。如果存在线性相关的特征,则 R(A)T)TA)TA 是不可逆的。

如果ATA是不可逆的,如何解决?

(1)过滤掉线性不相关的特征,不保留相同的特征,保证不存在线性相关的特征。

(2)增加样本量。

(3)采用正则化方法。对于正则化方法,常见的有L1正则项和L2正则项。 L1项有助于从众多特征中过滤掉重要特征,并使不重要特征为0(因此L1正则项是一种很好的特征选择方法);如果使用L2正则项,解析解实际上就变成了下面的形式:

λ 是常规参数(一种超参数)。其背后的矩阵是(n+1)*(n+1)维。如果不考虑常数项,则为单位矩阵;此时,括号内的矩阵一定是可逆的。 。

3.最小二乘法的改进

由于最小二乘法是最小化均方误差,因此考虑了每个样本的贡献,即每个样本的权重相同;因为它使用距离作为度量,所以对噪声更敏感(最小二乘法假设噪声服从高斯分布),这使得它对异常值更敏感。因此,提出加权最小二乘法,

相当于给每个样本设置一个权重,以反映样本的重要性或者对解决方案的影响程度。

你可能想看:
« 上一篇
下一篇 »

相关推荐

FreeBasic:强大免费开源的64位basic编译器及应用优势

2025年05月10日

82阅读

脊柱侧弯矫正方法大盘点:运动康复、支具矫正等多种方式

2025年05月09日

85阅读

如何在winForm标题栏去掉标题文字且任务栏图标正常显示

2025年05月09日

85阅读

十一黄金周促销广告词大全,国庆购物狂欢等你来

2025年05月09日

77阅读

关闭快速编辑模式及插入模式,设置控制台指定文字颜色举例

2025年05月09日

63阅读

黄金搭档低糖高钙饮品包装及成分功效全解析,适合人群要知晓

2025年05月09日

91阅读