复习提纲,只对应 M2.4 的单样本、标量、单参数链式法则;不是完整 M2.4 记录,也不构成 M3 通过。掌握证据只在学习档案。
1. 本课位置
上一课只确认:可导、定义域内点、局部极值时 f'(a) = 0;逆命题不成立。这一课回答另一个问题:参数 w 变一点,loss L 变多少?先只看单样本、标量、单参数,不推广到向量或整批。本课所有量都是标量,没有 shape 对齐问题。
2. 图示
w --(p = 3w + 1)--> p --(r = p - y)--> r --(L = r^2)--> Ly 是固定标签,本课视作常数。其他参数(例如 bias)也先固定。链上每个箭头是一段局部映射。
直觉:w 变一点,p 按 dp/dw 变;p 的变化再按 dr/dp 传到 r;r 的变化再按 dL/dr 传到 L。每层放大倍数相乘,就是总放大倍数。
3. chain rule
dL/dw = dL/dr * dr/dp * dp/dw每段导数在对应的中间值处求值:dL/dr = 2r 用的是当前这一步的 r,不是别处的 r。整条链是乘积,不是求和;写成逐项约分只是记忆图像,不是严格证明。
4. 一个数值例子
p = 3w + 1,y = 5,在 w = 1 处:
p = 4, r = -1, L = 1dp/dw = 3, dr/dp = 1, dL/dr = 2r = -2dL/dw = 3 * 1 * (-2) = -6在 w = 1 附近,w 稍微增大时 L 下降;所以局部下降方向是增大 w。
5. 精确导数、差商与线性预测
同一例子取 h = 0.01:
实际 ΔL = L(1.01) - L(1) = 0.9409 - 1 = -0.0591线性估计 = dL/dw * h = -6 * 0.01 = -0.06两者差 0.0009,来自被忽略的二阶项 9h^2三者要分清:
- exact derivative:
dL/dw = -6,是一个极限值。 - finite difference average rate:
ΔL/h,h != 0。它按定义就是该区间的平均变化率,精确算术下没有计算误差;它只是 derivative 的近似,偶尔恰好相等。 - local linear prediction:
L(w + h) ≈ L(w) + dL/dw * h,误差由被省略的高阶项控制;精确算术下h变小时误差更小,但数值上h过小会放大舍入误差,不能承诺越小越好。
差商里 h 始终在,不能因为 h 小就把它当 0 忽略;求极限也不是直接把 0 代进分母。
6. 输入符号与零输入
单输入下 dL/dw = 2r * x。x < 0 会让方向反转,同一个 residual 使 w 朝相反方向更新。loss 是 r^2,由 |r| 决定:r 的数值变大不等于 absolute residual 变大,两者可以相反。
x = 0 时预测 p = w*x + b 不随 w 变:weight 无法改变预测,bias 仍然可以。权重导数为 0 不代表 loss 为 0,也不代表预测与 loss 无关。
Fermat 回顾:可导 + 定义域内点 + 局部极值 => f'(a) = 0。端点与尖角都不在这个结论的范围内。
7. 速查
dL/dw = dL/dr * dr/dp * dp/dw是链式乘积,不是和。- 每个因子在对应中间值处求值。
- 精确导数、有限差商、线性预测是三件不同的事。
x = 0时 weight 失效,bias 仍有效。
8. 自测
- 若把
y改成 4,w = 1处的dL/dw会变成 0 吗?为什么? h != 0时,ΔL/h一定等于dL/dw吗?x = 0且dL/dw = 0,能否推出L = 0?
来源:教师核对过 OpenStax Calculus Volume 1, §3.6 The Chain Rule 的 “Rule: The Chain Rule”。这里指教师查阅过该页,不代表学生已读。
上一课:03 驻点与局部极值。
本文于2026-10-28整理公开,日期为导入日期。