选样决定结论能不能用
评测结论的可信度首先取决于样本怎么选的,而不是模型跑得多好。做法是按真实流量结构分层:场景、难度、语言、输入长度、输出形态各成一层,每层按流量占比确定样本数,对低占比但高风险的情形做超额抽样。最后留出一批从不参与调优的样本,专用于验收。
基本信息
| 分层维度 | 场景、难度、语言(含简繁与中英混排)、长度、输出形态 |
|---|---|
| 样本来源 | 线上请求脱敏抽样为主,公开集与人工构造作补充 |
| 样本量 | 按目标置信区间估算,先保证每层有最小样本数 |
| 标注方式 | 双人独立标注,分歧复核后定稿并写进标注说明 |
| 轮换策略 | 固定集长期不变,轮换集按季度替换以防过拟合 |
| 留出集 | 不公开、不参与调优、只在验收时使用一次 |
典型使用场景
- 选型对比:同一分层结构下比较候选模型,避免场景覆盖不均造成误判
- 上线验收:用留出集给出结论,避免用调优集自证
- 回归监控:固定集用于长期对比,轮换集用于防止针对性优化
- 失败回流:把线上失败请求按分层规则补进评测集,形成闭环
- 成本测算:用样本的 token 分布推算预算,而不是凭平均值
- 对外说明:向干系人解释结论覆盖了哪些场景、未覆盖哪些
分层维度与抽样建议
| 分层维度 | 怎么分层 | 抽样要点 |
|---|---|---|
| 业务场景 | 按功能模块或意图分类 | 每层至少 20~30 条,避免小层消失 |
| 难度 | 常规、边界、对抗三类 | 边界与对抗必须显式入样 |
| 语言 | 简繁、中英混排分开 | 混排单独成层,别并入简体统计 |
| 输入长度 | 按 token 分档而非字数 | 长输入层样本量要够,否则看不出退化 |
| 输出形态 | 短答、长答、结构化输出 | 结构化单列,统计解析失败率 |
| 风险等级 | 错误代价高与低分开 | 高风险场景超额抽样并单独看结论 |
| 流量占比 | 按线上真实占比标注权重 | 低占比高风险场景不按占比分配样本 |
分层计数表
分层计数表
# 用于确认分层是否均衡,样本量与流量占比列要能对得上
layer,scene,difficulty,lang,length_bucket,out_form,n_samples,traffic_share
L01,合同抽取,常规,zh,short,json,40,0.28
L02,合同抽取,边界,zh,long,json,30,0.03
L03,工单分类,常规,zh,short,label,50,0.31
L04,摘要改写,常规,zh_mix,middle,text,35,0.12
L05,合同抽取,对抗,zh,long,json,25,0.00
# 判读:n_samples 低而 traffic_share 不低的分层是结论的薄弱点
# 对照列 traffic_share 为 0.00 表示该层来自线上少见但高风险的抽样样本量的估算要看你要回答的问题:只判断 A 与 B 谁更好,几十条同层样本往往就够;要给对外承诺的通过率,则需要按目标误差范围倒推样本量,并报告区间而非单点值。
标注说明的详细程度决定评测集能不能长期使用。把边界判例、允许的表达变体与错误类型写清楚,新人上手时结论仍然一致;否则同一套题的分数会随标注人变化。
用线上数据建集必须脱敏并确认使用范围:去除身份与业务敏感字段,涉及个人信息的样本不要跨环境复制或长期留存,样本管理规则以所在组织的合规要求为准。