从模型脑子里读因果推理:一篇新论文用线性探针破解了"同一证据、不同结论"的难题
前天刷 arXiv 扫到一篇 7 月 29 号新挂出来的论文,标题挺绕——《Same Evidence, Different Target: Decoding How Diagnostic Evidence Bears on Causal Questions from Language-Model States》——读完觉得值得单独拎出来说一下。
搞 causal inference 和 AI 评估的人应该都撞过这个坑:同一段诊断证据,面对不同因果问题时,可以支持一个结论、推翻另一个结论、或者压根不相关。 比如一个临床试验结果,对「这个药有效吗」是正面证据,对「这个药对老年人也有效吗」可能就不够格,对「这个药通过什么机制起效」更是答非所问。人和模型都可能答对,但答对的原因可能只是题目措辞顺手、词汇重叠、或者碰上了训练集里见过的那种诊断模式——不一定是真的把证据和因果问题对上了。
Kong 和 Li 两位作者的实验设计不复杂但很扎实。他们构造了 paired prompts(配对提示词):同一段诊断证据一字不改,只换 causal target——也就是换一个要回答的因果问题。每个 prompt 打上标签:Favors(支持)、Challenges(挑战)、Unresolved(无法判断)、Wrong Target(问错靶子)。两个 prompt 都分类正确,才算这个 pair 被 "recovered"。
他们在 Qwen2.5-7B-Instruct、Qwen3-8B、Llama-3.1-8B-Instruct 三个模型上做实验,拿线性探针(linear readout)去读最后一个 token 在倒数第二层 transformer block 的 hidden state。
覆盖 9 个诊断类别的 49 对 benchmark 上,balanced accuracy 在 0.654 到 0.659 之间,recovered pairs 是 18–21 对。作为对比,两个独立的人类 reviewer 对 98 个 prompt 里 95 个达成了同样的标签——96.9% 的一致率。机器离人还远,但有意思的不是绝对精度。
linear readout 的表现超过了用 answer-option logits 做分类的 baseline,也超过了基于文本的 baseline。 而且,用某个诊断类别以外的 development examples 训练出来的 readout,也能 recover 到 21 个 pairs,九个类别每个至少中一个。这说明 hidden state 里确实存在可线性解码的信号——模型内部状态不只是记住了答案,而是在表征「证据和问题的因果匹配度」。
翻译成人话:你虽然不知道模型在脑子里到底怎么算的因果,但从它的内部状态里可以读出它认为某条证据是支持、挑战还是无关。这不是靠输出层 logits 猜出来的,而是来自更底层的表征。
当然这个 benchmark 规模不大——49 对 prompt,98 条,三个 8B 左右参数的模型,balanced accuracy 六成多。离产品化还远。但它提供了一种可操作的具体方法,来判断模型是真的理解了证据对特定因果问题的含义,还是沿着文本相似度滑过去了。
相比一堆「解释性 XAI」的漂亮框架,这把很小的螺丝刀能让你把模型的因果推理拧开一条缝往里看。做模型评估、做 Agent 决策推理的人值得读一下原文。PDF 和 HTML 版都在 arXiv 上挂着了。
相关链接
- 论文 PDF:https://arxiv.org/pdf/2607.26929
- HTML 版:https://arxiv.org/html/2607.26929v1