函数的逼近和 DFT 组合意义

期中预习。

引入

定义函数的 p-范数 ||f(x)||p=(ab|f(x)|pdx)1/p

对于不同的范数,有不同的多项式逼近方法。

  • 对于函数 P(x),在某个集合 S 中寻找最小化 ||f(x)P(x)||=maxaxb|f(x)P(x)|f:最优一致逼近
  • 对于函数 P(x),在某个集合 S 中寻找最小化 ||f(x)P(x)||2f:最优平方逼近。在离散的情况下,就是最小二乘拟合。

正交多项式

定义

对于 x0,,xm 处的离散函数,定义带权 w0,,wm 的内积为 (f,g)=i=0mwif(xi)g(xi)。对于 [a,b] 上的连续函数,定义带权 ρ(x)0(一般认为 ρ 只在有限个点为 0)的内积为 abρ(x)f(x)g(x)dx。正交多项式就是一列两两内积为 0,自身内积(范数)大于 0 的多项式。

例:1,cosx,sinx,cos2x,sin2x,[π,π] 上带权 1 的正交函数。

构造

{1,x,x2,} 开始执行 Schmidt 正交化当然可以,但也可以递推:

φ0(x)=1,φ1(x)=xa0φk+1(x)=(xak)φk(x)bkφk1(x)(ak=(xφk,φk)(φk,φk),bk=(φk,φk)(φk1,φk1))

这个可以理解成一种“扰动法”:已知 φn(x)n1 次多项式都正交,那考虑扰动一下得到 xφn(x),根据定义它会和 n2 次多项式都正交,所以它可以被 φn1(x),φn(x),φn+1(x) 线性表示,递推式就出来了。

正交多项式的性质(还挺有趣):

  • φk(x) 线性无关(正交必定线性无关)
  • φk(x) (k1)[a,b] 内有 k 个不同的零点。
    证明:首先,φk(x) 不可能没有零点(不变号),否则内积上 1=φ0(x) 不会为 0。
    假设变号 n 次,分别在 x1,,xn,考虑内积上 (xxi),如果 n<k,则内积得到的函数不变号但是积分为 0,矛盾。所以 n=k
  • φk(x) (k2) 的零点为 x1,,xk,则 (a,x1),(x1,x2),,(xk,b) 内都恰有 φk+1(x) 的一个零点。
    证明:不会。

常见正交多项式

  • Legendre 多项式:[1,1] 上带权 ρ(x)=1,递推式 P0(x)=1,P1(x)=x,(n+1)Pn+1(x)=(2n+1)xPn(x)nPn1(x)

    Pn(x)=12nn!dndxn(x21)n

    (高代习题)
    Pn(x)=(1)nPn(x)
    (Pn,Pn)=2/(2n+1)
  • Chebyshev 多项式:[1,1] 上带权 ρ(x)=1/1x2,递推式 T0(x)=1,T1(x)=x,Tn+1(x)=2xPn(x)Pn1(x)。同时,Tn(x)=cos(narccosx)
    Tn(x)=(1)nTn(x)
    Tn(x) 的零点恰好是 cos2k12nπ,k=1,2,,n
    (Tn,Tn)=π2,n1;π,n=0
  • Laguerre 多项式:[0,+) 上带权 ρ(x)=ex,递推式 L0(x)=1,L1(x)=1x,Ln+1(x)=(1+2nx)Ln(x)n2Ln1(x)

    Ln(x)=exdndxnxnex

    (Ln,Ln)=(n!)2
  • Hermite 多项式:(,) 上带权 ρ(x)=ex2 的多项式。递推式 H0(x)=1,H1(x)=2x,Hn+1(x)=2xHn(x)2nHn1(x)

    Hn(x)=(1)nex2dndxnex2

    (Hn,Hn)=2nn!π

逼近函数

Taylor 多项式逼近

固定 x0,用 0knf(k)(x0)/k!(xx0)k 逼近 f。需要知道导数值,估计误差要用到 (n+1) 阶导数。

最佳平方逼近

Problem:有函数 f,再给定一族线性无关函数 φ0(x),,φn(x),求其线性组合 p(x) 使得 ||p(x)f(x)||2 最小。

就是求下面函数极小值:

I=abρ(x)(k=0nakφk(x)f(x))2dx

取极值必要条件是 I/ai=0,0in,也即

abρ(x)2(k=0nakφk(x)f(x))φi(x)dx=0,i

也即

k=0nak(φk(x),φi(x))=(f(x),φi(x))

