M3-063M3: Deep Learning FoundationsGradient Vanishing & ExplosionHard
Mastery:
Gradient Vanishing & Explosion: 解释为什么梯度噪声是隐式正则化(SGD 的泛化来源)。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 梯度噪声使参数在极小值附近随机游走,偏好'噪声引起的 loss 上升小'的平坦解;噪声 ∝η/B,是隐式正则。
📌 Key Takeaways
- •噪声尺度由 η/B 决定(lr 与 batch 的比值)
- •噪声使优化偏好平坦极小值(泛化更好)
- •大 batch/小 lr 会削弱这一隐式正则
📐 Mathematical Derivations
数学机理:SGD 的更新 θ←θ−ηḡ 中,ḡ=G+ξ̄(ξ̄ 为 batch 噪声,协方差 Σ/B)。故参数轨迹含随机项 −ηξ̄,其方差 ∝ η²·(Σ/B)。参数在极小值附近<strong>随机游走</strong>,游走幅度由 η/√B 决定。<strong>关键推论</strong>:在<strong>平坦</strong>极小值处,参数的小幅扰动引起的 loss 上升小;在<strong>尖锐</strong>极小值处,同样扰动引起的 loss 上升大。因此,若参数被噪声'推来推去',<strong>能长期停留的解必然是平坦解</strong>——SGD 的噪声实现了对'尖锐性'的隐式惩罚。这解释了两件事:(a) 小 batch 训练常泛化更好(噪声大、平坦化更强);(b) 大 batch 训练泛化可能变差(噪声小、隐式正则弱),需通过增大 lr、加正则或显式找平坦解来补偿。理论上,Hochreiter & Schmidhuber (1997) 的'flat minima'假说与后续的 PAC-Bayes 分析都支持'平坦性 ↔ 泛化'的联系。<strong>显式方法</strong>:SAM 直接优化 min_θ max_{‖δ‖≤ρ} L(θ+δ),等价于最小化 loss 与其梯度范数,是对平坦性的显式正则。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>噪声尺度公式的实用价值</strong>——泛化相关的是 <strong>η/B 的比值</strong>(而非单独的 η 或 B):保持 η/B 不变时,改变 batch 对泛化的影响较小。这给出一条实用规则:若必须增大 batch(为吞吐),应同比例增大 lr 以维持隐式正则。② <strong>与临界 batch 的关系</strong>——超过临界 batch 后噪声已很小,继续增大 B 只损失隐式正则而无收敛收益;故'大 batch 训练'需配更强的显式正则。③ <strong>与 Adam 的交互</strong>——Adam 的自适应归一化会<strong>放大噪声方向的更新</strong>(尤其梯度小的方向),改变了有效噪声结构,故 Adam 下的隐式正则与 SGD 不同;这也是 Adam 泛化有时较差的原因之一。④ <strong>与 warmup/EMA 的配合</strong>——噪声的'探索'作用在训练早期有利(跳出坏区域),在后期可能有害(妨碍收敛);故后期降 lr(减少噪声)与 EMA 平滑(抑制噪声影响)是互补的。⑤ <strong>实证证据</strong>——Keskar 等 (2017) 发现大 batch 训练倾向收敛到尖锐极小值;Goyal 等 (2017) 用'大 batch + warmup + lr 缩放'在 ImageNet 上复现了小 batch 的精度,支持'η/B 比值'的观点。⑥ <strong>面试要点</strong>——被问'为什么小 batch 泛化好',答'梯度噪声的隐式正则使其偏好平坦解';被追问'那大 batch 怎么办',答'同比例放大 lr 维持 η/B,或加显式正则/用 SAM'。
⚠️ Common Interview Pitfalls
- ✕认为 batch size 只影响速度不影响泛化(影响隐式正则)
- ✕忽略 η/B 比值才是关键(只看单个变量)
🎯 Interviewer Follow-ups
- ?为什么平坦极小值泛化更好?
- ?如何显式获得平坦解(SAM)?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.