用最小二乘法拟合数据并求均方偏差

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
y=[2.1,11.5,28.1,41.9,72.3,91.4];
>> grid on
>> hold on
>> p=polyfit(x,y,1)
p =
13.6408 -23.3498
>> x1=[1.2:1:7.9];
>> y1=polyval(p,x1);
>> plot(x,y,'*r',x1,y1,'-b')
Keyword:Numerical analysis;origin;matlab;the least square method;Mean Square Error
1、引言
数值分析主要介绍现代科学计算中常用的数值计算方法及其基本原理,研究并解决数值问题的近似解,是数学理论与计算机和实际问题的有机结合。随着科学技术的迅速发展,运用数学方法解决科学研究和工程计算领域中的实际问题,已经得到普遍重视。数学建模是数值分析联系实际的桥梁。在数学建模过程中,无论是模型的建立还是模型的求解都要用到数值分析课程中所涉及的算法,如插值方法、最小二乘法、拟合法等,那么如何在数学建模中正确的应用数值分析内容,就成了解决实际问题的关键。
>> x1=[1.2:1:7.9];
>> y1=polyval(p,x1);
>> plot(x,y,'*r',x1,y1,'-b')
由Matlab编程编程得到的图像如图2-2所示:
图2-2
3、选择另一种曲线方程拟合
3.1 另一种曲线拟合方程的最小二乘算法
同理,根据所给的散点图,可选择如下线性函数作拟合曲线,即令s(x)=a0+a1x,
其中最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。Hale Waihona Puke Baidu文主要运用的数值分析算法就是最小二乘法。
设φ0(x),φ1(x),……φn(x)是C[a,b]上线性无关函数族,在φ=span{φ0(x),φ1(x),……φn(x)}中找一个函数s*(x),使误差平方和
这就是一般的最小二乘逼近,用几何语言说,就称为曲线拟合的最小二乘法。
已知数据如表2-1
x
1.2
2.8
4.3
5.4
6.8
7.9
y
2.1
11.5
2.3、Matlab编程
Matlab编程编程如下:
>> x=[1.2,2.8,4.3,5.4,6.8,7.9];
>> y=[2.1,11.5,28.1,41.9,72.3,91.4];
>> grid on
>> hold on
>> p=polyfit(x,y,2)
p =
1.4424 0.4740 -0.8328
28.4*a+165.58*b+1068.122*c=1595.51……………②
165.58*a+1068.122*b+7288.8706=10880.983…… ③
由①、②、③可得 a=1.4424
b=0.4740
c=-0.8328
所以方程式为y=1.4424*x2+0.4740*x-0.8328
由上述式子得线性方程组
6a0+28.4a1=247.3
28.4a0+165.58a1=1595.51
解得a0=-23.3498,a1=13.6408。
于是所求拟合曲线为:
S(x)=13.6408*x-23.3498
3.2另一种曲线拟合方程的Matlab编程
Matlab编程编程如下:
>> x=[1.2,2.8,4.3,5.4,6.8,7.9];
28.1
41.9
72.3
91.4
根据表2-1所给的数据,用0rigin软件得出它的散点图2-1
图2-1
根据散点图2-1可看出该图形可能为多项式函数,所以不妨设该方程式为y=a*x2+b*x+c。根据所给数据,由最小二乘法,取
故得方程: 6*a+28.4*b+165.58*c=247.3………………… ①
关键字:数值分析; origin ; matlab ; 最小二乘法;均方偏差
Abstraction:Numerical analysis is a computational method and its numerical computation problem is solved by computer analysis of mathematical research subject, is a branch of mathematics, it is based on the theory and methodology of digital computer to solve mathematical problems as the research object.This article through to a set of data with origin to get scatter plot, then predict function according to the scatter plot.Then using least squares fitting with the matlab software, get two different function, and the mean square deviation, they calculated to compare the advantages and disadvantages of the two fitting function.
用最小二乘法拟合数据并求均方偏差
摘要:数值分析是研究分析用计算机求解数学计算问题的数值计算方法及其理论的学科,是数学的一个分支,它以数字计算机求解数学问题的理论和方法为研究对象。本文通过对一组数据用origin先得到散点图,然后根据散点图来预测函数。接着用matlab软件采用最小二乘法拟合,得到两个不同的函数,并计算它们的均方偏差,以便比较这两个拟合函数的优劣。
法国科学家勒让德于1806年独立发现“最小二乘法”,但因不为世人所知而默默无闻。勒让德曾与高斯为谁最早创立最小二乘法原理发生争执。1829年,高斯提供了最小二乘法的优化效果强于其他方法的证明,因此被称为高斯-马尔可夫定理。
2.2、最小二乘法及其计算
在函数的最佳平方逼近中f(x)∈C[a,b],如果f(x)只在一组离散点{xi,i=0,1,……,m}上给出,这就是科学实验中常见到的实验数据{(xi,yi),i=0,1,……,m}的曲线拟合,这里yi=f(xi)(i=0,1,……,m),要求一个函数y=s*(x)与所给的数据{(xi,yi),i=0,1,……,m}拟合,若记误差
2、用最小二乘法解决问题
2.1、最小二乘法的历史简介
1801年,意大利天文学家朱赛普·皮亚齐发现了第一颗小行星谷神星。经过40天的跟踪观测后,由于谷神星运行至太阳背后,使得皮亚齐失去了谷神星的位置。随后全世界的科学家利用皮亚齐的观测数据开始寻找谷神星,但是根据大多数人计算的结果来寻找谷神星都没有结果。时年24岁的高斯也计算了谷神星的轨道。奥地利天文学家海因里希·奥尔伯斯根据高斯计算出来的轨道重新发现了谷神星。高斯使用的最小二乘法的方法发表于1809年他的著作《天体运动论》中。
由Matlab编程编程得到的图像如图3-1所示:
图3-1
4、比较上面两个拟合函数的偏方均差的优劣
由上面两个拟合函数得:
其中:
经过计算得:
经过比较得到图2-2的均方偏差小于图3-1的均方偏差,因此图2-2的拟合效果更好。
5、参考文献
[1]李庆扬,王能超,易大义.数值分析[M].清华大学出版社.2008.12:1-5.
[2]李庆扬,王能超,易大义.数值分析[M].清华大学出版社.2008.12:73-75.
相关文档
最新文档