定义 Gn(n+1)×(n+1) 矩阵,(Gn)ij=(φi,φj)。显然 G 满秩等价于 φ 线性无关。上面的方程组系数矩阵为 G,所以有唯一解。

还未证明这也是充分条件,也即方程组的解的确是最小值。上式变形得

(k=0nakφk(x)f(x),φi(x))=0

这意味着误差函数与 φi(x) 正交,也与 φi(x) 的线性组合正交。设最优解为 φ(x),某个另外线性组合为 φ(x),根据正交性有勾股定理 ||fφ||2=||fφ||2+||φφ||2||fφ||2。所以的确在 φ 处取到最小值。

那最优误差是多少?计算得 ||fφ||2=(f,f)(φ,f)

[a,b]=[0,1]φk(x)=xkρ(x)=1 时,上述方程组的稀疏矩阵就是 Hilbert 矩阵。Hilbert 矩阵是“病态矩阵”,当 f 微扰时,解的变化很大。

如果用一列正交函数进行最佳平方逼近,则方程组系数矩阵是对角阵,可以直接算得 ai=(f,φi)(φi,φi)

最佳一致逼近

Problem:有函数 f,再给定一族线性无关函数 φ0(x),,φn(x),求其线性组合 p(x) 使得 ||p(x)f(x)|| 最小。

定理:对于 [a,b] 上的连续函数 f,只考虑 n 次多项式,必存在最佳一致逼近多项式。

P(x) 为逼近多项式,R(x)=f(x)P(x)E=maxaxb|R(x)|。若 R(x0)=E,则 x0 为正偏差;若 R(x0)=E,则 x0 为负偏差。由连续性,至少存在一个偏差点。

Chebyshev 定理:若 n 次多项式 P(x)f(x)C[a,b] 的最佳一致逼近多项式,则 P(x) 至少有 n+2 个正负交替的偏差点。这样的偏差点组称为 Chebyshev 交错点组。

(事实上,设 Tn 为 Chebyshev 多项式,则 21nTn(x) 是最佳逼近 0 的 n 次首一多项式)

推论:

  • n 次多项式 P(x)f(x)C[a,b] 的最佳一致逼近多项式,则 P(x) 同时也是 f(x)[a,b] 上的一个拉格朗日插值多项式。
    证明:由 Chebyshev 定理,R(x)[a,b] 上至少变号 n+1 次,至少有 n+1 个根,在这些根处的 n 次拉格朗日插值多项式即为 P
  • n 次多项式 P(x)f(x)C[a,b] 的最佳一致逼近多项式,fn+1 阶导数且 fn+1 阶导不变号,则 |R(a)|=|R(b)|=E
    证明:反证法,假设 a 不是偏差点,则在 (a,b) 内至少有 n+1 个交错偏差点。在这些点处,R(x) 取极值,故 R(x)=0。求 n+1 阶导,用 Rolle 定理,得 f(n+1)(x)(a,b) 上存在零点,矛盾。

一般情况下最佳一致逼近多项式的计算比较困难。

n=1f(x)(a,b) 上有二阶导且二阶导不变号时,有简单的算法:从上述推论知道存在三个点 a,x0,b 满足 P(a)f(a)=(P(x0)f(x0))=P(b)f(b)。问题就是求出 x0:设 P(x)=a1x+a0,则 R(x)=f(x)a1(a,b) 上单调,所以其在 (a,b) 上至多有一个零点,而偏差点就是 R 零点,所以 x0 满足 f(x0)=a1。综上列出方程:

