Codex 重置概率回测:24 小时 / 48 小时,走查真实历史

本页不是简单展示一个百分比,而是把几种候选算法放到真实历史数据上逐步前推验证:只用「当时已经知道」的信息做预测,对比预测和实际发生的差距(Brier 分数,越低越好),选出真正经得起验证的模型再发布——方法参照第三方独立基准 codex-reset-benchmark 的目标事件定义和检查点规则。

方法

候选模型与全部结果(不藏差的)

下表是 1189 个可结算的历史检查点(2026-10-14 为止)上,每个候选模型的表现。「弃权」的模型(会员本站现有算法就是这一种)只在给出数字时才计入分数,覆盖率单独列出;其余模型从不弃权。

24h 窗口(1189 个可结算检查点)

模型Brier ↓Log loss样本数覆盖率
climatology(历史频率基线,全样本) ← 发布模型 0.1284 0.5855 1189 100%
empirical_guarded(本站现有算法,护栏版,会弃权) 0.1629 1.2621 854 71.8%(854/1189)
climatology(与上一行同一弃权后子集,公平对比) 0.1542 0.5735 854 100%
empirical_shrunk(α=2,窗口 30 个间隔) 0.134 0.5868 1189 100%
empirical_shrunk(α=5,窗口 30 个间隔) 0.1316 0.5644 1189 100%
empirical_shrunk(α=10,窗口 30 个间隔) 0.1301 0.5536 1189 100%
empirical_shrunk_fullhist(α=2,全历史间隔,无窗口) 0.1344 0.5848 1189 100%
empirical_shrunk_fullhist(α=5,全历史间隔,无窗口) 0.132 0.565 1189 100%
empirical_shrunk_fullhist(α=10,全历史间隔,无窗口) 0.1306 0.5551 1189 100%

48h 窗口(1185 个可结算检查点)

模型Brier ↓Log loss样本数覆盖率
climatology(历史频率基线,全样本) ← 发布模型 0.1938 0.5704 1185 100%
empirical_guarded(本站现有算法,护栏版,会弃权) 0.2488 1.1561 850 71.7%(850/1185)
climatology(与上一行同一弃权后子集,公平对比) 0.2267 0.6476 850 100%
empirical_shrunk(α=2,窗口 30 个间隔) 0.2075 0.6162 1185 100%
empirical_shrunk(α=5,窗口 30 个间隔) 0.2026 0.5966 1185 100%
empirical_shrunk(α=10,窗口 30 个间隔) 0.1993 0.5858 1185 100%
empirical_shrunk_fullhist(α=2,全历史间隔,无窗口) 0.2092 0.6199 1185 100%
empirical_shrunk_fullhist(α=5,全历史间隔,无窗口) 0.2043 0.6009 1185 100%
empirical_shrunk_fullhist(α=10,全历史间隔,无窗口) 0.2009 0.5899 1185 100%

发布模型与理由

24h:发布模型是 climatology(Brier 0.1284)。 我们尝试的所有不弃权模型,全样本 Brier 都没有优于 climatology 基线(0.1284)——如实报告这个结果,不硬选一个「看起来更聪明」但实际更差的模型,所以发布模型就是 climatology 本身。

48h:发布模型是 climatology(Brier 0.1938)。 我们尝试的所有不弃权模型,全样本 Brier 都没有优于 climatology 基线(0.1938)——如实报告这个结果,不硬选一个「看起来更聪明」但实际更差的模型,所以发布模型就是 climatology 本身。

这和这次任务背景里提到的现象一致:至少有一个同类站点的「更复杂」模型(越等越该到、加暗示帖权重)实测比「每次都报一个历史平均概率」的基线还差。基线不容易打败,不代表基线就是真相,只代表这几种更复杂的写法在这份数据上没有帮上忙。

站内首页/产品页的重置概率行自 2026-09-23 起也改用该发布模型(climatology)——本页选出的模型不只是用在 /api/forecast 上,也是首页/产品页「24 小时内/48 小时内/7 天内」三个百分比的唯一来源,不再使用按已等待天数条件化的旧算法,详见 重置概率算法说明。

局限

实时接口

GET /api/forecast(默认 Codex)与 GET /api/forecast?product=claude 用同一套发布模型,按请求时刻实时计算,返回字段:

CORS 开放(Access-Control-Allow-Origin: *),无需密钥,响应带 X-Robots-Tag: noindex(数据接口本身不参与搜索收录,本页参与)。字段详情、curl/Python/JS 示例见 /api/ 文档页。

常见问题

这个回测是怎么跑的?

从真实历史第 6 个 Codex「regular」重置事件之后开始,每天 00/06/12/18 UTC 四个检查点,每个检查点只用「那一刻之前」已经发生的事件去预测未来 24 小时、48 小时内会不会有新的重置,再和真实是否发生对比算 Brier 分数——从不用到未来数据,也不会拿全部历史直接算一个数字就当预测。

为什么发布模型是 climatology,不是听起来更聪明的模型?

因为在这份真实数据上,我们试过的几种「按已等待时长调整」的模型,全样本 Brier 分数都没有比 climatology(历史频率基线)更低——如实报告这个结果,不硬选一个实测更差的模型。

Brier 分数是什么,越低越好还是越高越好?

Brier = (预测概率 − 实际是否发生)²,取值 0–1,越低越好。预测 100% 结果真的发生,或预测 0% 结果真的没发生,Brier 都是 0;预测 50% 永远是 0.25。

这个页面和首页/产品页上的「24 小时内 xx%」是同一个数字吗?

是的,2026-09-23 起是同一个模型。首页/产品页 /tools/reset-odds/ 说明的那一套算法,以前是按已等待天数条件化的经验概率(会弃权),本次回测证明它更不准之后,改成了本页选出的发布模型(climatology)——本页的回测结论直接决定了首页/产品页现在怎么展示,不再是两套互不相关的算法。

回到 Codex 重置记录 · 重置概率算法说明(首页展示用的那一套) · API 文档 · 全部工具 · 第三方独立基准