WMX · 随记
·AI· 3 分钟阅读

评估集版本:结果变化之前,先确认样本有没有变

模型评估结果前后不同,可能是模型变化,也可能是测试问题或标签被修改。没有数据版本,就很难归因。

AI 系列概览:模型机制、系统边界与效果评估
AI 系列概览:模型机制、系统边界与效果评估 点击图片查看大图 ↗

问题从哪里出现

模型评估结果前后不同,可能是模型变化,也可能是测试问题或标签被修改。没有数据版本,就很难归因。

理解核心机制

为样本使用稳定 ID,并为排序后的内容生成摘要,可识别一份评估集的具体版本。结果记录还应包含模型、提示词、评分器与运行配置。

动手做一个小实验

Python 3.11 或更新版本,仅使用标准库;将示例保存为 demo.py 后执行 python3 demo.py。数字与样本均为教学演示,不代表真实模型或服务器的测量结果。

Python9 行 · 可横向滚动
import hashlib
import json
cases = [{"id": "q2", "question": "2+2?", "expected": "4"},
         {"id": "q1", "question": "1+1?", "expected": "2"}]
assert len({case["id"] for case in cases}) == len(cases)
payload = json.dumps(sorted(cases, key=lambda case: case["id"]),
                     sort_keys=True, ensure_ascii=False).encode()
version = hashlib.sha256(payload).hexdigest()[:16]
print("dataset:", version, "size:", len(cases))

适用边界与常见误区

摘要不保证样本有代表性,也不防止训练数据污染。评估集还需要来源、许可、标注说明和分层覆盖;公开开发集与最终测试集应有所区分。

继续练习

修改一条期望答案并观察版本变化,再为每条样本加上类别和来源,检查哪些业务场景仍未覆盖。

参考资料

阅读相关官方文档或原始资料 ↗

← 返回文章归档