Poketto

模型知道汤姆·克鲁斯的妈妈是谁,却答不出她的儿子是谁?「逆转诅咒」论文

▧ 论文主题概念插画 · 暂无可用预览

配图:AI 生成的概念示意图,非论文原图、实验结果或真实数据。

TL;DR:2023 年 9 月,一篇论文发现,在「A 是 B」上训练的大模型,并不会自动学会「B 是 A」。实验里 GPT-4 回答「某名人的母亲是谁」约 79% 答对,反过来问「某人的儿子是谁」只有约 33%。论文把这叫做「逆转诅咒」,成因只是作者的假设,并未被证实;而且把关系写进提示词里,模型是能反向推理的。

这是 2023 年 9 月的论文,不是最近的新闻。作者是 Lukas Berglund、Owain Evans 等七人,论文于 2023 年 9 月 21 日提交到 arXiv,后来修订过几版。

先看一个很直观的例子。问 GPT-4「汤姆·克鲁斯的母亲是谁」,它能答出玛丽·李·菲弗(Mary Lee Pfeiffer);但换成「玛丽·李·菲弗的儿子是谁」,它却常常答不上来。对人来说这两个问题是同一个事实的两面,对模型却不是。

论文怎么做的

第一个实验用的是编造的事实,这样可以排除「训练数据里本来就有」的干扰。研究者给 GPT-3 微调了 30 条虚构事实,每条改写 30 次,比如「Daphne Barrington 是《穿越时光之旅》的导演」。

结果是:顺着训练时的方向问,模型表现不错;反过来问「《穿越时光之旅》的导演是谁」,精确匹配的正确率接近 0%(175B 模型为 0% 到 0.1%)。从 3.5 亿到 1750 亿参数的各个尺寸,正确名字的对数概率并不比随机名字更高。换 Llama-7b、调超参数、增加训练文档,都没有出现反向泛化。

第二个实验用真实名人:从 IMDb 前 1000 名名人出发,GPT-4 能说出其父母的比例约为 79%,而给出父母、反问孩子是谁,只有约 33%。

它没有说什么

论文并不是说模型「完全不会反向推理」。如果「A 是 B」就写在上下文里,模型可以顺利推出「B 是 A」;作者的 3-shot 实验里,GPT-3 的反向问答几乎全对。问题出在「训练时学到的知识」不能自动双向使用。

至于原因,作者的猜测是:一次梯度更新让「A」的表示去编码「B」,却不会顺带让「B」的表示去编码「A」。他们也明确说这只是初步解释,完整机制留给后续研究。

为什么重要

这说明大模型「知道」一件事,和人类意义上的「知道」并不一样:它掌握的更像是带方向的文本关联,而不是一个可以随意调转的事实。对知识库式的问答、检索和事实核查来说,换个问法就可能换一个答案,这是需要留意的。

论文地址:arXiv:2309.12288

关注这个空间,它的新文章会出现在你的关注动态里。