Ch05 评估与特征工程修订于 二〇二六年七月六日
学习曲线 (Learning Curves)
概述
学习曲线(Learning Curves)是机器学习和深度学习中用于诊断模型性能的核心可视化工具。它通过绘制训练集大小与**模型性能(误差/准确率)**之间的关系,帮助我们回答一系列关键问题:模型是欠拟合还是过拟合?收集更多数据是否有帮助?当前模型复杂度是否合适?
Learning curves plot the model’s performance on the training set and the validation set as a function of the training set size. They are one of the most powerful diagnostic tools in a machine learning practitioner’s toolkit, revealing whether a model suffers from high bias or high variance.
学习曲线的类型
1. 训练集大小 vs 误差
最经典的学习曲线:X 轴为训练集样本数量,Y 轴为误差(Loss 或 Error Rate),通常包含两条线:
- 训练误差曲线:在训练集上计算的误差
- 验证误差曲线:在独立验证集上计算的误差
2. 训练轮次 vs 误差
也称为训练过程曲线(Training Curves):X 轴为训练 Epoch/Iteration 数量,Y 轴为误差。用于监控训练过程中的收敛情况和过拟合。
3. 模型复杂度 vs 误差
X 轴为模型复杂度(参数数量、树深度等),Y 轴为训练和验证误差。
通过学习曲线诊断模型问题
高偏差(欠拟合)的学习曲线特征
验证误差 ──── 较高
训练误差 ──── 较高
两条曲线 ──── 靠得很近,趋于收敛到同一较高水平
特征解读:
- 训练误差和验证误差都很高,且两者差距很小
- 增加更多训练数据,两条曲线趋于平稳,验证误差几乎不再下降
- 结论:模型容量不足,增加数据无济于事
应对策略:
- 增加模型复杂度(更多层、更多参数)
- 添加更多特征或特征工程
- 减少正则化强度
- 考虑使用更复杂的模型架构
高方差(过拟合)的学习曲线特征
验证误差 ──── 较高,远高于训练误差
训练误差 ──── 很低
两条曲线 ──── 存在显著的 Gap
特征解读:
- 训练误差很低,但验证误差远高于训练误差
- 随着训练数据增加,验证误差持续下降,训练误差略微上升
- 两条曲线之间的 Gap 逐渐缩小
- 结论:收集更多数据是有效的
应对策略:
- 收集更多训练数据
- 增加正则化(L1/L2, Dropout, Data Augmentation)
- 降低模型复杂度
- 使用早停 (Early Stopping)
良好拟合的学习曲线特征
验证误差 ──── 较低,接近训练误差
训练误差 ──── 较低
两条曲线 ──── 收敛到相近的低水平
学习曲线诊断对比表
| 诊断维度 | 高偏差 (欠拟合) | 高方差 (过拟合) | 良好拟合 |
|---|---|---|---|
| 训练误差水平 | 高 | 低 | 低 |
| 验证误差水平 | 高 | 高 | 低 |
| 误差 Gap (验证-训练) | 小 | 大 | 小 |
| 增加数据效果 | 无效(曲线已平) | 有效(验证误差继续降) | 无效 |
| 增加模型复杂度 | 有效 | 无效(可能更差) | 无效 |
| 增加正则化 | 无效(可能更差) | 有效 | 无效 |
| 典型模型 | 线性回归拟合非线性 | 1000 棵树 Random Forest | 合适复杂度的模型 |
| 曲线形状 | 两线高位收敛 | 两线有 Gap,验证线仍在下降 | 两线低位收敛 |
何时收集更多数据
学习曲线是回答”是否值得收集更多标注数据”的最直接工具:
- 绘制当前数据量下的学习曲线
- 外推验证误差曲线的趋势:如果验证误差曲线仍在持续下降,且 Gap 在缩小,说明更多数据将带来收益
- 如果验证误差曲线已经趋于平稳(斜率接近 0),则更多数据不会带来显著改进
学习曲线的实践要点
绘制技巧
- 逐步增加训练集:从 10% 开始,每次增加 10-20%,直到 100%
- 固定验证集:始终使用相同的验证集,确保可比性
- 多次重复:对每个训练集大小,重复多次取平均,减少随机波动
- 使用交叉验证:结合 K-Fold CV 绘制带置信区间的学习曲线
常见陷阱
- 验证集不可用于训练:每次只改变训练集大小,验证集始终不变
- 类别不平衡:需要确保每个训练子集中类别比例一致
- 小数据集:学习曲线可能噪声很大,需要多次重复
- 时间序列数据:不能随机采样,需按时间顺序
2026 年深度学习中的学习曲线
现代学习曲线的特殊现象
- 双下降 (Double Descent):在过参数化模型中,学习曲线可能出现”先降后升再降”的形状
- Grokking:在某些任务中,验证准确率在训练很久后才突然提升
- Scaling Laws:LLM 的 Loss 与模型大小、数据量、计算量之间遵循幂律关系
使用学习曲线监控 LLM 训练
- 训练 Loss 和验证 Loss 的 Gap 是判断是否过拟合的关键指标
- 在大规模预训练中,通常一个 Epoch 就足够,验证 Loss 持续下降说明训练不足
- 学习率 Warmup 和 Decay 阶段在学习曲线上有明显特征
相关笔记
- 过拟合 (Overfitting) — 学习曲线是诊断过拟合的核心工具
- 偏差方差权衡 (Bias-Variance Tradeoff) — 学习曲线帮助可视化偏差-方差权衡
- 交叉验证 (Cross-Validation) — 结合交叉验证绘制更稳健的学习曲线
- 正则化 (Regularization) — 正则化对学习曲线形状的影响
- 学习率 (Learning Rate) — 学习率调度直接影响训练过程曲线
来源
- Perlich, C. (2010). Learning Curves in Machine Learning. In Encyclopedia of Machine Learning. https://doi.org/10.1007/978-0-387-30164-8_452
- Ng, A. (2018). Machine Learning Yearning, Chapters 27-32: Bias and Variance. https://www.deeplearning.ai/programs/
- scikit-learn Learning Curve: https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.learning_curve.html
- Kaplan, J., et al. (2020). Scaling Laws for Neural Language Models. https://arxiv.org/abs/2001.08361