M3-042M3: Deep Learning FoundationsLearning Rate SchedulesMedium
Mastery:
Learning Rate Schedules: 学习率与 batch size 的关系是什么?线性缩放规则。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: lr 与 batch 近似成正比(线性缩放);但超过临界 batch 后收益饱和,改用 sqrt 缩放。
📌 Key Takeaways
- •线性缩放源于'梯度噪声 ∝ 1/B,需同步放大步长'
- •临界 batch 由梯度噪声尺度与梯度模长之比决定
- •超过临界 batch 后增大 batch 只减少噪声、不加速
📐 Mathematical Derivations
数学机理:考虑单个样本的随机梯度 g_i=g+ξ_i,其中 ξ 为噪声、协方差 Σ。mini-batch 梯度 ḡ=g+ξ̄,噪声协方差 Σ/B。<strong>噪声尺度</strong>定义为 g_noise=tr(Σ)/B 与梯度模长 |g|² 的比值。在 SGD 的连续时间近似下,参数轨迹由'漂移(信号)'与'扩散(噪声)'竞争决定:当 B 增大时噪声 ∝1/B 下降,若不同步放大 lr,则每步的'有效移动距离'变小、收敛变慢;把 lr 同步放大 B 倍,可使每步的漂移量保持不变(η·|g| 不变),从而<strong>保持相同的训练轨迹</strong>——这就是线性缩放。但该等价只在噪声主导区域成立;当 B 增大到使噪声不再主导(即每步的梯度已足够准),继续放大 lr 会因'步长过大导致不稳定'而失效。此时的 B 即<strong>临界 batch</strong> B_crit≈tr(Σ)/(gᵀg)。超过 B_crit 后,增大 B 只减少梯度噪声(提升隐式正则的质量)但不加速收敛——此时应用 sqrt 缩放(η∝√B)或干脆不放大 lr。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>测量临界 batch</strong>——通过'梯度噪声尺度'实验:对同一批数据多次采样不同 mini-batch,计算梯度方差随 B 的变化;或做 lr 扫描,找到 lr 与 B 的线性关系断裂点。② <strong>实践取值</strong>——ResNet-50/ImageNet 的临界 batch 约 1k~8k;BERT 约 2k~4k;LLM 因数据规模大、梯度噪声结构不同,临界 batch 可达数十万 token。③ <strong>LARS/LAMB</strong>——当 batch 极大(>8k)时,逐层自适应 lr(LARS)或逐层归一化(LAMB)可缓解'大 batch 下不同层梯度尺度差异大'的问题,使线性缩放在大 batch 下仍有效。④ <strong>大 batch 的泛化代价</strong>——超过临界 batch 后继续增大 B 会削弱 SGD 的隐式正则,可能导致泛化变差;对策是增大 lr、加更多正则、或用'大 batch + 更多步'的替代方案。⑤ <strong>与 warmup 的联动</strong>——大 batch 需更长 warmup:因为 lr 更大、早期风险更高。⑥ <strong>面试要点</strong>——被问'batch 翻倍 lr 怎么调',标准答案是'近似翻倍(线性缩放),但需确认未超过临界 batch,且同步延长 warmup';只答'翻倍'会显得机械。
⚠️ Common Interview Pitfalls
- ✕无条件按线性缩放调 lr(未检查临界 batch)
- ✕大 batch 下忽略泛化变差的风险
🎯 Interviewer Follow-ups
- ?为什么大 batch 训练需要更少步数但同样收敛?
- ?临界 batch 如何测量?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.