MINIBLOG

Blog Note Tags Links About
Home Search
May 28, 2026
miniyuan

函数逼近(最佳平方逼近,其他有关内容)


神经网络的非线性数据拟合

数学基础

定义(前馈神经网络 FFNN):

前馈神经网络是采用函数 f(x;θ)f(\boldsymbol{x};\boldsymbol{\theta})f(x;θ) 近似目标函数 f∗f^*f∗ 的深度学习模型,其中 θ\boldsymbol{\theta}θ 为可学习参数。 信息从输入 x\boldsymbol{x}x 单向传递至输出 y\boldsymbol{y}y,无反馈机制。

网络中定义两类基本函数:

  1. 仿射函数(affine function):z=Wa+b\boldsymbol{z} = \boldsymbol{W}\boldsymbol{a} + \boldsymbol{b}z=Wa+b
  2. 非线性激活函数(activation function):σ(z)\sigma(z)σ(z),如 Sigmoid 函数 σ(z)=11+exp⁡{−z},σ′(z)=σ(z)(1−σ(z))\sigma(z) = \frac{1}{1+\exp\{-z\}}, \qquad \sigma'(z) = \sigma(z)(1-\sigma(z))σ(z)=1+exp{−z}1​,σ′(z)=σ(z)(1−σ(z))

随着层数与神经元数量增加,网络形成复合函数形式的拟合函数。

计算公式

对于拟合问题,定义残差函数为最小二乘形式:

L({wjkl,bjl})≡∑s=1N[ys−f(xs;{wjkl,bjl})]2\mathcal{L}\left(\{w_{jk}^l, b_j^l\}\right) \equiv \sum_{s=1}^{N}\left[y_s - f\left(\boldsymbol{x}_s; \{w_{jk}^l, b_j^l\}\right)\right]^2L({wjkl​,bjl​})≡s=1∑N​[ys​−f(xs​;{wjkl​,bjl​})]2

其中 NNN 为样本数,{wjkl,bjl}\{w_{jk}^l, b_j^l\}{wjkl​,bjl​} 为第 lll 层第 jjj 个神经元与第 l−1l-1l−1 层第 kkk 个神经元之间的权重及偏置。 训练目标即通过大量数据 (xs,ys)(\boldsymbol{x}_s, y_s)(xs​,ys​) 对参数进行校正,使残差最小。

注: 通用逼近定理(Universal Approximation Theorem)证明了神经网络的这种多层复合具备逼近任意连续函数的能力。

复杂度分析

指标结果说明
前向传播O(∑lnlnl−1)O(\sum_{l} n_{l} n_{l-1})O(∑l​nl​nl−1​)nln_lnl​ 为第 lll 层神经元数
参数规模O(∑lnlnl−1+nl)O(\sum_{l} n_{l} n_{l-1} + n_l)O(∑l​nl​nl−1​+nl​)权重 + 偏置
训练复杂度依赖迭代次数与优化器反向传播利用链式法则高效计算梯度

注:神经网络通常采用梯度下降等迭代优化,一般只是局部最优解,无全局最优保证。


函数逼近

问题简介

误差函数 erf⁡\operatorname{erf}erf 源于 Gauss 对测量误差分布的研究:

erf⁡(x)≡2π∫0xexp⁡{−t2} dt\operatorname{erf}(x) \equiv \frac{2}{\sqrt{\pi}}\int_{0}^{x}\exp\{-t^2\}\,\mathrm{d}terf(x)≡π​2​∫0x​exp{−t2}dt

其补函数:

erfc⁡(x)≡1−erf⁡(x)=2π∫x∞exp⁡{−t2} dt\operatorname{erfc}(x) \equiv 1-\operatorname{erf}(x) = \frac{2}{\sqrt{\pi}}\int_{x}^{\infty}\exp\{-t^2\}\,\mathrm{d}terfc(x)≡1−erf(x)=π​2​∫x∞​exp{−t2}dt

显然误差函数为奇函数,故一般只需考察 x⩾0x\geqslant 0x⩾0 情形。

数值计算 erf⁡(x)\operatorname{erf}(x)erf(x) 的四种途径:

  1. Taylor 展开:在 x=0x=0x=0 处展开被积函数后逐项积分
  2. 渐进展开:在 x→+∞x\to+\inftyx→+∞ 时有效
  3. 多项式逼近:最佳平方逼近或插值
  4. Padé 有理多项式逼近

Taylor 展开:

exp⁡{−t2}=∑n=0∞(−1)nn!t2n\exp\{-t^2\} = \sum_{n=0}^{\infty}\frac{(-1)^n}{n!}t^{2n}exp{−t2}=n=0∑∞​n!(−1)n​t2n

从而:

erf⁡(x)=2π∑n=0∞(−1)nn!(2n+1)x2n+1\operatorname{erf}(x) = \frac{2}{\sqrt{\pi}}\sum_{n=0}^{\infty}\frac{(-1)^n}{n!(2n+1)}x^{2n+1}erf(x)=π​2​n=0∑∞​n!(2n+1)(−1)n​x2n+1

收敛半径无穷大,数值计算时截断为有限项多项式。

渐进展开:

注意到:

