主要观点总结
本文介绍了保持参数高效的同时提升提示调整(Prompt Tuning,PT)的性能的相关研究。文章提出了一种新的方法Low-Rank Prompt Adaptation (LOPA),旨在通过低秩提示调整来定制基础模型。LOPA方法在参数效率和性能上表现优异,通过引入软提示来影响模型的注意力机制,并能够在不同输入下产生不同的偏置子空间。该方法在自然语言理解、代码生成与理解任务上进行了广泛的评估,并展示了其有效性。
关键观点总结
关键观点1: 研究背景及目的
随着基础模型(Foundation Models, FMs)的普及,需要对这些模型进行个性化以适应特定的下游任务。提示调整(Prompt Tuning, PT)是一种参数高效的微调方法,但性能上通常不如其他方法。本文旨在解决这一问题,提出了一种新的方法LOPA,旨在通过低秩提示调整来提升PT的性能。
关键观点2: LOPA方法的核心思想
LOPA通过引入软提示来影响模型的注意力机制,并结合任务特定元素和实例特定元素,为每个实例生成定制化的软提示。这种方法能够在保持参数高效的同时,提高模型的性能。
关键观点3: LOPA方法的优势
LOPA方法在参数效率和性能上表现优异,与最先进的参数高效微调(PEFT)方法和完整微调相当。此外,LOPA方法不需要在服务器端存储任务特定的适配器,具有更好的实用性。
关键观点4: 实验评估结果
LOPA在自然语言理解任务上的表现优于传统提示调整方法,平均提升28.62个百分点。在代码理解和代码生成任务上,LOPA也表现出色,显示其广泛适用性。
正文
保持参数高效的同时提升提示调整(Prompt Tunning, PT)的性能。
基本信息和摘要
论文题目
Prompt Tuning Strikes Back: Customizing Foundation Models with Low-Rank Prompt Adaptation
-
Arxiv: https://arxiv.org/pdf/2405.15282
作者及研究单位
-
Abhinav Jain, Rice University
-
Swarat Chaudhuri, UT Austin
-
Thomas Reps, University of Wisconsin-Madison
-
Chris Jermaine, Rice University
解决问题
提示调整
(Prompt Tuning, PT)是一种简单且参数效率高的参数高效微调(PEFT)方法,它通过在输入层添加特定任务的前缀向量来实现个性化。然而,提示调整在性能上通常不如其他PEFT方法,如LoRA。
本文提出了LOPA方法,旨在
解决 PT 相对于 LoRA的性能差异
,它在
保持参数效率
的同时,通过实例感知的提示调整来提高性能。
摘要
本文提出了一种名为Low-Rank Prompt Adaptation (LOPA)的新方法,旨在通过
低秩提示调整
来定制基础模型(Foundation Models, FMs)。LOPA方法在参数效率和性能上与最先进的参数高效微调(Parameter-Efficient Fine-Tuning, PEFT)方法和完整微调相当,同时不需要在服务器端存储任务特定的适配器。LOPA通过
生成软提示
来平衡跨实例共享任务特定信息和每个实例的定制化需求。它利用每个实例编码的软提示组件的低秩分解来实现参数效率。作者在多种自然语言理解和代码生成与理解任务上进行了广泛的评估,并在不同大小的基础模型上展示了LOPA的有效性。
方法
提示调整背景
提示调整是一种参数高效的微调方法,用于定制化预训练的基础模型(FMs),以适应特定的下游任务。这种方法的核心思想是通过在模型输入中
添加特定任务的提示(prompts)
,引导模型以期望的方式进行响应,而
不直接修改模型的权重
。
在Transformer模型输入中添加提示:
其中,
是经过Prompt Tuning调整后的输出。
是输入序列中的向量,
是输入词嵌入矩阵,
是可学习的软提示向量集合。
分别是模型中的查询、键和值权重。
偏置子空间
在注意力机制中,
偏置子空间
是由模型内部的权重向量(如
) 形成的向量空间。这些向量在计算注意力权重时起到偏置的作用。
在传统的提示调整方法中,这些向量通常是固定的,而只有注意力权重(如
)会随着输入的变化而变化。
-
偏置项
:
是由软提示
和注意力权重
组成的线性组合。
-
具体方法描述
LOPA(Low-Rank Prompt Adaptation)
通过引入
软提示
来影响模型的注意力机制,并在不同输入下产生
不同的偏置子空间(offset subspace)
。
LOPA方法构建软提示
由两个组成部分:
任务特定元素
和
实例特定元素
。这两个元素通过门控函数
结合使用,其中
实现为sigmoid函数,
表示哈达玛积。具体公式如下:
其中,
包含
个可学习的向量,而
通过编码函数
从输入中获得。为了提高参数效率,假设
具有
低秩分解
,并使用两个矩阵
和
进行编码:
这里,