最佳平方逼近与最小二乘拟合
- 格式:docx
- 大小:175.73 KB
- 文档页数:10
最小二乘法的原理及其应用-CAL-FENGHAI.-(YICAI)-Company One1最小二乘法的原理及其应用一、研究背景在科学研究中,为了揭示某些相关量之间的关系,找出其规律,往往需要做数据拟合,其常用方法一般有传统的插值法、最佳一致逼近多项式、最佳平方逼近、最小二乘拟合、三角函数逼近、帕德(Pade)逼近等,以及现代的神经网络逼近、模糊逼近、支持向量机函数逼近、小波理论等。
其中,最小二乘法是一种最基本、最重要的计算技巧与方法。
它在建模中有着广泛的应用,用这一理论解决讨论问题简明、清晰,特别在大量数据分析的研究中具有十分重要的作用和地位。
随着最小二乘理论不断的完善,其基本理论与应用已经成为一个不容忽视的研究课题。
本文着重讨论最小二乘法在化学生产以及系统识别中的应用。
二、最小二乘法的原理人们对由某一变量t或多个变量t1…..tn 构成的相关变量y感兴趣。
如弹簧的形变与所用的力相关,一个企业的盈利与其营业额,投资收益和原始资本有关。
为了得到这些变量同y之间的关系,便用不相关变量去构建y,使用如下函数模型,q个相关变量或p个附加的相关变量去拟和。
通常人们将一个可能的、对不相关变量t的构成都无困难的函数类型充作函数模型(如抛物线函数或指数函数)。
参数x是为了使所选择的函数模型同观测值y相匹配。
(如在测量弹簧形变时,必须将所用的力与弹簧的膨胀系数联系起来)。
其目标是合适地选择参数,使函数模型最好的拟合观测值。
一般情况下,观测值远多于所选择的参数。
其次的问题是怎样判断不同拟合的质量。
高斯和勒让德的方法是,假设测量误差的平均值为0。
令每一个测量误差对应一个变量并与其它测量误差不相关(随机无关)。
人们假设,在测量误差中绝对不含系统误差,它们应该是纯偶然误差,围绕真值波动。
除此之外,测量误差符合正态分布,这保证了偏差值在最后的结果y上忽略不计。
确定拟合的标准应该被重视,并小心选择,较大误差的测量值应被赋予较小的权。
数值分析课程设计:最佳平方逼近与最小二乘拟合给出函数f(x)=1/(1+25x^2)一:求f(x)在[-1,1]上的三次最佳平方逼近多项式以及均方误差。
Matlab编程代码如下:syms x;p=[1 x (1./2)*(3*x^2-1) (1./2)*(5*x^3-3*x) 1./(1+25*x^2)];for i =1:1:4jf = int((p(i)*p(5)),x,-1,1);a(i)=(2*(i-1)+1)/2*jf;endaf3=0;for i = 1:1:4f3= f3+a(i)*p(i);endsimplify(f3)f3syms xfun=(f(x)-f3)^2;int(fun,x,-1,1)输出结果为a =[ 1/5*atan(5), 0, 3/10-14/25*atan(5), 0]ans =12/25*atan(5)+9/20*x^2-3/20-21/25*atan(5)*x^2f3 =1/5*atan(5)+(3/10-14/25*atan(5))*(3/2*x^2-1/2)(最佳平方逼近多项式)ans =4/1625-642/3125*atan(5)^2+209/625*atan(5)化简均方误差可得ans =0.0742二.在[-1,1]上取5个和9个等距节点,做最小二乘拟合,得出均方误差。
五个节点时,matlab编码为:首先建立M文件,并保存function y=f(x)y=1/(1+25*x^2);endx=[-1 -0.5 0 0.5 1];for i=1:5y(i)=f(x(i));enda=polyfit(x,y,3)syms xf1=a(1)*x^3+a(2)*x^2+a(3)*x+a(4)x=[-1 -0.5 0 0.5 1];for i=1:5E(i)=(f(x(i))-(a(1)*x(i)^3+a(2)*x(i)^2+a(3)*x(i)+a(4)))^2 ;endsum(E)输出结果为a =-0.0000 -0.6063 -0.0000 0.5737f1 =-4878849915647781/1298074214633706907132624082305024*x^3-1600/2639*x^2-5348847520430703/64903710731685345356631204 1152512*x+1514/2639(拟合的多项式)ans =0.3534(均方误差)九个点的时候,matlab编码为:x=[-1 -0.75 -0.5 -0.25 0 0.25 0.5 0.75 1];for i=1:9y(i)=f(x(i));enda=polyfit(x,y,3)syms xf2=a(1)*x^3+a(2)*x^2+a(3)*x+a(4)x=[-1 -0.75 -0.5 -0.25 0 0.25 0.5 0.75 1];for i=1:5E1(i)=(f(x(i))-(a(1)*x(i)^3+a(2)*x(i)^2+a(3)*x(i)+a(4)))^ 2;endsum(E1)输出结果为:a =-0.0000 -0.5609 0.0000 0.4855f2 =-728732707776039/2535301200456458802993406410752*x^3-1263030908712921/ 2251799813685248*x^2+4915246442354361/2028240960365167042394725128601 6*x+1093229300764671/2251799813685248(最小二乘拟合多项式)ans =0.3350(均方误差)三:比较三个均方误差经比较发现,最佳平方逼近多项式拟合程度高,最小二乘逼近中,9点的比5点的均方误差小。
数值分析复习资料一、重点公式第一章 非线性方程和方程组的数值解法 1)二分法的基本原理,误差:~12k b ax α+--<2)迭代法收敛阶:1lim0i pi ic εε+→∞=≠,若1p =则要求01c <<3)单点迭代收敛定理:定理一:若当[],x a b ∈时,[](),x a b ϕ∈且'()1x l ϕ≤<,[],x a b ∀∈,则迭代格式收敛于唯一的根;定理二:设()x ϕ满足:①[],x a b ∈时,[](),x a b ϕ∈, ②[]121212,,, ()(),01x x a b x x l x x l ϕϕ∀∈-≤-<<有 则对任意初值[]0,x a b ∈迭代收敛,且:110111i i iii x x x llx x x lαα+-≤---≤-- 定理三:设()x ϕ在α的邻域内具有连续的一阶导数,且'()1ϕα<,则迭代格式具有局部收敛性;定理四:假设()x ϕ在根α的邻域内充分可导,则迭代格式1()i i x x ϕ+=是P 阶收敛的 ()()()0,1,,1,()0j P j P ϕαϕα==-≠ (Taylor 展开证明)4)Newton 迭代法:1'()()i i i i f x x x f x +=-,平方收敛 5)Newton 迭代法收敛定理:设()f x 在有根区间[],a b 上有二阶导数,且满足: ①:()()0f a f b <; ②:[]'()0,,f x x a b ≠∈;③:[]'',,f x a b ∈不变号④:初值[]0,x a b ∈使得''()()0f x f x <;则Newton 迭代法收敛于根α。
6)多点迭代法:1111111()()()()()()()()()i i i i i i i i i i i i i i i f x f x f x x x x x f x f x f x f x f x f x x x -+-----=-=+----收敛阶:P =7)Newton 迭代法求重根(收敛仍为线性收敛),对Newton 法进行修改 ①:已知根的重数r ,1'()()i i i i f x x x rf x +=-(平方收敛) ②:未知根的重数:1''()(),()()()i i i i u x f x x x u x u x f x +=-=,α为()f x 的重根,则α为()u x 的单根。
最小二乘拟合算法最小二乘定义一般情况下,最小二乘问题求的是使某一函数局部最小的向量 x,函数具有平方和的形式,求解可能需要满足一定的约束:信赖域反射最小二乘要理解信赖域优化方法,请考虑无约束最小化问题,最小化 f(x),该函数接受向量参数并返回标量。
假设您现在位于 n 维空间中的点 x 处,并且您要寻求改进,即移至函数值较低的点。
基本思路是用较简单的函数 q 来逼近 f,该函数需能充分反映函数 f 在点 x 的邻域 N 中的行为。
此邻域是信赖域。
试探步 s 是通过在 N 上进行最小化(或近似最小化)来计算的。
以下是信赖域子问题如果f(x + s) < f(x),当前点更新为 x + s;否则,当前点保持不变,信赖域 N 缩小,算法再次计算试探步。
在定义特定信赖域方法以最小化 f(x) 的过程中,关键问题是如何选择和计算逼近 q(在当前点 x 上定义)、如何选择和修改信赖域 N,以及如何准确求解信赖域子问题。
在标准信赖域方法中,二次逼近 q 由 F 在 x 处的泰勒逼近的前两项定义;邻域 N 通常是球形或椭圆形。
以数学语言表述,信赖域子问题通常写作公式2其中,g 是 f 在当前点 x 处的梯度,H 是 Hessian 矩阵(二阶导数的对称矩阵),D 是对角缩放矩阵,Δ是正标量,∥ . ∥是 2-范数。
此类算法通常涉及计算 H 的所有特征值,并将牛顿法应用于以下久期方程它们要耗费与 H 的几个分解成比例的时间,因此,对于信赖域问题,需要采取另一种方法。
Optimization Toolbox 求解器采用的逼近方法是将信赖域子问题限制在二维子空间 S 内。
一旦计算出子空间 S,即使需要完整的特征值/特征向量信息,求解的工作量也不大(因为在子空间中,问题只是二维的)。
现在的主要工作已转移到子空间的确定上。
二维子空间 S 是借助下述预条件共轭梯度法确定的。
求解器将 S 定义为由 s1 和 s2 确定的线性空间,其中 s1 是梯度 g 的方向,s2 是近似牛顿方向,即下式的解或是负曲率的方向,以此种方式选择 S 背后的理念是强制全局收敛(通过最陡下降方向或负曲率方向)并实现快速局部收敛(通过牛顿步,如果它存在)。
最小二乘法数值分析实验报告数学与信息工程学院实课程名称:实验室:实验台号:班级:姓名:实验日期:验报告数值分析2012 年 4 月 13 日数值分析实验报告五最小二乘法一、题目设有如下数据用三次多项式拟合这组数据,并绘出图形二、方法最小二乘法三、程序M文件: syms x f;xx=input(‘请输入插值节点as [x1,x2...]\n’);ff=input(‘请输入插值_ __________________ ___________________ ___________________ ___________________实验一MATLAB在数值分析中的应用插值与拟合是来源于实际、又广泛应用于实际的两种重要方法随着计算机的不断发展及计算水平的不断提高,它们已在国民生产和科学研究等方面扮演着越来越重要的角色下面对插值中分段线性插值、拟合中的最为重要的最小二乘法拟合加以介绍分段线性插值所谓分段线性插值就是通过插值点用折线段连接起来逼近原曲线,这也是计算机绘制图形的基本原理实现分段线性插值不需编制函数程序,MATLAB自身提供了内部函数interp1其主要用法如下:interp1(x,y,xi) 一维插值◆yi=interp1(x,y,xi)对一组点(x,y) 进行插值,计算插值点xi的函数值x为节点向量值,y为对应的节点函数值如果y为矩阵,则插值对y 的每一列进行,若y 的维数超出x 或xi 的维数,则返回NaN ◆ yi=interp1(y,xi)此格式默认x=1:n ,n为向量y的元素个数值,或等于矩阵y的size(y,1) ◆ yi=interp1(x,y,xi,’method’)method用来指定插值的算法默认为线性算法其值常用的可以是如下的字符串nearest 线性最近项插值linear线性插值spline 三次样条插值贵州师范大学数学与计算机科学学院学生实验报告1. 对函数f(x)?,哪一种曲线拟合较好?为什么?能找出更好的拟合曲线吗?七、总结1、从图像可以看出用lagrange插值函数拟合数据中间拟合的很好,但两边与原函数图象相比波动太大,逼近效果很差,出现所谓的Runge现象2、从图像可以看出用最小二乘法去拟合较少的数据点,曲线拟合比直线拟合得好,高次的会比低次的拟合得好3.一般情形高次插值比低次插值精度高,但是插值次数太高也不一定能提高精度.八、附录1、M文件:function cy=Lagrange(x,y,n,cx)m=length(cx);cy=zeros(1,m);for k=1:n+1t=ones(1,m);for j=1:n+1if j~=kt=t.*(cx-x(j))./(x(k)-x(j));endendcy=cy+y(k).*t ;end>> x=-5::5;>> y=1./(x. +1);>> plot(x,y)>> n=10;>> x0=-5:10/n:5;>> y0=1./(1+x0. );>> cx=-5::5;>> cy=Lagrange(x0,y0,n,cx);>> hold on>> plot(cx,cy)e1 =xxxx大学数值分析实验报告题目:学院:专业:年级:学生姓名:学号:日期:曲线拟合的最小二乘法xxxx学院xxxxxxx xxxx级xxx xxx 2014年12月24日课题八曲线拟合的最小二乘法一、问题的提出从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘拟合求得拟合曲线在某冶炼过程中,根据统计数据的含碳量与时间关系,试求出含碳量y与时间t的拟合曲线0 5 10 15 20 25 30 35 40 45 50 55t(分)y(x10?4)0 二、要求1、用最小二乘法进行曲线的拟合;2、近似表达式为:?(t)?a0?a1t?a2t2?a3t3;?(t),3、打印出拟合函数:并打印出?(tj)与y(tj)的误差,其中j?1,2,3,?,12;4、另外选取一个近似表达式,尝试拟合效果的比较;5、*绘制出拟合曲线图;三、目的和意义1、掌握曲线拟合的最小二乘法;2、最小二乘法亦可用于解超定线性方程组;3、探索拟合函数的选择与拟合进精度间的关系;四、MATLAB2011a简介及算法介绍MATLAB2011a本实验是基于MATLAB2011a软件平台进行程序设计MATLAB2011a是一款将数据结构、程序特性以及图形用户界面完美地结合在一起的一款强大的软件MATLAB的核心是矩阵和数组,在MATLAB2011a中,所有的数据都是以矩阵或数组的形式来表示和存储的MATLAB2011a提供了常用的矩阵代数运算功能,同时还提供了非常广泛的、灵活的数组运算功能,用于数据集的处理MATLAB的编程特性与其他高级语言类似,同时它还可以与其他语言(如Fortran和C语言)混合编程,进一步扩展了自身的功能这次作业课题,主要采用了MATLAB语言进行程序的编写,误差计算,拟合函数的输出,以及拟合曲线(1)和拟合曲线(2)与原离散数据点在一个图形界面中的现实的显示最小二乘拟合法在函数的最佳平方逼近中f(x)?C[a,b],如果f(x)只在一组离散的点集?xi,i?0,1,2,3,?,m?上给出,这就是科学实验中经常见到的实验数据?(xi,yi),i?0,1,2,3,?m?的曲线拟合,这里yi?f(xi)(i?0,1,2,3,?,m),要求一个函数y?S*(x)与所给数据?(xi,yi),i?0,1,2,3,?m?拟合若记误差?i?S(xi)?yi(i?0,1,2,3,?,m),??(?0,?1,?2,?3,??m)T,设?0(x),?1(x),?,?n(x)是*?C[a,b]上线性无关的函数族,在??span??0(x),?1(x),?,?n(x)?中找一个函数S*(x)使误差平方和??这里22[S(xi)?yi]?min?[S*(xi)?yi]2, ()2i*2i?0i?0s(x)??i?0mmmS(x)?a0?0(x)?a1?1(x)?a2?2(x )?a3?3(x)??an?n(x) (n?m). () 这就是一般的最小二乘逼近,用几何语言说,就称为曲线拟合的最小二乘法. 用最小二乘法拟合曲线时,首先要确定S(x)的形式,这不是单纯的数学问题,还与所研究问题的运动规律及所得到的观测数据(xi,yi)有关;通常要从问题的运动规律或给定的数据描图,确定S(x)的形式,并通过实际计算选出最好的结果——这点将从下面的例题得到说明. S(x)的一般表达式为()式表示的线性形式.若?k(x)是k次多项式,S(x)就是n次多项式为了使问题的提法更有一般性,通常在最小二乘法中都考虑加权平方和2?2??22(xi)[S*(xi)?yi]2. ()i?0m 这里?(x)?0 (i?0,1,2,3,?m)是[a,b]上的权函数它表示不同的点(xi,yi)处的数据比重不同,列如:?(xi)可以表示点(xi,yi)处的重复观测次数用最小二乘法拟合曲线的问题,就是在形如()式的S(x)中求一函数y?S(x),使()式取得最小值它转化为求取多元函数*I(a0,a1,?an)(xi)[?aj?(xi)?f(xi)]2i?0j?0mn***的极小点(a0,a1,?,an)的问题这与多元函数求极值的必要条件的问题一样,则有:mn?I?2??(xi)[?aj?(xi)?f(xi)]?k(xi)?0k?0,1,2,?,n. ?aki?0j?0若记(?j,?k)(xi)?j(xi)?k(xi),()i?0mm(f,?k)(xi)f(xi)?k(xi)?dk,k?0,1,2,3?,n, ()i?0上式可以改写为:?(?j?0mk,?j)aj?dk, k?0,1,2,3?,n, ()线性方程组()称为法方程,可以将其写成:Ga?d其中??Ta?(a0,a1,?a2),d?(d0,d1,?dn)T,(0,0)(0,1)(,)(,)11G10(n,0)(n, 1)(0,n)(n,1)() (?n,?n)?五、课题分析拟合近似表达式:?(t)?a0?a1t?a2t2?a3t3的最高次数为三次,我们知道当拟合多项式的最高次数n?3时,与连续的情形一样,在求解法方程Ga?d的过程中,会出现系数矩阵(格拉姆矩阵)G为病态的问题但是如果?0(x),?1(x),?2(x),?,?n(x)是关于点集?xi?(i?0,1,2,?,m)带权?(xi)(i?0,1,2,?,m)正交的函数族,即:0,jk,()(?j,?k)(xi)?j(xi)?k(xi)??i?0?Ak?0,j?k,m则法方程的解为:(f,?k)?(?k,?k)*ak(x)f(x)?iii?0mk(xi),k?0,1,2,?,n ()??(x)?ii?0m2k(xi)这样就能避免求解格拉姆矩阵,也不会在求解线性方程组是就不会出现病态问题现在我们需要根据给定的节点x0,x1,?xm及权函数?(xi)?0,造出带权?(xi)正交的多项式?Pn(x)?.注意n?m,用递推公式表示Pk(x),即:?P0(x)?1,?() ?P1(x)?(x??1)P0(x),?P(x)?(x??)P(x) P(x),k?1,2,3,?,n?1.k?1kkk?1?k?1这里Pk(x)是首项系数为1的k次多项式,根据Pk(x)的正交性,得:m??(xi)xiPk2(xi)??(xPk(x),Pk(x))??k?1?i?0?m?(Pk(x),Pk(x))2?(x)P(x)?iki?i?0??(xPk,Pk),k?0,1,2,3,?,n?1, () ??(P,P)kk?m??(xi)Pk2(xi)??(Pk,Pk)i?0?,k?1,2,3 ,?,n??k(Pk?1,Pk?1)?(xi)Pk2?1(xi)??i?0?用正交多项式?Pk(x)?的线性组合做最小二乘曲线拟合,只要根据公式()和()逐步求Pk(x)得同时,相应计算出系数(f,Pk)*ak??(Pk,Pk)??(x)f(x)P(x)iikii?0m??(x)Pii?0m, k?0,1,2,?,n,()2k(xi)*并逐步把ak,Pk(x)累加到S(x)中去,最后就会得到所求的拟合曲线。
最佳平方逼近与最小二乘拟合——两者的区别与联系 函数逼近是用一个多项式无限接近原函数,而拟合是将函数中的元素联系起来。
也就是说,最佳平方逼近是针对函数,最小二乘法是针对离散的点,二者在形式上基本一致。
另外,最小二乘拟合也称为离散型最佳平方逼近,两者的解法有很多相似之处。
一、 函数的最佳平方逼近 (一)最佳平方逼近函数的概念对[]b a C x f ,)(∈及[]b a C ,中的一个子集{}n span ϕϕϕφ,,,10⋯=,若存在φ∈)(*x S,使[]dx x S x f x S f Sf baS S ⎰-=-=-∈∈22222*)()()(infinf ρϕϕ,则称)(*x S 是)(x f 在子集[]b a C ,⊆φ中的最佳平方逼近函数。
(二)最佳平方逼近函数的解法为了求)(*x S ,由[]dxx S x f x S f Sf baS S ⎰-=-=-∈∈22222*)()()(infinf ρϕϕ可知,一般的最佳平方逼近问题等价于求多元函数dxx f x a x a a a I banj j j n 2010)()()(),,,(⎰∑⎥⎦⎤⎢⎣⎡-=⋯=ϕρ的最小值问题。
由于),,,(10n a a a I ⋯是关于n a a a ,,,10⋯的二次函数,利用多元函数极值的必要条件),,1,0(0n k a Ik⋯==∂∂,即n),,1,0(0)()()()(20⋯==⎥⎦⎤⎢⎣⎡-=∂∂⎰∑=k dx x x f x a x a Ik b a n j j j kϕϕρ,于是有()()),,1,0(,,0n k f a k j nj j k ⋯==∑=ϕϕϕ。
),,,,1(2n n x x x G G Λ=()()),,1,0(,,0n k f a k j nj j k⋯==∑=ϕϕϕ是关于n 10,,,a a a ⋯的线性方程组,称其为法方程。
由于n ϕϕϕ,,,10⋯线性无关,故系数行列式()0,,,10≠⋯n G ϕϕϕ,于是方程组()()),,1,0(,,0n k f a k j nj j k⋯==∑=ϕϕϕ有唯一解),,1,0(*n k a a k k ⋯==,从而得到)()()(*0*0*x a x a x S n n ϕϕ+⋯+=。
最佳平方逼近和最小二乘法哎呀,今天我们来聊聊一个挺有意思的话题,那就是最佳平方逼近和最小二乘法。
这听起来好像挺高大上的样子,其实呢,咱们可以把它变得简单易懂。
想象一下,你在阳光明媚的下午,喝着冰凉的饮料,跟朋友闲聊。
说起这些数学名词,大家可能会皱眉头,但我跟你说,这其实跟咱们生活中遇到的那些小烦恼有着千丝万缕的联系。
什么是最佳平方逼近呢?就像你和朋友一起找地方吃饭。
你们各自都提出了自己的想法,但最后为了避免争吵,大家决定选择一个最符合大家口味的地方。
这个过程就像是在给一堆数据点找到一个最合适的“朋友”。
想象一下,在坐标系上,有一堆点在那儿乱七八糟地分布着。
你想找一条线,尽量让这条线离这些点都近一点儿。
没错,这就是最佳平方逼近。
它试图找到那条线,让所有点到这条线的距离平方和最小。
简单点说,就是尽量让大家都满意。
再说说最小二乘法。
这名字听上去像个数学怪物,但其实它就是一种聪明的方式,帮助我们处理那些烦人的数据。
咱们可以把它想象成在考场上,有些同学的分数特别高,有些则低得让人心疼。
如果你只看最高分和最低分,可能会觉得这次考试的结果一片惨淡。
但如果你用最小二乘法来分析,那就好像给每个人的分数加了个权重,最终得出的平均分就能更真实地反映出大家的水平。
你可能会问,这俩东西有什么关系呢?嗯,其实它们是一对好搭档。
最佳平方逼近就是在找一条线,而最小二乘法则是在告诉你怎么画出这条线。
就像你要画一个完美的心形,光靠眼睛估计可不行,得有个具体的方法。
最小二乘法就像那把尺子,帮你量出每个点到线的距离,让你知道要怎么调整,才能画得又圆又满。
而且啊,这些方法可不光是在数学课上用得着。
咱们的日常生活中也是到处都是应用。
比如你在超市买水果,有些橙子很便宜,有些却贵得让你心疼。
你可能想知道,橙子的价格到底是个什么水平。
于是,你就可以用最小二乘法来分析这批橙子的价格走势,看看哪些便宜又好吃,哪些是价格虚高。
结果一出来,你就能得出一个合理的消费建议,哎呀,简直太棒了!还有呢,想想你在网上购物时,看到的那些评价。
第一章:数值分析与科学计算引论截断误差:近似 解与精确解之间的误差。
近似值的误差:(.为准确值):e*-x*-x近似值的误差限一: 1疋近似值相对误差(较小时约等)近似值相对误差限 :函数值的误差限 :苗⑺“ Ifool 叱)近似值;一士心:化叙…®)"八■有n 位有效数字:第二章:插值法P (对J =0.1/*%?] Oo + %呵+…+偽!曙=九 % +如股+…+ %!珥=Y1 % +舸斗1 +…+ %坊=儿 2•拉格朗日插值 (x- x k )6J n+1(x k ) .次插值基函数: (X- x)-(x-x fc -i)(x-曲十 1)…a — X JJ ) (Xk - X 0)-(X k - X k_i) (x k - x k¥1)-(x k - X…)1•多项式插值其中:P(x) = a()+ OjX + …+ a n ^I>k — O.L —.n = _xl(r -n+l引入记号:^n+l(X)={X-Xo)(A?-粗)…(#- Xj余项:=f(x} - SG)=:;:;詁+W > 5 e 3:3•牛顿插值多项式: ^nW = /(^0)+f 必珀("叼)+・”+/■[和巧严如(龙-坯”心-*_』〔阶均差(把中间去掉,分别填在左边和右边) :店”“皿]丿杯Fmr gd余项:4•牛顿前插公式(令心'小,计算点值,不是多项式):PQ +t h )=/o +帧 + 忖A 讥 + - + 心1)::*%°〔阶差分:AVo = A n "7i -余项:严(和E 3J5•泰勒插值多项式:•阶重节点的均差:6.埃尔米特三次插值:p (x ) -f (^X Q )十打和尤』仗—如+f 1叼公1也](JC-衍)(工一 Xi ) +人(尤-叼)(黑-衍)o — x 2)其中,A 的标定为:咋沪f (社)7.分段线性插值:第三章:函数逼近与快速傅里叶变换p n (x) = 7(X Q ) + f(x Q )(x -和)+ “•+警(U血屯“匈1.-:-属于’.维空间:5(玄)=。
最佳平方逼近与最小二乘拟合——两者的区别与联系 函数逼近是用一个多项式无限接近原函数,而拟合是将函数中的元素联系起来。
也就是说,最佳平方逼近是针对函数,最小二乘法是针对离散的点,二者在形式上基本一致。
另外,最小二乘拟合也称为离散型最佳平方逼近,两者的解法有很多相似之处。
一、 函数的最佳平方逼近 (一)最佳平方逼近函数的概念对[]b a C x f ,)(∈及[]b a C ,中的一个子集{}n span ϕϕϕφ,,,10⋯=,若存在φ∈)(*x S,使[]dx x S x f x S f Sf baS S ⎰-=-=-∈∈22222*)()()(infinf ρϕϕ,则称)(*x S 是)(x f 在子集[]b a C ,⊆φ中的最佳平方逼近函数。
(二)最佳平方逼近函数的解法为了求)(*x S ,由[]dxx S x f x S f Sf baS S ⎰-=-=-∈∈22222*)()()(infinf ρϕϕ可知,一般的最佳平方逼近问题等价于求多元函数dxx f x a x a a a I banj j j n 2010)()()(),,,(⎰∑⎥⎦⎤⎢⎣⎡-=⋯=ϕρ的最小值问题。
由于),,,(10n a a a I ⋯是关于n a a a ,,,10⋯的二次函数,利用多元函数极值的必要条件),,1,0(0n k a Ik⋯==∂∂,即n),,1,0(0)()()()(20⋯==⎥⎦⎤⎢⎣⎡-=∂∂⎰∑=k dx x x f x a x a Ik b a n j j j kϕϕρ,于是有()()),,1,0(,,0n k f a k j nj j k ⋯==∑=ϕϕϕ。
),,,,1(2n n x x x G G =()()),,1,0(,,0n k f a k j nj j k⋯==∑=ϕϕϕ是关于n 10,,,a a a ⋯的线性方程组,称其为法方程。
由于n ϕϕϕ,,,10⋯线性无关,故系数行列式()0,,,10≠⋯n G ϕϕϕ,于是方程组()()),,1,0(,,0n k f a k j nj j k⋯==∑=ϕϕϕ有唯一解),,1,0(*n k a a k k ⋯==,从而得到)()()(*0*0*x a x a x S n n ϕϕ+⋯+=。
)()()(*0*0*x a x a x S n n ϕϕ+⋯+=就是φ在)(x f 中的最佳平方逼近函数。
(三)最佳平方逼近函数所产生的误差若令)()(*x S x f -=δ,则平方误差为:∑=-=-=--=nk k k f a ff S f f S f S f 0*22***22),(),(),(),(ϕδ。
取[]1,0)(,1)(,)(C x f x x x kk ∈≡=ρϕ,即要在n H 中求n 次最佳平方逼近多项式)()()(*0*0*x a x a x S n n ϕϕ+⋯+= ,此时11),(1++==⎰+j k dx x j k k j ϕϕ,()kk k d dx x x f f ≡=⎰1)(,ϕ若用H 表示行列式对应的矩阵,则Tn T n d d d d a a a a ),,,(,),,,(1010 ==),,1,0(),(n k x f d kk ==d Ha =),,1,0(*n k a a kk ⋯==⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛+++++=121211121312111211n n n n n H,H 称为Hilbert 矩阵,记其中则方程的解即为所求。
注意:最佳平方逼近误差越小说明函数空间Hn 对f(x)的逼近效果越好。
二、 曲线拟合的最小二乘法 (一)最小二乘逼近的概念对于给定的一组数据()),,1,0(,m i y x i i ⋯=,要求在函数空间{}n span ϕϕϕφ,,,10⋯=中找一个函数)(*x S y =,使误差平方和[][]∑∑∑==∈=-=-==mi ii mi x S ii mi iy x S y x S12)(2*222)(m in)(ϕδδ,这里)()()()()(1100m n x a x a x a x S n n <+⋯++=ϕϕϕ。
这就是一般的最小二乘逼近,用几何语言来说,就称为曲线拟合的最小二乘法。
(二)最小二乘法的解法用最小二乘法求拟合曲线的问题,就是在形如:)()()()()(1100m n x a x a x a x S n n <+⋯++=ϕϕϕ的)(x S 中求一函数)(*x S y =,使[]∑=-=mi i i i x f x S x 0222)()()(ωδ取得最小。
它转化为求多元函数20010)()()(),,,(⎥⎦⎤⎢⎣⎡-=⋯∑∑==n j i i j j mi i n x f x a x a a a I ϕω的极小点),,,(**1*0n a a a ⋯问题。
由求多元函数极值的必要条件,有),,1,0(0)()()()(200n k x x f x a x a Ii k m i i n j i j j i k ⋯==⎥⎦⎤⎢⎣⎡-=∂∂∑∑==ϕϕω。
若记()∑==mi i k i j i k j x x x 0)()()(,ϕϕωϕϕ,则()),1,0()()()(,0n k d x x f x f kmi i kiik ,⋯=≡=∑=ϕωϕ,可改写为()),1,0(,0n k d akjnj jk ,⋯==∑=ϕϕ,此方程叫法方程。
它也可写成矩阵形式d =Ga 。
其中T n d d d d ),,,(,)a ,,a ,(a a 10Tn 10⋯=⋯=()()()()()()()()()⎪⎪⎪⎪⎪⎭⎫⎝⎛=n n n n n n G ϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕ,,,,,,,,,101110101000,由于nϕϕϕ,,,10 线性无关,故0≠G ,方程组()),1,0(,0n k d akjnj jk, ==∑=ϕϕ存在唯一的解),,1,0(*n k a a kk ==,从而得到函数)(x f 的最小二乘解为)()()(*0*0*x a x a x S n n ϕϕ+⋯+=。
可以证明,这样得到的)(*x S 对于任何形如)()()()()(1100m n x a x a x a x S n n <+⋯++=ϕϕϕ的)(x S ,都有[][]∑∑==-≤-mi ii i m i i i i x f x S x x f x S x 02*2*)()()()()()(ωω,故)(*x S 确是所求最小二乘解。
(三)最小二乘逼近函数所产生的误差 误差平方和:[][]∑∑∑==∈=-=-==mi iimi x S ii mi iy x S y x S12)(2*222)(m in)(ϕδδ注:误差平方越小,说明拟合效果越好。
例题3.5解:在坐标纸上标出所给数据,如图所示。
从图可看到,各点分布在一条直线附近,故可选择线性函数。
令x a a S 101)x (+=,这里,)(,1)(,1,4m 10x x x n ====ϕϕ故()()()()()().5.145,47,74,22,84i 140i 042i114i 01104i 00===========∑∑∑∑∑=====i ii i i i ii i i fx f f f xx ωϕωϕωϕϕωϕϕϕϕωϕϕ,,,,,,由())n ,1,0(,n,⋯==∑=k d a k j j j kϕϕ得方程组⎩⎨⎧=+=+5.14574224722a 81010a a a 解得13.1,77.2a 10==a于是所求拟合曲线为x x S 13.177.2)(1*+=例题3.6在某化学反应过程中,根据实验所得生产物的质量分数与时间的关系如下表所示,求质量分数y 与时间t 的拟合曲线) t ( F =y解:将所给数据标在坐标纸上,如图所示。
可以看到,质量分数开始时增加较快,后来逐渐减慢,到一定时间就基本稳定在一个水平上,即当∞→t 时,y 趋于某个数,故) t ( F =y 有一水平渐近线。
另外,t=0时,反应未开始,质量分数为零。
根据这些特点,可设想) t ( F =y 是双曲线型b/t +a =1/y ,即) b +t /(at =y 。
它与给定豆数据的规律大致符合。
为了确定a ,b ,令t x y y /1,/1==,于是可用x 的线性函数bxa x S +=)(1拟合数据()i i i i y x i y ,)16,2,1(,x ,,⋯=,由原始数据()i i y t ,根据变换计算出来,解方程组⎪⎩⎪⎨⎧⨯=+⨯=+331052886.058435.138073.3108372.138073.3a 16b a b 得6822.161,6621.80a ==b从而得到)()6822.1616621.80/(y )1(t F t t =+= =其误差为)16,2,1()()1()1(i,⋯=-=i t F y i i δ由上图,符合给定数据的函数还可选为指数形式。
此时可令拟合曲线如t b ae /y =。
显然,当∞→t 时,a →y ;当0→t 时,若0b <,则0y →,且t 增加时y 增加。
这些与给出数据规律相同。
为了确定a 与b ,对上式两端取对数,得t b a y /ln ln +=。
令1/t x lna,A lny,yˆ===,于是由()i i y t ,计算出()i i yx ˆ,,拟合数据()i i y ,x 的曲线仍为bx A x S +=)(1。
上述方法计算出.05671 -b 48072.4 -==,A ,从而 3103253.11-⨯==A e a ,最后求得)(103253.11)2(0567.13t F e y t =⨯=--,误差为),,,1621()()2()2(⋯=-=i t F y i i i δ3)2()2(3)1()1(10277.0max 10568.0max -∞-∞⨯==⨯==iiiiδδδδ均方误差为()()312)2(2)2(312)1(2)1(1034.01019.1-=-=⨯==⨯==∑∑mi imi iδδδδ由此可知,2)2(δ及∞)2(δ都比较小,所以用)()2(t F y =作拟合曲线比较好。
补充例题:用多项式拟合5个点解:2210x a x a a ++其中2210)()(1)(x x x x x ===ϕϕϕ()()()()()()()()()⎪⎪⎪⎪⎭⎫ ⎝⎛+=⎪⎪⎪⎭⎫⎝⎛∑∑∑∑∑∑∑∑4323222212022111012010001,,,,,,,,,i iii i iii xx x x x x xx m ϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕ 即:()()()⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎭⎫ ⎝⎛210210,,,3828.15625.1875.15625.1875.15.2875.15.25ϕϕϕf f f a a a⎪⎩⎪⎨⎧===2114.15726.01214.0210a a a最终所求多项式与给定五个点的图象如下。