点击 机器学习算法与Python学习 选择加星标

精彩内容不迷路

机器之心报道

来自清华大学的刘知远、黄民烈等研究者提出了一个名为「PPT」的新框架。PPT=Pre-trained Prompt Tuning。

近年来,微调预训练语言模型(PLM)取得了很大进展。通过微调 PLM 的全部参数,从大规模无标签语料库中获得的多方面知识可以用于处理各种 NLP 任务,并优于从头学习模型的方法。为简单起见,此处将这种全模型调整(full-model tuning)称为 FT。

如下图 1 (b) 和 (c)所示,主流的 FT 方法共有两种。第一种是任务导向的微调,在 PLM 上添加一个 task-specific 的头(head),然后通过优化 task-specific 训练数据上的 task-specific 学习目标,来微调整个模型。

第二种是以 prompt 为导向的微调,其灵感来自最近的一些研究,这些研究利用语言 prompt 来激发 PLM 的知识。在以 prompt 为导向的微调中,数据样本被转换为包含 prompt token 的线性序列,所有的下游任务都被转化为语言建模问题。

如图 1 (c) 所示,通过在句子中添加 prompt(It was hXi),我们可以根据 PLM 在掩码位置给出的预测结果(great 或 terrible)来确定这个句子到底是积极还是消极。

如图 1 所示,与以任务为导向的微调相比,在目标方面(掩码语言建模),以 prompt 为导向的微调更类似于预训练,因此有助于更好地利用 PLM 中的知识,通常也能取得更好的结果。

尽管上述 FT 方法已经显示出很好的结果,但随着模型规模的迅速扩张,为每个下游任务微调一个完整的大模型正变得越来越昂贵。为了应对这一挑战,来自谷歌的 Brian Lester 等人在《 The Power of Scale for Parameter-Efficient Prompt Tuning 》中提出了 prompt tuning(PT),以降低为下游任务微调大模型的成本,如图 1 (d)所示。

具体来说,PT 采用包含连续嵌入的 soft prompt 代替 hard prompt(离散语言短语)。这些连续 prompt 嵌入通常是随机初始化和端到端学习的。为了避免为每个下游任务存储整个模型,PT 冻结了 PLM 的所有参数,只调整 soft prompt,无需添加任何中间层和 task-specific 组件。尽管 PT 具有很少的可调参数和简单的设计,但它仍然可以媲美 FT,如图 2(a)所示。

PT 有两个非常有前景的优势:1)与 hard prompt 相比,soft prompt 可以端到端学习;2)PT 是大规模 PLM 实际应用的一种高效、有效的范式。然而,如图 2 (b)所示,在 few-shot 场景下,PT 的表现比 FT 差很多,这可能会阻碍 PT 在各种低资源场景下的应用。

因此,在这篇论文中,来自清华大学的 Yuxian Gu、Xu Han、刘知远、黄民烈四位研究者广泛探索了如何通过 PT 以高效和有效的方式使用 PLM 进行 few-shot 学习。

具体来说,在论文的第二部分,他们进行了试点实验,分析了 PT 在大规模 PLM 中用于 few-shot 学习的有效性,这是现在很多研究所忽略的问题。他们发现:1)verbalizer 的选择对于性能有很大的影响;2)简单地用具体的词嵌入初始化 soft prompt 并不能提高性能;3)将 soft 和 hard prompt 结合起来很有帮助;4)所有这些方法都不能很好地处理 few-shot prompt 调优问题。上述观察结果表明,为大规模 PLM 找到合适的 prompt 并非易事,而精心设计的 soft prompt token 初始化至关重要。

论文链接:https://arxiv.org/pdf/2109.04332.pdf

为了帮助模型找到合适的 prompt,研究者使用大规模无标记语料库上的自监督任务对这些 token 进行预训练。为了保证预训练 prompt 的泛化能力,他们将典型分类任务分为三种:sentence-pair 分类、multiple-choice 分类和 single-text 分类,每种对应一个自监督的预训练任务。此外,他们发现 multiple-choice 分类比其他分类都要普遍,可以将所有下游分类任务都统一到这种分类中。他们给这种 Pre-trained Prompt Tuning 框架起名为「PPT」。

研究者使用 3 个 11B 的 PLM(T5-XXL、mT5-XXL、CPM-2)在多个数据集上评估了 PPT 的性能。实验结果表明,PPT 不仅可以大幅提升 few-shot PT,媲美甚至超越 FT 方法,还能降低 few-shot 学习的方差。除有效性之外,PPT 还保留了现有 PT 方法的参数效率,这对未来在大规模 PLM 上的应用具有重要价值。

PPT 架构概览

