【论文阅读】EasyEdit:Editing Large Language Models: Problems, Methods, and Opportunities
文章目录
1. 来源
2. 介绍
深度学习的最新进展促成了大型语言模型(llm)的出现,该模型在理解和产生类似于人类语言的文本方面表现出令人印象深刻的能力。
- 尽管能够训练高能力的llm,但保持其相关性和纠正错误的方法仍然难以捉摸。
为此,在过去的几年里,编辑llm的技术数量激增,其目标是改变特定领域内的llm的行为,而不会对其他输入的性能产生负面影响。本文开始深入探讨与llm的模型编辑相关的问题、方法和机会。特别是,
- 作者提供了与模型编辑相关的任务定义和挑战的详尽概述,并对目前作者所掌握的最先进的方法进行了深入的实证分析。
- 作者还构建了一个新的基准数据集,以促进更健壮的评估,并查明现有技术固有的持久问题。
- 作者的目标是为每种模型编辑技术的有效性和可行性提供有价值的见解,从而帮助研究社区在为特定的任务或上下文选择最合适的方法时做出明智的决策1。
通过系统地评估他们的表现,作者的目标是对每种模型编辑技术的有效性和可行性提供有价值的见解,最终帮助研究界在为特定的任务或上下文选择最合适的方法时做出明智的决策。虽然作者观察到,目前的方法在事实模型编辑任务中显示出相当熟练的能力,但显然,通过创建一个更广泛的评估数据集,现有的方法在健壮的泛化能力方面的不足。此外,模型编辑的性能和效率都受到了一定的限制,从而限制了其实际应用。作者的贡献:
- 作者首次对编辑llm的方法进行了详尽的实证分析,深入研究了它们各自的优点和优缺点。
- 作者构建了一个新的数据集,旨在揭示当前模型编辑方法的缺点,特别是在泛化和效率方面。
- 作者概述了未来潜在的研究前景–模型编辑领域的细节。
3. 问题定义
如Mitchell等人(2022b)所阐明的那样,模型编辑旨在使用编辑描述符(xe,ye)调整初始基模型fθ(其中θ表示模型的参数),该fθ简洁地封装了模型性能中的预期修改。最终的目标是创建一个编辑过的模型,记为fθe。具体来说,基本模型fθ由一个函数f:X→Y表示,该函数将一个输入x与其相应的预测y关联起来。给定一个编辑描述符,包括编辑输入xe和编辑标签ye,以便fθ(xe)=ye。
- 简单的说,就是原来的模型表达出错,需要在保持原有信息的情况下,对它进行修正。
模型编辑过程通常会影响与编辑示例密切相关的一系列广泛输入的预测。这个输入的集合被称为编辑范围。成功的编辑应该为编辑范围内的示例调整模型的行为,而不改变编辑范围外的示例的性能:
范围内的I(xe,ye)通常包括xe和它的等价邻域N(xe,ye),其中包括相关的输入/输出对。相比之下,范围外的O(xe,ye)由与编辑示例无关的输入组成。后模型应满足以下三个特性:可靠性、通用性和局部性。
3.1 可靠性
先前的工作(Huang等人,2023;De Cao等人,2021;孟等人,2022)在编辑后模型 fθe 给出要编辑案例的目标答案(xe,ye)时,定义了可靠的编辑。可靠性测量为编辑案例上的平均精度:
3.2 泛化性
编辑后的模型fθe可以编辑等效的输入N(xe,ye)(例如,重新措辞的句子)。该特征是通过模型fθe对从等价邻域均匀抽取的示例输入的平均精度来评估的:
3.3 局部性
编辑应该在本地实现,这意味着编辑后的模型fθe应该在范围外的O(xe,ye)示例中的不相关的示例上保持准确。因此,通过计算预编辑后的模型fθe是否生成与预编辑后的fθ模型相同的输出来评估局部性:
4. 目前的方法
目前llm的模型编辑方法可以分为两个主要的范例,如图2所示:
- 1)修改模型的内部参数;
- 2)在保持原始模型冻结的同时应用额外的参数。
对这些方法之间的比较的概念性总结,详见上表。在下一部分中,作者将介绍和讨论这些方法。
4.1 保留llm参数的方法
该范例保持原始参数不变,同时使用其他编辑器(例如,另一个模型)来影响模型的行为。
- 基于内存的模型
- SERAC(Mitchell et al.,2022b)提出了一种方法,通过一组不同的参数重新改变修改后的事实,同时保留原始权重不变。具体来说,该模型使用一个范围分类器来评估新输入在存储的编辑示例的范围内的可能性。如果输入与缓存中的任何编辑对齐,则获取具有最高概率的编辑,并根据输入和检索到的编辑返回反事实模型的预测。
- 与使用一个额外的模型作为编辑器相比,T-Patcher(Huang等人,2023)和CaliNET(Dong等人,2022)在plm的前馈模块中引入了额外的可训练参数。这些参数都是在修改后的知识数据集上进行训练的,而原始参数则保持静态。请注意,这两种方法都依赖于前馈网络(FFN)中的知识神经元的概念。
- TPatcher(Huang et al.,2023)为每个编辑实例集成了一个神经元,而CaliNET为多个编辑案例集成了多个神经元。
4.2 修改llm参数的方法
这个范例将更新参数θ的一部分,它应用一个更新的∆矩阵来编辑模型。
-
定位后编辑
- 这个范例最初会识别与特定知识相对应的参数,并通过对目标参数的直接更新来修改它们。
- 知识神经元(KN)方法(Dai et al.,2022a)引入了一种知识归因技术来精确定位“知识神经元”(前馈网络(FFN)矩阵中的键值对),该技术体现了知识,然后继续更新这些神经元。
- Rome(孟et al.,2022)应用因果中介分析来定位编辑区域。罗马并没有修改FFN中的知识神经元,而是改变了整个矩阵。
- 然而,KN和Rome一次只能编辑一个事实关联。为此,提出了MEMIT(孟et al.,2023),它可以修改一个层序列,并促进数千个修改同时执行。请注意,这些方法是基于事实知识的局部假设,这尚未得到广泛的验证,某些参数的变化可能会影响不相关的知识,并产生不可预见的结果。
-
元学习
- 与定位后编辑的方法相比,元学习方法使用一个超网络来学习编辑语言模型(LM)所需的∆。
- 知识编辑器(KE)(De Cao et al.,2021)利用超网络(特别是双向LSTM)来预测每个数据点的权重更新,从而在不干扰其他数据点的情况下实现编辑目标知识的约束优化。
- 然而,这种方法在编辑llm时是不够的。为了克服这一限制,具有梯度分解的模型编辑器网络(MEND)(Mitchell et al.,2022a)允许使用单一的输入-输出对对语言模型进行有效的局部编辑。具体地说,MEND通过使用梯度的低秩分解来转换微调语言模型的梯度,这可以应用于最小资源消耗最小的llm。
- 与先定位然后编辑的方法相比,元学习方法需要额外的训练阶段,这可能会导致时间和记忆成本的增加。