chain-rule-backprop — 闪卡
链式法则就是"传动比连乘":一串环节串起来,最前面动一点点,最后面动多少,等于每一级传动比乘起来。反向传播就是把这条链倒着走一遍——从最后的罚分出发,一级级把传动比乘回去,算出每个参数该往哪调、调多少。
记忆口诀
- 链式法则 = 传动比连乘,不是相加
- 每一级的传动比,就是那一级的坡度
- 反向传播 = 从罚分出发,倒着乘回去
- 按影响力分摊责任,不是平均分
- 连乘没有中庸:要么趴到零,要么冲上天
Card 1
Q: 大轮带中轮 3 倍、中轮带小轮 4 倍,总传动比是多少?
A: 12 倍(3 × 4),不是 7。因为中轮每转一圈都带来 4 圈,那 3 圈里每圈都有 4 圈——"每份里又有几份"天然是乘法。
Card 2
Q: 什么是链式法则?
A: 一串环节串起来时,总传动比 = 每一级传动比全乘起来。而每一级的传动比,就是那一级的坡度。
Card 3
Q: 什么是反向传播?
A: 从罚分出发,沿着链倒着把传动比一级级乘回去,得出每个参数该往哪调、调多少。
Card 4
Q: 反向传播是独立于前向的另一套算法吗?
A: 不是。就是前向那条链倒着乘一遍,同一条链、同一条规矩,只是方向相反。
Card 5
Q: 反向传播是把误差平均分给每层吗?
A: 不是,按传动比分。传动比大的层分得多,接近 0 的层几乎分不到——谁影响大谁多担责。
Card 6
Q: 为什么有些层训练时几乎纹丝不动?
A: 因为它们的传动比确实接近 0。不是被忽略了,是改多改少罚分都不动,分调整量纯属浪费。
Card 7
Q: 什么是梯度消失?
A: 每层传动比小于 1,连乘指数级衰减。每层乘 0.5:10 层剩千分之一,20 层剩百万分之一——前几层等于没在学。
Card 8
Q: 什么是梯度爆炸?
A: 每层传动比大于 1,连乘指数级放大。每层乘 1.5,20 层后 3300 多倍——参数被一脚踹飞,训练直接崩。
Card 9
Q: "层数多梯度自然大"对吗?
A: 正好相反,通常越传越小。连乘不是累加:累加是层数越多总量越大,连乘是层数越多越走极端——要么趴到 0,要么冲上天。
Card 10
Q: 为什么不从前往后逐个算每个参数的坡度?
A: 贵得离谱——每个参数都得走一遍全程,几十亿参数就要几十亿遍。倒着传只需走一遍就顺手算出所有参数。
Card 11
Q: 残差连接为什么能缓解梯度消失?
A: 它给罚分开了一条"抄近路"的通道,绕过中间几层直传回前面。链条短了、连乘次数少了,自然不容易消失或爆炸。