ESC
输入关键词搜索文章
目录

插值与拟合

Chap 11–16 · 数值分析
从 Lagrange 到最小二乘——用多项式和函数逼近离散数据
7核心方法
5插值/拟合类型
10关键公式
4课程例题链

模块导航

  • 第一组:插值基础与误差 —— Part 0–5
  • 第二组:节点设计、Hermite 与分段样条 —— Part 6–7
  • 第三组:拟合、应用与总结 —— Part 8–9 + 速查
Part 0 · 章节定位
插值与拟合在数值分析中的位置

数值分析的核心问题之一是:如何用简单函数逼近复杂函数或离散数据。插值法(Chap 11–14)和拟合(最小二乘法,Chap 15–16)分别从两个角度回答这个问题:

  • 插值:要求严格经过所有已知点,适合有精确约束的工程问题(如导弹轨迹拟合)。
  • 拟合:不要求经过所有点,只要求整体误差最小,适合实验观测数据(测量有噪声)。

两者共同构成"函数逼近论"的两条主线,并为后续数值积分、微分方程数值解提供基础。

前置知识回顾

  • 线性代数:矩阵运算、范数、正交变换。去哪里补:线性代数枢纽页
  • 微积分:导数与高阶导数的概念与计算。
  • 范数:向量 2-范数 $\lVert x \rVert_2 = \sqrt{\sum x_i^2}$,内积与正交概念。课件对应:Chap 1–2。
Part 1 · 背景问题
为什么需要插值与拟合?

课件在插值法的应用背景里强调了几类典型场景:

  1. 复杂函数的近似计算:原函数难以直接求值时,用低次多项式在局部作近似。
  2. 函数表的非表格点计算:已知若干节点上的函数值,需要估算区间内部其他点的数值。
  3. 光滑曲线的绘制:当只掌握离散数据点时,希望构造一条平滑曲线通过或逼近这些点。
  4. 离散数据的规律提取:实验数据常带噪声,不能机械穿点,需要通过拟合找出整体趋势。

因此,本章群并不是单纯在讨论“多项式公式怎么写”,而是在回答:面对离散数据时,我们到底应该要求函数“经过所有点”,还是只要求它“整体最接近”这些点。前者导向插值,后者导向拟合。

主线区分:插值强调“节点上精确满足”,拟合强调“整体误差最小”。两者都在做函数逼近,但约束不同、用途也不同。
Part 2 · 代数插值问题的数学框架
什么是代数插值

代数插值问题

$f(x) \in C[a, b]$,取互异节点 $a \le x_0 < x_1 < \cdots < x_n \le b$,已知函数值 $y_i = f(x_i)$$i = 0, 1, \ldots, n$)。

求一个次数不超过 $n$ 的代数多项式 $P(x) = a_0 + a_1 x + \cdots + a_n x^n$,满足

$$P(x_k) = y_k, \quad k = 0, 1, \ldots, n$$

则称 $P(x)$$f(x)$插值多项式$x_0, \ldots, x_n$插值结点$f(x)$被插值函数

定理 5.1(插值多项式存在唯一性)

若插值结点 $x_0, x_1, \ldots, x_n$ 互异,则满足插值条件的 $n$ 次插值多项式 $P(x)$ 存在且唯一

证明思路:插值条件给出关于 $a_0, a_1, \ldots, a_n$ 的线性方程组,系数矩阵为 Vandermonde 矩阵,行列式为

$$\prod_{n \ge i > j \ge 0} (x_i - x_j) \neq 0$$

(因为所有结点互异),故系数矩阵可逆,方程组有唯一解。$\blacksquare$

Part 3 · 拉格朗日插值
用基函数构造插值多项式

拉格朗日插值的核心思想是$n+1$ 个插值条件拆解为 $n+1$ 个基函数,每个基函数在一个结点取 1、在其他结点取 0:

拉格朗日插值基函数

$$l_k(x) = \prod_{\substack{j=0 \\ j \neq k}}^n \frac{x - x_j}{x_k - x_j}, \quad k = 0, 1, \ldots, n$$

性质:$l_k(x_i) = \delta_{ki}$(克罗内克 delta)。

拉格朗日插值多项式

$$L_n(x) = \sum_{k=0}^n y_k \, l_k(x)$$

