第 8 章:配对统计与区间不能替代样本设计
一个差值可以准确描述当前样本,却不足以表明未来任务上的变化。置信区间尝试表达抽样带来的不确定性,其解释依赖数据来源、独立单位、估计对象和方法条件。给数字加上“95%”不会自动使样本具有代表性。
8.1 先定义估计对象
本实验先在每个项目内计算候选减基线的任务成功差,再对项目等权平均。每个项目有一条文件任务和一条回答任务,因此当前数据上,它也等于全样本平均差;项目规模不同时,这两种估计对象可能不同。
项目等权回答“平均项目受影响多少”,任务等权更接近“平均任务受影响多少”。都可能合理,但报告必须写明选择。不能在结果不利时才从一种权重换到另一种。
8.2 成对、成组地重采样
paired_statistics() 把同项目的两种任务与两边候选一起保留,再有放回抽取项目,计算每次项目均值差。程序固定 seed=17,执行 2000 次重采样,取经验分布的 2.5% 与 97.5% 分位数,得到百分位区间。
重采样的关键不是循环次数,而是保留依赖关系。将同一个项目里的任务当作独立记录,或把基线与候选分开抽样,会改变不确定性结构。SciPy 的 bootstrap 文档明确区分成对重采样和不同区间方法;本书使用标准库实现简单百分位版本,没有调用 SciPy,也没有实现其 BCa 修正。[S4]
8.3 本版实际计算结果
| 受控候选 | 项目均值差 | 演示用 95% 百分位区间 |
|---|---|---|
请求归一化 prompt_v2 |
0.25 | [0.0833, 0.4167] |
删除状态过滤 retrieval_v2 |
-0.50 | [-0.50, -0.50] |
生成缺陷 model_v2 |
-0.75 | [-0.9167, -0.5833] |
这些数字来自 6 个合成项目,不是实际业务抽样。检索变体每个项目都发生相同 -0.5 差值,所以重采样区间退化成一点;它不代表现实中没有不确定性,只说明当前经验分布没有呈现项目差异。
8.4 不能从区间推出什么
本书不会把小合成集上的正区间解释为真实模型显著改善。百分位 bootstrap 在小样本、离散指标或偏斜分布下可能表现不佳;增加重采样次数只会更稳定地近似当前经验分布,不会补充缺失场景。
区间跨零也不等于证明没有影响;区间较宽可能意味着数据不足。反过来,预设的非劣界值不能在看到结果以后随意放宽。若要做业务级非劣检验,应先设计样本量、独立单位和决策风险,必要时请统计专业人员审查。
8.5 单项指标与多次选择
同时查看许多切片、指标与候选,最后只报告最好的一项,会引入选择偏差。本书三组变体用于说明已知故障,不是搜索最优真实模型。生产中应预先区分主要指标、探索性分析和确认性比较,完整记录候选试验过程。
练习。 给某个项目复制十条几乎一样的任务。分别按任务和按项目重采样,解释为什么区间可能改变;再说明新增重复是否真的增加了独立信息。切勿把更窄的区间自动当作更可信。