# Day 6｜泰勒展开与牛顿法：近似、误差和收敛

泰勒展开把局部函数行为写成多项式；牛顿法把这种近似转化成求根与优化算法。要理解它们，既要看公式，也要看余项与适用条件。

## 一、泰勒展开：建立局部模型

### 1. 一元泰勒公式

$$
f(x_0+h)=\sum_{k=0}^{n}\frac{f^{(k)}(x_0)}{k!}h^k+R_n(h).
$$

常数项给出函数值，一阶项描述斜率，二阶项描述局部弯曲。展开点附近通常更容易控制误差，离得远时不能只凭多项式阶数判断精度。

### 2. 余项：近似与原函数差多少？

在满足相应可微性条件时，拉格朗日余项为：

$$
R_n(h)=\frac{f^{(n+1)}(\xi)}{(n+1)!}h^{n+1}.
$$

若连接展开点与目标点的区间内 $|f^{(n+1)}|\le M$，便有 $|R_n(h)|\le M|h|^{n+1}/(n+1)!$。这把“近似得不错”变成可计算的误差界。

佩亚诺余项 $o(h^n)$ 则表达：当 $h\to0$ 时，余项相对 $h^n$ 可以忽略。有限阶公式与无穷级数不同；无限可微也不保证函数等于自己的泰勒级数。

### 3. 常用的零点附近近似

$$
\begin{aligned}
e^h&=1+h+\tfrac12h^2+O(h^3),\\
\sin h&=h-\tfrac16h^3+O(h^5),\\
\cos h&=1-\tfrac12h^2+O(h^4),\\
\ln(1+h)&=h-\tfrac12h^2+O(h^3),\\
(1+h)^a&=1+ah+\tfrac12a(a-1)h^2+O(h^3),\\
\frac1{1-h}&=1+h+h^2+O(h^3).
\end{aligned}
$$

这些式子用于极限、误差估计和局部建模；此处均讨论 $h\to0$，不是任意输入上的等精度替代。

## 二、多元展开：梯度与 Hessian

### 1. 从一个变量推广到多个变量

对二阶连续可微函数：

$$
f(x+d)=f(x)+g^Td+\frac12d^THd+o(\|d\|^2),
$$

其中 $g=\nabla f(x)$，$H=\nabla^2f(x)$。梯度是向量，Hessian 是由二阶偏导组成的矩阵，混合偏导描述不同变量之间的局部耦合。

### 2. Hessian 如何判断驻点？

在梯度为零的点，Hessian 正定意味着严格局部极小，负定意味着严格局部极大，不定意味着鞍点。半正定或半负定时，二阶信息可能不足，需要继续分析。

例如 $x^2-y^2$ 在原点沿一个方向上升、另一个方向下降。拐点则关注凹凸性的改变，与极值点不是同一概念。

## 三、牛顿求根：让切线替代曲线

### 1. 更新公式与平方根例子

解 $f(x)=0$，把切线模型设为零，得到：

$$
x_{t+1}=x_t-\frac{f(x_t)}{f'(x_t)}.
$$

求 $\sqrt a$ 可令 $f(x)=x^2-a$，得到 $x_{t+1}=(x_t+a/x_t)/2$。非线性方程、工程反演和参数校准，都可能用到这种迭代求根思想。

### 2. 局部二阶收敛

若根 r 是单根、函数足够光滑且初值足够接近，则误差满足：

$$
e_{t+1}=\frac{f''(r)}{2f'(r)}e_t^2+o(e_t^2).
$$

“二阶”说的是误差大致按平方缩小，不是每步都保证固定倍数提速。“局部”强调初值与邻域条件。

### 3. 不动点、二循环与失效

将迭代写成 $x_{t+1}=N(x_t)$，根对应满足条件的不动点。局部 $|N'(r)|<1$ 是常见的吸引性充分条件。

导数为零、初值不合适或迭代进入循环都可能导致失败。例如 $f(x)=x^3-2x+2$ 从 0 出发会在 0 与 1 之间往返。重根还可能降低标准牛顿法的收敛阶。

### 4. 割线法：用差商替代导数

$$
x_{t+1}=x_t-f(x_t)\frac{x_t-x_{t-1}}{f(x_t)-f(x_{t-1})}.
$$

它通过两个历史点估计斜率，适用于导数不便计算的情形，但仍受初值与分母过小等问题影响。

## 四、牛顿优化：对梯度求根

### 1. 一维与多维公式

寻找驻点相当于解 $f'(x)=0$，一维更新为 $x_{t+1}=x_t-f'(x_t)/f''(x_t)$。多维则求解：

$$
Hd=-g,\qquad x_{t+1}=x_t+d.
$$

这也是二次局部模型的驻点条件。H 正定且 g 非零时，d 是下降方向；实际计算通常解方程，不先显式求逆。

### 2. 梯度下降与牛顿法的区别

梯度下降统一按学习率缩放梯度；牛顿法借助曲率调整不同方向的步幅。对正定二次函数，精确牛顿法可以一步到最小点；一般函数并没有这种保证。

牛顿法寻找的是驻点，也可能停在鞍点或极大值。梯度下降同样不能无条件保证逃离所有鞍点。

### 3. 奇异、病态与计算成本

H 奇异时标准牛顿方程可能没有唯一解；H 病态时，小扰动可能造成较大的步长变化。稠密 Hessian 存储需要 $O(n^2)$，常规稠密求解通常需要 $O(n^3)$；构造 H 的成本还取决于函数结构。

因此，迭代次数少不等于总运行时间短。

### 4. 阻尼、正则化与信赖域

阻尼牛顿法使用 $x_{t+1}=x_t+\alpha d$，通过步长控制改善表现；正则化可使用 $H+\lambda I$，但若目标是确保正定，$\lambda$ 必须足够大。

信赖域限制局部模型的使用范围；伪逆通过奇异值分解处理不可逆方向，将零奇异值的倒数位置置零。它们各有适用条件，不是统一的“必收敛补丁”。

## 五、工程中的近似思想

数学库计算 sin、exp 等函数时，常组合范围规约、多项式或有理逼近、查表等技术；某些实现也会使用 CORDIC。局部泰勒展开帮助理解原理，但实际库并非全部照搬泰勒级数。

拟牛顿法估计曲率，Adam 低成本调整坐标步长，XGBoost 使用损失的二阶局部近似。它们在 day7 进一步展开。比较这些方法时，应先建立简单、可复现的 **Baseline**，再判断新方法是否带来实际提升。