可直接验证:$L_n(x_i) = \sum_k y_k \delta_{ki} = y_i$,满足所有插值条件。

直觉理解$l_k(x)$ 像一个"开关"——在 $x_k$ 处打开(值为 1),在其他结点处关闭(值为 0)。加权求和后,$L_n(x)$ 在每个结点取到正确的 $y_k$

例题 · 线性插值($n=1$

题目:已知误差函数 $\operatorname{Erf}(x) = \frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2} dt$ 的两个值 $\operatorname{Erf}(0.5) = 0.5205$$\operatorname{Erf}(1.0) = 0.8427$,用线性插值求 $\operatorname{Erf}(0.75)$

解:$L_1(x) = y_0 + \frac{y_1 - y_0}{x_1 - x_0}(x - x_0)$,代入 $x_0=0.5, x_1=1.0$

$$L_1(0.75) = 0.5205 + \frac{0.8427 - 0.5205}{1.0 - 0.5}(0.75 - 0.5) = 0.5205 + 0.3222 \times 0.25 \times 2 = 0.6816$$

对照真实值$\operatorname{Erf}(0.75) \approx 0.7112$,线性插值误差约为 $0.0296$

Part 4 · 插值误差与龙格现象
误差余项定理与高次插值的陷阱

定理 5.2(拉格朗日插值误差余项)

$f(x) \in C[a, b]$,且 $f^{(n+1)}(x)$$(a, b)$ 内存在,则插值余项为

$$R_n(x) = f(x) - L_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!} \omega_{n+1}(x), \quad \xi \in (a, b)$$

其中 $\omega_{n+1}(x) = \prod_{j=0}^n (x - x_j)$

误差上界:$|R_n(x)| \le \frac{M}{(n+1)!} |\omega_{n+1}(x)|$,其中 $M = \max_{a \le t \le b} |f^{(n+1)}(t)|$

龙格现象(Runge Phenomenon):对于函数 $f(x) = \frac{1}{1+x^2}$$[-5, 5]$ 上,用等距结点做 10 次插值多项式 $L_{10}(x)$,在区间边缘处会产生剧烈振荡,误差反而增大。高次插值不保证精度提升。

例题 · 误差函数表的步长选择

题目:$[0, \pi]$ 上制作 $\sin x$ 等距结点函数表,要求线性插值计算非表格点数据时准确到小数后两位(误差 $\le 0.01$),求步长 $h$

解:由误差公式 $|R_1(x)| \le \frac{h^2}{8} \max |f''(x)|$(其中 $|f''(x)| = |-\sin x| \le 1$),要求 $\frac{h^2}{8} \le 0.005$

$$\frac{h^2}{8} \le 0.005 \implies h^2 \le 0.04 \implies h \le 0.2$$

结论:步长取 $h = 0.2$ 即可满足精度要求。

Part 5 · 牛顿插值与均差
承袭性构造——从低次到高次

牛顿插值与拉格朗日插值结果相同(唯一性保证),但构造方式不同:拉格朗日用基函数,牛顿用均差(divided difference),具有承袭性——添加新结点时原有系数不用重算。

均差的定义

一阶均差$f[x_j, x_{j+1}] = \frac{f(x_{j+1}) - f(x_j)}{x_{j+1} - x_j}$

二阶均差$f[x_j, x_{j+1}, x_{j+2}] = \frac{f[x_{j+1}, x_{j+2}] - f[x_j, x_{j+1}]}{x_{j+2} - x_j}$

$n$ 阶均差:递归定义,均差值与结点排列顺序无关。

牛顿插值公式

$$N_n(x) = f(x_0) + f[x_0, x_1](x - x_0) + f[x_0, x_1, x_2](x - x_0)(x - x_1) + \cdots + f[x_0, \ldots, x_n](x - x_0) \cdots (x - x_{n-1})$$

均差表提供了从 $f(x_0)$ 到各阶均差的系统计算方法。

Part 6 · 切比雪夫结点与 Hermite 插值
高次插值为什么会炸,以及怎样用节点与导数信息补救

切比雪夫插值结点

课件在 Chap13 中把 Runge 现象继续推进了一步:既然高次等距插值在区间边缘会振荡,那么问题也许不只在“次数太高”,还在“节点选得不好”。对区间 $[-1,1]$ 上的 $n$ 次插值,切比雪夫结点取为

