E:WHU教学2010Lecture2008Lec10_LSPLec10_LSP
Download
Report
Transcript E:WHU教学2010Lecture2008Lec10_LSPLec10_LSP
Least Squares Problems
问题的提出
插值法是使用插值多项式来逼近未知或复杂函数的,它 要求插值函
数与被插函数在插值节点上函数值相同 ,而在其他点上没有要求。在非
插值节点上有时函数值会相差很大 。若要求在被插函数的定义区间上,
所选近似函数都能与被插函数有较好的近似,就是最佳逼近问题。
最佳逼近是在函数空间 M中选 P(x) 满足
max
a xb
f ( x ) p( x ) min
(*)
但由于绝对值函数不宜进行分析运算,常将上式化为
b
a
( x) (
f ( x) p( x))
2
dx min
来讨论 ,于是最佳逼近问题变为最佳平方逼近问题 ,而离散的最佳平方逼
进问题就是常说的曲线拟合
( f ( xi ) p( xi ))
m
i 0
2
i
它们都可用最小二乘法求解。
min
曲线拟合的最小二乘法
最小二乘原理
( x)
当由实验提供了大量数据时,不能要求拟合函数
在数据点( xi , yi )
处的偏差,即
i ( xi ) yi
(i=1,2,…,m) 严格为零,但为了使近似曲线尽量反映所给数
据点的变化趋势 ,需对偏差有所要求.通常要求偏差平方和
m
|
i 1
2
i
| ( ( x i ) y
m
i 1
最小,此即称为最小二乘原理
2
i)
最小二乘法的求法
设近似方程为 : (共有m组数据且m n)
y*
a
0
0
( x ) a1
1
( x ) ... a n
m
(a0 , a1 ,..., a n ) ( y i
*
i 1
y)
2
i
n
( x)
min
对函数求偏导数并令其为零, 可得 :
0
aj
2( a ( x ) y ) ( x ) 0
m
n
i 1
k 0
k
m n
得 : 2 a k
i 1 k 0
若引入记号 :
i
k
j
j
k
,
( xi )
i
j
i
m
j
( xi )
i 1
y
( x )
i
( xi ) 0
j
m
k
, f
i
j
i 1
( x ) y
m
i 1
j
i
i
k
( xi )
n
,
则有 : ak
k 0
j
k
, f
j
( j 0,1,..., n)
可得矩阵
,
,
,
,
...
...
...
...
0
0
1
0
0
1
1
1
, ,
n
0
n
1
...
...
, a , f
, a , f
0
n
0
1
...
...
,
a
n
n n
1
n
0
,f
n
1
...
可知
当
0
( x ),
1
( x ),...
n
( x ) 线性无关时 存在唯一解
,
ai ( i 0,1,..., n)
n
a
i 0
i
i
( x )就是所求的拟合函数
用矩阵表达:
给定一组测量或观测值
yi y(ti ), i 1,..., m
假设y是n个函数的线性组合
y(t ) 11 (t ) nn (t )
设m×n矩阵X定义为
xij j (ti )
所以
y Xβ
min X β y
R( X) N ( XT )
β
XT X β XT y
1、求逆的过程困难
T
2
2、 cond ( X X ) (cond ( X ))
1 1
X 0
0
2
1
1
T
X X
2
1
1
作为曲线拟合的一种常见情况, 拟合函数常为代数多项式
:,
即拟合函数 :
( x) a0 a1 x a2 x ... an x
2
n
0 1 x1 2 x12 m x1m y1
2
m
0 1 x2 2 x2 m x2 y2
x x 2 x m y
1 n
2 n
m n
n
0
写成矩阵形式为:
其中,
1
1
X
1
Xβ y
0
x12 x1m
2
m
x 2 x 2 x2
1
, β
,
xn xn2 xnm
m
x1
y1
y
2
y
yn
XT Xβ y
n
n
xi
T
X X i 1
n
m
xi
i 1
n
x
i
i 1
n
x
2
i
i 1
n
x
i 1
m 1
i
n
m
yi
xi
i 1
i 1
n
n
m 1
xi XT y xi yi
,
i 1
i 1
n
n
xm y
2m
xi
i i
i 1
i 1
n
y ( x) 0 1 x
n
XT X n
xi
i 1
xi
i 1
n
2
xi
i 1
n
n
yi
XT y ni 1
xi yi
i 1
9
8
7
6
5
4
3
2
1
1
2
3
4
5
6
7
8
9
10
直线:
y(t ) 1t 2
多项式: j (t ) t n j , j 1,..., n
y (t ) 1t n 1 ... n 1t n
t n j
有理函数: j (t )
1t n 1 ... n 1t n
1t n 1 ... n 1t
y (t )
1t n 1 ... n 1t n
指数:
j (t ) e
jt
y (t ) 1e 1t ... n e nt
Log-linear:
y (t ) Ke
t
log y(t ) 1t 2
Gaussians:
j (t ) e
t j
j
y (t ) 1e
2
t 1
1
2
... n e
t n
n
2
评注:最小二乘法方曲线拟和是实验数据处理的常用方法。最佳平方逼近可以在一个区间上
比较均匀的逼近函数且具有方法简单易行,实效性大,应用广泛等特点。但当正规方
程阶数较高时,往往出现病态。因此必须谨慎对待和加以巧妙处理。有效方法之一是
引入正交多项式以改善其病态性。
正交多项式
付立叶级数,函数系
1,cosx,sinx,cos2x,sin2x,…cosnx,sinnx,…
中,由于任意两个函数乘积在区间[-,+]上的积分都
等于零,则说这个函数系在[-,+]上是正交的,并称
这个函数系为正交函数系。
下面给出正交函数系
定义:设函数f(x),g(x)[a,b],且
( f , g)
( x ) f ( x ) g ( x )dx 0
b
a
则称f(x)与g(x)在[a,b]上带权(x)正交,
在[a,b]上连续的函数0(x), 1(x), 2(x),... k(x)...,
满足
b
jk
0
( j , k ) ( x ) j ( x ) k ( x )d ( x )
a
jk
Ak 0
则称该函数系是在区间[a,b]上带权(x)正交函数系.
下面介绍与上述定义有关的几个概念,然后引出正交多项
的概念,最后再介绍正交多项式的性质以及几种常见的正
交多项式。
1.权函数:(1)设[a,b]是有限或无限区间, (x)是定义在[a,b]
上的非零可积函数,若其满足
b
(1) ( x )dx 0
a
b
(2) x n ( x )dx
存在 n 1,2,
a
则称(x)是[a,b]上的一个权函数。
2 内积与范数
设f(x),g(x)[a,b], (x)是[a,b]上的一个权函数,称
( f , g)
( x ) f ( x ) g ( x )dx
b
a
为f(x)与g(x)在为 [a,b]上以权函数(x)的内积。
显然,对于任意实数a,b,有
( f , ag bh) a( f , g) b( f , h)
称
f
1
2
2
b
( f , f ) ( ( x) f 2 ( x)dx)
a
为f(x)的带权(x)的2—范数。
1
2
3. 正交多项式。最高幂项的系数a n 0 的几次多项式 g n ( x ), n 0,1, …若满足
0, i j
( gi , g j )
则g n (x ) 称为在[a,b]上带权 (x ) 正交,g n (x ) 称为[a,b]上
2
g j 0, i j
带权 (x ) 的几次正交多项式。
q( x), g n ( x)) 0
正交多项式的性质
定理1 [a,b]上带权(x)的正交多项式系{gn(x)}一定是
[a,b]
上线性无关的函数系。
定理2 设是{gn(x)}[a,b]上带权(x)的正交多项式系,则对于任
何次数不高于n-1的多项式q(x),总有
(q(x), gn(x))=0
( n=1,2,…)
定理3 n次正交多项式gn(x)有n个互异定根,且全部若在(a,b)内。
定理4:任何相邻的三个正交多项式,都具有下列递推关系式
gn+1(x)=(nx-n)gn(x)-n-1gn-1(x)
常见的正交多项式
•勒让德多项式(Legendre)
•切比雪夫多项式(Chebyshev)
•拉盖尔多项式(Laguerre)
•埃尔米特多项式 (Hermite)
勒让德多项式(Legendre)
[-1,1] , (x)=1
递推关系:
P0(x)=1, P1(x)=x,
P3 ( x )
Pn 1 ( x)
1
2
2 n 1
n 1
1 dn
Pn ( x ) n n ( x 2 1) 2
2 ! dx
P2 ( x ) 12 (3x 2 1)
(5 x 3 3 x )
xPn ( x) nn1 Pn 1 ( x), n 1,2,3..... n
切比雪夫多项式(Chebyshev)
[1,1], ( x )
1
1 x
2
,
Tn(x)=cos(narccosx)
递推关系:
T0(x)=1 , T1(x)=x , T2(x)=2x2-1 ,
T3(x)= 4x3-3x,………
T0 ( x ) 1, T1 ( x ) x
Tn 1 ( x ) 2 x, Tn ( x ) Tn 1 ( x ), n 1,2,3.... n
拉盖尔多项式(Laguerre)
[0,+), (x)=e-x
n
d
Ln ( x ) e x n ( x n e x )
dx
埃尔米特多项式 (Hermite)
(- ,+), (x)=e-x2
n
d
(n)
x2
H n ( x ) ( 1) e n e
dx
x2
举例:
中国人口预测
y 1t 3 2t 2 3t 4
s (t 1979) / 30
y 1s 3 2 s 2 3 s 4
p = 1e4*[ ]';
t = (1949:1:2005)';
x = (1940: 0.2 :2019)';
w = 2010;
d = 3;
s = (t-1979)/30; c = polyfit(s,p,d);
s = (x-1979)/30; y = polyval(c,s);
s = (w-1979)/30; z = polyval(c,s);
plot(t,p,'o',x,y,'b-',w,z,'r*')
s = (t-1979)/30; c = polyfit(s,p,3);
X = [s.^3, s.^2, s, ones(length(s),1)]; X\p
Matlab中避免用法方程求解
X\y
QR分解:
X QR
Q正交阵(orthogonal)
QT Q I
R上三角阵
求解: R QT y
Householder 变换
Xβy
H n H 2 H1X R
Rβz
H n H 2 H1y z
|| x ||,
u x ek ,
2 / || u ||2 1 / u k ,
H I uu T .
1950
55196
1960
66207
1970
82992
1980
98705
1990
114333
2000
126743
s:
-0.9667
-0.6333
-0.3000
0.0333
0.3667
0.7000
y:
X:
0.9344 -0.9667 1.0000
0.4011 -0.6333 1.0000
0.0900 -0.3000 1.0000
0.0011 0.0333 1.0000
0.1344 0.3667 1.0000
0.4900 0.7000 1.0000
s (t 1979) / 30
y 1s 2 2 s1 3
55196
66207
82992
98705
114333
126743
s = ( (1950:10:2000)'-1979 )/30;
X = [s.^2, s, ones(size(s),1)]
y=[]
[m,n] = size(X);
for k = 1:min(m-1,n)
i = k:m;
u = X(i,k);
sigma = norm(u);
if sigma ~= 0
if u(1) ~= 0, sigma = sign(u(1))*sigma;
end
u(1) = u(1) + sigma;
rho = 1/( sigma *u(1));
u(1) = u(1) + sigma;
rho = 1/( sigma *u(1));
X(i,k) = 0;
X(k,k) = -sigma;
j = k+1:n;
v = rho*(u'* X(i,j));
X(i,j) = X(i,j) - u*v;
if ~isempty(y)
tau = rho*(u'* y(i));
y(i) = y(i) - tau*u;
end
end
end
beta = X(1:n,1:n)\y(1:n)
polyval(beta,(2010-1979)/30)
X=
-1.1403 0.6945
0
-0.3122
0
-0.2279
0
0.0342
0
0.4743
0
1.0923
X=
-1.1403
0
0
0
0
0
X=
-1.1403
0
0
0
0
0
-1.7987
0.4589
0.8786
0.9985
0.8186
0.3390
y = 1.0e+005 *
-1.4311
0.2787
0.7439
0.9860
1.0148
0.7991
0.6945 -1.7987
1.2525 0.3587
0
0.8640
0
1.0007
0
0.8490
0
0.4090
y = 1.0e+005 *
-1.4311
0.9033
0.8349
0.9723
0.8255
0.3630
0.6945 -1.7987
1.2525 0.3587
0
-1.6236
0
0
0
0
0
0
y = 1.0e+005 *
-1.4311
0.9033
-1.5667
0.0062
0.0058
-0.0318
β (XT X) 1 XT y
XT Xβ XT y
AXA A
广义逆
其他广义逆: Group inverse,
Drazin inverse,…
XAX X
AX
XA T
T
AX
XA
列满秩
A AT A
是左逆
A A I
不是右逆,但满足
C
A P
0
1
X
1 / x, x 0
x
x0
0,
C 0 1
AD P
P
0 0
AT
min AX I
0 1
P
N
F
秩亏损(Rank Deficiency)
接近秩亏损
X=
1
4
7
10
13
y=
2 3
5 6
8 9
11 12
14 15
16
17
18
19
20
X\y
pinv(X)*y
X\y-pinv(X)*y
ans =
ans =
ans =
-7.5000
0
7.8333
-7.5556
0.1111
7.7778
0.0556
-0.1111
0.0556
非线性最小二乘问题
y 1e1t 2e 2t
lsline
lsqlin.
lsqnonneg
lsqnonlin,
lsqcurvefit
fminunc
fmincon
fminsearch