最小二乘法原理及应用

最小二乘法原理及应用最小二乘法是一种在误差估计 不确定度 系统辨识及预测 预报等数据处理诸多学科领域得到广泛应用的数学工具

一、最小二乘法介绍

        最小二乘法是一种在误差估计、不确定度、系统辨识及预测、预报等数据处理诸多学科领域得到广泛应用的数学工具。

        这样说,可能比较抽象,难于理解,我们下面来详细解释一下。假设两个物理量x,y满足某个函数关系,即y=f(x),但是我们并不知道这个函数的具体公式。我们已知的是一些数据,也就是f(x)在若干点x_{i}处的取值为y_{i}(i=1,2,……N)。我们根据这些数据来推算出f(x)的近似表达式的过程,我们称为拟合。

        具体怎么拟合呢,就涉及到最小二乘法了。当然最小二乘法只是其中一种拟合方法,也可以采用其他方法来拟合。我们首先假设一个函数\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right ),其中a_{0}~a_{n}为函数中的参数,f(x)可以近似表示成\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right )。一般\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right )是一个n次多项式,因为根据泰勒公式,任何函数都可以近似展开为一个n次多项式。对于上边提到的N个已知数据,我们设定一个指标

R=\sum_{i=1}^{N}\left ( y_{i}-\psi \left ( x_{i} \right ) \right )^{2}

这个指标就相当于是用\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right )来替代f(x)对于数据样本的误差的平方和,当这个指标取最小值时,认为\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right )为最优的函数,并以此计算出a_{0}~a_{n},从而得到\psi \left ( x,a_{0},a_{1},\cdots ,a_{n} \right )的表达式,这种方法就是最小二乘法。

二、最小二乘法拟合常量

        在有些情况下,有些物理量是常量,不存在函数关系,比如某个时刻的气温。这种情况,可以表示为y=a,对于这个物理量我们也可以获得N个测量值y_{i},我们可以采用最小二乘法的方法来拟合出这个常量的真实值。

       根据最小二乘法的规则,需要使下面的指标最小

R=\sum_{i=1}^{N}(y_{i}-a)^{2}

那这个问题就变成了我们要找一个a的值,使这个指标最小。我们将这个指标对a求导,可得

\frac{dR}{da}=-2\sum_{i=1}^{N}(y_{i}-a)=0

R取最下值的条件需要满足这个导数为0。由上面的等式可以计算得到

a=\frac{\sum_{i=1}^{N}y_{i}}{N}

有上式可知,a的最优取值就是N个测量值的平均值。

三、最小二乘法拟合线性函数

        在有些情况,变量x,y,满足线性关系,即y=ax+b。我们通过测量可以得到N组测量值\left ( x_{i},y_{i} \right ),根据最小二乘法的思想,则总的误差平方和指标为

R=\sum_{i=1}^{N}(ax_{i}+b-y_{i})^{2}

不同的a、b的取值会导致不同的指标值,我们需要找到一组a、b的取值使上述指标最小。根据多元微积分的知识,分别对a、b求偏导,并且偏导为0。