$$x_k=\cos\frac{(2k+1)\pi}{2(n+1)},\qquad k=0,1,\ldots,n$$

它们在区间两端更密,能减小 $\omega_{n+1}(x)=\prod_{j=0}^n(x-x_j)$ 的极大幅度,从而抑制等距节点下明显的边缘振荡。

课件主旨:Runge 现象并不意味着“高次插值彻底无用”,而是提醒我们:节点设计本身就是插值问题的一部分。切比雪夫结点是对“怎样选点更好”的直接回答。

Hermite 插值

如果已知的不仅是函数值 $f(x_i)$,还有节点处导数值 $f'(x_i)$,那么仅用普通插值会浪费信息。Hermite 插值要求逼近函数同时满足函数值条件与导数条件,因此比普通插值更适合处理“节点处斜率也已知”的问题。

两点三次 Hermite 插值的误差公式为

$$R(x)=f(x)-H_3(x)=\frac{f^{(4)}(\xi)}{4!}\big[(x-x_0)(x-x_1)\big]^2$$

这说明:导数信息的加入,相当于把节点条件“加倍”,也让逼近精度的局部控制能力显著增强。

例题 · 为什么切比雪夫结点能改善高次插值

题目:$f(x)=\dfrac{1}{1+x^2}$ 在区间上做高次插值时,为什么课件要从等距节点转向切比雪夫节点?

  1. 第一步:回忆误差项 $R_n(x)=\dfrac{f^{(n+1)}(\xi)}{(n+1)!}\omega_{n+1}(x)$
  2. 第二步:在等距节点下,$\omega_{n+1}(x)$ 在区间边缘常会变得很大,于是误差也被同步放大。
  3. 第三步:切比雪夫节点把节点向边缘加密,从而压低 $\omega_{n+1}(x)$ 的振荡幅度。

答案:切比雪夫节点并不是神秘配方,而是在误差公式层面直接针对“边缘振荡”开的药方。

易错点:不要把“Chebyshev 更好”理解成对所有情形都绝对更优。它改善的是高次插值在固定区间上的节点分布问题。

题目 · Runge 函数的等距高次插值

题目:对于函数 $f(x)=\dfrac{1}{1+25x^2}$,在区间 $[-1,1]$ 上取等距节点进行高次插值,当 $n$ 增大时,插值多项式在区间两端会出现什么现象?

选项说法判断
A插值多项式趋于直线错误。次数升高不会让整体插值自然退化成直线
B收敛到 $f(x)$错误。等距节点下高次插值并不保证一致收敛到原函数
C振荡加剧,误差变大正确
D插值多项式趋于零错误。端点振荡不是趋零,而是误差被放大

答案解析:$f(x)=\dfrac{1}{1+25x^2}$ 是经典 Runge 函数。对它在 $[-1,1]$ 上使用等距节点做高次多项式插值时,随着节点数增加,插值多项式会在区间两端出现明显振荡,误差反而变大,这就是 Runge 现象。

一句话记忆:高次插值不等于更准;等距节点 + 高次整体多项式,最容易在区间端点炸。
Part 7 · 分段插值与样条
用低次多项式分段拼接,避免龙格现象

龙格现象说明高次整体插值不可靠。解决方案:用分段低次多项式在小区间上插值,再用连接条件拼成整体光滑函数。

分段线性插值

在每个子区间 $[x_j, x_{j+1}]$ 上用线性函数:

$$L_h(x) = \frac{x_{j+1} - x}{x_{j+1} - x_j} y_j + \frac{x - x_j}{x_{j+1} - x_j} y_{j+1}, \quad x \in [x_j, x_{j+1}]$$

三次样条插值(Definition 5.4)

给定分划 $a = x_0 < x_1 < \cdots < x_n = b$$S(x)$ 满足:

  1. 在每个子区间上是三次多项式;
  2. $S(x)$ 二阶导数 $S''(x)$$[a, b]$ 上连续;
  3. $S(x_j) = y_j$(插值条件)。

待定系数共 $4n$ 个,条件方程 $4n - 2$ 个,还需 2 个边界条件(自然边界 $S''(x_0)=S''(x_n)=0$、周期边界或固定导数边界)。

