【论文解读】Prefix-Tuning: Optimizing Continuous Prompts for Generation

一.介绍

1.1 前置知识

1.1.1 in-context learning

At the limit, GPT-3 (Brown et al, 2020) can be deployed using in-context learning, which is a form of prompting, without modifying any LM parameters.

"部署" 指的是将 GPT-3 模型用于实际应用或特定任务的过程。

"In-context learning" 是一种通过提供上下文或附加信息来指导模型生成的方法。在这种情况下,用户可以向 GPT-3 提供一些上下文或提示(prompt),以引导模型生成相关的回复或执行特定任务,而不必重新训练或微调模型。模型根据提示生成响应,并且可以根据提示的不同来执行不同的任务。这种方式可以让 GPT-3 在不修改模型参数的情况下,适应多种任务。

1.2 简介

微调(顶部)更新所有LM参数(红色Transformer框),并且需要为每个任务存储完整的模型副本。我们提出prefixtuning(底部),它冻结LM参数并只优化前缀(红色前缀块)。因此,我们只需要为每个任务存储前缀,使前缀调优模块化且节省空间。

前缀调优(prefix-tuning)将一系列,被称之为前缀(prefix),连续的特定于任务的向量添加到输入中。为了生成每个令牌,LM可以像处理"虚拟令牌"序列一样处理前缀,但与提示不同的是,前缀完全由不对应于真实令牌的自由参数组成。

1.3 理解

基于前缀的架构使我们能够在单个批处理中处理来自多个用户/任务的示例,这是其他轻量级微调方法(如adaptertuning)无法实现的。

二 .

2.1 问题建模

一个条件生成任务,其中输入x是一个上下文,输出y是一个令牌序列。有两种模式:第一种是像GPT2的自回归模型,第二种是类似于BART的encoder-decoder架构来建模上述问题

2.1.1 自回归建模

表示在时间步骤i的到第j层的激活向量。

一个自回归神经LM计算作为的函数和过去在其左侧上下文中的激活,如下所示:

最后一层使用Softmax计算下一个token的分布

2.1.2 编码器解码器架构

由双向编码器编码,解码器自回归预测y(以编码的x及其左侧上下文为条件)

通过双向编码器获得当时的,通过自回归解码器获得当时的

2.2 Prefix-Tuning

上下文可以通过指导从x中提取什么来影响任务输入x的编码,并且可以通过指导下一个令牌分布来影响任务输出y的生成。比较直观的想法就是直接使用词嵌入来替代在使用过程中提供上下文信息和额外信息

  • 自回归 : 增加一个前缀,得到z = [prefix;x;y]
  • encoder-decoder架构:为编码器和解码器都添加前缀,得到z = [PREFIX;x;;y]

直接更新Pθ参数会导致优化不稳定,直接重参数化为一个小的矩阵和一个大前馈神经网络MLP,即 。一旦训练完成,这些重参数化参数可以被丢弃,只需要保存前缀

2.3 实验结论

  • 当训练样本数量较少时,前缀调优具有相对优势
  • 前缀长度:更长的前缀意味着更多可训练的参数。当前缀长度增加到一个阈值(时,性能会增加,然后出现轻微的性能下降。
  • 增强表现力的链:离散提示< embedding-only < prefix-tuning

embedding-only就是"虚拟令牌"的连续嵌入的实例化实现

  • 前缀调优由优于中缀调优

作者认为这是因为前缀调优可以影响x和y的激活,而中缀调优只能影响y的激活。

相关推荐
咸鱼桨19 分钟前
《庐山派从入门到...》PWM板载蜂鸣器
人工智能·windows·python·k230·庐山派
强哥之神30 分钟前
Nexa AI发布OmniAudio-2.6B:一款快速的音频语言模型,专为边缘部署设计
人工智能·深度学习·机器学习·语言模型·自然语言处理·音视频·openai
yusaisai大鱼34 分钟前
tensorflow_probability与tensorflow版本依赖关系
人工智能·python·tensorflow
18号房客34 分钟前
一个简单的深度学习模型例程,使用Keras(基于TensorFlow)构建一个卷积神经网络(CNN)来分类MNIST手写数字数据集。
人工智能·深度学习·机器学习·生成对抗网络·语言模型·自然语言处理·tensorflow
神秘的土鸡41 分钟前
神经网络图像隐写术:用AI隐藏信息的艺术
人工智能·深度学习·神经网络
数据分析能量站42 分钟前
神经网络-LeNet
人工智能·深度学习·神经网络·机器学习
Jaly_W1 小时前
用于航空发动机故障诊断的深度分层排序网络
人工智能·深度学习·故障诊断·航空发动机
小嗷犬1 小时前
【论文笔记】Cross-lingual few-shot sign language recognition
论文阅读·人工智能·多模态·少样本·手语翻译
夜幕龙1 小时前
iDP3复现代码数据预处理全流程(二)——vis_dataset.py
人工智能·python·机器人
吃个糖糖1 小时前
36 Opencv SURF 关键点检测
人工智能·opencv·计算机视觉