\left\{\begin{matrix} \frac{\partial R}{\partial a}=2\sum_{i=1}^{N}(ax_{i}+b-y_{i})x_{i}=0\\ \frac{\partial R}{\partial b}=2\sum_{i=1}^{N}(ax_{i}+b-y_{i})=0 \end{matrix}\right.

整理上式,可得

\left\{\begin{matrix} \left ( \sum_{i=1}^{N}{x_{i}}^{2} \right )a+\left ( \sum_{i=1}^{N}{x_{i}} \right )b=\sum_{i=1}^{N}{x_{i}}{y_{i}}\\ \left ( \sum_{i=1}^{N}{x_{i}} \right )a+Nb=\sum_{i=1}^{N}{y_{i}} \end{matrix}\right.

联立解方程组可得

\left\{\begin{matrix} a=\frac{N\sum_{i=1}^{N}{x_{i}}{y_{i}}-\sum_{i=1}^{N}{x_{i}}\sum_{i=1}^{N}{y_{i}}}{N\sum_{i=1}^{N}{x_{i}}^{2}-\left ( \sum_{i=1}^{N}{x_{i}} \right )^{2}}\\ b=\bar{y}-a\bar{x} \end{matrix}\right.

其中,\bar{y}\bar{x}为N组测量值的y和x的平均值。由此可得到线性函数的表达式。

四、最小二乘法拟合多项式函数 

     最小二乘过程很容易推广到多项式拟合数据的情况。首先,我们先来拟合一个二次多项式。

y=a_{0}x^{2}+a_{1}x+a_{2}

根据最小二乘法的思想,则总的误差平方和指标为:

R=\sum_{i=1}^{N}\left ( a_{0}x^{2}+a_{1}x+a_{2}-y_{i} \right )^{2}

根据多元微积分的知识,分别对各系数求偏导,并且偏导为0。

\left\{\begin{matrix} \frac{\partial R}{\partial a_{0}}=2\sum_{i=1}^{N}{x_{i}}^{2}\left ( a_{0}{x_{i}}^{2}+a_{1}x_{i}+a_{2}-y_{i} \right )\\ \frac{\partial R}{\partial a_{1}}=2\sum_{i=1}^{N}x_{i}\left ( a_{0}{x_{i}}^{2}+a_{1}x_{i}+a_{2}-y_{i} \right )\\ \frac{\partial R}{\partial a_{2}}=2\sum_{i=1}^{N}\left ( a_{0}{x_{i}}^{2}+a_{1}x_{i}+a_{2}-y_{i} \right ) \end{matrix}\right.

对上式进行整理,可得

\left\{\begin{matrix} \left ( \sum_{i=1}^{N}{x_{i}}^{4} \right )a_{0}+\left ( \sum_{i=1}^{N}{x_{i}}^{3} \right )a_{1}+\left ( \sum_{i=1}^{N}{x_{i}}^{2} \right )a_{2}=\sum_{i=1}^{N}{x_{i}}^{2}{y_{i}}\\ \left ( \sum_{i=1}^{N}{x_{i}}^{3} \right )a_{0}+\left ( \sum_{i=1}^{N}{x_{i}}^{2} \right )a_{1}+\left ( \sum_{i=1}^{N}{x_{i}} \right )a_{2}=\sum_{i=1}^{N}{x_{i}}{y_{i}}\\ \left ( \sum_{i=1}^{N}{x_{i}}^{2} \right )a_{0}+\left ( \sum_{i=1}^{N}{x_{i}} \right )a_{1}+Na_{2}=\sum_{i=1}^{N}{y_{i}} \end{matrix}\right.

以上是三个线性方程,三个位置数,方程式可解的。因此可以计算出a_{0}a_{1}a_{2}的值,进而得到二次多项式的表达式。

我们很容易将上述方法推广到m此多项式的你和问题,只是复杂度会更高一些。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233286.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 完全二叉树图例_二叉树遍历图解

    完全二叉树图例_二叉树遍历图解画解二叉搜索树

    2025年8月24日
    3
  • NULL与nullptr

    传统意义上来说,c++把NULL、0视为同一种东西,有些编译器将NULL定义为((void*)0),有些将其定义为0.c++不允许直接将void*隐式的转化为其他类型,但是如果NULL被定义为((void*)0),当编译char*p=NULL;NULL只好被定义为0。还有:void  func(int);void  func(char*);如果NULL被定义为0,func(NUL…

    2022年4月6日
    326
  • 图片的文件格式后缀名_各种文件的后缀名

    图片的文件格式后缀名_各种文件的后缀名常见的文件后缀名.ACA:Microsoft的代理使用的角色文档.acf:系统管理配置.acm:音频压缩管理驱动程序,为Windows系统提供各种声音格式的编码和解码功能.aif:声音文件,支持压缩,可以使用WindowsMediaPlayer和QuickTimePlayer播放.AIF:音频文件,使用WindowsMediaPlayer播放.AIFC:音频文件,使用Win…

    2025年7月28日
    2
  • Java常见官网

    Java常见官网Javahttps://www.oracle.com/java/technologies/OpenJDKhttps://openjdk.java.net/w3c(万维网联盟)https://www.w3.org/apache(开源项目非盈利组织)https://www.apache.org/Oraclehttps://www.oracle.com/index.htmlMySQLhttps://www.mysql.com/mongoDB(分布式文件存储的数据库)https://www.

    2022年7月7日
    128
  • AssetBundle 详解

    AssetBundle 详解文章目录AssetBundle的定义和作用什么是AssetBundle用处AssetBundle使用流程图指定资源的AssetBundle属性构建AssetBundle包核心代码详解上传AB包加载AB包和包里面的资源加载本地的AB包加载服务器上的AB包AssetBundle分组策略按照逻辑实体分组按照资源类型分组按照使用分组构建AB后产生的文件AssetBund…

    2022年6月29日
    29
  • react路由嵌套

    react路由嵌套在config.js中添加配置项importTwofrom”../pages/Home/Two”importRecommendfrom”../pages/Recommend/Recemmend”;//导入组件letrouters=[{path:”/home”,//路由地址component:Home,//路由模板routes:[//路由嵌套配置路由嵌套不能使用精准匹配

    2022年4月29日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号