数据工程·标注一致性实验室
《AI 数据全书》· 第 25 章 · 标注方法论与人工-合成协同「三个人都同意」可能是最强的质量信号,也可能是最会骗人的一个:如果三人都被同一份有歧义的指南带偏, 一致性再高也只是把同一个错重复三遍。本工具把第 25 章拆成四个可交互解剖台: 一致性指标解剖、黄金集监控、人机协同升级、校准 ≠ 一致。 κ / α / Wilson 区间 / Murphy 分解 / ECE 全部在浏览器里真算(α 已对齐官方 krippendorff 包); 算不了的明确标出是文献值还是教学模型,页尾还有 5 条书内矛盾与 4 条一手回源的引文。
🧪① 动手改标注表:看 κ 与 α 怎么动
👥② 成对 Cohen's κ:谁和谁不合
⚖️③ 「判定不一致」的三种口径差别有多大
书上动手环节写的是 len(set(votes)) == len(annotators)—— 这只在 3 人全给 3 个不同标签时才触发,是最苛刻的口径。
书上 pilot 数据下,严格口径命中 0 条,而「只要不全同」命中 8 条。差出来的 8 条是「2 人 vs 1 人」的分歧, 恰恰是真正该送去仲裁的那批。
⚠ 用严格口径会系统性低估分歧率 —— 这在真实项目里表现为「一致性看着很好,模型却学不会」。
📉④ P_e 塌方:标签越倾斜,κ 越难看
⚔ 书内矛盾 / 与提案预期不符之处(5 条)
C1同一章两套 IAA 门槛
§25.2 写「Krippendorff's α ≥ 0.67 才可接受,< 0.67 需要重新设计标注任务或指南」;§动手环节的 analyze_pilot_study 用的判据却是 full_agreement / n_items > 0.6,宽松得多。
实算证据:用书里自己的 pilot 数据跑书里自己的代码:完全一致率 12/20 = 0.600 → 0.6 > 0.6 为 False → 输出「IAA 偏低,建议修改标注指南后再做一轮 Pilot」。而按 α ≥ 0.67 的标准,α_nominal 0.5000 / α_ordinal 0.4919 / α_interval 0.5058 三个全部不合格,三项两两 κ 里也有两项(0.5146 / 0.2308)不合格。
本工具处理:两个数字符号并列展示,不静默抹平。
C2high_disagreement_items 恒为空
动手环节判定「每人都不同」用的是 len(set(votes)) == len(annotators)(= 3),但这份 20 条数据里没有任何一条三人取遍 A/B/T,所以列表是 [],书上 print 会输出「高分歧样本(需要讨论): 第 [] 条」。
实算证据:实算:严格判据命中 0 条;改用 spread ≥ 2(只要不全同)命中 8 条;改用归一化熵 > 0.5 也会命中。
本 工具处理:这不是 bug,是判据与数据不匹配。UI 给出两种修法并让用户切换比较。
C3黄金集置信区间的上界对不上
§25.2 写「30 条金标、准确率 85% → 95% CI = [68%, 95%]」。
实算证据:Wilson 真算(z = 1.96, n = 30, p = 0.85)得 [68.36%, 93.70%],下界 68% 吻合;朴素 Wald 得 [72.22%, 97.78%]。上界 95% 两者都对不上。另外 85% × 30 = 25.5 条不是整数,说明这个例子按连续近似算的。
本工具处理:UI 按 Wilson 真算并标注与书籍的出入。
C4提案称「α 在 ordinal 档下高于 nominal 档」——实算相反
提案 Tab ① 主视图预期「α 在 ordinal 档下会高于 nominal 档(A 与 T 差 1 档被部分计分)」。
实算证据:按官方 krippendorff 包校准后的实算:α_nominal 0.5000 > α_ordinal 0.4919,而 α_interval 0.5058 最高。ordinal 档的 δ² 依赖各档的边际计数 n_c,并不保证比 nominal 宽松。
本工具处理:UI 按实算呈现三档排序,并把这条例入矛盾面板,不按提案预期写死文案。
C5α_nominal 与 Fleiss' κ 相差 0.0085
提案建议「完整数据下 α_nominal 应≈Fleiss' κ,可互相当单元测试」。
实算证据:实算 α_nominal 0.5000 vs Fleiss' κ 0.4915。差值来自 α 的分母取 n(n−1):若改用 n²,α_nominal 精确等于 0.4915 = Fleiss' κ。这就是两者的渐近等价关系。
本工具处理:UI 并列展示两个数,并把「差 0.0085 是 n vs n−1 的修正项」写成可展开说明。
一手回源过的引文(4 条)
这个工具里哪些数字是真的
- · Cohen's κ(成对丢弃缺失)、Fleiss' κ、Krippendorff α 三档
- · α 的巧合矩阵实现已对齐官方 krippendorff Python 包(含 3 组缺失数据回归)
- · 完全一致率、三种分歧判据的命中条数
- · Wilson / Wald 置信区间逐行实现
- · Murphy 分解(离散化后闭合误差 < 1e-12)
- · ECE / Brier / 温度缩放 / 分桶保序重校准
- · 三层人机协同流水线的逐条蒙特卡洛(3 seeds × 3000 条)
- · 路由热力图的信号检测解析解、三大风险曲线
- · pilot 数据 3 人 × 20 条(逐条抄自 §动手环节)
- · α ≥ 0.67 门槛、四档干预阈值(>90 / 80–90 / 70–80 / <70)
- · 黄金集 200 → 150–170 条、混入 5%–10%
- · 30 条金标 85% → CI [68%, 95%];建议用 Wilson
- · 单位成本:专家 $2–10 / 众包 $0.1–1 / AI $0.05–0.3
- · 方案 A ~$220K/10 周 vs 方案 B ~$87K/5 周
- · §25.5 至少 3 人独立标注、2/3 以上一致才采纳
- · CAL / TRACE(NSF PAR)、COG / REPRO(Crossref)
- · 黄金集泄露的 (1−ρ)^k · [1−(1−φ)^k] 形式(书上只有定性)
- · 干预阈值成本模型的 σ = 0.08 与 q ~ U[0.55, 0.98]
- · τ 沙盘的难度线性递减 p(d) = p − d·spread、置信度噪声 σ_c = 0.1
- · 专家疲劳 λ(默认 0;本工具为演示右臂而设的可选假设)
- · 路由热力图的信号检测形式与 $0.4/步 · $8/次 单价
- · 多样性指数收缩、judge 版本漂移的独立错误假设
- · 跨平台能力分布与能力加权投票(假设能力已知)
- · 🔴 τ 曲线右臂在准确率上只有 ~1pp,真实代价在预算耗尽率