高效训练复杂的深度学习模型通常需要的不只是标准优化器和固定学习率。本章侧重介绍提升收敛速度、模型泛化能力以及训练时资源效率的方法。你会了解除标准SGD或Adam之外的优化算法,例如AdamW和Lookahead。我们会讲解如何实现动态学习率调度,包括余弦退火和预热阶段,以精细调整训练过程。我们还会讲解正则化方法,例如标签平滑和高级权重衰减。此外,本章还会讨论实际训练中遇到的难题。你会学习一些技巧,例如梯度裁剪用于处理不稳定的梯度,以及梯度累积用于模拟更大的批量大小 ($N_{effective} = N_{accum} \times N_{batch}$)。我们会介绍使用torch.cuda.amp进行自动混合精度 (AMP) 训练,以在兼容硬件上实现更快的计算和更少的内存占用。处理海量数据集的策略,例如使用IterableDataset,以及整合自动化超参数调整工具,构成本章的完整内容。