《数值分析》16
主要内容:
数据拟合的非线性模型 最小二乘法几何意义
超定方程组QR分解算法 数据拟合确定常微分方程
数据拟合的非线性模型
数据拟合的非线性模型
求拟合函数
f(x, c 0 , c 1 , ···, c n )
满足观测数据
min ]
) ,
, ,
, (
[
1
1 2
0
m
i f x i c c c n y i
例1.已知世界人口统计数据
x x 1
x2
··· xm f y 1
y2
··· ym
年 1804 1927 1960 1975 1987 1999 数量 10 20. 30. 40 50 60.
求拟合函数, 或
( ) 1 exp( )
c
0rt t K
N
) exp(
)
( t at b
N
min ]
) (
6 [
2
N t y
S
使得数据拟合的非线性模型
例
2.利用极坐标观察值确定慧星轨道
90270
180 0
cos
1 er p
其中,
p 为参数,e为偏心率
令k=1/r
r 2.70 2.00 1.61 1.20 1.02
48 67 83 108 126k 0.3704 0.5000 0.6211 0.8333 0.9804
0.8378 1.1694 1.4486 1.8850 2.1991cos 1 e r p
r e p
cos
1 1 e cos kp
p=?, e = ?
最小二乘法几何意义
6 2
3 5
3
11 4
2
y x
y x
y x
6 3 11
2 2
*
|| min || ||||
GX GX
R
X
2 1
5 3
4 2
G
例
] ,
[
1
2G
向量组
2
1
y
x
GX
平面
*
GX
min
GX
*r
0 )
,
(
GX * r
T
T GX G
G *
正规方程
0 )
( GX * G T
min 0 r
G T
超定方程组最小二乘解
X
* 的几何意义超定方程组QR分解算法
Q—列正交矩阵; R—单位上三角矩阵
矩阵的正交三角分解: G = QR超定方程组的最小二乘解
矩阵的广义逆
超定方程组
GX
G
TGX G
T
GX
QRX
DRX Q
T
Q
TD RX
1
X R
1D
1Q
T
T
T
G G
G
X ( )
1T
T
G G
G
G
( )
1超定方程组QR分解算法
6 2
3 5
3
11 4
2
y x
y x
y x
例.用最小二乘法求解超定方程组
2 1
5 3
4 2 G
6 3 11
解
45 5
5 G 14
G
T
41
37 G
T解方程组
41 37 45
5
5 14
y
x
1.2545 3.0909 y
x
4 . 0 0
2 . 0 GX
r
6 . 5 3
2 . 11
GX || r ||
2 0.4472
超定方程组QR分解算法
2 1
5 3
4 2 G
正交变换法.设
[ g
1g
2]
0 5 2
15 8 )
,
( g
1g
2 g
1Tg
2 14 1 9 4 )
,
( g
1g
1 g
1Tg
1
1
1
g
q
1 1 1
2 2 1
2
( ( , , ) ) q q q
g g q
q
1 3 2 14
5 2
5 4
33 55 66 14
1
0 ) 33 165 132
14 ( ) 1
,
( q
1q
2 q
1Tq
2
1
1
q
g g
2 q
2 r
12q
1
1 ] 1
[ ]
[
1 2 1 2r
12q q g
g
) , (
) , (
1 1
2 12
q
1q
g
r q
超定方程组QR分解算法
] [ g
1g
2G Q [ q
1q
2] G QR
1
14 / 5 1
14 / 33 1
14 / 55 3
7 / 33 2
2 1
5 3
4 2 G
( QR ) X
GX
605/14 ) 14
( Q Q
T单位上三角方程组
759/14
37 Q
T
T
T
Q Q
y Q
x
1) 1 (
14 / 5
1
1 5 /14 37 / 44
1 69 / 55
x y
超定方程组最小二乘解
x y 69 34 / / 11 55
超定方程组QR分解算法
矩阵
G
的QR(正交三角)分解算法G = ( g ij ) m × n m > n
将矩阵按列分块,记为
G = [g 1 , g 2 , ···,g n ]
正交化过程
① q
1
=g1
② q
2
= g2
– r12
q1
, 其中 r12
= (g2
,q1
)/(q1
,q1
) ···n q n g n ( r 1 n q 1 r 2 n q 2 r n 1 , n q n 1 )
其中( , )
) ,
( 1
1 q q
q
r n g n ···
) ,
(
) ,
( 1
,
1
n n n
n q q
q
r g
数据拟合的线性模型
G = [g 1
g2
··· gn
]= [q
1
(r 12 q 1
+q2
) ··· (r1n q 1
+ ··· + rn-1,n q n-1
+ qn
)]
G = [q 1
, q2
, ···,qn
]R
G = QR g 1
=q 1
g 2
= r12 q 1
+ q2
···
n n
n n
n n
n r q r q r q q
g 1 1 2 2 1 , 1
记Q = [q 1
, q2
, ···,qn
]
1 1
1 1
, 1 2 23
1 13
12
n n
n n
r r r
r r
r
R
其中
数据拟合的线性模型
多项式拟合用于数据平滑处理(五点抛物线拟合)
设拟合函数为: P(t) = a
0
+ a1
t + a2
t2
(抛物线)
2 1 1 2
2 1 0
4 2
1
1 1
1
0 0
1
1 1 1
4 2 1
k k k k k
y y y y y
a a
a
目的:光滑y k
步骤:
1) 算出a0
, a1
, a2
得到P(t)数据拟合的线性模型
温度数据的平滑处理
66, 66, 65, 64, 63, 63, 62, 61, 60, 60, 59, 58, 58, 58, 58, 58, 57, 57, 57, 58, 60, 64, 67, 68原始数据
数据平滑后
五点抛物线拟合公式 处理数据
数据拟合确定常微分方程
血液中酒精含量数据拟合实验
国标GB19522-2004规定,驾驶员血液中酒精含量≥20毫克/百毫升,≤80毫
克/百毫升为饮酒驾车,血液中酒精含量≥80毫克/百毫升为醉酒驾车。
时间(小时) 0.25 0.5 0.75 1 1.5 2 2.5 3 3.5 4 4.5 5 酒精含量 30 68 75 82 82 77 68 68 58 51 50 41 时间(小时) 6 7 8 9 10 11 12 13 14 15 16
酒精含量 38 35 28 25 18 15 12 10 7 7 4 确定常微分方程
d 2 u p du qu 0
对某志愿者饮酒后做间隔时间酒精测试,数据如下
数据拟合确定常微分方程 数据平滑
) 3 (
1 1 1
k k k
k u u u
u
数值导数计算 左导数近似 右导数近似
1
) 1
0 (
k k
k
k x k x
u x u
u
k
k u k u
x
u ( 0 ) 1
) , , 2
( k m ) 1 ,
, 1
( k m
五点抛物线拟合光滑数据拟合确定常微分方程 一阶导数计算
] 2 [
1
1 1 1
1
k k
k k
k k
k
k k x x
u u
x x
u u u
二阶导数计算 (参见:数值分析第7讲)
) 1 ,
, 2
( k m
) 1 ,
, 2
( k m
设 u(t) 满足二阶常微分方程
0
p u qu u
2 / ) /(
]
[ 1 1
1 1 1
1
k k
k k
k k
k k
k
k k x x
x x
u u
x x
u
u u
数据拟合确定常微分方程
0
k k
k p u qu
u ( k 2 , , m 1 )
2 2
2 qu u
u
p
3 3
3 qu u
u
p
1 1
1
m qu m u m
u
p
1
3 2
1 1
3 3
2 2
m m
m u
u u q
p u
u
u u
u u
解超定方程组,求出 p , q 的估计值
数据拟合确定常微分方程
0
p u qu u
得二阶常微分方程
求解辅助方程
2 p q 0
得常微分方程通解
) exp(
) exp(
)
( t C 1 1 t C 2 2 t
u
2
4
2 2
, 1
q p
p
利用数据确定系数 C
1
和 C2
数据拟合确定常微分方程
数据拟合曲线图
) 85 . 1 exp(
03 . 144 )
21 . 0 exp(
24 . 127 )
(t t t
u
结论:饮酒后1小时到1.5小时血液中酒精含量达到峰
值。10小时后血液中酒精含量降至正常。
数据拟合确定常微分方程
希尔伯特矩阵
) 1 2
/(
1 )
1 /(
1 /
1
) 1 /(
1 3
/ 1 2
/ 1
/ 1 2
/ 1 1
n n
n
n n H
n
条件数如下
n 2 3 4 5 6
C (H n ) 1.92e+1 5.24e+2 1.55e+4 4.76e+5 1.49e+7
猜测:希尔伯特矩阵条件数以指数规律增长。即,设矩阵阶 数为n,有
Cond(H
n
) ≈ exp( a n + b ) 用数据拟合的方法验证。学到了什么?
数据拟合的非线性模型 最小二乘法几何意义
超定方程组QR分解算法 数据拟合确定常微分方程