动机
一个量常常依赖于一些中间变量,而这些变量又依赖于其他输入。高度取决于水平位置,位置又取决于时间;用直角坐标表示的函数,也可以通过极坐标输入来研究。在这两种情形中,变化都要经过中间变量。链式法则负责把每条影响路径的贡献准确相加。
可微性让这个过程有严格依据。每一层函数都可以用线性映射近似,因此复合函数可以用这些线性映射的复合来近似。在坐标中,复合对应矩阵乘法。矩阵的行列数记录输入、中间变量和输出各有多少个,所以核对维数本身也是核对依赖结构的一种方法。
方向导数是特别重要的一种复合:把函数限制在经过基点的某条直线上。链式法则于是把梯度转化为沿该直线的变化率。若限制在一般可微曲线上,就得到随路径移动时的变化率。这些公式把坐标求导与最快上升、下降和等值集的几何问题联系起来。
开始之前
对于 F:Rn→Rm,雅可比矩阵有 m 行、n 列。位移采用列向量;实值函数的梯度通过内积作用于位移。每写一个雅可比矩阵,都应同时注明它的取值点:外层导数在内层函数的输出处计算。
定义
定义
指定方向上的导数
设 f 定义在 a∈Rn 的开邻域内,u 是单位向量。若有限双侧极限
Duf(a)=t→0limtf(a+tu)−f(a)存在,就称它为沿 u 的方向导数。因为 ∥u∥=1,参数 t 表示沿该直线的带符号距离。
同一个差商也可以使用任意固定向量 v。此时描述的是参数变化一单位时的输出变化,移动速度为 ∥v∥。若 v=0,相应变化率等于 ∥v∥Dv/∥v∥f(a)。单位向量约定的作用,是把几何方向与人为选择的移动速度分开。
路径 a+tu 只是接近该点的一种规定方式。沿它的导数存在,首先只说明这条路径上的行为。即使每个方向导数都存在,也不自动保证有一个线性近似适用于所有小位移。下面的公式利用可微性建立这种更强的联系。
定义
沿曲线观察到的变化率
设 γ:I→Rn 为可微曲线,t0 位于区间内部,且 f 定义在 γ(t0) 附近。沿曲线观察到的量是一元函数 f∘γ;它在 t0 处的导数表示相对于曲线参数的变化率。向量 γ′(t0) 是速度,同时包含方向与速率。
因此,时间导数和单位方向导数可能具有不同单位。以秒为参数的曲线给出每秒的输出变化;空间坐标下的单位方向导数给出每单位距离的输出变化。若当前速率非零,把前者除以速率,才得到当前移动方向上每单位距离的变化率。
定理与命题
定理
矩阵形式的链式法则
设 F:U⊆Rn→Rm 在 a 处可微,G:V⊆Rm→Rp 在 F(a) 处可微。假设 U,V 为开集,且复合函数在 a 附近有定义,则
D(G∘F)(a)=DG(F(a))DF(a).矩阵维数为 (p×m)(m×n)=p×n。
内层导数先作用于输入位移,所以虽然它写在乘积右边,实际作用的次序却在前。颠倒两个矩阵通常会改变结果,甚至使乘法没有定义。外层取值点 F(a) 同样不可遗漏:外层导数衡量的是从当前输入真正到达的中间位置附近的响应。
定理
曲线变化率与梯度
若 f 在 a=γ(t0) 处可微,且 γ 在 t0 处可微,则
(f∘γ)′(t0)=∇f(a)⋅γ′(t0).特别地,对单位向量 u,
Duf(a)=∇f(a)⋅u.若 ∇f(a)=0,最大的单位方向变化率为 ∥∇f(a)∥,在方向 ∇f(a)/∥∇f(a)∥ 取得;最小值为其相反数,在反方向取得。
柯西–施瓦茨不等式把内积的绝对值控制在梯度范数以内,等号条件确定最大与最小的方向。如果梯度为零,所有单位方向导数均为零,就没有唯一的一阶最快上升方向。仅凭这个结论还不能判断该点是不是极值点。
证明思路
证明
把两个线性近似连接起来
令 A=DF(a)、b=F(a)、B=DG(b)。对小位移,
F(a+h)=b+Ah+r(h),r(h)=o(∥h∥).记 Δ=Ah+r(h)。外层展开为
G(b+Δ)=G(b)+BΔ+s(Δ),s(Δ)=o(∥Δ∥).代入后,一阶项为 BAh,余项为 Br(h)+s(Δ)。由线性映射的范数上界,充分小的 h 满足 ∥Δ∥≤C∥h∥。所以 Br(h)=o(∥h∥),外层余项估计也推出 s(Δ)=o(∥h∥);若 Δ=0,该余项直接等于零。因此复合函数具有导数 BA。
把链式法则用于直线 γ(t)=a+tu,由于直线的导数就是列向量 u,便得到方向导数公式。把它用于一般可微曲线,便得到速度内积公式。这个推导不要求曲线以单位速率移动。
等值集也有一个直接的几何结果。若可微曲线在 t0 附近满足 f(γ(t))=c,则沿曲线观察到的值恒定,因而
∇f(a)⋅γ′(t0)=0.
当梯度非零时,它垂直于所有这样的切向量。三维正则等值面的法向量可由此确定。这里讨论的是真正在等值集中运动的可微曲线,而不是先假定任意向量都一定能由这样的曲线实现。
例题详解
例题
两层向量函数的乘法次序
设
F(x,y)=(x2+y, x−y2),G(u,v)=(uev, u2+v).在 a=(1,1),中间输出为 F(a)=(2,0),所以
DF(a)=(211−2),DG(F(a))=(1421).按复合次序相乘得
D(G∘F)(a)=(49−32).例如第一行第一列的 1⋅2+2⋅1=4,就是输入 x 经过两条中间通道,对第一个最终输出产生的总影响。
可直接核对:第一个复合分量是 (x2+y)ex−y2,在 (1,1) 的两个偏导数为 4,−3;第二个分量是 (x2+y)2+x−y2,两个偏导数为 9,2。独立展开核对了矩阵次序与各层取值点。
例题
实际路径与最快上升方向
设 T(x,y)=40−2x2−y2,路径为 γ(t)=(1+t,2−t2)。当 t=0 时,位置是 a=(1,2),速度是 (1,0),而
∇T(a)=(−4,−4).因此沿当前路径的变化率为 −4。直接代入得 T(γ(t))=34−4t+2t2−t4,在零点的导数也为负四。
同一点处,单位距离下最快上升的方向是 (−1,−1)/2,速率为 42;最快下降方向相反,速率为 −42。方向 (1,−1)/2 的一阶变化率为零,它是等值椭圆 2x2+y2=6 的切向方向。
实际运动方向由速度决定,并不一定是最快上升方向。最快方向问题是在同一个点比较所有单位方向;这里的几何比较使用两个坐标相同的空间单位。
例题
极坐标中的角度变化率
设 f(x,y)=x2y+xy2,并令
P(r,θ)=(rcosθ,rsinθ),r>0.其雅可比矩阵为
DP(r,θ)=(cosθsinθ−rsinθrcosθ).对 H=f∘P,链式法则给出
Hr=fxcosθ+fysinθ,Hθ=−rfxsinθ+rfycosθ,其中 f 的偏导数在 P(r,θ) 处取值。
当 (r,θ)=(2,π/2),直角坐标点为 (0,2),此时 fx=4、fy=0。因此 Hr=0、Hθ=−8。角度参数对应的切向速度向量长度为二,所以同一切向方向上每单位距离的变化率是 −4。因子 r 记录沿圆周的速度,不能从角度导数中随意删除。
阅读依赖关系图
设 w=g(u1,…,um),而每个中间变量 uj 都依赖于 x1,…,xn。对固定输入 xi,
∂xi∂w=j=1∑m∂uj∂g∂xi∂uj.
每一项对应从 xi 经过 uj 到输出的一条路径。沿路径相乘,再对所有中间变量求和,恰好就是雅可比矩阵的行乘列规则。
同一项中的两个因子属于不同层次。第一个因子在当前的中间变量值处计算,第二个因子在原始输入点处计算。先写明这些点,再相乘,能够避免把所有导数都代入同一个坐标组,甚至把维数不符的坐标代入外层函数。
长复合中的矩阵乘法可以利用结合律分组,但不能改变各层的次序。每一次乘法都可用维数核对。标量输出不意味着它的雅可比矩阵应写成列:它是一行,作用于输入列向量。梯度内积记号表达的正是同一个线性作用。
选择题目真正要求的变化率
先识别参数:题目问的是每秒、每单位距离,还是每单位角度的变化?若问沿某方向每单位距离的变化,应把方向向量归一化;若问沿实际运动每秒的变化,应保留速度向量的长度。若变化的是坐标变换中的角度,就使用变换雅可比矩阵相应的列。
再确定各空间中的基点。曲线参数给出空间位置,坐标变换给出直角坐标输入,内层函数给出外层导数的取值点。把这些值固定以后,才组装导数因子。这样能把“函数怎样连接”与“当前在哪里计算”分开检查。
最后解释符号和大小。内积为负表示此刻沿指定运动函数正在下降;内积为零表示没有一阶变化,并不保证沿整条直线一直保持常数。运动继续后,曲率与高阶效应仍可改变函数值。对于等值集,零变化来自路径确实留在同一水平集中的条件。
切向方向不等于整条直线都是等值线
考虑 f(x,y)=x2+y2 在 (1,0) 处的情况。梯度为 (2,0),所以竖直单位方向的方向导数为零。但沿竖直直线,f(1,t)=1+t2;每个非零位移都会改变函数值,虽然基点处的导数为零。
与之比较,曲线 γ(t)=(cost,sint) 经过同一个点,在零点也有相同的竖直速度,却因为 f(γ(t))=1 而始终留在等值圆上。两条路径的一阶观察变化率相同,二阶偏离却不同。方向导数记录的是共同的一阶信息,不负责区分后续效应。
这个比较说明切向量是瞬时速度,并不保证沿着相应整条直线都留在曲面上。使用梯度作法向量时,先明确等值集方程,并核实目标点处梯度非零;再对真正留在该集合中的曲线应用链式法则。这样得到的正交关系是精确的局部结论,即使等值集整体形状较复杂也成立。
常见错误
常见错误
方向向量与速度向量扮演不同角色
若方向由 v=(3,4) 给出,单位代表是 (3/5,4/5)。使用 a+tv 的差商表示以速率五移动,所以其变化率是单位方向变化率的五倍。只有要求每单位距离的变化时才需要归一化;把实际速度归一化会改变时间导数。
不能只因偏导数存在就使用梯度内积公式。该公式的条件是可微。即使所有方向导数都存在,它们对方向的依赖也可能不是线性的。最后一道练习给出连续函数的具体例子,指出这种差别。
总结
链式法则复合导数映射,并按函数次序相乘雅可比矩阵。沿曲线的实值变化率是梯度与速度的内积;单位方向下就是方向导数。柯西–施瓦茨不等式确定最快上升与下降。等值集中的切向速度垂直于梯度。取值点、矩阵维数和参数单位共同保证这些解释一致。
练习
思考检查
设 F(s,t)=(s+t,st)、G(u,v)=u2+v,用矩阵链式法则求 D(G∘F)(1,2)。
外层导数应在 F(1,2) 处取值。
解答 · 解答一:两个中间输入之后的一个输出
F(1,2)=(3,2),所以 DG(3,2)=(6,1),并且
DF(1,2)=(1211).相乘得行向量 (8,7)。
思考检查
设 f(x,y)=ex−y+xy,求原点处沿 (3,4) 方向的单位方向变化率,以及最大的单位方向变化率。
解答 · 解答二:指定方向与最大速率
函数光滑,∇f(0,0)=(1,−1)。给定方向的单位向量为 (3/5,4/5),所以变化率为 −1/5。最大单位变化率为 2,在 (1,−1)/2 方向取得。若直接使用 (3,4),得到的是参数变化率 −1。
思考检查
在原点外定义 q(x,y)=x3/(x2+y2),并令 q(0,0)=0。证明原点处所有方向导数存在,但函数不可微。
先沿任意固定单位向量计算,再与坐标偏导数所决定的候选梯度比较。
解答 · 解答三:方向信息未必线性
对单位向量 u=(u1,u2) 及非零 t,有 q(tu)=tu13,所以每个方向上 Duq(0)=u13。坐标偏导数给出候选梯度 (1,0);若可微,则在 (1,1)/2 方向上的导数应是 1/2,实际却为 1/(22),因此不可微。它仍然连续,因为 ∣q(x,y)∣≤x2+y2。
直线可能错过弯曲的趋近路径
学习链式法则时,可以先看标量内层函数 g:Rn→R 与一元外层函数 ϕ。若 g 在 p 可微,ϕ 在 g(p) 可微,且复合在附近有定义,则
D(ϕ∘g)(p)=ϕ′(g(p))Dg(p).
这个标量情形可以先于一般矩阵法则学习。例如 g(x,y)=x2+y2、ϕ(s)=es,复合函数在 (1,0) 的梯度是 e(2,0)=(2e,0)。外层导数代入的是 g(1,0)=1,而不是输入坐标对。在已经可微的条件下,方向导数公式也能直接由线性余项定义推出,无须先掌握矩阵乘法。
例题
所有方向导数都存在,函数却不连续
在整个平面上定义
f(x,y)=⎩⎨⎧x2+y4xy2,0,(x,y)=(0,0),(x,y)=(0,0).分母只在原点为零,而原点的函数值已单独指定。固定一个单位方向 u=(a,b),满足 a2+b2=1。我们必须计算定义中的差商,不能先假设梯度公式成立。当 t=0 时,
f(ta,tb)=a2+t2b4tab2.若 a=0,先除以 t,再取极限,得到
Duf(0,0)=t→0lima2+t2b4ab2=ab2.若 a=0,整条直线都有 x=0,所以 f(0,tb)=0,从而 Duf(0,0)=0。这一情况必须单独处理,因为 b2/a 此时无定义。因此,每个固定单位方向都有有限的双侧方向导数。沿每条固定直线,函数本身也都趋向零。
现在沿抛物线 γ(t)=(t2,t) 趋近。当 t=0 时,
f(t2,t)=t4+t4t4=21,∥γ(t)∥=t4+t2⟶0.函数值不趋向 f(0,0)=0。因此 f 在原点不连续,更不可能在那里可微。只要一条这样的路径就能否定连续性,无须检查所有可能的曲线。
为什么所有直线检查都错过了它?直线固定两个坐标的比例;抛物线上却有 x=y2,趋近原点时方向在改变。沿这条曲线,分母两项始终完全平衡。沿固定的非竖直直线,x2 最终主导 y4;竖直线上则是分子恒为零。对每个固定方向分别成立的结论,不等于对随距离变化的方向有统一估计。
常见错误
坐标偏导存在,不代表可以使用链式法则
这里 fx(0,0)=fy(0,0)=0。若错误地使用梯度公式,就会断言所有方向的变化率都是零。实际上,u=(1,1)/2 的定义差商给出 Duf(0,0)=1/2。此外,虽然 γ′(0)=(0,1),复合函数 f∘γ 在零点却连连续都做不到。不能使用链式法则,因为 f 可微这一条件不成立。
思考检查
4. 比较直线、曲线路径与前面的连续反例。
对上面的 f,求 u=(3/5,4/5) 与 u=(0,1) 的方向导数。对固定实常数 c 和 t=0,计算 f(ct2,t)。说明为什么它对连续性的否定,比前面在原点取零的 q(x,y)=x3/(x2+y2) 更强。
解答 · 4. 方向导数中的方向必须固定
第一个方向导数是 (4/5)2/(3/5)=16/15;竖直方向导数是零。沿这一族曲线路径,
f(ct2,t)=c2t4+t4ct4=c2+1c.每个固定的 c=0 都在输入趋近原点时给出非零极限。这些是曲线路径,而不是方向向量固定的直线。前面的 q 虽然所有方向导数存在且不可微,却仍然连续,因为 ∣q(x,y)∣≤x2+y2。两个例子都不可微,只有现在的 f 还不连续。必须区分这两种不同的逻辑失败。