机器人策略 90% 与 92%:为什么两个百分点通常不足以证明更

机器人策略 90% 与 92%:为什么两个百分点通常不足以证明更强

摘要:100 次 rollout 中成功 90 次和 92 次,不能仅凭两个百分点给策略排序。本文从单组区间、差值区间、配对四格、任务层级与功效设计出发,给出一份可在实验前签署、实验后复核的机器人成功率证据合同。

关键词:机器人评测、成功率、置信区间、配对实验、统计功效、Rollout

开篇:百分比没有分母,就没有证据强度

"策略 A 成功率 90%,策略 B 成功率 92%。"这句话最常见的错误是直接得出"B 更强"。没有 rollout 数量、任务构成、随机种子、是否配对和置信区间,这两个百分比几乎不能支持比较结论。

RoboLab v4 每个策略、每项任务只运行 10 次 episode。论文附录直接给出量级:单任务成功率在 p≈0.9 时,95% 区间半宽约为 19 个百分点;即使增加到 100 次,在同一成功率附近也仍约为 6 个百分点。作者因此把 10 次结果定位为粗粒度指标,并明确说细粒度策略比较仍然功效不足。RoboLab v4中的警告适用于多数高成本机器人 Benchmark:点估计可以写得很精确,证据却未必精确。

核心结论

  1. 成功率必须写成 k/n,不能只写百分比。
  2. 置信区间回答"真实成功概率与当前观测有多大兼容范围",不等于未来表现保证。
  3. 90/100 与 92/100 的独立两比例差异区间约为 −5.9 到 +9.9 个百分点,不能排除 A 更强。
  4. 如果两个策略在相同任务种子上运行,应优先分析配对胜负,而不是把两组当独立样本。
  5. 估计 90% 附近的比例到约 ±2 个百分点需要约千级 rollout;检测 90% 与 92% 的真实差异则通常需要每策略数千次。

一、Clopper--Pearson 精确区间

n 次独立 Bernoulli rollout,成功 k 次,Clopper--Pearson 双侧 1-α 区间使用 Beta 分布分位数:

text 复制代码
lower = BetaInv(α/2; k, n-k+1)
upper = BetaInv(1-α/2; k+1, n-k)

边界情况 k=0k=n 需要单独处理。它常被称为"精确"区间,因为覆盖概率不低于名义水平;代价是通常较保守。

以 70 次 rollout、63 次成功为例:

text 复制代码
观测成功率 = 63 / 70 = 90.0%
95% Clopper--Pearson CI ≈ 80.48% --- 95.88%
95% Wilson CI           ≈ 80.77% --- 95.07%

这组数字与用户最初线索中的约 80.5%---95.9% 一致,但它是独立统计计算示例,不是 RoboLab 论文中的实验数字。将它归因给 RoboLab 会造成来源错误。

可复算 Python:

python 复制代码
from scipy.stats import beta


def clopper_pearson(k: int, n: int, alpha: float = 0.05) -> tuple[float, float]:
    if not 0 <= k <= n or n <= 0:
        raise ValueError("require 0 <= k <= n and n > 0")
    lower = 0.0 if k == 0 else beta.ppf(alpha / 2, k, n - k + 1)
    upper = 1.0 if k == n else beta.ppf(1 - alpha / 2, k + 1, n - k)
    return float(lower), float(upper)

二、Wilson 区间更适合默认展示

正态近似 p ± 1.96 sqrt(p(1-p)/n) 在样本小或比例接近 0/1 时表现很差。Wilson score interval 通过对 score test 反演,通常具有更好的覆盖与较窄区间,适合作为产品计算器的默认值;Clopper--Pearson可作为"保守精确区间"选项。

Wilson 中心和半宽:

text 复制代码
z = ΦInv(1-α/2)
den = 1 + z²/n
center = (p̂ + z²/(2n)) / den
half = z/den * sqrt(p̂(1-p̂)/n + z²/(4n²))

需要强调:区间方法选择不会把小样本变成强证据。对 9/10,任何合理区间仍然很宽。

三、90/100 与 92/100 的实际比较

分别看单组区间:

策略 成功 点估计 95% Clopper--Pearson 95% Wilson
A 90/100 90% 82.38%---95.10% 82.56%---94.48%
B 92/100 92% 84.84%---96.48% 85.00%---95.89%

"两个区间重叠"不是正式检验规则。更直接的方法是估计差异 p_B - p_A。按独立样本、未合并标准误的近似:

text 复制代码
差异点估计 = +2.0 个百分点
95% 差异区间 ≈ -5.93 --- +9.93 个百分点
双侧两比例检验 p ≈ 0.62

结论不是"A 与 B 一样",而是当前 100+100 次数据无法可靠分辨。区间同时兼容 A 略强、B 略强和两者近似相等。

四、机器人评测往往应该配对

如果 A、B 使用相同任务、相同物体布局、相同摄像机扰动和随机种子,结果是配对的。每个场景出现四种结果:

A B 含义
成功 成功 不区分策略
失败 失败 不区分策略
成功 失败 A 独占胜利
失败 成功 B 独占胜利

真正决定相对差异的是后两格。McNemar 检验或配对 bootstrap 使用这种结构,但"配对"成立需要同时满足:A、B 作用于同一个预先定义的实验单位;任务、初始状态、扰动和评价口径可一一对应;每对保留完整二元结果;不同配对单位之间可视为独立,且一个策略的运行不会干扰另一个策略。仅仅复用任务名称、却使用不可对应的随机 rollout,不能自动构成配对。

配对设计也不是无条件提高功效。它在场景难度造成正的任务内相关、且配对能消除这部分共同波动时通常更有效;McNemar 的信息量实际来自不一致对 b+c 以及两种不一致方向的差异 b-c。若配对相关很弱、配对错误、缺失不对称或不一致对极少,功效优势可能消失,样本量也不能只根据两个边际成功率计算。若只保留聚合成功率,就永久丢失这些信息。

