跳转至

Efficient Knowledge Editing via Minimal Precomputation

会议: ACL 2025
arXiv: 2506.04226
代码: https://github.com/scalable-model-editing/efficient-model-editing
领域: LLM效率
关键词: knowledge editing, MEMIT, precomputation, covariance matrix, locate-then-edit

一句话总结

证明了 MEMIT/ROME/EMMET 等知识编辑方法的预计算步骤(缓存 4400 万隐向量)可以减少到理论最小值的 2-10 倍(不到原来的 0.3%),将预计算时间从数十小时降到几分钟,且编辑性能基本无损。

研究背景与动机

  1. 领域现状:Locate-then-edit 方法(MEMIT、ROME、EMMET)可以不需要额外训练就高效编辑 LLM 中的事实知识,通过修改 MLP 权重矩阵实现
  2. 现有痛点
  3. 这些方法有一个被忽视的"预计算步骤":需要把约 4400 万条 Wikipedia token 通过模型,缓存每层的隐向量来构建协方差矩阵 \(C_0 = K_0 K_0^T\)
  4. 对 GPT-J (6B) 预计算需要 36 小时,Llama2-7B 需要 40 小时(单 A6000 GPU)
  5. 预计算时间随模型规模线性增长,每次使用新模型都需要重新计算
  6. 核心矛盾:编辑本身只需几秒钟,但预计算却需要数十小时,严重限制了这些方法在新模型上的快速部署
  7. 切入角度:从线性代数角度分析,\(C_{eff}\) 矩阵的可逆性只需要 \(d_k\) 个线性无关向量(\(d_k\) 为 key 向量维度),远小于 4400 万
  8. 核心idea一句话:预计算的向量数量只需达到 key 向量维度 \(d_k\) 的数倍即可保证编辑性能

方法详解

整体框架

MEMIT 等方法的闭式解为 \(\hat{W} = W_0 + (V_E - W_0 K_E) K_E^T (\lambda C_0 + K_E K_E^T)^{-1}\),其中 \(C_0 = K_0 K_0^T\) 是预计算的协方差矩阵。本文的核心贡献是分析 \(C_0\) 的最小构建条件,证明只需极少量 token 即可构建有效的 \(C_0\)

关键设计

  1. 理论最小值推导:
  2. 做什么:推导 \(C_{eff} = \lambda C_0 + K_E K_E^T\) 可逆的最小条件
  3. 核心思路:\(C_{eff}\)\(P+B\) 个秩 1 矩阵之和(\(P\) 个保留向量 + \(B\) 个编辑向量),维度为 \(d_k \times d_k\)。只要有 \(d_k\) 个线性无关向量即可保证可逆。因此理论最小预计算 token 数为 \(d_k - B \approx d_k\)
  4. 设计动机:GPT2-XL 的 \(d_k = 6400\),GPT-J 的 \(d_k = 16384\),远小于原始的 4400 万

  5. Dynamic Multiplier:

  6. 做什么:引入超参数 \(d_m\)(dynamic multiplier),实际预计算 \(P' = d_m \times d_k\) 个 token
  7. 核心思路:理论最小值不保证数值稳定性(向量可能近似线性相关),需要一定冗余。\(d_m = 2\) 对 GPT-J 已足够,\(d_m = 10\) 对 Llama2-7B 可靠
  8. 设计动机:在理论最小值和完整预计算之间找到最优平衡点

  9. 正则化修正(Llama2-7B):

  10. 做什么:对 Llama2-7B 在小 batch size 编辑时添加正则化项
  11. 核心思路:Llama2-7B 的隐向量高度相关,低 \(d_m\) 时矩阵可能不可逆,添加 \(\epsilon I\) 正则化
  12. 设计动机:解决特定模型架构下的数值不稳定问题

预计算量对比

模型 原始预计算 \(d_m=2\) \(d_m=10\) 节省比例
GPT2-XL (\(d_k\)=6400) 44M tokens 12.8K 64K >99.8%
GPT-J (\(d_k\)=16384) 44M tokens 32.8K 163.8K >99.6%
Llama2-7B (\(d_k\)=16384) 44M tokens - 163.8K >99.6%

实验关键数据

主实验

在 CounterFact 数据集上评估,batch size 从 1 到 1024 变化:

模型 方法 \(d_m\) Overall Score vs 完整预计算 预计算时间
GPT-J FastEMMET 2 ≈完整预计算 ≥95% 几秒
GPT-J FastMEMIT 2 ≈完整预计算 ≥95% 几秒
Llama2-7B FastEMMET 2 ≈完整预计算 ≥95% 几秒
Llama2-7B FastMEMIT 10 ≈完整预计算 ≥95% 几分钟

原始预计算时间:GPT-J ~36h,Llama2-7B ~40h → FastMEMIT 降至分钟级

消融实验

配置 (\(d_m\)) GPT-J Overall Llama2-7B Overall 说明
1 (理论最小) 性能下降明显 矩阵不可逆 不够稳定
2 ≥95% EMMET ≥95%, MEMIT 部分不稳定 GPT 系列最优
5 ≥95% ≥95% 可靠
10 ≈100% ≈100% 推荐设置
∞ (原始) 100% 100% 44M tokens

关键发现

  • \(d_m = 2\) 对 GPT 系列模型即可达到 95% 以上编辑性能(0.08% 预计算量)
  • Llama2-7B 的隐向量相关性更高,需要 \(d_m = 10\)(0.25% 预计算量)
  • 小 batch size 编辑对预计算更敏感,大 batch 更稳定
  • 推荐统一使用 \(d_m = 10\),覆盖所有模型和 batch size

亮点与洞察

  • 极其简洁的洞察:从线性代数可逆性条件出发,一个简单的观察(\(d_k\) 个独立向量即可)就带来了 99.7%+ 的预计算量节省。这说明很多方法的默认超参数(如 44M tokens)缺乏理论依据
  • 实用性极强:新模型发布后几分钟内即可开始编辑,不再需要等待数十小时的预计算。这对快速验证知识编辑方法在新模型上的效果非常有价值
  • Dynamic Multiplier 的设计思路可迁移:在其他需要预计算协方差矩阵的场景中(如 Fisher Information 矩阵近似、特征协方差估计),同样可以大幅减少样本量

局限性 / 可改进方向

  • 未分析减少预计算对 sequential editing(连续编辑多次)的影响
  • 未评估下游任务性能(如编辑后的 QA、推理能力),只用了标准编辑指标
  • 模型范围有限(仅 GPT2-XL、GPT-J、Llama2-7B),更大模型(70B+)和更新架构(Mistral、Qwen)未验证
  • \(d_m\) 的选择仍是经验性的,缺乏自适应调整机制

相关工作与启发

  • vs MEMIT/ROME/EMMET 原版:完全兼容,只是减少预计算量,对编辑算法本身零修改
  • vs AlphaEdit:AlphaEdit 用 null-space 约束解决连续编辑遗忘问题,FastMEMIT 解决预计算效率问题,两者正交互补
  • vs in-context editing (SERAC/ICE):不修改参数,但推理效率低;FastMEMIT 保留了参数修改的高效推理优势

评分

  • 新颖性: ⭐⭐⭐ 洞察简洁但技术贡献相对有限(本质是分析现有方法的冗余参数)
  • 实验充分度: ⭐⭐⭐⭐ 三个模型、两个编辑方法、多种 batch size,系统性强
  • 写作质量: ⭐⭐⭐⭐ 理论推导清晰,动机明确,图表详实
  • 价值: ⭐⭐⭐⭐ 实用性强,直接解决了知识编辑的一个关键工程瓶颈