M1-022M1: Mathematics & Statistics FundamentalsCalculus & Taylor ExpansionEasy
Mastery:
Calculus & Taylor Expansion: 解释链式法则与反向传播的关系。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 反向传播是链式法则在计算图上的高效实现:前向存中间值,反向按拓扑逆序累乘局部梯度。
📌 Key Takeaways
- •时间复杂度与前向同阶(一次前向+一次反向)
- •空间换时间:需保存中间激活(可用 checkpointing 省)
📐 Mathematical Derivations
链式法则的多元形式给出:若 x→y₁,…,y_k→L,则 ∂L/∂x=Σᵢ(∂L/∂yᵢ)(∂yᵢ/∂x)。反向传播把它组织成<strong>动态规划</strong>:从损失出发,按计算图的<strong>拓扑逆序</strong>逐节点计算 ∂L/∂node,每个节点只需把'上游传来的梯度'乘以'本节点的局部雅可比'再传给下游。关键效率来源是<strong>梯度复用</strong>——每个中间量的梯度只算一次,被所有消费者共享,因此总代价与前向传播同阶(常数因子约 2–3 倍),而朴素地对每个参数单独做数值微分需要 O(n) 次前向,代价 O(n·cost_forward)。
🏭 Production Trade-offs
两个必须理解的权衡:① <strong>空间换时间</strong>——反向传播需要保存前向的中间激活(否则无法计算局部雅可比),这是训练显存的主要占用(远超参数本身,尤其在长序列/大 batch 时)。缓解手段是<strong>梯度检查点</strong>(activation checkpointing):只保存部分中间值,反向时重算其余,显存从 O(n) 降到 O(√n),代价是约 30% 额外计算。② <strong>自动微分 vs 数值微分 vs 符号微分</strong>——数值微分(有限差分)有截断误差且慢;符号微分会表达式膨胀;自动微分(AD)精确且高效,反向模式(VJP)适合'多输入单输出'(损失是标量),前向模式(JVP)适合'少输入多输出',这是所有深度学习框架的核心。
⚠️ Common Interview Pitfalls
- ✕认为反向传播是独立算法(它就是链式法则 + 拓扑排序 + 梯度复用)
- ✕忽略激活存储是训练显存瓶颈
🎯 Interviewer Follow-ups
- ?为什么反向传播比数值微分快?
- ?激活重计算的权衡是什么?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.