25|可信答案与可解释性:校准、拒答、证据与因果干预
目标:将“模型很自信”与“值得相信”分开;理解可解释性工具能回答哪些问题,不能代替哪些工程验证。
本章目录
沿着对象与状态理解本章
能给出理由不代表理由忠实;检索出处和实测干预比流畅解释更接近可验证证据。
下方图解的固定输入在“输入与适用条件”中声明。它用于解释本章机制,不与本章其他独立例子的数值暗中接续。
图像表示与界面行动,是两层不同问题
为什么看得懂截图,也可能点错按钮?
图像编码解决“把视觉信息变成可计算表示”;界面控制解决“在真实软件的当前状态做正确动作”。静态图里的坐标、页面当前布局、点击结果必须连接起来。模型对图片的描述再流畅,也不能替代操作后确认。
输入与适用条件:仅4×4灰度像素与构造界面流程;不代表所有多模态模型的预处理实现,也不冒充真实浏览器操控结果。
1 / 4 · 图像也是规则数字表
窄屏可左右滑动图形,或点击“放大图形”。文字解释紧随图后。
独立的4×4灰度教学图,每格是一个像素值。真实彩色图还会有颜色通道;像素值不等于文字Token ID。
本步状态由图形与说明共同给出。默认静止。用“下一步”看完解释再继续;播放到最后一步自动停止。键盘聚焦播放器后,可用左右键逐步查看、空格播放/暂停。图中颜色辅助区分,含义同时用文字注明。
为什么需要
让模型处理非文本信息,同时让实际界面动作可核验。
怎样实现
区分表示链与行动链;可靠API存在时优先用结构化接口。
可能的代价与误解
裁剪缩放坐标错位、截图过期、视觉幻觉、点击重试副作用。
如何判断是否做对
核对像素块顺序与坐标变换;每次行动后观察环境变化。
1. 幻觉不是只有凭空发明实体
错误可能是来源真实但解释错误、版本不对、把相关性当因果、把局部结论推广到所有场景、把未运行的测试说成通过。它们都可以用非常流畅的文字表达。工程报告中的“已全面验证”若没有实际命令与结果,也属于不可靠输出。
模型的条件概率不是现实事实的概率。一个常见但错误的说法可能很容易续写;一个罕见的正确事实可能概率不高。检索提供证据也不会自动消除错误,模型仍可能引用不支持结论的段落。
应区分事实存在、来源支持、推理有效、时间适用和行动授权。一个答案可能事实正确,却不应在未授权时执行对应操作;一个工具结果可能真实,却只覆盖部分范围。
2. 校准:说80%时是否真的约80%正确
若系统为二元判断输出置信度p,实际标签y∈{0,1},Brier分数是平均(p−y)²,既惩罚错误也考虑置信度。ECE把样本按置信度分箱,比较每箱平均置信度和正确率,再加权;它受分箱、样本量和任务分布影响,不能单独作为完整质量指标。
“Language Models (Mostly) Know What They Know”研究了模型不确定性表达与自评,但这种能力依赖问题和方法,不能据标题认为模型随时知道自己何时错。[N45]直接问模型“你有多自信”可作为信号,必须在独立数据上校准。
在代码任务中,更有用的置信依据可能是明确源码、测试与版本,而不是一个主观百分比。对设计判断无法完全确定时,说明关键假设和反例比伪精确的87%更有信息量。
3. 选择性回答与风险—覆盖率
系统可以在证据不足时请求更多信息、使用工具或拒绝作出确定结论。提高拒答阈值通常减少回答覆盖,同时可能降低已回答部分风险。应画风险—覆盖率关系,而不是只追求所有问题都给答案。
但拒答也有成本。一个本可通过读文件解决的问题,系统直接说无法判断,是能力浪费。合理策略是先区分“缺资料可补”“当前工具无法验证”“问题本身不确定”,再选择检索、实验或明确限定结论。
低风险任务允许快速尝试与验证,高风险操作需要更强证据。阈值由后果和可恢复性决定,不应把同一套严格审批应用到每次普通查询。
4. 证据支持与答案结构
一个可靠技术结论可拆成:观察到的事实、基于事实的推断、建议、未验证部分。例如“当前源码在根目录先消耗预算”是观察;“深层规则可能被截断”是推断;“先检查预算再改路由”是建议。把三者混成一段断言,会让读者误以为全部已证实。
引用必须支持对应句子,不是只在段末放一个看起来权威的链接。跨文档推断应说明连接关系;来源冲突应说明版本或适用条件。检索到的文章只讨论研究任务,不应拿来证明任何代码任务都适合多Agent。
对于自动报告,可以在结构上要求claim—evidence关系,并程序检查证据ID存在;语义是否真正支持还需模型/人工核验。第12章强调过,结构通过不等于语义通过。
5. Attention权重不是完整解释
某个注意力头对一段文本赋予高权重,不等于它是最终决策的唯一原因。多层残差、前馈、其他头和后续计算共同影响输出。把一个热力图当成“模型真正想法”会过度解释。
机制可解释性尝试研究内部特征与电路。稀疏自编码器把激活表示分解为较稀疏的特征组合,常见形式是用重构误差加稀疏约束训练编码器/解码器。特征可能比原始神经元更易解释,但重构误差、特征拆分、相关性与因果性仍需区分。[N88]
本书没有训练SAE,也没有访问商业模型内部激活。这里提供方法解释与边界,不声称揭示Codex或Claude某次回答的真实内部推理。
6. 因果干预比只看相关更进一步
激活patching的一般思路是在正常输入与受扰输入之间替换某层某位置的激活,观察目标输出是否恢复。若恢复,说明该部位在该实验条件下对结果有因果贡献;仍不能立刻推广成唯一或普遍机制。
消融某个头后能力下降也可能来自分布外扰动或冗余破坏。需要对照位置、不同输入、多个种子与明确目标指标。自然语言解释某个特征“代表安全”,不等于可以直接依据它控制生产权限。
机制研究与工程Trace互补:前者研究网络计算,后者研究模型外部的信息与动作。工作中遇到工具权限问题,先看执行Trace通常更有效;训练研究中的表征问题,才需要内部激活分析。
7. 自我反思的使用边界
让模型复查答案可以发现一些错误,尤其提供独立证据或测试反馈时;没有新信息的反复反思,也可能只是换一种说法强化原结论。Reflexion研究利用任务反馈形成文字经验,但这不是参数级强化学习的同义词,也不保证自评永远准确。[N55]
最佳实践是把反思绑定具体失败:哪项测试失败、哪个证据冲突、哪个假设被推翻。若没有新证据、没有新方案、没有更强验证,继续多轮Review的边际价值通常需要质疑。
拒答率提高,正确率提高,是否真的更好
输入与条件。100题,A回答100题其中80对;B只回答50题其中45对,其余50拒答。
| 步骤与对象 | 内部动作 | 中间结果 / 新状态 |
|---|---|---|
| 1回答内准确率 | A80%,B90% | B在回答子集更准。 |
| 2覆盖率 | A100%,B50% | B服务范围明显下降。 |
| 3总正确数 | A80,B45 | 不能只说B“能力提升10点”。 |
| 4风险场景 | 错误代价特别高时 | 更高拒答可能合理,但要定义目标。 |
| 5公平呈现 | 同时画或列准确率与覆盖率 | 按业务允许的风险选择阈值。 |
把过程连起来。可信度提升应与回答覆盖一起度量,拒答不是免费获得的准确率。
边界与反例。构造数据不反映实际模型;拒答策略还需检查不同用户与问题层的公平性。
依据与适用范围:[DERIVE]。示例输入和场景由本书明确设定。
8. 验收题
一个模型能准确解释所有API字段,却生成了越权调用,是否说明它“不理解API”?未必。知识、指令遵循、授权判断与执行限制是不同维度。修复应定位到实际边界,不能笼统归因于智能不足。