【论文笔记】The Power of Scale for Parameter-Efficient Prompt Tuning

🍎个人主页:小嗷犬的个人主页

🍊个人网站:小嗷犬的技术小站

🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。


基本信息

标题 : The Power of Scale for Parameter-Efficient Prompt Tuning
作者 : Brian Lester, Rami Al-Rfou, Noah Constant
发表 : EMNLP 2021
arXiv : https://arxiv.org/abs/2104.08691

摘要

在这项工作中,我们探讨了"prompt tuning",这是一种简单而有效的机制,用于学习"soft prompt"以条件化冻结的语言模型执行特定下游任务。

与GPT-3使用的离散文本提示不同,soft prompt是通过反向传播学习的,并且可以调整以包含来自任意数量token示例的信号。

我们端到端的学习方法在少样本学习方面优于GPT-3。

更令人惊讶的是,通过使用T5在模型大小上的消融实验,我们表明提示微调在规模上变得更加具有竞争力:当模型超过数十亿参数时,我们的方法缩小了差距并匹配了模型微调(所有模型权重都进行调整)的强大性能。

这一发现尤其相关,因为大型模型成本高昂且难以共享和部署,而能够重复使用一个冻结模型执行多个下游任务可以减轻这一负担。

我们的方法可以看作是Li和Liang最近提出的"prefix tuning"的简化,我们提供了与这一方法和其他类似方法的比较。

最后,我们表明,使用soft prompt条件化冻结模型可以带来在领域迁移中的鲁棒性优势,并使"prompt ensembling"变得高效。我们发布了代码和模型检查点以重现我们的实验。

prompt tuning、全量微调、使用GPT-3生成提示词三种方法之间的比较。

主要贡献

  1. 提出了prompt tuning,并展示了其在大型语言模型调整机制中的竞争力。
  2. 对许多设计选择进行了消融,并展示质量与鲁棒性随规模提升而提高。
  3. 展示了prompt tuning优于全量微调在领域迁移问题上的表现。
  4. 提出了"prompt ensembling"并展示其有效性。

Prompt Tuning

prompt tuning只需要为每个下游任务训练一个soft prompt,而全量微调需要训练整个模型。

给定一系列 n n n 个token, { x 1 , x 2 , ... , x n } \{x_1, x_2, \ldots, x_n\} {x1,x2,...,xn},T5 首先做的是嵌入这些token,形成一个矩阵 X e ∈ R n × e X_e \in \mathbb{R}^{n \times e} Xe∈Rn×e,其中 e e e 是嵌入空间的维度。soft prompt被表示为一个参数 P e ∈ R p × e P_e \in \mathbb{R}^{p \times e} Pe∈Rp×e,其中 p p p 是prompt的长度。然后,soft prompt被连接到嵌入的输入上,形成一个单一的矩阵 [ P e ; X e ] ∈ R ( p + n ) × e [P_e; X_e] \in \mathbb{R}^{(p+n) \times e} [Pe;Xe]∈R(p+n)×e,然后像往常一样通过编码器-解码器。训练模型以最大化 Y Y Y 的概率,但只有prompt参数 P e P_e Pe 被更新。

Prompt Ensemble

对一个下游任务训练多个Prompt,然后集成多个Prompt而不是多个模型。

实验

各种超参数对prompt tuning性能的影响。

与其他相似方法的比较。在具有可学习参数的方法中,提示调整是最参数高效的,对于超过十亿参数的模型,只需要不到0.01%的任务特定参数。

领域迁移问题上的表现。

prompt ensemble与prompt平均性能以及单个最好性能的比较。

总结

在这篇论文中,我们展示了prompt tuning是一种将冻结预训练语言模型适应下游任务的竞争性技术。

在流行的SuperGLUE基准上,其任务性能与传统模型调整相当,随着模型规模的增加,差距逐渐消失。

在零样本领域迁移中,我们发现prompt tuning导致了更好的泛化。这很可能表明,冻结通用语言理解参数并将下游学习限制在轻量级参数足迹内,有助于避免对特定领域的过度拟合。

除了任务质量指标之外,我们还讨论了转向冻结预训练模型在存储和服务器成本方面的吸引力。这一举措既实现了高效的多任务服务,也实现了高效的高性能提示集成。

展望未来,我们认为将任务定义参数与通用语言模型参数区分开来是一个令人兴奋的步骤,它为新的研究开辟了许多途径。

相关推荐
Tony Bai14 分钟前
告别古法编程黄金时代:AI 时代不会再有新编程语言诞生的土壤
人工智能
cxr82814 分钟前
OpenClaw与NetLogo之间的调用与数据交互机制
人工智能·交互·netlogo·openclaw
Mountain and sea16 分钟前
工业机器人+AI视觉引导:从传统示教到智能抓取的实战升级
人工智能·机器人
jarvisuni22 分钟前
手搓 CodingPlan 照妖镜,TOKEN 燃烧器!
人工智能·ai编程
北京耐用通信26 分钟前
工业通信优选:耐达讯自动化实现CC-Link IE转Modbus RTU稳定传输
人工智能·物联网·网络协议·自动化·信息与通信
汉堡大王952732 分钟前
# AI 终于能"干活"了——Function Calling 完全指南
javascript·人工智能·机器学习
码路高手36 分钟前
Trae-Agent的Patch逻辑
人工智能·架构
leafyyuki1 小时前
SSE 同域长连接排队问题解析与前端最佳实践
前端·javascript·人工智能
申耀的科技观察1 小时前
【观察】“数据”为王,决胜AI下半程
人工智能
星如雨グッ!(๑•̀ㅂ•́)و✧1 小时前
WebFlux onErrorContinue 和 onErrorResume使用详解
java·人工智能