e−t2 dt=−12t d ⁣(e−t2)e^{-t^2}\,\mathrm{d}t = -\frac{1}{2t}\,\mathrm{d}\!\left(e^{-t^2}\right)e−t2dt=−2t1​d(e−t2)

对 erfc⁡(x)=2π∫x∞e−t2 dt\displaystyle\operatorname{erfc}(x)=\frac{2}{\sqrt{\pi}}\int_{x}^{\infty}e^{-t^2}\,\mathrm{d}terfc(x)=π​2​∫x∞​e−t2dt 反复分部积分:

∫x∞e−t2 dt=e−x22x−∫x∞e−t22t2 dt=e−x22x−e−x24x3+∫x∞3e−t24t4 dt=e−x22x−e−x24x3+3e−x28x5−⋯\begin{aligned} \int_{x}^{\infty}e^{-t^2}\,\mathrm{d}t &= \frac{e^{-x^2}}{2x}-\int_{x}^{\infty}\frac{e^{-t^2}}{2t^2}\,\mathrm{d}t \\[4pt] &= \frac{e^{-x^2}}{2x}-\frac{e^{-x^2}}{4x^3}+\int_{x}^{\infty}\frac{3e^{-t^2}}{4t^4}\,\mathrm{d}t \\[4pt] &= \frac{e^{-x^2}}{2x}-\frac{e^{-x^2}}{4x^3}+\frac{3e^{-x^2}}{8x^5}-\cdots \end{aligned}∫x∞​e−t2dt​=2xe−x2​−∫x∞​2t2e−t2​dt=2xe−x2​−4x3e−x2​+∫x∞​4t43e−t2​dt=2xe−x2​−4x3e−x2​+8x53e−x2​−⋯​

提取 e−x22x\dfrac{e^{-x^2}}{2x}2xe−x2​,并注意每次分部积分产生奇数系数 1,3,5,…1,3,5,\dots1,3,5,…:

∫x∞e−t2 dt=e−x22x[1−12x2+1⋅3(2x2)2−1⋅3⋅5(2x2)3+⋯ ]\int_{x}^{\infty}e^{-t^2}\,\mathrm{d}t = \frac{e^{-x^2}}{2x}\left[1-\frac{1}{2x^2}+\frac{1\cdot3}{(2x^2)^2}-\frac{1\cdot3\cdot5}{(2x^2)^3}+\cdots\right]∫x∞​e−t2dt=2xe−x2​[1−2x21​+(2x2)21⋅3​−(2x2)31⋅3⋅5​+⋯]

从而:

erf⁡(x)=1−exp⁡{−x2}xπ[1−12x2+1⋅3(2x2)2−1⋅3⋅5(2x2)3+⋯ ]\operatorname{erf}(x) = 1-\frac{\exp\{-x^2\}}{x\sqrt{\pi}}\left[1-\frac{1}{2x^2}+\frac{1\cdot3}{(2x^2)^2}-\frac{1\cdot3\cdot5}{(2x^2)^3}+\cdots\right]erf(x)=1−xπ​exp{−x2}​[1−2x21​+(2x2)21⋅3​−(2x2)31⋅3⋅5​+⋯]

固定项数、令 x→∞x\to\inftyx→∞ 时余项趋于零,但固定 xxx 令项数 →∞\to\infty→∞ 时级数发散。

注:

  • Taylor 展开在展开点附近精度高,增加项数可以提高精度。
  • 渐进展开为发散级数,对固定的 xxx,存在一个最优的截断项数。

最佳平方逼近

数学基础

定义(最佳平方逼近): 设 f(x)∈C[a,b]f(x)\in C[a,b]f(x)∈C[a,b],{φ0(x),φ1(x),⋯ ,φm(x)}\{\varphi_0(x),\varphi_1(x),\cdots,\varphi_m(x)\}{φ0​(x),φ1​(x),⋯,φm​(x)} 为 [a,b][a,b][a,b] 上线性无关的连续函数组,H=span⁡{φ0,⋯ ,φm}\mathcal{H}=\operatorname{span}\{\varphi_0,\cdots,\varphi_m\}H=span{φ0​,⋯,φm​}。若

φ(x)=∑k=0makφk(x)\varphi(x) = \sum_{k=0}^{m}a_k\varphi_k(x)φ(x)=k=0∑m​ak​φk​(x)

使得

F(a0,⋯ ,am)=∫abω(x)[f(x)−φ(x)]2 dx=min⁡ψ∈H∫abω(x)[f(x)−ψ(x)]2 dxF(a_0,\cdots,a_m) = \int_{a}^{b}\omega(x)\big[f(x)-\varphi(x)\big]^2\,\mathrm{d}x = \min_{\psi\in\mathcal{H}}\int_{a}^{b}\omega(x)\big[f(x)-\psi(x)\big]^2\,\mathrm{d}xF(a0​,⋯,am​)=∫ab​ω(x)[f(x)−φ(x)]2dx=ψ∈Hmin​∫ab​ω(x)[f(x)−ψ(x)]2dx

则称 φ(x)\varphi(x)φ(x) 为 f(x)f(x)f(x) 在 H\mathcal{H}H 中关于权函数 ω(x)\omega(x)ω(x) 的最佳平方逼近函数。 特别地,若 φk(x)\varphi_k(x)φk​(x) 为 kkk 次多项式,则称 φ(x)\varphi(x)φ(x) 为 mmm 次最佳平方逼近多项式(或最小二乘逼近多项式)。

