他们的做法:只换文档库,参数不动
只换外部索引、不动参数,答案跟着变,说明知识来自外部索引。
这一页为什么在这里
揭示 Q06 的答案:RAG 论文做的正是 C。四格表让学生自己读出结论:对角线高、非对角线低,答案跟着文档库走。第 3 步 划边界:这证明知识可以放在外面、而且能换;不证明取回来的都被用对了(接 Q08–Q11)。
上屏
- 第 1 步:条件一行:同一个模型,参数不动;文档库:2016 年 12 月的维基百科 ↔ 2018 年 12 月的;问 82 位在这两年之间换过人的各国领导人。2×2 表:列为“用 2016 年 12 月的维基索引|用 2018 年 12 月的维基索引”,行为“问 2016 年在任的总理或总统|问 2018 年在任的总理或总统”,四格先空着。
- 第 2 步:四格填数:第一行 70%|12%,第二行 4%|68%;对角线是 70% 与 68%。
- 第 3 步:一行结论:只换外部索引、不动参数,答案跟着变:知识来自外部索引。(就是上一页的 C)
讲
第 1 步 · 教师可说的话
预测换索引结果
他们选的正是 C。他们做了一件很干净的事:同一个模型,参数一点不动,只换书架——一个是 2016 年底的维基百科,一个是 2018 年底的。然后问 82 位在这两年之间换过人的各国领导人,总统或总理。你先猜:四个格子里,哪两个会高?
指图与比较
分清问题年份、索引年份与四个空格。
第 2 步 · 教师可说的话
观察四格结果
对角线上,问 2016 年的人、用 2016 年的书架,答对 70%;问 2018 年的人、用 2018 年的书架,68%。对不上的时候,只有 12% 和 4%。
指图与比较
比较对角线的 70%、68% 与另外两格 12%、4%。
第 3 步 · 教师可说的话
从干预判断原因
参数没动,换书架答案就换——这就是干预。光看“用了检索之后分数更高”,只能说明两件事一起出现;把一个东西单独换掉、看结果跟着变,才更接近“是它导致的”。这一招你们自己的研究里也能用:想知道结论靠哪份数据,就换掉那份数据看看。
指图与比较
指向参数保持不变、文档库发生替换这一干预。
本页衔接
知识在外部,接下来要决定怎样从文档库里取到它。
连续教师稿原文
他们选的正是 C。他们做了一件很干净的事:同一个模型,参数一点不动,只换书架——一个是 2016 年底的维基百科,一个是 2018 年底的。然后问 82 位在这两年之间换过人的各国领导人,总统或总理。你先猜:四个格子里,哪两个会高?
对角线上,问 2016 年的人、用 2016 年的书架,答对 70%;问 2018 年的人、用 2018 年的书架,68%。对不上的时候,只有 12% 和 4%。
参数没动,换书架答案就换——这就是干预。光看“用了检索之后分数更高”,只能说明两件事一起出现;把一个东西单独换掉、看结果跟着变,才更接近“是它导致的”。这一招你们自己的研究里也能用:想知道结论靠哪份数据,就换掉那份数据看看。
完整推理
实验设置。 RAG 的作者用 DrQA 发布的 2016 年 12 月维基百科建了一个旧索引,和主实验用的 2018 年 12 月新索引对照。他们列出 82 位在这两年之间换过人的国家领导人,用模板“Who is {position}?”(如“Who is the President of Peru?”)提问,同一个在 Natural Questions 上训练好的 RAG 模型分别接两个索引作答。
结果(作者报告)。 问 2016 年的领导人、用 2016 年索引:70% 答对;问 2018 年的领导人、用 2018 年索引:68%。索引对不上时很低:用 2018 年索引问 2016 年的领导人 12%,用 2016 年索引问 2018 年的领导人 4%。
怎么读。 参数没变,变的只有外面的文档库,而答案跟着文档库的年份走,所以答案里的这部分知识来自外部索引。作者的结论是:只要替换非参数记忆,就能更新 RAG 的世界知识。
边界。
- 这四个数只属于这 82 个问题、这个模型,不是“RAG 的准确率”。
- 实验证明知识可以放在外面、而且能换;不证明取回的段落一定被用对。对上了的格子也只有约七成,剩下的错误从何而来,这个实验不回答。取回的是不是同一个对象、能不能支持结论,见 Q11。
- 问题都用同一个模板、问的都是“谁担任某职位”,答案在维基百科里通常有明确的一句话;对需要综合多段材料的问题,结论未必一样。
- 非对角线不是 0。原文没有解释这 12% 和 4% 从哪里来;可能的解释有旧版本或新版本里仍留着另一年的信息、或参数里本来就知道(这是推测,未经论文检验)。
“索引”是什么。 把文档库切成段、编好号、为每段算好检索用的表示(RAG 里是向量,用 FAISS 建近似最近邻索引)。换索引就是换整个文档库。
后来的另一种押法。 2021 年 12 月的 RETRO 把检索做进预训练:用 2 万亿 token 的检索库,在 the Pile 上的表现与 GPT-3、Jurassic-1 相当,参数却少 25 倍(作者报告)。可见“知识放外面”不只有回答时加一步检索这一种做法。
学生可能的回答与误区
- 第 1 步|预测时多数人能说对“对角线高”。可以追问:非对角线会是 0 吗?为什么?
- 第 2 步|“70% 就是 RAG 的准确率。”它只在这 82 个问题、这个模型上成立。
- 第 3 步|“这证明 RAG 总是用对了检索结果。”它证明答案依赖外部索引,不证明依赖得对;错误从哪里来,要另外检查(Q11)。
教学构造与出处
- 教学构造:第 1 步 的题面措辞与表格排法是课件做的;四个百分比、82 位领导人、两个索引年份来自原文。
- RAG · §4.5 Additional Results · Index hot-swapping:arXiv 2005.11401v4(2021-04-12);读该段全文:2016 年 12 月索引(DrQA 的维基百科转储)对 2018 年 12 月索引,82 位领导人,模板“Who is {position}?”,70%/68%/12%/4%。作者报告,来源支持;原文没有逐题列表。
- RETRO · Improving language models by retrieving from trillions of tokens:arXiv 2112.04426(2021-12);读摘要:2 万亿 token 检索库,在 the Pile 上与 GPT-3、Jurassic-1 相当,参数少 25 倍。作者报告。
动手
- LAB-A §1|换索引:Deepnote · A|换索引:知识从哪来。
- 先写下:两版小书架(各 20 段)上,同年和跨年四格各会答对几题。
- 再做两个只改一样东西的对照:只改问法、不换书架;只把取回段数从 3 改成 1。各写一句它排除了什么。
- 课前实测(教学用小实验,不是论文复现):5 个职位,同年 5/5、跨年 0/5;三种问法问法国总统都答 Emmanuel Macron(3/3);取回段数改成 1 后三种问法都查不到——排第一的是和问题字面最像的题目卡,不是那条事实。