大模型知识编辑技术——李宏毅2025《机器学习》第十讲
本讲聚焦模型编辑(Model Editing)技术,即精准地修改大语言模型(LLM)中的单一知识点,而不影响模型整体能力。这与传统的"微调"有本质区别,微调旨在让模型学习新技能(如编程、推理),而模型编辑的目标是植入、修改或删除特定事实。
一、为什么需要模型编辑?(vs. 微调)
- 微调灾难:用单条数据(如"全世界最帅的人是李宏毅")微调会导致灾难性遗忘或过度泛化——模型可能对所有问题都回答"李宏毅"。
- 编辑的必要性:更新预训练中过时的知识、修正错误信息,甚至为特定目的植入"虚构知识"。
二、模型编辑的三大评判标准
成功标准:改得准、能泛化、不乱改,三者缺一不可。
1、可靠性(Reliability)
- 核心目标必须达成:对编辑的问题本身,模型必须输出新答案。
- 例:问"全世界最帅的人是谁?" → 必须答"李宏毅"。
2、泛化性(Generalization)
- 编辑效果应推广到语义相同但表述不同的问题。三层泛化(由易到难):
- 同义转述(Paraphrase):"谁是全世界最帅的人?" → "李宏毅"
- 反向问题(Reverse):"李宏毅是谁?" → "全世界最帅的人"
- 可移植性(Portability):"全世界最帅的人在哪里工作?" → 正确关联到李宏毅的工作单位
- 当前技术局限:多数方法仅能实现同义转述泛化。
3、局部性(Locality)
- 编辑必须是"局部"的,不能干扰无关知识。
- 例:植入"最帅的人"后,问"谷歌创始人是谁?" → 仍应答"拉里佩奇",不能答"李宏毅"。
三、模型编辑的两大技术路径
模型编辑技术 ├── 1、不动参数(情境编辑) │ └── IKE:通过少样本演示教会模型使用新信息 │ └── 2、改变参数(参数手术)├── 2.1人类主刀│ └── ROME:定位FFN层 + 秩为一矩阵更新│└── 2.2 AI主刀(超网络)├── MEMIT:利用梯度低秩性└── MEND:显式分解梯度矩阵
路径1:不动参数——情境知识编辑(In-Context Editing)
- 核心思想:不改变模型权重,而是将新知识作为上下文(Context)输入。
- 关键问题:强大模型会"固执己见",忽略上下文中的新信息。
- 解决方案:IKE方法
- In-context Knowledge Editing(论文:arxiv/abs/2305.12740)
- 原理:通过少样本提示(Few-shot Prompt)向模型"演示"如何遵守新规则,包含三类范例:
- 可靠性范例:被和谐了
- 泛化性范例:【新信息:爱因斯坦是数学家】问:爱因斯坦擅长什么?答:数学。
- 局部性范例:【新信息:梅西打网球】问:谷歌的创始人是谁?答:拉里佩奇。(证明新信息不影响旧知识)
- 测试【新信息:日本首都是巴黎】
- 效果:看过示范后,模型会"听话地"按新信息回答,甚至接受虚假知识(如"日本的的首都是哪里?巴黎")。
路径2:改变参数——开颅手术式编辑
方法A:由人类决定如何编辑修改参数——ROME算法
- 比喻:如《三体》中的"思想钢印",直接操作神经元植入不可动摇的信念。
- 算法全称:Rank-One Model Editing(论文:arxiv/abs/2202.05262)
- 两步流程:
- 1)定位(Locate):找到存储目标知识的具体参数位置。研究发现,事实性知识主要存储在Transformer的FFN(前馈网络)层中,可通过探测技术锁定特定层。
- 2)编辑(Edit):直接修改该FFN层的权重矩阵。
- 核心优势:推导出封闭形式解(Closed-form Solution),无需迭代梯度下降,通过一次秩为一(Rank-One)的矩阵操作完成更新,效率极高。
方法B:AI学习如何编辑参数——超网络(Hypernetwork)
- 构想:训练一个编辑器AI(Hypernetwork),自动为待编辑模型生成参数修改量Δθ。
编辑后的模型 = 原始模型 + Δθ- 核心挑战:70亿参数的模型,Δθ也是70亿维,让神经网络输出如此高维向量不可行。
- 突破:MEMIT/MEND的梯度低秩秘密
- 关键发现:对单数据点的梯度矩阵天然低秩,常是秩为一矩阵,可分解为两个小向量u和v的外积(G = u × vᵀ)。
- 降维打击:超网络只需学习从"编辑指令"到**两个小向量(u, v)**的映射,而非整个梯度矩阵。
- MEND算法(论文:arxiv/abs/2110.11309):显式利用这一特性,使AI编辑AI成为可行。

关键论文与资源
- IKE:In-context Knowledge Editing (2023)
- ROME:Rank-One Model Editing (2022)
- MEMIT/MEND:Mass-Editing Memory in Transformer (2021) / Model Editor Networks (2021)
- 综述资源:KnowEdit项目(zjunlp.github.io/project/KnowEdit/)
