IA3
1.摘要
我们引入了一种名为(IA)3(IA)^3(IA)3 (通过抑制和放大内部激活的注入适配器, Infused Adapter by Inhibiting and Amplifying Inner Activations)的新的PEFT方法,该方法通过学习向量缩放激活,在只引入相对少量的新参数的情况下获得更强的性能。我们还提出了一个基于 T0 模型的简单配方,称为T-Few,可以应用于新任务,而无需针对任务进行调优或修改。我们通过将T-Few应用于 RAFT 基准测试,验证了 T-Few 在完全未见的任务上的有效性,首次实现超人类表现,并超过现有技术 6% 的绝对值。
2.引言
图1:(IA)3(IA)^3(IA)3 的图表 和 T-Few配方中使用的损失项。
左侧:(IA)3引入了学习向量lkl_klk、lvl_vlv和lffl_{ff}lff,它们分别重新缩放(通过逐元素乘法)注意力机制中的键和值以及位置前馈网络中的内部激活。
右:除了标准的交叉熵损失LLM之外,我们还引入了降低错误输出概率的非似然损失LULL_{UL}LUL和将标准 softmax 交叉熵损失应用于所有输出选择的长度归一化对数概率的长度归一化损失LLN。
**上下文学习(ICL):**它通过输入提示示例诱导模型执行下游任务。Few-shot 提示将一小部分输入-目标对转换为(通常)人类可理解的指令和示例,以及需要预测的单个未标记示例。
值得注意的是,ICL不需要基于梯度的训练,因此允许单个模型立即执行各种任务。因此,执行ICL完全依赖于模型在预训练期间学习到的能力。这些特性导致了ICL方法近期的大量关注。
尽管ICL有实际的好处,但它有几个主要的缺点。
首先,每次模型进行预测时,处理所有提示的输入-目标对都会导致大量的计算成本。
其次,与微调相比,ICL通常产生较差的性能。
最后,提示符的确切格式(包括措辞和示例的顺序)对模型的性能会产生重大且不可预测的影响,远远超出了运行间微调的变化。最近的研究也表明,即使提供了不正确的标签,ICL也能表现良好,这引发了ICL到底有多少学习的疑问。
参数高效微调(PEFT):其中通过仅更新少量添加或选择的参数来对预训练的模型进行微调。最近的方法在只更新或添加一小部分(例如0.01%)完整模型参数的情况下,匹配了微调完整模型的性能。此外,某些PEFT方法允许混合任务批次,其中批次中的不同示例被不同地处理,使得PEFT和ICL都适用于多任务模型。
混合任务批次(mixed-task batches)是指在训练或推理过程中,将不同任务的数据混合在同一个批次中进行处理。与传统的单一任务批次相比,混合任务批次可以提高资源利用效率,尤其是在多任务学习(multi-task learning)或需要同时处理多个子任务的情况下。
虽然PEFT的优点解决了微调的一些缺点(与ICL相比),但相对而言,很少有人关注 PEFT 方法在可用的标记数据非常少的情况下是否有效。
我们在本文中的主要目标是通过提出一种方法来缩小这一差距——即,一个模型、一个PEFT方法和一组固定的超参数——在只更新模型参数的一小部分的情况下,在新的、看不见的任务上获得强大的性能。
具体来说,我们的方法基于 T0 模型,这是 T5 的一个变体,对提示数据集的多任务混合进行了微调。
此外,我们开发了(IA)3,这是一种PEFT方法,一种通过学习向量将乘以中间激活的 PEFT 方法。(IA)3实现了比全模型微调更强的性能,同时更新的参数减少了10,000倍。
最后,我们展示了在微调之前对(IA)3参数进行预训练的好处。我们的整体配方,我们称之为“T-Few”,表现明显优于ICL(即使是针对16倍大的模型)
3.背景
1.ICL
ICL:旨在通过输入连接和提示的输入目标示例(称为“shots”)以及未标记的查询示例来诱导模型执行任务。
ICL 的主要优点是,它使单个模型能够立即执行许多任务,而无需进行微调。这还支持混合任务批处理,其中一批数据中的不同示例通过使用输入中的不同上下文对应于不同的任务。
尽管有这些优点,但 ICL 在实际应用中也有明显的缺点:
首先,进行预测的成本要高得多,因为模型需要处理所有在上下文中标记的示例。具体来说,忽略Transformer语言模型中自注意操作的二次复杂度(与模型其余部分的成本相比通常很小),处理 k-shot ICL 的 k 个训练样例比单独处理未标记的样例增加了大约 k + 1 倍的计算成本。
类似地,内存成本随着 k 近似地线性增长,尽管在推理过程中,内存成本通常由存储模型的参数主导。
另外,存储给定任务的上下文示例需要少量磁盘存储空间。例如,为一个任务存储 32 个示例,其中每个示例的提示输入和目标长度为 512 个 token,则需要大约 66 kb 的磁盘存储空间(32个 示例× 512个 token × 32位)。
2.PEFT
参数高效微调,已经学了很多了
4.设计 T-Few 配方
鉴于 PEFT 允许模型以相对较小的存储需求和计算成本适应新任务,我们认为 PEFT 是 ICL 的一个有希望的替代方案。因此,我们的目标是开发一种配方,允许模型在具有 有限标记示例 的新任务上获得高精度,同时在推理期间允许混合任务批次,并产生最小的计算和存储成本。
1.非概率训练和长度正则化
对于评估,我们使用等级分类(在3.1节中描述),它取决于模型分配给正确选择的概率以及模型分配给错误选择的概率。为了在训练过程中考虑到这一点,我们考虑添加一个非概率损失:
这阻碍了模型从不正确的目标序列预测 token,其中,…我们假设添加 LULL_{UL}LUL 将改善等级分类的结果,因为模型将被训练为将较低的概率分配给不正确的选择,从而提高正确选择排名最高的机会。
2.(IA)3 PEFT
为了与少样本 ICL 进行比较,我们需要一种 PEFT 方法,它具有以下属性:
首先,它必须添加或更新尽可能少的参数,以避免产生存储和内存成本。
其次,在新任务上进行几次训练后,要达到较强的准确率。
最后,它必须允许混合任务批处理,因为这是 ICL 的一种功能。
作为替代方案,我们探索了针对学习向量的模型激活的逐元素乘法(即重新缩放)。
具体地说,我们考虑对形式 l _ _ _ x 的适应,其中 l∈Rdl∈R^dl∈Rd 是一个特定于任务的学习向量,_ _表示逐元素乘法,x∈RT×dx∈R^{T×d}x∈RT×d