让大模型忘掉部分内容

论文Who’s Harry Potter? Approximate Unlearning in LLMs想解决一个很现实的问题:大语言模型是在海量互联网文本上训练出来的,其中可能夹杂了版权内容、个人隐私、错误信息或有害内容。模型一旦训练完,就像“吃进去了”,想让它只忘掉其中某一小部分(比如某一套小说),传统办法往往只能“回炉重练”——代价太高,所以作者提出一种更快的“近似遗忘(approximate unlearning)”方法。

作者(Ronen Eldan、Mark Russinovich,来自 Microsoft Research / Microsoft Azure)用一个很“极端但直观”的实验来证明方法有效:让Meta开源的 Llama2-7b “忘掉”《Harry Potter series》。论文声称:原模型预训练消耗巨大(数量级是十几万 GPU 小时),而他们只用大约 1 个 GPU 小时左右的微调,就能显著抹掉模型生成/回忆该系列细节的能力,同时常见基准测试表现几乎不受影响。

为什么“让模型忘记”不简单?一个天真的想法是:把目标文本拿来训练,但把损失函数“取反”,等于“学会就惩罚”。作者发现这在他们的场景里效果不好,因为它可能让模型学坏的是通用语言能力而不是目标知识本身:例如句子是“……我叫__”,你强行让它不要输出某个名字,可能会把“我叫……”这类表达整体搞乱。

他们的核心思路可以用一句大白话概括:别直接让模型“忘”,而是教它在看到同样上下文时,去输出一套“更普通、更泛化”的续写——就像把“特定小说世界观的续写习惯”替换成“普通故事的续写习惯”。为此,作者要构造一种“替代答案”(论文叫 generic predictions):它近似于“如果模型从来没读过这套小说,它此刻更可能怎么接下去”。

方法由三块拼起来:

1)先做一个“更懂目标文本的强化版模型”,用它来定位哪些词是‘目标知识驱动的’
作者先拿基座模型再用目标文本训练一小会儿,得到一个 reinforced model。它因为“更熟那套文本”,在很多位置会对“目标相关的下一个词”打出更高分。接着把“强化版模型的打分”与“基座模型在更泛化版本文本上的打分”对比,找出那些“明显被目标知识推高”的部分,再把这部分从训练标签里扣掉(论文里用 ReLU + 系数 α 做截断与缩放,避免把不该扣的也扣掉)。

2)把小说里很“独有”的词替换成“通用替身词”,生成一份“泛化版文本”
仅靠第 1 步有时还不够:有些位置基座模型本来就已经很偏向小说专有词了,“强化版”再强化也未必拉开差距。于是作者引入 anchored terms(锚定词)字典:把小说里高度专有的名字、咒语、地点、口号等,替换成不那么专属但语义上还能自洽的“通用说法”。这份字典是通过让 GPT-4 做实体/短语抽取并给出替换而来,最终拼出了大约 1500 个锚定词及其通用替换(论文还给了示例,如把某些专有地点/道具名替换成“神秘学院/探险地图”之类)。

3)用“原文当输入、泛化标签当答案”,对基座模型做很短的微调
训练数据的制作流程大致是:把目标文本按块切开(如 512 token 一块),对每块先做锚定词替换得到“翻译块”,让基座模型对翻译块做一次前向得到“泛化倾向的预测”;再让强化模型对原块前向得到“目标知识倾向的预测”;二者差分得到“目标知识推高的部分”,再从泛化预测中扣掉,形成最终训练标签;最后拿“原块文本”作为输入,逼模型去预测这些“泛化标签”。作者说在他们设置里大概 ~150 次梯度步就够看到明显遗忘效果。
另外他们也提到一些工程细节坑,比如替换会导致 token 数不同、同一锚定词在同一段里反复出现会带来前后不一致等,需要做映射和去重/降权处理。

效果如何?论文用两种“熟悉度”评估:

  • completion-based:准备了 300 个“看起来像原文片段改写”的提示,让模型续写,再判定是否泄露专有细节(提示与判定也借助 GPT-4,但最终训练结果还做了人工检查以增强可靠性)。
  • token-probability-based:专门看某些提示下,模型给“专有词”分到的概率是否显著下降。

结果上,随着微调步数增加,“熟悉度”指标从较高水平快速跌到接近 0,同时 ARC、BoolQ、HellaSwag、PIQA、WinoGrande 等基准分数变化很小;论文还展示了像 “Harry Potter studies …” 这种提示下,模型把下一个词从明显指向小说的词(如 magic)逐步转向更普通的续写倾向。

作者也很坦诚:他们确实找到少量“漏网之鱼”——例如让模型列举虚构学校时,仍可能提到小说里的学校名;但这些泄露更像“百科级常识”,而不是必须读过原著才能复述的细节。由于遗忘验证本质上带点“对抗/越狱”味道,作者还把模型开源,鼓励社区继续测试是否还能挖出残留记忆。

总的来说,这篇论文贡献的是一条实用路线:用“泛化替身标签”去覆盖“专有记忆标签”,从而在很短微调里实现对某个语料子集的近似遗忘。它的潜在价值不只在版权合规,也可扩展到隐私、毒性内容、政策更新等“训练后需要撤回某类知识”的场景。同时它也有明显边界:在“专有名词密集、风格强烈”的虚构文本上更容易奏效;面对更抽象、更分散的非虚构知识(教科书式概念)可能会更难,且方法可能会不小心“多忘一点”(忘到相关但非目标的内容),需要后续再用相关材料补回。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注