计算公式

将 φ(x)=∑k=0makφk(x)\varphi(x)=\sum_{k=0}^{m}a_k\varphi_k(x)φ(x)=∑k=0m​ak​φk​(x) 代入 FFF,对 aja_jaj​ 求驻点条件:

∂F∂aj=−2∫abω(x)[f(x)−∑k=0makφk(x)]φj(x) dx=0,j=0,1,⋯ ,m\frac{\partial F}{\partial a_j} = -2\int_{a}^{b}\omega(x)\left[f(x)-\sum_{k=0}^{m}a_k\varphi_k(x)\right]\varphi_j(x)\,\mathrm{d}x = 0 , \quad j=0,1,\cdots,m∂aj​∂F​=−2∫ab​ω(x)[f(x)−k=0∑m​ak​φk​(x)]φj​(x)dx=0,j=0,1,⋯,m

整理得正规方程组:

∑k=0m[∫abω(x)φj(x)φk(x) dx]⏟≡Ajkak=∫abω(x)f(x)φj(x) dx⏟≡bj,j=0,1,⋯ ,m\sum_{k=0}^{m}\underbrace{\left[\int_{a}^{b}\omega(x)\varphi_j(x)\varphi_k(x)\,\mathrm{d}x\right]}_{\equiv A_{jk}} a_k = \underbrace{\int_{a}^{b}\omega(x)f(x)\varphi_j(x)\,\mathrm{d}x}_{\equiv b_j}, \quad j=0,1,\cdots,mk=0∑m​≡Ajk​[∫ab​ω(x)φj​(x)φk​(x)dx]​​ak​=≡bj​∫ab​ω(x)f(x)φj​(x)dx​​,j=0,1,⋯,m

矩阵形式:

定义内积 (φ,ψ)≡∫abω(x)φ(x)ψ(x) dx(\varphi,\psi) \equiv \int_{a}^{b}\omega(x)\varphi(x)\psi(x)\,\mathrm{d}x(φ,ψ)≡∫ab​ω(x)φ(x)ψ(x)dx,则

[(φ0,φ0)(φ0,φ1)⋯(φ0,φm)(φ1,φ0)(φ1,φ1)⋯(φ1,φm)⋮⋮⋱⋮(φm,φ0)(φm,φ1)⋯(φm,φm)][a0a1⋮am]=[(f,φ0)(f,φ1)⋮(f,φm)]\begin{bmatrix} (\varphi_0,\varphi_0) & (\varphi_0,\varphi_1) & \cdots & (\varphi_0,\varphi_m) \\ (\varphi_1,\varphi_0) & (\varphi_1,\varphi_1) & \cdots & (\varphi_1,\varphi_m) \\ \vdots & \vdots & \ddots & \vdots \\ (\varphi_m,\varphi_0) & (\varphi_m,\varphi_1) & \cdots & (\varphi_m,\varphi_m) \end{bmatrix} \begin{bmatrix} a_0 \\ a_1 \\ \vdots \\ a_m \end{bmatrix} = \begin{bmatrix} (f,\varphi_0) \\ (f,\varphi_1) \\ \vdots \\ (f,\varphi_m) \end{bmatrix}​(φ0​,φ0​)(φ1​,φ0​)⋮(φm​,φ0​)​(φ0​,φ1​)(φ1​,φ1​)⋮(φm​,φ1​)​⋯⋯⋱⋯​(φ0​,φm​)(φ1​,φm​)⋮(φm​,φm​)​​​a0​a1​⋮am​​​=​(f,φ0​)(f,φ1​)⋮(f,φm​)​​

几何意义

φ(x)=∑k=0makφk(x)\varphi(x)=\sum_{k=0}^{m}a_k\varphi_k(x)φ(x)=∑k=0m​ak​φk​(x) 是 f(x)f(x)f(x) 在 H\mathcal{H}H 上关于权函数 ω(x)\omega(x)ω(x) 的最佳平方逼近函数的充要条件为:

(f−φ,φj)=0,j=0,1,⋯ ,m(f-\varphi, \varphi_j) = 0, \quad j=0,1,\cdots,m(f−φ,φj​)=0,j=0,1,⋯,m

也即残差 f−φf-\varphif−φ 垂直于子空间 H\mathcal{H}H,φ\varphiφ 是 fff 在 H\mathcal{H}H 上的正交投影。

证明:

必要性:

设 φ\varphiφ 使 F(ψ)=∥f−ψ∥2F(\psi)=\|f-\psi\|^2F(ψ)=∥f−ψ∥2 最小。对任意 φj\varphi_jφj​,令

g(t)=∥f−(φ+tφj)∥2=∥f−φ∥2−2t(f−φ,φj)+t2∥φj∥2g(t)=\big\|f-(\varphi+t\varphi_j)\big\|^2=\|f-\varphi\|^2-2t(f-\varphi,\varphi_j)+t^2\|\varphi_j\|^2g(t)=​f−(φ+tφj​)​2=∥f−φ∥2−2t(f−φ,φj​)+t2∥φj​∥2

