训练技巧
BatchNorm / Dropout / 混合精度 / 学习率调度
归一化层
| 类型 |
适用场景 |
特点 |
| BatchNorm |
CNN |
依赖 batch size,推理用 running mean |
| LayerNorm |
Transformer / RNN |
不依赖 batch size,LLM 默认 |
| GroupNorm |
小 batch CNN |
分组归一化 |
| RMSNorm |
LLM |
LayerNorm 简化版,省计算 |
正则化
- Dropout — 随机失活,集成视角解释
- DropConnect — 权重随机失活
- Stochastic Depth — 随机跳过残差块
学习率调度
| 策略 |
特点 |
| StepLR |
阶梯式衰减 |
| CosineAnnealingLR |
余弦退火,平滑衰减 |
| OneCycleLR |
超收敛,先升后降 |
| Warmup + Decay |
Transformer 常用:先热身再衰减 |
混合精度训练
torch.cuda.amp.autocast — 自动 FP16/FP32 混合
torch.cuda.amp.GradScaler — 梯度缩放防止下溢
- 速度提升 ~2x,显存减少 ~50%
练习
资源