AlphaEdit:如何对语言模型进行零空间约束的知识编辑?

摘要:论文发表于人工智能顶会ICLR(原文链接)。基于定位和修改的模型编辑方法(针对ROME和MEMIT等)会破坏LLM中最初保存的知识,特别是在顺序编辑场景。为此,本文提出AlphaEdit: 1、在将保留知识应用于参数之前,将扰动投影到保留知
论文发表于人工智能顶会ICLR(原文链接)。基于定位和修改的模型编辑方法(针对ROME和MEMIT等)会破坏LLM中最初保存的知识,特别是在顺序编辑场景。为此,本文提出AlphaEdit:   1、在将保留知识应用于参数之前,将扰动投影到保留知识的零空间上。   2、从理论上证明,这种预测确保了在查询保留的知识时,编辑后的LLM的输出保持不变,从而减轻中断问题。   3、对各种LLM(包括LLaMA3、GPT2XL和GPT-J)的广泛实验表明,AlphaEdit只需一行额外的投影代码,即可将大多数定位编辑方法的性能平均提高36.4%。   阅读本文请同时参考原始论文图表。 AlphaEdit 零空间   基于前面ROME/MEMIT的工作,对于LLM中的MLP矩阵$W$,可被表示为关于已有知识$(K_0,V_0)$的优化结果: $W= \arg \min\limits_{\tilde{W}} \left\| \tilde{W} K_0 - V_0 \right\|^2$   其中矩阵$K_0\in \mathbb{R}^{d_0\times n},V_0\in \mathbb{R}^{d_0\times n}$,$n$表示已有知识数量。对于新增知识$(K_1,V_1)$,MEMIT的做法为优化扰动$\Delta$来更新$W$: $\Delta = \arg \min\limits_{\tilde{\Delta}} \left( \left\| (W + \tilde{\Delta}) K_1 - V_1 \right\|^2 + \left\| (W + \tilde{\Delta}) K_0 - V_0 \right\|^2 \right)$   上式为二次优化,可通过求导直接获得闭式解。然而,耦合的优化不可避免会是扰动量对原始知识产生影响,从而在终身编辑场景中鲁棒性不强。文中通过将中间token表示映射到二维空间的分布偏移来表明这一观点:如图1be所示,MEMIT在编辑后token表示的分布产生了较大偏移,而AlphaEdit则没有。   因此,AlphaEdit期望找到$K_0$的零空间,把$\Delta$映射到其上,从而权重更新将对这些知识不产生影响。矩阵$B$在矩阵$A$的零空间内,当且仅当$BA=0$。也就是说,期望找到$\Delta$有: $(W + \Delta) K_0 = W K_0 = V_0$   那么如何将$\Delta$映射到$K_0$的零空间呢? SVD分解获取零空间映射   考虑对称方阵$K_0K_0^T\in\mathbb{R}^{d_0\times d_0}$,对其进行奇异值分解(SVD),得到: $\{ U, \Lambda, U^T \} = \text{SVD} \left( K_0 K_0^T \right)$   其中$U$为正交矩阵($UU^T =I$),$\Lambda$对角矩阵,主对角线为奇异值。将奇异值在主对角线降序排序: $\Lambda = \begin{bmatrix} \Lambda_1 & 0 \\ 0 & \Lambda_2 \end{bmatrix}$   取其中为零的部分$\Lambda_2$(假设$\Lambda_2$都很小几乎为0,文中取小于0.01的值)在$U$中对应的特征向量矩阵$\hat{U}\in\mathbb{R}^{d_0\times m}$。则$P = \hat{U}\hat{U}^T$为将任意矩阵映射到$K_0K^T_0$零空间的矩阵。这是由于,对于任意矩阵$\Delta$,有: $\Delta PK_0K^T_0= \Delta\hat{U}\hat{U}^TK_0K^T_0= \Delta\hat{U}\hat{U}^TU\Lambda U^T$   由于其中$\hat{U}^TU\Lambda=0$,上式为零。$P$为$K_0K_0^T$的零空间映射矩阵,同时也$K_0$的零空间映射矩阵,这是由于: \begin{align*} &P K_0 K_0^T = 0 \\ \Rightarrow &P K_0 K^T P^T = 0 \\ \Rightarrow &P K_0 (K P)^T = 0 \\ \Rightarrow & P K_0 = 0 \end{align*} AlphaEdit优化   基于ROME/EMMIT工作,$K_0K_0^T$可通过计算10万条数据获得,即可进一步获得映射矩阵$P$。
阅读全文