t=0t=0t=0 为极小值点,故 g′(0)=0g'(0)=0g′(0)=0,即

−2(f−φ,φj)=0⇒(f−φ,φj)=0-2(f-\varphi,\varphi_j)=0\quad\Rightarrow\quad(f-\varphi,\varphi_j)=0−2(f−φ,φj​)=0⇒(f−φ,φj​)=0

充分性:

设 (f−φ,φj)=0(f-\varphi,\varphi_j)=0(f−φ,φj​)=0 对所有 jjj 成立。则对任意 ψ=∑cjφj∈H\psi=\sum c_j\varphi_j\in\mathcal{H}ψ=∑cj​φj​∈H,由内积线性性:

(f−φ,ψ)=∑j=0mcj(f−φ,φj)=0(f-\varphi,\psi)=\sum_{j=0}^{m}c_j(f-\varphi,\varphi_j)=0(f−φ,ψ)=j=0∑m​cj​(f−φ,φj​)=0

于是对任意 ψ∈H\psi\in\mathcal{H}ψ∈H:

∥f−ψ∥2=∥(f−φ)+(φ−ψ)∥2=∥f−φ∥2+2(f−φ,φ−ψ)⏟=0+∥φ−ψ∥2=∥f−φ∥2+∥φ−ψ∥2⩾∥f−φ∥2\begin{aligned} \|f-\psi\|^2 &=\big\|(f-\varphi)+(\varphi-\psi)\big\|^2 \\ &=\|f-\varphi\|^2+2\underbrace{(f-\varphi,\varphi-\psi)}_{=0}+\|\varphi-\psi\|^2 \\ &=\|f-\varphi\|^2+\|\varphi-\psi\|^2\geqslant\|f-\varphi\|^2 \end{aligned}∥f−ψ∥2​=​(f−φ)+(φ−ψ)​2=∥f−φ∥2+2=0(f−φ,φ−ψ)​​+∥φ−ψ∥2=∥f−φ∥2+∥φ−ψ∥2⩾∥f−φ∥2​

等号仅当 ψ=φ\psi=\varphiψ=φ(几乎处处)时成立。故 φ\varphiφ 为最佳平方逼近。

算法实现

import numpy as np
from scipy.integrate import quad

def best_square_approximation(f, phi, w, a, b, m):
    """
    f: 被逼近函数
    phi: 基函数列表 [phi_0, ..., phi_m]
    w: 权函数
    [a,b]: 区间
    """
    
    # 构造 Gram 矩阵 A 和右端向量 b
    A = np.zeros((m+1, m+1))
    rhs = np.zeros(m+1)
    
    for j in range(m+1):
        for k in range(m+1):
            # 计算内积 (phi_j, phi_k)
            integrand = lambda x: w(x) * phi[j](x) * phi[k](x)
            A[j,k], _ = quad(integrand, a, b)
        # 计算内积 (f, phi_j)
        integrand_f = lambda x: w(x) * f(x) * phi[j](x)
        rhs[j], _ = quad(integrand_f, a, b)
    
    # 解线性方程组
    coeffs = np.linalg.solve(A, rhs)
    return coeffs

复杂度分析

指标结果说明
内积计算O(m2)O(m^2)O(m2) 个一维积分每个积分数值计算代价取决于精度要求
方程组求解O(m3)O(m^3)O(m3)Gram 矩阵通常为稠密对称正定,可用 Cholesky 分解降至 O(m3/6)O(m^3/6)O(m3/6)
存储复杂度O(m2)O(m^2)O(m2)Gram 矩阵存储

注: 当基函数非正交时,Gram 矩阵条件数通常很大,导致数值不稳定。 采用正交基函数可将 Gram 矩阵对角化,系数直接由内积求得,计算复杂度降至 O(m)O(m)O(m)。


正交函数系与正交多项式

数学基础

定义(正交函数系):

若函数系 {φ0(x),φ1(x),⋯ ,φn(x),⋯ }\{\varphi_0(x),\varphi_1(x),\cdots,\varphi_n(x),\cdots\}{φ0​(x),φ1​(x),⋯,φn​(x),⋯} 满足