{a1a+a0f(a)=a1b+a0f(b)a1a+a0f(a)=f(x0)(a1x0+a0)f(x0)=a1

解得

{a1=f(b)f(a)baa0=f(a)+f(x0)2f(b)f(a)baa+x02

对于一般情况,有一种迭代算法叫 Remes 算法:任选 n+2 个点钦定为初始 Chebyshev 交错点组,将 P(x)n+1 个系数和最大误差 E 作为未知数,共 n+2 个未知数 n+2 个方程,解出 P(x),并利用某种算法计算 R(x) 的真实极值点,在这些极值点处进行下一轮迭代。

最小二乘拟合

Problem:有 m+1 个离散的点 (xi,yi) (0im),每个点分别带权 wi,再给定一族线性无关函数 φ0(x),,φn(x),求其线性组合 p(x) 使得 i=0mwi(yip(xi)) 最小。通常 m 远大于 n

此时,仍有类似最佳一致逼近的方程组。但是现在是权值给定的离散内积,φi 无关不能推出离散内积矩阵可逆。为了使离散内积矩阵 G 可逆,需要 n+1 个长为 m+1 的向量 ϕk=(φk(x0),φk(x1),,φk(xm)) 线性无关。在这些向量线性无关前提下,方程组有唯一解 φ,且类似地有以下结论:

  • 该唯一解的确取到最小平方误差。
  • 误差与基函数正交。
  • 误差的值为 (f,f)(f,φ)

定理:设 φ0(x),,φn(x) 的任意非零线性组合在给定点集 (x0,y0),,(xm,ym) 上都至多只有 n 个零点(mn),则称这组函数满足 Haar 条件。若满足 Haar 条件,则上面提到的向量组 ϕk 线性无关,G 可逆。

证明:设 (m+1)×(n+1) 矩阵 H 是依次把 ϕk 按列排列得到的矩阵,b 为任一 (n+1)×1 列向量,则 Hb 的位置 (i,1) 就是 bjφj(x) 这个线性组合在 xi 处的点值。Hbm+1 行,根据 Haar 条件,Hb=0 没有非零解,所以 H 列满秩,ϕk 线性无关。记 D 为将权重 w0,,wm 排在对角线上得到的对角阵,则根据内积定义 G=HDH。若 bGb=0,则 (Hb)D(Hb)=0Hb=0,必有 b=0,所以 G 满秩(而且还正定)。

如果 φi(x) 正交,同样可以直接算得系数 ai==(f,φi)(φi,φi)

实际运用时,可以先对数据变形,例如 yi=lnyi,再用多项式拟合。

最佳平方三角逼近

设对于 a=t0<t1<<tk=bf(x)(ti1,ti) 内连续,在端点处左右极限均存在,则称 f[a,b] 内分段连续。

对于周期为 2π 且在 [π,π] 上分段连续的函数,设

aj=1πππf(x)cos(jx)dxbj=1πππf(x)sin(jx)dx

定义 S(x)=a02+j1ajcosjx+bjsinjxf(x) 的 Fourier 级数。

定理:在上述条件下,

  • xf(x) 的连续点,则 S(x) 收敛于 f(x)
  • xf(x) 的间断点,则 S(x) 收敛于 (f(x+0)+f(x0))/2

定理:对于 [π,π] 上的连续函数 f(x),若要求用 1,sinx,cosx,,sinnx,cosnx 的线性组合逼近 f,则存在唯一的最佳平方逼近函数 Sn(x)=a02+1jnajcosjx+bjsinjx。换句话说,最佳平方三角逼近就是 Fourier 级数的部分和。

定理:对于 [π,π] 上的连续函数 f(x),设

an=12πππf(x)einxdx

f(x)=n=+aneinx

这里,einx (n\Z)[π,π] 上的正交函数,内积 (f,g) 定义为 ππf(x)g(x)dx

这个定理其实就是把 Fourier 级数展开换了一种形式写出来。

最小二乘三角逼近

给定复值函数 f(x)[0,2π]n 等分点上的值 fk=f(2πkn) (0k<n),在这些点上定义 (f,g)=k=0n1fkgk,同时可以定义正交性和范数 ||f||2=(f,f)

注意到在这样的定义下,1,eix,e2ix,,e(n1)ix 是一族正交函数。记 ϕj=(1,eij2π/n,,eij2π(n1)/n),则 (ϕi,ϕj)=n[i=j]。这就是所谓“单位根反演”。

此时套用最小二乘逼近中的结论,得到

定理:设有给定的离散点 (xi,yi) (0i<n)xi=2πinyi 为复数。若要用 1,eix,,ei(n1)x 的线性组合逼近 f,则最小二乘逼近函数为

k=0n1(f,eikx)(eikx,eikx)eikx=1nk=0n1eikxj=0n1fjeij2πkn

可以发现,从 f 的点值到最小二乘逼近线性组合的系数的变换是线性变换,将其称为离散 Fourier 变换(DFT)。具体地,(f0,f1,,fn1) 的离散 Fourier 变换 (c0,c1,,cn1) 满足

ck=1nj=0n1fjeij2πkn

该变换的矩阵称为 Fourier 矩阵(DFT 矩阵)。称 fc离散 Fourier 逆变换,满足

fk=j=0n1cjeij2πkn

这样,我们为 DFT 找到了一个组合意义:用 eikx 去逼近等距节点时进行的系数变换。

posted @   tianbu  阅读(109)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示