遵循 T5 和 PT 的方法,研究者以一种 text-to-text 的方式解决所有下游任务。如图 1(d)所示,为了弥合预训练和下游任务之间的 objective gap,以 prompt 为导向的微调将下游任务转化为一些完形填空式的目标。以分类任务为例,给定输入句子及其标签,首先应用模式映射将 x 转换为一个新的 token 序列 f(x),其中 V 是 PLM 的词汇表。f(x)不仅添加了一些 prompt token 作为提示,还保留了至少一个 masking token <X>,让 PLM 预测掩码位置的 token。接下来,使用一个 verbalizer将 y 映射到一个标签 token 序列 v(y)。借助 f(·)和 v(·),分类任务可以用 pattern-verbalizer 对 (f, v) 来表示:

其中,θ表示所有可调参数,特别是 PLM 的参数。为了方便起见,研究者使用「PVP」来表示这个 pattern-verbalizer 对。

在 PT 中,将一组 soft prompt token P 连接到序列的前面,模型输入变为 [P;f (x)]。其中, [·; ·] 为连接函数。通过单独调整 P,其他参数固定,将式(1) 替换为:

由于大规模 PLM 性能强大,在多个全数据情境下,式(2) 被证实与这些 FT 方法具有可比性。但是研究者发现,学习有效的 soft prompt 并不容易,这可能导致模型在各种 few-shot 情境下性能较低。参数的初始化通常对模型的学习难度有很大的影响。一般来说,除了随机初始化 p 之外,一些研究从 PLM 的词汇表 V 中采样词嵌入作为初始化。然而,试点实验的结果表明,现有初始化策略及其简单变体对基于大规模 PLM 的模型性能影响很小或有消极影响(具体细节参见论文第四部分)。

近年来,预训练已经被证明是一种寻找模型良好初始化的有效方法。受此启发,研究者提出预训练 soft prompt。他们注意到,若干组下游任务与基于无标签预训练语料库的某些自监督任务相关。例如,一些 sentence-pair 分类的任务(如自然语言推理和句子相似度计算),与预训练阶段使用的 NSP 任务相似。如图 3 所示,这些任务都以两个句子作为输入并比较它们的语义。因此,对于这些 sentence-pair 任务来说,由 NSP 预训练的 soft prompt 可以是一个很好的初始化。

假设可以将下游任务分为 m 组:{T_1, T_2, ..., T_m},其中,T_i 是包含 n_i 个下游任务的集合,其中,。针对每个组,研究者设计了一个对应的预训练任务,在这些预训练任务上预训练了 soft prompt 之后(所有模型参数固定),研究者得到 m 个预训练 prompt:{P_1, P_2, ..., P_m}。在预训练之后,对于 T_i 中的每个任务,研究者继续优化式(2),使用 P_i 作为 soft prompt 的初始化。

实验及结果

之前的工作(Lester 等,2021;Zhang 等,2021b)表明,T5-XXL 在完全数据设置方面可以与 FT 相媲美。因此在实验部分,对于英文数据集,该研究使用具有 11B 个参数的 T5-XXL 作为基础模型来进行 PT。该研究还对各种尺寸的 T5 进行了 FT 实验,验证了 T5-XXL 在 few-shot 场景中的表现优于其他尺寸,并且基于 T5-XXL 改进 PT 是有意义的。对于中文数据集,该研究基于 CPM-2 进行 PT。由于 CPM-2 不提供其他尺寸的模型,研究者将其与各种尺寸的 mT5 (Xue 等, 2021) 进行比较。

主要实验结果

在英文和中文数据集上的结果如下表 4 所示,其中 FT 的部分展示了各种尺寸 T5 模型的全模型微调结果;PT 的部分展示了 PPT 和其他基线的结果。第一个基线是 Vanilla PT,其中的 soft token 是从正态分布中随机初始化的;第二个基线是混合策略;然后该研究还考虑了 Lester 等人(2021)使用的 LM Adaption。其中 T5 模型通过语言建模进一步预训练 10K 步,以减少预训练和微调之间的差距。除了 PPT 以外,该研究还测试了 PPT 的两种变体:一种是 Hybrid PPT,将精心设计的 hard prompt 与预训练的 soft prompt 相结合;另一种是 Unified PPT,其中所有任务都以 multiple-choice 的格式统一。

表 4 给出了关于有效性的结果:

  • 随着参数数量的增加,FT 的性能有所提升。

  • 在大多数数据集中,PPT 明显优于 Vanilla PT 和 LM Adaption。

  • PPT 在所有中文数据集和大多数英文数据集上都优于 10B 模型的 FT。

  • PPT 在大多数数据集上会产生较小的方差,相比之下,一般的 few-shot 学习常存在不稳定性,例如 Vanilla PT。

Unified PPT 将所有格式统一为 multiple-choice 的格式,是 PPT 的另一种变体。表 4 的结果表明 Unified PPT 达到了与 PPT 和 Hybrid PPT 相当的性能,并且优于 soft-prompt 调整基线。


