训练验证测试与评估
训练、验证、测试和评估是模型开发的基本闭环。没有可靠评估,就无法判断模型是否真的变好,也无法解释上线后的效果波动。
# 1. 数据集划分
原始数据集
├─ 训练集:用于学习模型参数
├─ 验证集:用于调参和选择模型
└─ 测试集:用于最终评估泛化效果
| 数据集 | 作用 | 注意点 |
|---|---|---|
| 训练集 | 让模型学习规律 | 数据量要足够,标签要可靠 |
| 验证集 | 比较不同参数和模型 | 不能频繁泄露到训练过程 |
| 测试集 | 评估最终效果 | 尽量模拟真实线上数据 |
# 2. 为什么不能只看训练集
模型在训练集上效果好,可能只是记住了训练样本。真正重要的是模型面对新数据时是否仍然有效。
训练集效果好 + 测试集效果好 -> 泛化能力较好
训练集效果好 + 测试集效果差 -> 可能过拟合
训练集效果差 + 测试集效果差 -> 可能欠拟合或数据质量差
# 3. 常见评估指标
# 3.1 分类任务
| 指标 | 说明 | 适合场景 |
|---|---|---|
| Accuracy | 预测正确比例 | 类别分布较均衡 |
| Precision | 预测为正的样本中有多少是真的正 | 误报成本高 |
| Recall | 真实正样本中有多少被找出来 | 漏报成本高 |
| F1 | Precision 和 Recall 的综合 | 需要平衡误报和漏报 |
| AUC | 排序区分能力 | 二分类排序、风控、推荐 |
# 3.2 回归任务
| 指标 | 说明 |
|---|---|
| MAE | 平均绝对误差,容易解释 |
| MSE | 平均平方误差,对大误差更敏感 |
| RMSE | MSE 开方,量纲与原目标一致 |
# 3.3 大模型应用
| 指标 | 说明 |
|---|---|
| 正确性 | 答案是否符合事实或参考答案 |
| 完整性 | 是否覆盖必要要点 |
| 相关性 | 是否回答了用户真正的问题 |
| 可追溯性 | 是否提供引用或证据 |
| 稳定性 | 相同问题多次回答是否一致 |
| 安全性 | 是否泄露敏感信息或违反规则 |
# 4. AI 应用评估闭环
收集样本
-> 标注期望答案或评分规则
-> 批量运行模型
-> 自动或人工评分
-> 分析失败样本
-> 调整 Prompt / 检索 / 模型 / 规则
-> 回归测试
对大模型应用,评估集比一次性人工体验更重要。没有固定评估集,就很难判断模型、Prompt 或检索策略改动是否真的提升了质量。
# 5. 常见坑
- 测试集被反复用于调参,导致测试结果虚高。
- 只看平均指标,不看关键业务场景的失败样本。
- 离线效果好,但线上用户输入完全不同。
- 大模型应用只凭主观感觉评估,没有样本集和评分标准。
- 指标提升但成本、延迟或安全风险同时变差。
# 6. 工程建议
- 每次模型、Prompt、检索策略变更后都跑回归评估。
- 保留失败样本,把失败样本变成下一版评估集。
- 对高风险场景设置人工复核。
- 指标要和业务目标一致,不能只追求技术指标。
# 7. Tips 快问快答
Q:准确率很高是不是模型就很好?
A:不一定。类别极不均衡时,模型全部预测多数类也可能有高准确率。此时要看 Precision、Recall、F1 等指标。
Q:大模型输出怎么自动评估?
A:可以结合规则校验、参考答案匹配、人工评分和模型辅助评分。关键业务场景不能只依赖模型自评。
Q:评估集需要多大?
A:先覆盖核心场景和高风险场景,再逐步加入真实失败样本。质量和代表性比单纯数量更重要。
上次更新: 2026/06/25, 17:53:09