机器学习基础 中级

模型评估:过拟合、交叉验证与指标

看懂准确率、精确率、召回率,理解过拟合的成因与交叉验证,建立正确的模型评估观。

先分对三套数据

  • 训练集:模型学习的材料;
  • 验证集:调参时用;
  • 测试集:最终考试,只在最后碰一次。

过拟合与欠拟合

  • 过拟合:训练集 99 分、测试集 60 分 —— 模型把训练数据"背下来"了。药方:更多数据、正则化、简化模型、早停;
  • 欠拟合:训练集也只有 65 分 —— 模型太简单学不动。药方:加特征、换更强的模型。

分类指标:别只看准确率

欺诈检测里"99% 都不是欺诈",全猜"不是"准确率也有 99% —— 所以需要:

  • 精确率(Precision):报为欺诈的里面,真欺诈占多少(误报成本高就看它);
  • 召回率(Recall):真欺诈里面,被抓住了多少(漏报成本高就看它);
  • F1:两者的调和平均。

交叉验证

from sklearn.model_selection import cross_val_score
scores = cross_val_score(model, X, y, cv=5)  # 5 折交叉验证
print(scores.mean(), scores.std())

数据少时把数据切 5 份轮流当验证集,评估更稳。这套评估思想完全适用于 LLM 应用:本站反复强调的"评测集 + 回归测试",就是 ML 评估观在 LLM 工程的延续。

📝 课后练习

quiz-1 欺诈检测中欺诈样本只占 1%,为什么不能只看准确率?