觉得不错,请点个在看呀

清华刘知远团队巨作!Pre-trained Prompt Tuning框架,让超大模型调参变简单相关推荐

  1. 一个「PPT」框架,让超大模型调参变简单:清华刘知远、黄民烈团队力作

    视学算法报道 机器之心编辑部 来自清华大学的刘知远.黄民烈等研究者提出了一个名为「PPT」的新框架.PPT=Pre-trained Prompt Tuning. 图源:https://www.zhih ...

  2. 清华刘知远、黄民烈团队力作:一个「PPT」框架,让超大模型调参变简单

    ©作者 | 机器之心编辑部 来源 | 机器之心 来自清华大学的刘知远.黄民烈等研究者提出了一个名为「PPT」的新框架.PPT=Pre-trained Prompt Tuning. 图源:https:/ ...

  3. CPT:刷爆少样本REC任务!清华刘知远团队提出跨模态预训练Prompt Tuning

    关注公众号,发现CV技术之美 本文分享论文『CPT: Colorful Prompt Tuning for Pre-trained Vision-Language Models』,由清华刘知远团队提出 ...

  4. Deep Learning Tuning Playbook(深度学习调参手册中译版)

    前言 由五名研究人员和工程师组成的团队发布了<Deep Learning Tuning Playbook>,来自他们自己训练神经网络的实验结果以及工程师的一些实践建议,目前在Github上 ...

  5. NLP新秀prompt跨界出圈,清华刘知远最新论文将它应用到VLM图像端

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI NLP的 ...

  6. 多模态Prompt Tuning,你到底行不行?

    作者丨霜清老人@知乎 编辑丨极市平台 https://zhuanlan.zhihu.com/p/550544232 一次关于将prompt tuning应用到生成式多模态预训练模型的尝试. 最近两个月 ...

  7. Prompt Pre-training:迈向更强大的Parameter-Efficient Prompt Tuning

    ©PaperWeekly 原创 · 作者 | 李国趸 单位 | 浙江大学硕士生 研究方向 | 少样本学习 前言 从 prompt learning 的发展来看,一开始关注的是将任务建模成和预训练相近的 ...

  8. 清华大学刘知远组:基于Prompt Tuning对低维本征任务子空间进行探索

    ©作者 | 曾伟豪 学校 | 北京邮电大学 研究方向 | 对话摘要生成 论文标题: Exploring Low-dimensional Intrinsic Task Subspace via Prom ...

  9. 直播活动丨BMMeetup第1期:大模型Prompt Tuning技术,8场学术报告和Poster提前下载...

    「Big Model Meetup」系列活动是由智源研究院悟道团队.青源会.清华大学计算机科学与技术系博硕论坛.中国中文信息学会青年工作委员会共同组织,智源社区提供社区支持,PaperWeekly提供 ...

最新文章

  1. 想学Python?快看看这个教程!收藏!
  2. 在SpringMVC中使用@RequestBody注解处理json时,报出HTTP Status 415的解决方案
  3. 大数据量分页查询方法(转)
  4. linux终端怎么设置monaco,Monaco Editor 使用指南
  5. 用方框图语言表示指令周期及其流程
  6. 爬虫工具和服务——Python之外的选择
  7. vscode远程无法更新
  8. html5调用系统声音1s响一次_为你的html5网页添加音效示例
  9. 实现一个文本文件的解析类(vector,字符串解析的应用)
  10. 计算机程序设计vb怎么保存,VB编程:读取文本文件和保存文本文件的方法
  11. 如何下载使用期刊 LateX 模板
  12. Wunderlist – 免费同步 Todo List
  13. VS2008 安装时 出现 “加载安装组件时出现问题,取消安装” 的解决方法
  14. CSS固定定位(position: fixed;/background-attachment: fixed;)
  15. 金融科技发展布局之服务渠道建设
  16. C语言 有两个矩形 求重叠面积,计算两个矩形重叠面积的简单方法
  17. 阿里云ACP认证有用吗?
  18. 记一次阿里java实习生面试(失败)
  19. 计算机excel按F4是那个公式,Excel中F4有哪些功能 Excel如何巧妙使用F4
  20. Java编程思想之高内聚低耦合

热门文章

  1. 源码剖析Redis中如何使用跳表的
  2. 小程序登录账号 提示系统繁忙,请稍后重试
  3. 雷达传统的干扰方式(二次更新)
  4. 处理微信里接龙名单,看看谁没有参加接龙
  5. RabbitMQ Applying plugin configuration to rabbit@xxx... Plugin configuration unchanged.
  6. 从C到C++衔接——浅析两种语言的差别
  7. 任正非谈成功秘诀:28年只对准一个城墙口冲锋
  8. 408真题-2022
  9. 基于RSA的公钥基础体系下安全通信实战
  10. AutoCAD Civil 3D笔记