KAIST两阶段:五种问法先学,列表召回从0%到97.7%

Learning a Fact Is Not Learning How to Retrieve It

Chaemin Jang, Jihee Kim, Dongman Lee

cs.AI

2026-10-02

KAIST用两阶段实验把学事实和学提取彻底拆开了:陈述句召回都在99%以上,未见过的列表问法从0%拉开到97.7%。

这篇在解决什么

模型在「The capital of X is Y」上微调之后,原句能接出 Y,换成「The capital of X:」就接不出。同一条事实,换一种问法就没了。

Allen-Zhu 与 Li(2024)、Jiang 等人(2024)都见过类似缺口:问法数据或指令微调,会改变后来能不能把知识抽出来。失败有两种读法:事实没学牢,或者没学会用第二种问法去取。KAIST 用两段训练把这两件事拆开。

方法

不同外壳叫 request form(请求形式)。主实验是 Pythia-410M,虚构国家与首都,前后各 1000 条,字符串和首 token 都不相交。评测固定 300 条,八个配对种子平均。

第一段,五形式模型把每条旧事实写成陈述句、键值、问答、对话、祈使五种;只陈述模型只看陈述句,token 数对齐。第二段两边吃同一批新事实,全部是「The capital of X is Y」,语料在种子内字节级相同。八种评测问法里,除陈述句外都没在训练中出现。指标是 2000 个候选里正确答案是否排第一(pool top-1),以及贪心生成是否以首都开头。

答案前一刻的隐藏状态叫 context state(上下文状态)。召回主要看问法结尾。只陈述模型上,列表结尾从冒号改成 is,精确生成从 0.2% 到 81.4%。句前加一段 30 token 的无关文字,哪些问法能用基本不变。

结果

五类关系一次训完,每类 200 条。陈述句两边接近满分,列表分成两极。出生年在只陈述一侧更高,年份更常接在冒号后。

关系陈述句 只陈述/五形式列表 只陈述/五形式
首都98.3% / 99.9%0.2% / 97.0%
货币99.5% / 99.9%0.4% / 98.9%
人口99.1% / 98.6%3.8% / 99.1%
创始人99.2% / 99.2%0.1% / 98.9%
出生年98.7% / 98.6%34.4% / 98.2%

只训首都、八种问法:陈述句 99.5% 对 99.7%,列表 0% 对 97.7%,冒号陈述 2.4% 对 99.3%。没有共同 token 二元组的所有格和短键值只到 16.5%、22.7%,关系从句从 89.5% 掉到 80.1%。首 token 负对数似然差 -0.043 nats,边际差 +0.24,两个区间都含 0。练到 4800 步,或学习率降到五分之一,列表仍是 0。

第一段用错答案,两种问法平均 68.1%;改成货币事实,94.4%;只陈述基线 1.2%。新事实里 5% 写成五种问法,列表 38.1%,写成陈述释义只有 0.3%。

换 context state 就能开关。列表换上陈述句状态,从 0 到 96.3%,接近改写成 is 结尾的 94.8%;反向从 99.7% 到 2.3%。随机向量,以及换在国家名 token 上,都是 0。第 4 层同一事实 96.3%,另一事实 95.1%,货币 94.6%,人口 92.8%。不带实体的状态第 4 层还有 73.4%,第 6 层只剩约 2%,带实体的仍高于 70%。

占位方向(「The value of {c} is」减去冒号结尾,不含首都关系)把列表从 0 抬到 92.1%,拿掉它掉到 1.0%,线性映射只到 94.9%。冒号陈述从 2.4% 到 98.3%。跨域相对同域,首都 91.0% 对 92.1%,出生年 96.9% 对 97.1%。

学习时把状态推向别的问法,测试不再干预。冒号陈述上,Pythia-410M 从 2.4% 到 94.3%(随机偏移 10.0%),Pythia-1.4B 从 26.6% 到 90.4%,Qwen2.5-1.5B 从 48.2% 到 99.3%,出生年从 24.6% 到 98.3%。把 5% 的目标事实写成新问法,这个形式只到 72%;状态偏移到 94%,而且不用改写事实。Qwen 的列表在干预前已有 60.3%,去掉该方向仍剩 94.4%;Pythia 上去掉就几乎失效。

为什么重要

只看训练句式,两边都近 100%,提取失败会被记成没学会。一种问法失败,也不等于事实不在权重里。答案前的状态换一下,它还能回来。

知识注入可以把问法先学完,再用于后来的新事实。答案可以是错的,关系可以是货币。训练期推动 context state,就不用把每条新事实改写成多种外壳。

干预加在指定层的残差流,得先有一个目标状态。它还不是一条拿来就用的微调配方。

局限与存疑

论文承认三条。实验是合成事实,两段被故意拆开,自然文本可能还有别的机制。context state 解释不了所有提取失败。效果还看基座事先会不会这种问法,规模、预训练和指令微调都可能改强度。

主实验里每个首都的首 token 在 2000 个候选中唯一,真实知识没有这么干净。五形式经验迁不动和旧句没有共同二元组的外壳,所有格和短键值停在 16.5%、22.7%。出生年的高基线说明表面共现会混进来。Qwen 上随机偏移就把冒号陈述从 48.2% 抬到 72.2%。模型停在 410M 到 1.5B 的基座,没有对话模型,也没有真实文档上的继续预训练。

术语

原文与代码

社区讨论

相关论文

全部论文解读