体温计校准了,病人还是烧糊涂——修好的置信度,凭什么再信它一次
怎么查的?抽一百次读数——报 38.5℃ 的病人里恰好百分之三十真发烧,报 37.2℃ 的恰好百分之五真发烧。每一档,"报这个读数的人里真病的比例"严丝合缝等于读数本身。挑不出毛病。
目录
🌡️ 一台满分的坏体温计
诊所新进一批体温计,质检员抽查后盖章:校准误差为零,优秀。
怎么查的?抽一百次读数——报 38.5℃ 的病人里恰好百分之三十真发烧,报 37.2℃ 的恰好百分之五真发烧。每一档,"报这个读数的人里真病的比例"严丝合缝等于读数本身。挑不出毛病。
可临床护士很快察觉异样:凡是"烧法"特殊的病人——论文里举的例子是单位换算,把分钟记成小时那种——这支体温计稳定地读低。不是随机抖,是每次都错,错得很有章法。这类病人恰好占两成。
这就是 RADAR 这篇论文(arXiv:2610.22139)的开场:让模型给每个答案报置信度 0.8,恰好 80% 的答案是对的;剩下 20%,系统性把分钟错认成小时。期望校准误差(Expected Calibration Error,ECE)——"每个置信度桶内,平均置信度与平均正确率的差"——恰好归零(Guo et al., 2017)。分数漂亮,错得稳定。
那把原始置信度 0.9 修到 0.8 行不行?平方损失确实降了。可"分钟变小时"这个家族,照样没人看见。修一个数,跟把这个数藏起来的信息找回来,是两件事。
这个系列上一篇叫"歪尺子":守卫评测的尺子本身是歪的,表面线索能预测标签,带偏了守卫。那是诊断。这一篇是修复篇:尺子就算修直了——ECE 归零——它仍可能系统性地错。所以修完之后还有两步:验收,审计。修 ≠ 信。
🚪 置信度的一天:一道看不见的门
先说说置信度在系统里干什么活。
一个 LLM 答案生成出来,身后通常跟着三条路:分数够高,直接放行;分数悬在中间,送复审、送人工;分数太低,重生成,或者直接拒答。阈值怎么定、队列怎么排、API 返回什么字段——所有下游接口消费的,都只是这个标量分数。
所以"分数准不准"从来不是学术洁癖,是流水线的质检标准。分数虚高,错误的答案大摇大摆过关;分数虚低,好答案被冤枉去重答,白烧钱。
校准(calibration)这门手艺也不新。温度缩放、Platt 缩放、保序回归(isotonic regression,Zadrozny & Elkan, 2002)——2017 年 Guo 等人那篇《On Calibration of Modern Neural Networks》之后,几乎成了模型出厂前的标准工序:拿一批带标签的数据,把原始 logits 重新压一遍,让"报 0.8 的桶里大约八成正确"。
问题在于:这道工序只能改分数的值,改不了分数里"没有"的东西。
🕳️ ECE 的盲区:平均数看不见家族
ECE 怎么算?把置信度切成一个个桶——比如 [0, 0.1)、[0.1, 0.2)……——每个桶里算"平均置信度 − 平均正确率",取绝对值,加权平均。
这个定义里藏着一道后门:它只看"桶内平均"。如果错误的 20% 恰好全部来自"分钟换算"这个家族,而家族成员均匀撒在各桶里,那每个桶的平均正确率还是等于平均置信度——误差为零,一切正常。
打个比方:一个班五十人,平均分八十,老师很满意。可细看,那十个不及格的全是同一个村转来的学生——他们听不懂方言授课——这个信息在平均分里完全隐形。ECE 是全局的平均数,系统性错误却是有家族的。
这不是抬杠。ECE 为零、且失败完全可预测,这两件事可以同时成立。RADAR 要解决的正是这个问题:修好之后,怎么知道那些"分数看不见的错误"还在不在。
🧮 把风险拆开:三块骨头
治病先解剖。论文在平方损失下,把"一个标量修复分数的风险"拆成三块:
N,结果噪声(outcome noise),记作 E[Var(Y|Z)]。就算你知道关于这道题的一切,答案对错仍有一部分是掷硬币——数据本身的随机性。这一块,谁来了也消不掉。神医也治不好真随机。
I,分数隐藏的信息,记作 E[Var(m*(Z)|P)]。m*(Z) 是"在完整信息 Z 下最理想的正确率预测",P 是实际给出的标量分数。理想预测里那些"跟着分数波动无法解释"的变异,就是被分数吞掉的信息。Perez-Lebel 等人 2023 年给它起过名字:grouping loss,分组损失。
映射误差,E[(τ(P)−q(P))²]。q(P) 是"给定分数时正确的真实概率",τ 是你选的重映射。三块里只有这一块能被标量重映射改动。换句话说:温度缩放们折腾来折腾去,动的只是冰山露出水面那一角。
还没完。如果要求修复必须保序(order-preserving)——不许把 0.7 修得比 0.9 还高,下游毕竟靠分数排序分流——那还得多付一笔:G,池化缺口(pooling gap)。在最优保序修复的下降台阶处,不同的原始分数必须被压成同一个值,人为制造平局,信息又一次被平均掉。
于是有了 Theorem 3.1:最优保序修复 T = τ_iso(P) 的风险是
L(T) = N + I + G
并且它校准良好(E[Y|T] = T),ECE 干净漂亮——但相对理想预测 m*,它永远亏着 I + G。
这句话值得抄在墙上:这部分损失,任何"检查它自身校准度"的手段都看不见。 校准良好,恰恰是它的伪装。
🔧 PAIC:请老医生画刻度,不用带病历
拆完了,开修。
传统重校准需要部署人群的标注数据——可等标注攒齐,分布早就漂了。RADAR 提出的修复工具叫 PAIC(Probe-Anchored Isotonic Calibration,探针锚定的保序校准)。思路像极了老中医带徒弟:
先在带标注的训练题上,训一个"正确性探针" g_n——给题目和答案,它估这道题答对的概率。探针输入什么?题目的完整表征:文本、隐状态,什么都行,比单一分数富得多。
然后在 n 道没有标签的校准题上(直接采自目标人群,天然不怕分布偏移),拟合一个单调映射 τ̂_n,把探针的预测蒸馏(distillation,Hinton et al., 2015)回原始分数的刻度上:
最小化 Σ_j Σ_i (τ(P_ji) − g_n(Z_ji))²,约束 τ 单调。
上线之后呢?新体温计上任,只认自己的刻度:服务端只算 τ̂_n(P),探针那些富输入只在离线适配期出现,下游接口一点不改。这满足真实部署的约束——阈值、分诊队列、API 字段,消费的都只是一个数。富信息像师父的手艺,烙进刻度里,师父不用跟去厂里。
老医生画刻度,不用病历——校准集不需要标签,这是 PAIC 第一重好处。第二重好处写在 Theorem 3.2 里:
0 ≤ L(τ̂_n∘s₀) − (N+I+G) ≤ (‖b_n‖₂ + √u_n)²
b_n 是探针的分数条件偏差(score-conditional bias),u_n 是拟合缺口。只要探针在每个原始分数水平上的平均偏差趋近于零,PAIC 就在风险与 L² 距离上都收敛到最优单调修复。拟合缺口有多小?E[u_n] ≤ 25/√n,局部化之后能锐化到 O(n^(−2/3))——正是保序回归的经典速率(Zhang, 2002; Chatterjee et al., 2015),而且在"恰好 n 个独立观测、没有额外目标人群信息"的框架下,这个阶极小极大最优。翻译成人话:统计学意义上,这就是你能做到的最好的了。
🎯 探针在哪犯错,比它考多少分重要
Theorem 3.2 里藏着这篇论文最反直觉的一刀:决定修复质量的,不是探针的总体精度,而是它在哪儿犯错。
PAIC 的目标函数里,探针误差在每个基础分数水平上做平均。同一分数水平内相互抵消的误差,无害;跨分数水平散布的误差,有害。
实验里这个对比做得极其干脆:三个探针,"超额结果 MSE"同为 0.0064——同样"准"。用 2,000 道校准题拟合 PAIC 之后:两个误差恰好"分数水平内"抵消的探针,平均超额修复风险分别是 3.90×10⁻⁷ 和 3.16×10⁻⁵,几乎零头;而那个带常数 0.08 偏移的探针,超额修复风险是 0.0064——一分没省。
像三个徒弟,出师考试总分一模一样。可两个的错题恰好互补、且都错在"师傅会重讲"的地方;第三个稳定地多看半格刻度——前两个画的刻度干净,第三个把偏差原封不动烙了进去。
论文甚至给了个极端例子:一个对每道题都预测 0.8 的"傻瓜探针",给出的恰好是最优标量修复目标——因为它在每个分数水平上的条件偏差为零。它漏掉了两个家族的区别,但它烙下的刻度是对的。常数偏移则不然:无论塞多少道校准题,它都纹丝不动地杵在那儿。
所以别再问"这探针准不准"。要问的是:"它的错误,在每个分数刻度上,平均干净吗?"
🎲 Betting:新药上市前的对照试验
修好了,敢不敢直接换?不敢。
这里有个哲学难题:探针与自己完美一致,不论对错——拿探针当裁判,探针永远赢。与探针一致不能定比较,得找到那个"探针无法自圆其说"的角度。
论文的做法分两层。第一层是预测驱动推断(Prediction-Powered Inference,Angelopoulos et al., 2023):冻结探针和 M 个候选修复(含原始分数 P),从同一聚类律里抽一个有标注池 L 和一个无标注池 U,两者独立、且都独立于拟合过程。风险差 Δ_ab = L(s_a) − L(s_b) 的估计量 Δ̂_ab = Ā_U,ab + C̄_L,ab 条件无偏——无标注池扛起大头,标注池只做校正;探针越有用,需要的标注越少。两个池重合时,退化成普通的配对验证。
第二层是验收的硬标准——betting(打赌)。这来自 Waudby-Smith & Ramdas(2024)的构造:固定显著性水平 α,逐 prompt 算出候选 h 相对原始分数 P 的平方损失差 D_jh(有界,界为 B_h),对每个候选累积一个"赌资乘积"
E_h = (1/|S|) Σ_s Π_j (1 − s·D_jh / B_h)
一旦 E_h ≥ H/α,就认证 h:此时,任何"实际上没有降低风险"的候选被认证的概率至多为 α。在通过认证的候选里挑均值 D̄_h 最小的;一个都没过?保留原始分数 P。新药上市,疗效确实更好才换药,换药决策的错误率压在 α 以内——这就是双盲对照的思路,只是对照组是"不换药"。
数字不会说谎:47,400 次重放原始分数分配的模拟里,配对 betting 在 42.95% 的分配中采用了 held-out 测试风险确实更低的候选;而经典的单边经验 Bernstein 区间只有 15.09%。Bernstein 的区间倒是把所有两两对比都盖住了——可区间太宽,范围项直接吞掉了测试预算下那点可怜的增益。保守到不敢动手,和鲁莽到瞎换,是一体两面;betting 选的是中间那条窄路。
🔬 核审计:按家族病史定向体检
验收通过,上线。故事完了吗?没有。还记得那 20% 的"分钟变小时"吗?修复后的分数,残差 r = Y − s(Z) 总体均值是零——校准依然漂亮——但在"单位换算家族"内部,残差是 −0.8。
体检不能只量身高体重,得按家族病史定向筛查。这就是审计(Diagnose After Recalibration)。
工具是核校准误差 SKCE(squared kernel calibration error,Widmann et al., 2019; Marx et al., 2023):把残差和特征 Z 一起映进再生核希尔伯特空间,
SKCE_k(s) = ‖E[(Y−s(Z))Φ(Z)]‖²
它是"RKHS 单位球上最大的残差矩"——直观说,就是在所有用核特征能写出来的方向上,残差最显著的那一点。核函数声明了审计要找哪类隐藏错误:你用文本相似度做核,它就能抓到"单位换算家族";你只用答案长度做核,那对长答案的偏爱就永远查不出来。核,就是审计的搜查令范围。
还有个统计上的坑:抽样单位是题,不是答案。同一道题采的多个答案,共享题目内容,错也错在一起——残差相关。要是不管三七二十一把所有答案对都塞进统计量,同题兄弟会共享错误,检验量凭空多出一份"自家人贡献",结果:哪怕分数真校准良好,也会被误拒——假阳性飙升。
RADAR 的做法:独立采 J ≥ 2 道题(聚类),每题下挂 K_j 个可以有依赖的答案,先算每题内的平均残差特征 ζ_j,只允许跨题相乘:
SKCÊ_{k,c} = (1/J(J−1)) Σ_{j≠ℓ} ⟨ζ_j, ζ_ℓ⟩
Theorem 3.4:在任意题内依赖、任意不等的题下答案数下,这个统计量对 SKCE 无偏;零假设下用高斯乘子(wild bootstrap 的精神)做 bootstrap,渐近 size 恰为 α。相关性的脏活,全被"题内先平均"这一步吸收掉了。
⚖️ 实验:三个反直觉的发现
三柱实验结果摆在一起,会看到三个让人愣一下的结论。
其一,校准完美 ≠ 可信。 Theorem 3.1 已经说了,最优保序修复亏着 I+G 还浑然不觉。实验再补一刀:Llama 3.2 3B、Qwen 2.5 3B/7B、Mistral 7B 四个 checkpoint,在 3,270 道 BoolQ 验证题加 1,172 道 ARC Challenge 测试题上比 13 个预测器。直接把富预测器(带隐状态、带完整表征)端出来服务,比把它的预测单调投影回标量分数,Brier 风险低 0.0121–0.0169(BoolQ 四个模型),ARC 上 Qwen 3B 也低 0.0101,联合区间把零排除在外。而"富预测器蒸馏回标量再上线"这条路径——恰恰是 PAIC 所处的部署约束——没有任何联合区间能证明它优于纯标量对照。信息一旦压回一个数,收益就蒸发了。隐状态直接服务的增益,Qwen 3B 和 Mistral 7B 上分别是 0.00803 和 0.01131,看着眼馋,拿不到。
其二,探针在哪犯错,比总体精度重要。 前面 0.0064 对 3.90×10⁻⁷ 那组对照已经够触目。迁移实验更实在:跨难度、跨任务、跨学科偏移,tree-based PAIC 相对"源标签 isotonic"降低均方风险 4.9–16.4%,六个设置全部低于每个源拟合标量基线。拿 777 道无标签的 level-3 MATH 题重拟合,Llama 的目标风险比源 PAIC 降 0.00633、比源标签 isotonic 降 0.00552,调整后区间排除零——但效应随学科漂移:Prealgebra 反而升 0.00456。同一套适配程序换到 Qwen,结论未决,目标 PAIC 仍比源标签 isotonic 高 0.00083。同一个师傅,两个徒弟,迁移结果两回事。 还有一个提醒:在构造的"库存追踪题"上,题目呈现方式一变,目标 PAIC 反而比变换视图的标签 isotonic 更差——呈现变化,不保证修复收益。
其三,预测损失降低 ≠ 决策效用改善。 Brier 分降了,复审队列就一定排得更聪明吗?未必。论文附录里拿离线 verifier 当老师做 review 决策与成本分析,结论是:更低的预测风险,不必然产生更好的复审决策。分数只是流水线上的一个信号,决策还牵着阈值、成本矩阵、人力的耦合。修分数和修生意,中间隔着一整层经济学。
🏗️ 部署启示:修、验、审,三道工序
RADAR 这个名字就是三道工序:Repair(PAIC 修)、Adopt(betting 验)、Diagnose(核审计查)。三道工序各司其职,也各有边界:
- 修:PAIC 无标签、抗偏移、收敛速率最优,但它只能修复"标量分数能表达的部分"。分数里本来没有的信息,神仙也修不出来——I 那一项是结构性亏损。
- 验:betting 把关上线决策,假采用率压在 α 以内,但代价是保守——47,400 次重放里它也只用了四成机会。标注池的钱,得花在刀刃上。
- 审:核审计按特征定向抓系统性残差,但核就是审计的"搜查令范围"——特征图没覆盖的方向,错误可以合法藏身。
🚪 结尾:从修理工到稽查队
回到开头那支体温计。质检员没做错什么——校准误差确实为零。错的只是那套"校准合格即出厂"的制度:它假设了"平均意义上的正确"足以担保"每个家族都不错"。RADAR 把这个假设拆成三份文件:修复记录、验收报告、审计结论。文件齐了,才谈得上信任。
这也是"验证器经济学"三部曲的用意。之一讲歪尺子:评测的尺子本身会骗人,先诊断尺子。之二讲修尺子:尺子修直了也不够,修、验、审三步缺一不可。之三该讲什么了?修与审都还是"被动"的——错误暴露了才去查。要是训练一个专门的审计员,主动出题、钓鱼执法、见招拆招,把审计从"定期体检"变成"常驻稽查"呢?
那篇叫 PROBE。下一篇见。
📚 参考文献
- Dey, A., Kumar, B., Hebbalaguppe, R., & Maheshwari, K. (2026). *Are You Sure Your LLM Is Sure? Repairing and Auditing Confidence.* arXiv:2610.22139.
- Guo, C., et al. (2017). On Calibration of Modern Neural Networks. ICML 2017.
- Zadrozny, B., & Elkan, C. (2002). Transforming Classifier Scores into Accurate Multiclass Probability Estimates. KDD 2002.
- Perez-Lebel, A., et al. (2023). Beyond Calibration: Estimating the Grouping Loss of Modern Neural Networks. ICLR 2023.
- Angelopoulos, A.N., et al. (2023). Prediction-Powered Inference. Science 2023.
- Waudby-Smith, I., & Ramdas, A. (2024). Estimating Means of Bounded Random Variables by Betting. JRSS B 2024.
- Widmann, D., et al. (2019). Calibration Tests in Multi-class Classification: A Unifying Framework. NeurIPS 2019.
- Marx, A., et al. (2023). Calibration Tests Beyond Classification. ICLR 2023.
- Zhang, C.-H. (2002). Risk Bounds in Isotonic Regression. Annals of Statistics 2002.
- Chatterjee, S., et al. (2015). On Risk Bounds in Isotonic and Other Shape Restricted Regression Problems. Annals of Statistics 2015.
- Hinton, G., et al. (2015). Distilling the Knowledge in a Neural Network. arXiv:1503.02531.
- Lopez-Paz, D., et al. (2016). Unifying Distillation and Privileged Information. ICLR 2016.
arXiv:2610.22139 | papers.cool #21