本文介绍数据拟合和函数逼近的相关知识。
与插值问题不同的是,拟合问题不严格要求插值点的函数值相等
Least Square Fitting
最小二乘拟合要求误差在最小二乘下尽量地小,即
min∥y−f(x)∥2
Polynomial Fitting
首先考虑多项式拟合问题。问题可以描述为:给定 (x1,y1),…,(xn,yn),找一个多项式 p(x) 使得
- degp≤m<n
- i=1∑n∣yi−p(xi)∣2 最小化
运用插值中使用过的方法可以转化为最小二乘问题
min∥∥∥∥∥∥∥∥∥⎣⎢⎢⎢⎡y1y2⋮yn⎦⎥⎥⎥⎤−⎣⎢⎢⎢⎡ϕ1(x1)ϕ1(x2)⋮ϕ1(xn)ϕ2(x1)ϕ2(x2)⋮ϕ2(xn)⋯⋯⋱⋯ϕm(x1)ϕm(x2)⋮ϕm(xn)⎦⎥⎥⎥⎤⎣⎢⎢⎢⎡c1c2⋮cm⎦⎥⎥⎥⎤∥∥∥∥∥∥∥∥∥
即可以把真实的模型看作 y=Xc.
假如认为只有 y 有噪声,则问题转化为 Ordinary least squares (OLS) 问题:
y+Δy=Xcmin∥Δy∥F
使用QR分解即可以求解:X=QR,则 c=R−1QTy
假如认为 X 和 y 都有噪声,则问题转化为 Total least squares (TLS) 问题:
y+Δy=(X+ΔX)cmin∥[ΔX,Δy]∥F
可以使用 SVD 进行求解。y+Δy=(X+ΔX)c 可以转化为 ([ΔX,Δy]+[X,Y])[c−1]=0,于是可以看作给 A=[X,Y] 加上扰动后变成了有 0 奇异值的矩阵。设A 的 SVD 为 A=i=1∑nσiuivi∗ ,则取 [ΔX,Δy]=−σnunvn∗ 时,可以取到最优值。此时 [c−1] 为 vn 的倍数
Nonlinear Fitting
再来考虑基函数为非线性函数的情况。要求解的问题描述为
mini=1∑n∣yi−ϕ(xi;c)∣2
其中,y=ϕ(x;c) 关于参数 c 是非线性的。
如果将其转化为线性相关,则可以采用线性的方法进行处理。
对于一般的非线性函数,可以使用 Gauss-Newton 方法及其变种进行求解
Gauss-Newton Method
Gauss-Newton 法的迭代过程为
c(k+1)=c(k)−(J(k))†r(k)
其中
r(k)=⎣⎢⎢⎢⎡y1−ϕ(x1;c(k))y2−ϕ(x2;c(k))⋮yn−ϕ(xn;c(k))⎦⎥⎥⎥⎤, J(k)=dcdr∣∣∣∣c=c(k)
推导过程与求解非线性方程组的 Newton 方法类似,Taylor 展开并忽略高阶项即可。每步迭代都求解了一次 OLS 问题。需要注意的是,GN 方法对初值十分敏感,对于一般的非线性函数,如果不经过精心设置通常很难收敛。
Variant
Damped G-N method:
Δc=−α⋅J†r
其中 α 满足 Wolfe 条件
Levenberg-Marquardt method:
Δc=−(JTJ+λD)−1JTr
其中 D=diag(JTJ)
Quasi-Newton like methods: 对 Jacobi 矩阵做近似
Least Square Approximation
本节讨论对函数的最小平方逼近。对于要逼近的函数 f(x),要找 ϕ(x)∈V,V 为有限维空间,使得
ϕ∈Vmin∥f(x)−ϕ(x)∥2
设 V 的正交基为 ϕ1(x),…,ϕn(x),根据最小二乘可以得到
ϕ(x)=i=1∑n⟨ϕi(x),f(x)⟩ϕi(x)
正交基满足
⟨ϕi(x),ϕj(x)⟩=0, i=j
内积定义为
⟨f(x),g(x)⟩=∫−∞∞ρ(x)f(x)g(x)dx, ρ(x)≥0
Orthogonal polynomials
正交多项式 p0(x),p1(x),… 满足
- degpn=n
- ⟨pm(x),pn(x)⟩=δmn
它具有以下几个性质
- 三项递推性:xpn(x)=γnpn−1(x)+αnpn(x)+βnpn+1(x)
- pn(x) 有 n 个不同的根
- 交错根:设 pn(x)=ξni=1∏n(x−λi),pn−1(x)=ξn−1i=1∏n−1(x−μi),则有 λ1<μ1<λ2<⋯<λn−1<μn−1<λn
使用代数的方法可以证明。思路是设 A:p(x)↦xp(x),则 A 是线性对称映射。对 A 作 Lanczos 分解就很容易推到以上几个性质。
本节讨论最佳一致逼近问题。与最小平方逼近类似,最佳一致逼近要求残差的无穷范数最小。
给定 f∈C[a,b],找到 p∈Rn[x] 使得
∥f(x)−p(x)∥∞=x∈[a,b]sup∣f(x)−p(x)∣
最小。
Properties
Weierstrass theorem
n→∞limp∈Rn[x]inf∥f(x)−p(x)∥∞=0
定理说明任何函数都能用多项式一致逼近。
Existence
首先当 f(x)∈Rn[x] 时,显然存在;那么考虑 f(x)∈/Rn[x] 的情况。设 p(x)=i=0∑ncixi,令 c=[c0,c1,…,cn],F(c)=∥f(x)−p(x)∥∞. 由于 F 为连续函数,考虑 ∥c∥2=1 的集合,为有界闭集,所以 F(c) 在 ∥c∥2=1 上有界,设
0<m≤F(c)≤M
那么考虑任意 p(x)=αp0(x),其中 p0 的系数 c 在单位球上,那么有
∥f(x)−p(x)∥∞≥∥p(x)∥∞−∥f(x)∥∞=∣α∣∥p0(x)∥∞−∥f(x)∥∞≥m∣α∣−∥f(x)∥∞, when m∣α∣>2∥f(x)∥∞≥∥f(x)∥∞≥∥f(x)−p∗(x)∥∞
所以对于最佳一致逼近,∣α∣≤m2∥f(x)∥∞ 即 ∥c∥2≤m2∥f(x)∥∞,所以 F(c) 在这个有界闭集上有最小值,对应的多项式即为最佳一致逼近。
ChebyShev alternation
首先介绍切比雪夫交错点组。满足以下条件的 {x0,x1,…,xm} 为函数 g 的切比雪夫交错点组:
- a≤x0<x1<⋯<xm≤b
- g(xi)=(−1)i∥g(x)∥∞ 或 g(xi)=(−1)i+1∥g(x)∥∞,对于任意的 i 都成立
满足以下条件的 {x0,x1,…,xm} 为函数 g 的非一致交错点组:
- a≤x0<x1<⋯<xm≤b
- g(xi)g(xi+1),对于任意的 i 都成立
De La Vallée-Poussin
令 f(x)∈C[a.b],q∈Rn[x]. 如果 f−q 有非一致交错点组 {x0,x1,…,xn+1},那么有
p∈Rn[x]min∥f(x)−p(x)∥∞≥imin∣f(xi)−q(xi)∣
利用反证法可以证明
Chebyshev Therorem
令 f(x)∈C[a.b],q∈Rn[x]. 那么
∥f(x)−p∗(x)∥∞=p∈Rn[x]min∥f(x)−p(x)∥∞
当且仅当 f−p∗ 有大小为 n+2 的交错点组。此交错点组不唯一
充分性可以通过 De La Vallée-Poussin 定理得到。假设 f−q 有大小为 n+2 的交错点组,则
∥f−q∥∞≥∥f−q∗∥∞≥imin∣f(xi)−q(xi)∣=∥f−q∥∞
所以 q 为最佳一致逼近
必要性利用反证法可以证明。假设 g=f−p∗ 有大小为 m+1 的交错点组,m≤n. 对于每个区间 [xi,xi+1],取最右端的零点 ti,这样就可以得到一系列点
a≤x0<t0<x1<⋯<xm<tm<xm+1≤b
令 q(x)=αi=0∏m(x−ti). 令 g 在每个区间 [ti−1,ti] 上的次大值为 mi,即
mi=max{∣g(x)∣:g(x)g(xi)<0,x∈[ti−1,ti]}
令 ξi=2M+mi,M=∥g∥∞. 控制 α 的值能使得 ∥q∥∞≤minξi,那么此时有
∥f−(p∗+q)∥∞=∥g−q∥∞≤M−21minξi
于是就找到了更优的逼近,产生矛盾。
Uniqueness
有了 Chebyshev 定理,就可以来证明唯一性了
假设存在两个最佳一致逼近 p1,p2,设 ∥f(x)−p1(x)∥∞=∥f(x)−p2(x)∥∞=M, p0=2p1+p2
那么 M≤∥f(x)−p0(x)∥∞=∥21(f(x)−p1(x))+21(f(x)−p2(x))∥∞≤2M+2M=M,所以 p0 也是最佳一致逼近多项式。
将 n+2 个交错点代入 f−p0 有
f(xi)−p0(xi)=21(f(xi)−p1(xi))+21(f(xi)−p2(xi))
若 f(xi)−p0(xi)=M,则有 f(xi)−p1(xi)=f(xi)−p2(xi)=M;f(xi)−p0(xi)=−M 时同理. 所以 n 次多项式 p1−p2 至少有 n+2 个根,p1−p2 只能为零多项式。
Remez Algorithm
Remez 算法通过迭代法对最佳一致逼近问题进行求解,基于 Chebyshev 定理
算法流程:
- 初始化点 {x0,…,xn+1}⊂[a,b],常用 Chebyshev 结点
- 重复以下步骤
- 求解 p(x)∈Rn[x] 和 E 使得 p(xi)+(−1)iE=f(xi),∀i
- 使用 f−p 的一个或部分极值点替代 {x0,…,xn+1}⊂[a,b] 中的点,替代的过程要保证取代的点和极值点符号相同
- ∥f(x)−p(x)∥∞ 和 ∣E∣ 很接近,则终止得到结果
Remez 算法对初值不敏感。