样条的极小曲率性质:在所有满足插值条件的光滑函数中,三次样条的总曲率 $\int_a^b [S''(x)]^2 dx$ 最小。这解释了为什么样条曲线"最光滑"——它是在能量最小意义下的最优插值。
Part 8 · 最小二乘拟合
当数据有噪声时——不再要求经过每个点

插值要求 $P(x_i) = y_i$ 严格成立,但实验数据通常带有测量噪声——强制拟合噪声数据反而会放大误差。最小二乘法(Least Squares)放弃逐点精确,通过最小化残差平方和得到最优拟合:

线性最小二乘问题

给定数据点 $(x_i, y_i)$$i=1, \ldots, m$,拟合函数 $\varphi(x) = c_0 + c_1 x$。最小化

$$S(c_0, c_1) = \sum_{i=1}^m [\varphi(x_i) - y_i]^2 = \|GX - F\|_2^2$$

其中 $G = \begin{bmatrix} 1 & x_1 \\ \vdots & \vdots \\ 1 & x_m \end{bmatrix}$$X = \begin{bmatrix} c_0 \\ c_1 \end{bmatrix}$

正规方程组与几何意义

残差平方和最小化 $\min_X \|GX - F\|_2^2$ 等价于解正规方程组

$$G^T G \, X = G^T F$$

几何意义:在由 $G$ 的列向量张成的子空间中找 $F$ 的最近似向量。最优解对应于把向量 $F$ 正交投影到这个子空间上,因此最小残差 $r=F-GX^*$ 与该子空间正交,即

$$G^T r=0$$

这就是“残差与拟合子空间垂直”的几何本质,也是正规方程组的来源。

为什么课件还要讲 QR 分解

Chap16 进一步指出:虽然正规方程组形式紧凑,但它会把条件数平方化,不一定是数值上最稳的做法。若把设计矩阵分解为

$$G=QR$$

其中 $Q$ 的列向量正交,$R$ 为上三角矩阵,则最小二乘问题可化为求解一个更稳定的三角方程组。也就是说,QR 分解不是另起炉灶,而是在同一个最小二乘问题上换了一条数值更稳的实现路线

例题 · 线性拟合

题目:用最小二乘法拟合数据 $(-3, -0.277), (-2, 0.895), (-1, -1.565), (0, 3.456), (1, 3.060), (2, 4.856), (3, 3.898)$

解:$\varphi(x) = c_0 + c_1 x$,解正规方程组得 $c_0 = 2.0464, c_1 = 0.8955$,残差 2-范数 $\|r\|_2 = 3.4142$

用三次多项式拟合同样数据,残差降为 $\|r\|_2 = 2.9007$。这说明提高多项式次数可能降低残差,但也会增加模型复杂度,因此在实际计算中需要在“误差更小”和“模型更简洁”之间作权衡。

Part 9 · 应用小结
插值与拟合在工程中的典型应用
应用场景方法原因
函数表查值线性插值 / Newton 插值用少量节点近似区间内部函数值
工程实测数据处理最小二乘多项式拟合测量数据有噪声,直接插值会放大误差
飞机机翼剖面与曲线重建三次样条插值保证曲线平滑并控制弯曲程度
高次多项式插值节点设计切比雪夫结点减轻等距节点下的边缘振荡
数值积分(Newton-Cotes)等距结点插值近似被积函数用多项式逼近复杂函数再积分

复习速查

  • 拉格朗日基函数$l_k(x) = \prod_{j \neq k} \frac{x - x_j}{x_k - x_j}$,性质 $l_k(x_i) = \delta_{ki}$
  • 插值误差余项$R_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!}\omega_{n+1}(x)$
  • 龙格现象:高次等距插值在区间边缘产生振荡,不可靠。
  • 牛顿插值公式$N_n(x) = f(x_0) + f[x_0,x_1](x-x_0) + \cdots$,具有承袭性。
  • 切比雪夫结点:通过重新设计节点分布来抑制高次等距插值的边缘振荡。
  • Hermite 插值:同时利用函数值与导数值,误差中出现平方节点因子。
  • 三次样条:分域三次多项式 + $S''(x)$ 连续 + 2 个边界条件。
  • 最小二乘:解正规方程组 $G^T G X = G^T F$;若从数值稳定性考虑,可转而用 QR 分解实现。
  • 误差分类:插值误差来自逼近本身,数值舍入误差来自有限精度计算,两者来源不同。

参考来源