(φj,φk)=∫abω(x)φj(x)φk(x) dx={0,j≠kαk>0,j=kj,k=0,1,2,⋯(\varphi_j, \varphi_k) = \int_{a}^{b}\omega(x)\varphi_j(x)\varphi_k(x)\,\mathrm{d}x = \begin{cases} 0, & j\neq k \\ \alpha_k > 0, & j=k \end{cases} \quad j,k=0,1,2,\cdots(φj​,φk​)=∫ab​ω(x)φj​(x)φk​(x)dx={0,αk​>0,​j=kj=k​j,k=0,1,2,⋯

则称其为区间 [a,b][a,b][a,b] 上关于权函数 ω(x)\omega(x)ω(x) 的正交函数系。 若 αk≡1\alpha_k\equiv 1αk​≡1,则称为标准正交函数系。

例如三角函数系 {1,cos⁡x,sin⁡x,cos⁡2x,sin⁡2x,⋯ }\{1, \cos x, \sin x, \cos 2x, \sin 2x, \cdots\}{1,cosx,sinx,cos2x,sin2x,⋯} 是 [−π,π][-\pi,\pi][−π,π] 上关于 ω(x)=1\omega(x)=1ω(x)=1 的正交函数系。

定义(正交多项式系):

特殊地,若正交函数系中 φk(x)\varphi_k(x)φk​(x) 均为代数多项式,则称其为正交多项式系。

定理(正交函数系线性无关):

区间 [a,b][a,b][a,b] 上关于权函数 ω(x)\omega(x)ω(x) 的正交函数系 φ0(x),⋯ ,φn(x)\varphi_0(x),\cdots,\varphi_n(x)φ0​(x),⋯,φn​(x) 线性无关。

证明:

反证法。假设线性相关,则存在不全为零的实数 c0,⋯ ,cnc_0,\cdots,c_nc0​,⋯,cn​ 使得 ∑i=0nciφi(x)=0\sum_{i=0}^{n}c_i\varphi_i(x)=0∑i=0n​ci​φi​(x)=0。 不妨设 ci≠0c_i\neq 0ci​=0,两边同乘 ω(x)φi(x)\omega(x)\varphi_i(x)ω(x)φi​(x) 并积分:

∑j=0ncj(φj,φi)=ci(φi,φi)=0\sum_{j=0}^{n}c_j(\varphi_j,\varphi_i) = c_i(\varphi_i,\varphi_i) = 0j=0∑n​cj​(φj​,φi​)=ci​(φi​,φi​)=0

由于 (φi,φi)>0(\varphi_i,\varphi_i)>0(φi​,φi​)>0,得 ci=0c_i=0ci​=0,矛盾。故正交函数系线性无关。

定理(正交多项式系的充要条件):

设 φk(x)\varphi_k(x)φk​(x) 为最高次项系数非零的 kkk 次多项式,则 {φk(x)}\{\varphi_k(x)\}{φk​(x)} 是 [a,b][a,b][a,b] 上关于权函数 ω(x)\omega(x)ω(x) 的正交多项式系的充要条件为: 对任意至多 k−1k-1k−1 次的多项式 Qk−1(x)Q_{k-1}(x)Qk−1​(x),均有

(φk,Qk−1)=∫abω(x)φk(x)Qk−1(x) dx=0,k=1,2,⋯(\varphi_k, Q_{k-1}) = \int_{a}^{b}\omega(x)\varphi_k(x)Q_{k-1}(x)\,\mathrm{d}x = 0, \quad k=1,2,\cdots(φk​,Qk−1​)=∫ab​ω(x)φk​(x)Qk−1​(x)dx=0,k=1,2,⋯

证明:

  • 充分性:取 Qk−1(x)=φj(x)Q_{k-1}(x)=\varphi_j(x)Qk−1​(x)=φj​(x)(j<kj<kj<k),则 (φk,φj)=0(\varphi_k,\varphi_j)=0(φk​,φj​)=0;又 φk2(x)⩾0\varphi_k^2(x)\geqslant 0φk2​(x)⩾0 且不恒为零,故 (φk,φk)>0(\varphi_k,\varphi_k)>0(φk​,φk​)>0。
  • 必要性:由前述定理,φ0,⋯ ,φk−1\varphi_0,\cdots,\varphi_{k-1}φ0​,⋯,φk−1​ 线性无关,构成 kkk 维多项式空间的基,故任意 Qk−1(x)Q_{k-1}(x)Qk−1​(x) 可唯一表示为它们的线性组合,由内积线性性即得。

计算公式

定理(Gram-Schmidt 三项递推公式):

按以下方式定义的多项式集合 {φ0(x),⋯ ,φn(x)}\{\varphi_0(x),\cdots,\varphi_n(x)\}{φ0​(x),⋯,φn​(x)} 是 [a,b][a,b][a,b] 上关于权函数 ω(x)⩾0\omega(x)\geqslant 0ω(x)⩾0(不恒为0)的正交多项式系:

{φ0(x)=1φ1(x)=x−α1φk(x)=(x−αk)φk−1(x)−βkφk−2(x),k=2,3,⋯ ,n\begin{cases} \varphi_0(x) = 1 \\ \varphi_1(x) = x - \alpha_1 \\ \varphi_k(x) = (x-\alpha_k)\varphi_{k-1}(x) - \beta_k\varphi_{k-2}(x), & k=2,3,\cdots,n \end{cases}⎩⎨⎧​φ0​(x)=1φ1​(x)=x−α1​φk​(x)=(x−αk​)φk−1​(x)−βk​φk−2​(x),​k=2,3,⋯,n​

其中

αk=(xφk−1,φk−1)(φk−1,φk−1),k=1,2,⋯ ,n\alpha_k = \frac{(x\varphi_{k-1},\varphi_{k-1})}{(\varphi_{k-1},\varphi_{k-1})}, \quad k=1,2,\cdots,nαk​=(φk−1​,φk−1​)(xφk−1​,φk−1​)​,k=1,2,⋯,n βk=(xφk−1,φk−2)(φk−2,φk−2)=(φk−1,φk−1)(φk−2,φk−2),k=2,3,⋯ ,n\beta_k = \frac{(x\varphi_{k-1},\varphi_{k-2})}{(\varphi_{k-2},\varphi_{k-2})} = \frac{(\varphi_{k-1},\varphi_{k-1})}{(\varphi_{k-2},\varphi_{k-2})}, \quad k=2,3,\cdots,nβk​=(φk−2​,φk−2​)(xφk−1​,φk−2​)​=(φk−2​,φk−2​)(φk−1​,φk−1​)​,k=2,3,⋯,n

注:注意到 (xφk−1,φk−2)=(φk−1,xφk−2)(x\varphi_{k-1},\varphi_{k-2})=(\varphi_{k-1},x\varphi_{k-2})(xφk−1​,φk−2​)=(φk−1​,xφk−2​) 即可。

常见的正交多项式系

多项式区间权函数 ω(x)\omega(x)ω(x)正交性递推关系
Legendre Pn(x)P_n(x)Pn​(x)[−1,1][-1,1][−1,1]111∫−11PnPm dx=22n+1δnm\displaystyle\int_{-1}^{1}P_nP_m\,\mathrm{d}x=\frac{2}{2n+1}\delta_{nm}∫−11​Pn​Pm​dx=2n+12​δnm​Pn+1=2n+1n+1xPn−nn+1Pn−1P_{n+1}=\dfrac{2n+1}{n+1}xP_n-\dfrac{n}{n+1}P_{n-1}Pn+1​=n+12n+1​xPn​−n+1n​Pn−1​
Chebyshev Tn(x)T_n(x)Tn​(x)[−1,1][-1,1][−1,1]11−x2\dfrac{1}{\sqrt{1-x^2}}1−x2​1​∫−11TnTm1−x2 dx={0,m≠nπ/2,m=n≠0π,m=n=0\displaystyle\int_{-1}^{1}\frac{T_nT_m}{\sqrt{1-x^2}}\,\mathrm{d}x=\begin{cases}0, & m\neq n \\ \pi/2, & m=n\neq 0 \\ \pi, & m=n=0\end{cases}∫−11​1−x2​Tn​Tm​​dx=⎩⎨⎧​0,π/2,π,​m=nm=n=0m=n=0​Tn+1=2xTn−Tn−1T_{n+1}=2xT_n-T_{n-1}Tn+1​=2xTn​−Tn−1​
Laguerre Ln(x)L_n(x)Ln​(x)[0,∞)[0,\infty)[0,∞)exp⁡{−x}\exp\{-x\}exp{−x}∫0∞exp⁡{−x}LnLm dx=(n!)2δnm\displaystyle\int_{0}^{\infty}\exp\{-x\}L_nL_m\,\mathrm{d}x=(n!)^2\delta_{nm}∫0∞​exp{−x}Ln​Lm​dx=(n!)2δnm​Ln+1=(1+2n−x)Ln−n2Ln−1L_{n+1}=(1+2n-x)L_n-n^2L_{n-1}Ln+1​=(1+2n−x)Ln​−n2Ln−1​
Hermite Hn(x)H_n(x)Hn​(x)(−∞,∞)(-\infty,\infty)(−∞,∞)exp⁡{−x2}\exp\{-x^2\}exp{−x2}∫−∞∞exp⁡{−x2}HnHm dx=2nn!πδnm\displaystyle\int_{-\infty}^{\infty}\exp\{-x^2\}H_nH_m\,\mathrm{d}x=2^nn!\sqrt{\pi}\delta_{nm}∫−∞∞​exp{−x2}Hn​Hm​dx=2nn!π​δnm​Hn+1=2xHn−2nHn−1H_{n+1}=2xH_n-2nH_{n-1}Hn+1​=2xHn​−2nHn−1​

Legendre 多项式:

Pn(x)=12nn!dndxn[(x2−1)n],P0(x)=1,  P1(x)=xP_n(x) = \frac{1}{2^n n!}\frac{\mathrm{d}^n}{\mathrm{d}x^n}\left[(x^2-1)^n\right], \quad P_0(x)=1,\; P_1(x)=xPn​(x)=2nn!1​dxndn​[(x2−1)n],P0​(x)=1,P1​(x)=x

奇偶性:Pn(−x)=(−1)nPn(x)P_n(-x)=(-1)^nP_n(x)Pn​(−x)=(−1)nPn​(x)。

Chebyshev 多项式:

Tn(x)=cos⁡(narccos⁡x),T0(x)=1,  T1(x)=xT_n(x) = \cos(n\arccos x), \quad T_0(x)=1,\; T_1(x)=xTn​(x)=cos(narccosx),T0​(x)=1,T1​(x)=x
  • 零点:xk=cos⁡(2k−1)π2n,k=1,2,⋯ ,nx_k = \cos\dfrac{(2k-1)\pi}{2n},\quad k=1,2,\cdots,nxk​=cos2n(2k−1)π​,k=1,2,⋯,n
  • 极值点:x^k=cos⁡kπn,k=0,1,⋯ ,n\hat{x}_k = \cos\dfrac{k\pi}{n},\quad k=0,1,\cdots,nx^k​=cosnkπ​,k=0,1,⋯,n,交替取 ±1\pm 1±1
  • 最高次幂系数为 2n−12^{n-1}2n−1(n⩾1n\geqslant 1n⩾1)

Laguerre 多项式:

Ln(x)=exp⁡{x}dndxn(xnexp⁡{−x}),L0(x)=1,  L1(x)=1−xL_n(x) = \exp\{x\}\frac{\mathrm{d}^n}{\mathrm{d}x^n}\left(x^n\exp\{-x\}\right), \quad L_0(x)=1,\; L_1(x)=1-xLn​(x)=exp{x}dxndn​(xnexp{−x}),L0​(x)=1,L1​(x)=1−x

Hermite 多项式:

Hn(x)=(−1)nexp⁡{x2}dndxnexp⁡{−x2},H0(x)=1,  H1(x)=2xH_n(x) = (-1)^n\exp\{x^2\}\frac{\mathrm{d}^n}{\mathrm{d}x^n}\exp\{-x^2\}, \quad H_0(x)=1,\; H_1(x)=2xHn​(x)=(−1)nexp{x2}dxndn​exp{−x2},H0​(x)=1,H1​(x)=2x

算法实现

def orthogonal_polynomial_coeffs(f, poly_type, n, a, b):
    """
    利用正交多项式计算最佳平方逼近系数
    poly_type: 'legendre', 'chebyshev', ...
    """
    coeffs = []
    for k in range(n+1):
        # 获取第k个正交多项式 phi_k
        phi_k = get_orthogonal_poly(poly_type, k)
        # 计算内积 (f, phi_k)
        numerator, _ = quad(lambda x: f(x)*phi_k(x)*weight(x), a, b)
        # 计算范数平方 (phi_k, phi_k)
        denominator, _ = quad(lambda x: phi_k(x)**2*weight(x), a, b)
        a_k = numerator / denominator
        coeffs.append(a_k)
    return coeffs  # 逼近函数为 sum(a_k * phi_k(x))

复杂度分析

指标一般基函数正交基函数说明
系数计算O(m3)O(m^3)O(m3)O(m)O(m)O(m)正交基不用解稠密线性方程组
Gram 矩阵构造O(m2)O(m^2)O(m2) 积分O(m)O(m)O(m) 积分正交基只需对角元
数值稳定性条件数大条件数优正交多项式避免 Hilbert 病态

Chebyshev 多项式与最佳 n 阶多项式插值

数学基础

回顾 nnn 次多项式插值的误差估计:

Rn(x)=f(x)−φn(x)=f(n+1)(ξ)(n+1)!ωn(x),ξ∈[a,b]R_n(x) = f(x) - \varphi_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!}\omega_n(x), \quad \xi\in[a,b]Rn​(x)=f(x)−φn​(x)=(n+1)!f(n+1)(ξ)​ωn​(x),ξ∈[a,b]

其中 ωn(x)=∏i=0n(x−xi)\omega_n(x) = \prod_{i=0}^{n}(x-x_i)ωn​(x)=∏i=0n​(x−xi​)。

为最小化整体误差,需最小化 max⁡x∈[a,b]∣ωn(x)∣\max_{x\in[a,b]}|\omega_n(x)|maxx∈[a,b]​∣ωn​(x)∣。

区间映射:将 [a,b][a,b][a,b] 映射至 [−1,1][-1,1][−1,1]:

xk=b−a2x~k+b+a2x_k = \frac{b-a}{2}\tilde{x}_k + \frac{b+a}{2}xk​=2b−a​x~k​+2b+a​

最优节点选择:取 Chebyshev 多项式 Tn+1(x)T_{n+1}(x)Tn+1​(x) 的零点作为 x~k\tilde{x}_kx~k​:

x~k=cos⁡(2k+1)π2(n+1),k=0,1,⋯ ,n\tilde{x}_k = \cos\frac{(2k+1)\pi}{2(n+1)}, \quad k=0,1,\cdots,nx~k​=cos2(n+1)(2k+1)π​,k=0,1,⋯,n

此时 ωn(x)\omega_n(x)ωn​(x) 与 Tn+1(x)T_{n+1}(x)Tn+1​(x) 成正比,满足:

∣ωn(x)∣=2−n∣Tn+1(x)∣⩽2−n|\omega_n(x)| = 2^{-n}|T_{n+1}(x)| \leqslant 2^{-n}∣ωn​(x)∣=2−n∣Tn+1​(x)∣⩽2−n

不加证明的指出 Chebyshev 多项式是最优的,也即实现了极小化最大误差。

误差界:

∣Rn(x)∣⩽max⁡x∈[a,b]∣f(n+1)(x)∣2n(n+1)!|R_n(x)| \leqslant \frac{\max_{x\in[a,b]}|f^{(n+1)}(x)|}{2^n (n+1)!}∣Rn​(x)∣⩽2n(n+1)!maxx∈[a,b]​∣f(n+1)(x)∣​

注:等距节点在高次插值时会出现 Runge 现象,而 Chebyshev 节点通过将节点向区间两端密集分布,实现了 minimax 意义下的最优。


Padé 有理多项式逼近

数学基础

定义(Padé 逼近):

给定有理函数形式

r(x)=p(x)q(x)=p0+p1x+⋯+pnxn1+q1x+⋯+qmxmr(x) = \frac{p(x)}{q(x)} = \frac{p_0 + p_1 x + \cdots + p_n x^n}{1 + q_1 x + \cdots + q_m x^m}r(x)=q(x)p(x)​=1+q1​x+⋯+qm​xmp0​+p1​x+⋯+pn​xn​

其次数定义为 N=n+mN=n+mN=n+m,待定系数共 n+m+1n+m+1n+m+1 个。

Padé 逼近是 Taylor 展开的一种推广。 对于给定的 n,mn,mn,m,通过匹配 f(x)f(x)f(x) 与 r(x)r(x)r(x) 在 x=0x=0x=0 处的前 NNN 阶导数:

r(k)(0)=f(k)(0),k=0,1,…,Nr^{(k)}(0) = f^{(k)}(0), \quad k=0,1,\ldots,Nr(k)(0)=f(k)(0),k=0,1,…,N

来确定所有系数。

计算公式

设 f(x)f(x)f(x) 的 Maclaurin 级数为 f(x)=∑i=0∞aixif(x)=\sum_{i=0}^{\infty}a_i x^if(x)=∑i=0∞​ai​xi。考虑

f(x)−r(x)=f(x)q(x)−p(x)q(x)=1q(x)[∑i=0∞aixi(1+∑j=1mqjxj)−∑i=0npixi]f(x)-r(x) = \frac{f(x)q(x)-p(x)}{q(x)} = \frac{1}{q(x)}\left[\sum_{i=0}^{\infty}a_i x^i\left(1+\sum_{j=1}^{m}q_j x^j\right) - \sum_{i=0}^{n}p_i x^i\right]f(x)−r(x)=q(x)f(x)q(x)−p(x)​=q(x)1​[i=0∑∞​ai​xi(1+j=1∑m​qj​xj)−i=0∑n​pi​xi]

要求分子中次数 ⩽N=n+m\leqslant N=n+m⩽N=n+m 的项系数全为零,依次得到方程组:

{a0=p0a1+a0q1=p1a2+a1q1+a0q2=p2⋯an+an−1q1+⋯+a0qn=pn(qj=0 if j>m)\begin{cases} a_0 = p_0 \\ a_1 + a_0 q_1 = p_1 \\ a_2 + a_1 q_1 + a_0 q_2 = p_2 \\ \cdots \\ a_n + a_{n-1}q_1 + \cdots + a_0 q_n = p_n \quad (q_j=0 \text{ if } j>m) \end{cases}⎩⎨⎧​a0​=p0​a1​+a0​q1​=p1​a2​+a1​q1​+a0​q2​=p2​⋯an​+an−1​q1​+⋯+a0​qn​=pn​(qj​=0 if j>m)​

以及对于 k=n+1,…,n+mk=n+1,\ldots,n+mk=n+1,…,n+m 的系数为零条件,解出 q1,…,qmq_1,\ldots,q_mq1​,…,qm​ 后回代求 pip_ipi​。

复杂度分析

指标结果说明
系数求解O((n+m)3)O((n+m)^3)O((n+m)3)线性方程组求解
求值代价O(n+m)O(n+m)O(n+m)Horner 法则计算分子分母
逼近精度同阶数下通常优于 Taylor有理函数可捕捉极点行为

注:Padé 逼近在函数带有极点或渐进行为时,比同阶数多项式逼近精度显著提高,广泛用于特殊函数(如 exp⁡(x)\exp(x)exp(x)、erf⁡(x)\operatorname{erf}(x)erf(x))的高效数值计算。


综合对比与总结

方法逼近形式基函数/节点核心优势主要局限
最小二乘(离散)∑akφk(xi)\sum a_k\varphi_k(x_i)∑ak​φk​(xi​)任意线性无关基抗噪声、闭式解高阶多项式不稳定
最佳平方逼近(连续)∫ω(x)(f−φ)2 dx\int\omega(x)(f-\varphi)^2\,\mathrm{d}x∫ω(x)(f−φ)2dx任意线性无关基函数整体最优需计算积分
正交多项式逼近∑akφk⊥(x)\sum a_k\varphi_k^{\perp}(x)∑ak​φk⊥​(x)Legendre/Chebyshev 等系数解耦、稳定区间与权函数固定
Chebyshev 插值Lagrange 多项式Chebyshev 零点极小化最大误差需已知函数值
Padé 逼近pn(x)/qm(x)p_n(x)/q_m(x)pn​(x)/qm​(x)Maclaurin 系数同阶数精度高、适合作极点仅局部有效、需导数信息

注: 实际计算中,Chebyshev 多项式与 Padé 逼近常结合使用:先用 Chebyshev 节点离散化,再在局部采用 Padé 有理逼近,以获得全局稳定且局部高精度的数值方案。

目录
  • 神经网络的非线性数据拟合
    • 数学基础
    • 计算公式
    • 复杂度分析
  • 函数逼近
    • 问题简介
  • 最佳平方逼近
    • 数学基础
    • 计算公式
    • 几何意义
    • 算法实现
    • 复杂度分析
  • 正交函数系与正交多项式
    • 数学基础
    • 计算公式
    • 常见的正交多项式系
    • 算法实现
    • 复杂度分析
  • Chebyshev 多项式与最佳 n 阶多项式插值
    • 数学基础
  • Padé 有理多项式逼近
    • 数学基础
    • 计算公式
    • 复杂度分析
  • 综合对比与总结
© 2026 miniyuan. All rights reserved.
Go to miniyuan's GitHub repo