形式陈述
设 、 是赋范向量空间中的开集, 在 处 Fréchet 可微, 在 处 Fréchet 可微。则复合映射公理库函数复合Function composition · Composition of maps按先 f 后 g 的次序把映射串联为 g∘f。 在 处可微,而且
这里 与 都是连续线性映射,右侧是线性映射的复合,不是坐标逐项相乘。量词条件不能省略:需要 在 可微、 在实际到达点 可微,并且 的邻域像落在 的定义域内。
证明来自余项控制。写
以及
令 。由于 ,代入后得到
后两项都是 ,故导数为 。
在一维实函数情形,该式退化为熟悉的
若 、,采用列向量约定时则为 Jacobian 矩阵乘法
直觉
复合函数把微小扰动分两段传递: 先被 变成输出空间中的一阶扰动,再被 继续变换。局部误差不会凭空变成一阶项,因为第一层输出扰动至多与 同阶,第二层的高阶余项仍然比它小一个量级。
矩阵相乘的顺序记录了数据流方向。先执行 再执行 ,对扰动却写成 ;若交换两个 Jacobian,不但维数往往不匹配,也代表完全不同的计算图。自动微分正是把长复合拆成局部 Jacobian,再选择从输入向输出或从输出向输入累积这些线性映射。
例子与计算
取 ,。在 处,,
因此
直接展开 并求偏导,也得到梯度坐标 。这个例子展示的是中间空间两个方向如何汇合,而不是把两个导数逐分量相乘。
沿可微曲线 ,标量函数 满足
它把梯度与方向导数联系起来,也说明“对路径求导”是同一线性复合原理。
边界与失败情形
仅有方向导数不足以保证链式法则的 Fréchet 版本。函数
在原点沿每条直线都有方向导数,但这些方向导数组不成一个线性映射,因此不能把它当作 放进 Jacobian 乘积。链式法则需要真正控制所有方向的统一余项。
外层函数只在某些方向可导也不够。例如 在 不可导;即便内层 完全光滑, 在零点仍不可导。另一方面,复合函数可导并不反推每一层可导:取 、,复合为 ,但 在零点不可导。
高阶链式法则会出现双线性项而非简单矩阵连乘。例如
忽略第一项或把 Hessian 当成逐项乘积,会丢失曲率通过内层映射传播的部分。
推论与应用
多层复合 的导数是按反向书写顺序排列的乘积 。前向模式把一个输入切向量逐层推进,反向模式把一个输出余切向量逐层拉回;二者计算的是同一链式法则,只是结合次序不同。
变量替换、隐函数求导、灵敏度分析与神经网络反向传播都依赖这一结论。实际计算中还要区分数学上的导数存在与程序实现是否在分支点、溢出或不可微原语处忠实表示它。
参考资料
- Walter Rudin, Principles of Mathematical Analysis, 3rd ed., McGraw-Hill, 1976,§9.15。
- Serge Lang, Real and Functional Analysis, 3rd ed., Springer, 1993,关于 Fréchet derivative 与 chain rule 的章节。
- Michael Spivak, Calculus on Manifolds, Westview Press, 1965,Ch. 2。