Jacobian、梯度与条件数怎样描述敏感性?¶
先备知识¶
掌握 Fréchet 导数、矩阵表示、链式法则与算子范数。
学习目标¶
- 正确排列 Jacobian;2. 解释梯度的几何意义;3. 用条件数描述局部输入敏感性。
牵引问题¶
同一个模型可能导数不大却因尺度选择显得病态。怎样区分模型本身敏感与算法实现不稳?
探索与猜想¶
对 \(f:\mathbb R^n\to\mathbb R^m\),导数矩阵的第 \(i,j\) 项是 \(\partial f_i/\partial x_j\)。它把输入列向量增量映为输出列向量增量。
概念与理论¶
Jacobian 与梯度¶
实值函数的 Jacobian 是 \(1\times n\) 行矩阵;梯度 \(\nabla f(a)\) 约定为对应的列向量,于是 \(Df(a)h=\nabla f(a)^\mathsf Th\)。 Cauchy–Schwarz 表明单位方向中,梯度方向给出最大的方向增长率。
局部条件数¶
线性系统或局部可逆方阵 \(A\) 的绝对放大由 \(\|A\|\) 控制;相对敏感性常用
衡量。矩阵奇异时条件数视为无穷。条件数描述问题敏感性:输入误差可能被放大多少。 算法稳定性描述实现是否额外放大舍入和离散误差,二者不能混同。
变量与输出重新缩放会改变数值条件数,所以报告必须同时说明范数和尺度。
例题与迁移¶
例 1:梯度与等值线¶
若 \(f(x,y)=x^2+4y^2\),梯度 \((2x,8y)\) 与正则等值椭圆切向量正交。
例 2:近奇异缩放¶
\(A=\operatorname{diag}(1,\varepsilon)\) 的无穷范数条件数为 \(1/|\varepsilon|\); 第二坐标的输出误差反求输入时被放大。
即时检验与回望¶
即时检验 1¶
\(f:\mathbb R^3\to\mathbb R^2\) 的 Jacobian 尺寸?
答案
\(2\times3\),输出分量对应行,输入坐标对应列。
即时检验 2¶
条件数大是否证明某个算法不稳定?
答案
不能;它说明问题敏感,算法还可能稳定地达到该问题允许的精度。
常见误区与后续¶
- 梯度是列向量约定,导数是线性泛函;写公式时要核验转置。
- 条件数依赖范数和尺度。
- Jacobian 数值可逆不等于已满足反函数定理的邻域条件。
习题与答案¶
习题 1¶
求 \(f(x,y)=(x^2+y,xy)\) 的 Jacobian。
答案
\(\begin{pmatrix}2x&1\\y&x\end{pmatrix}\)。
习题 2¶
求 \(x^2+y^2\) 的梯度。
答案
\((2x,2y)^\mathsf T\)。
习题 3¶
证明梯度与正则等值线切向量正交。
答案
沿等值线复合函数为常数,链式法则给 \(\nabla f^\mathsf Tv=0\)。
习题 4¶
单位方向最大方向导数是多少?
答案
\(\|\nabla f(a)\|_2\),在梯度非零时由其单位方向取得。
习题 5¶
奇异矩阵为何无有限条件数?
答案
逆映射不存在,某些非零输入方向被压到零,反问题无法唯一恢复。
习题 6¶
求 \(\operatorname{diag}(2,1)\) 的无穷范数条件数。
答案
\(\|A\|_\infty=2,\|A^{-1}\|_\infty=1\),故为 \(2\)。
习题 7¶
链式法则下 Jacobian 怎样相乘?
答案
\(J_{g\circ f}=J_g(f(a))J_f(a)\)。
习题 8¶
为何缩放变量会改变条件数?
答案
缩放等于在 Jacobian 右乘尺度矩阵,改变其各方向放大比例。
习题 9¶
区分绝对与相对扰动。
答案
绝对扰动看 \(\|\Delta x\|\),相对扰动再除以基准量 \(\|x\|\)。
习题 10¶
为什么报告条件数时要写范数?
答案
不同算子范数给出不同数值;不写范数就缺少可复核定义。
小结¶
Jacobian 是导数映射的坐标矩阵,梯度编码实值函数的一阶几何,条件数刻画局部问题 敏感性。三者都必须与维度、范数和尺度一起解释。