跨 120 个任务时还存在层级结构:episode 嵌套在任务,任务属于能力标签。当同一任务内的 episode 共享难度、对象、场景生成机制或其他未建模因素时,条件结果会相关;把它们当独立 Bernoulli 往往会低估不确定性。若任务固定效应已充分控制且剩余 episode 可合理视为条件独立,简单模型才可能成立。任务级 bootstrap 还要求任务可视为目标任务总体的独立抽样单位,并且任务数量足以支持重采样;任务很少时应报告敏感性分析,而不是把 bootstrap 当成自动修复。

更稳妥的方法包括:

  • 每任务先计算差异,再对任务 bootstrap;
  • 分层 bootstrap:先采样任务,再采样任务内 episode;
  • 混合效应 logistic 模型,任务作为随机效应;
  • 报告 macro-average(任务等权)与 micro-average(episode 等权)。

五、±2 个百分点与"检测 2 个百分点"不是同一问题

估计精度

假设真实成功率约 90%,希望单个比例的 95% Clopper--Pearson 区间上下都在点估计约 2 个百分点内。按 k ≈ round(0.9n) 搜索,约 n = 1,030, k = 927 时区间约为 88.00%---91.76%。由于离散取整,最小 n 会随成功次数定义略变;因此应写"约 1,000 次",而不是把 1,030 当普适常数。

差异检验功效

若目标是以 80% 功效、双侧 α=0.05 检测真实成功率 90% 与 92% 的差异,在两组独立、等样本、每次结果近似独立 Bernoulli的前提下,用 Cohen's h 的反正弦变换与正态功效近似:

text 复制代码
h = 2 asin(sqrt(0.92)) - 2 asin(sqrt(0.90)) ≈ 0.069988
n_per_group ≈ 2 × (z_0.975 + z_0.80)² / h² ≈ 3204.72

向上取整得到每组 3,205 次 rollout。不同软件若使用未取整/取整的临界值、连续性校正、精确二项功效、非合并两比例公式或不同求解容差,可能给出邻近但不完全相同的整数;因此应写"Cohen's h 正态功效近似约 3,205/组",而不是把它当成所有检验方法的精确常数。配对设计则必须给出预期不一致对比例或联合分布,不能沿用这个独立样本数。

二者回答不同问题:

  • ±2pp:我能多精确地估计一个策略的成功率?
  • 90% vs 92%:我能否分辨两个策略之间很小的差异?

不能用"单比例区间够窄"替代"两策略差异有足够功效"。

六、样本量设计应该从决策开始

正式评测先声明:

  1. 最小关心差异 MDE,例如 5pp,而不是看到 2pp 后临时检验;
  2. 主要统计单位:episode、场景种子还是任务;
  3. 比较是独立还是配对;
  4. 成功判定器误差是否可忽略;
  5. 是否进行多个模型、多个能力标签的多重比较;
  6. 允许的误判成本与预算。

实验设计顺序固定为:先定义业务上有意义的差异,再确定实验单位与配对方式;随后假设基线成功率,完成所需的功效或精度计算,把预算分配到任务与扰动,预注册停止规则,最后运行实验并报告区间。

当预算不足时,不应假装精确。可以扩大 MDE、采用更强配对、减少主要比较、增加高信息量场景,或明确将结果定位为探索性。

七、常见错误

  • 把 90% 写成"稳定达到 90%",却不写 9/10 还是 900/1000;
  • 用跨任务总成功率掩盖某些任务只有一次运行;
  • 看到两个单组 CI 重叠就断言无差异;
  • 在同一批种子上运行却使用独立检验;
  • 看到结果后不断追加 rollout,直到 p<0.05;
  • 只报告显著性,不报告差异区间和实际工程价值;
  • 忽略策略版本、模拟器版本和成功判定器变化。

结论

90% 与 92% 的区别不是"2 个百分点",而是一组带实验设计和不确定性的证据。100 次对 100 次通常不足以证明这种小差异;配对场景、层级任务结构和预先定义的最小关心差异才决定统计方法。机器人评测的正确写法不是"B 胜出",而是"在给定任务、样本量与区间下,当前证据能支持到哪一步"。

参考资料

相关推荐
ovO1 小时前
DeepSeek Harness 源码解读(十):六条设计纪律如何约束可替换运行时
开源·agent
阿里云大数据AI技术1 小时前
PAI支持一键部署Qwen3.8-Flash-Next、GLM-5.3等最新开源模型
人工智能·开源·llm
SleepNW_POV1 小时前
家居科普|床垫溜边塌陷成因解析与边缘加固床垫选购指南
人工智能·科技·智能家居·睡眠
ovO1 小时前
DeepSeek Harness 源码解读(八):文件、命令、审批与沙箱如何协作
开源·agent
FII工业富联科技服务1 小时前
从 Vera Rubin NVL72 拆解高密度 AI 液冷:GPU 的热到底怎么被带走?
大数据·人工智能
阿里云云原生1 小时前
经验自进化:自动挖掘经验资产,消融实验验证真实收益丨AgentLoop 数据飞轮实践(五)
agent
磐时信息技术1 小时前
SASETalk | 当智能驾驶驶入未知场景:谈谈关于SOTIF、AI安全与工程落地的思考
人工智能·安全·预期功能安全·sotif
147API1 小时前
蒸馏模型量化上线前,先查精度退化和算子兼容
大数据·人工智能·深度学习·机器学习·蒸馏
ovO2 小时前
DeepSeek Harness 源码解读(六):Provider、Consumer 与能力接缝
开源·agent