标题:Multitask Prompted Learning: How large language models are trained?(多任务提示学习:如何训练了大语言模型?)
作者:Jing Cheng
背景
在现代 NLP 领域,一切都与迁移学习有关。当前基于神经网络的模型的优点是可扩展性,这意味着我们可以简单地在更大的数据集上训练更大的模型。值得庆幸的是,我们有一个成熟的自监督学习框架,并且互联网上的文本数据非常丰富——例如,Common Crawl 项目每月从网页中提取大约 20TB 的文本数据。
因此,近年来,NLP 研究人员专注于开发迁移学习方法。这一切都始于这篇论文:用统一的文本到文本转换器探索迁移学习的限制——链接。
简而言之,它是一个统一的框架,将每个文本处理问题都形成为“文本到文本”问题:给出一个文本序列作为输入,模型输出一个文本序列。它允许将相同的模型、目标、训练过程和解码过程应用于每个常见的 NLP 任务(包括翻译、问答、分类等)。
Prompt
T5 等文本到文本预训练模型的开发使得提示成为多任务学习特别有用的方法。如上所示,我们首先从不同的任务中获取数据集,然后在原始训练集之前添加一些指导性描述。预处理的训练数据称为提示。
重要的是输入是人类可读的(!),我们走了很长一段路。当前的大型 NLP 模型像人类一样阅读并像人类一样回答。将大型预训练模型视为婴儿 Yoda:它对模型中包含的通用知识非常强大的 W.R.T,但我们不知道什么样的行为(提示)可以触发下游任务中的超能力。
对于每种数据集(或一类任务),它选择一个提示模板将训练数据传输到提示。
零样本文本泛化
基于之前的工作,论文:Multitask Prompted Training Enables Zero-Shot Task Generalization,侧重于以监督和大规模多任务方式显式训练语言模型。它试图回答这两个问题:
- 多任务提示训练是否可以提高对看不见任务的泛化能力?
- 对更广泛的提示进行培训是否会提高提示措辞的稳健性?
它以这种方式进行实验:按任务对数据集进行分组,对一些组进行训练,并在保留的数据集上测试模型。通过确保不会发生数据泄漏,它能够测试零样本泛化的能力。
什么是“任务”?
我们使用术语“任务”来指代由一组特定数据集测试的一般 NLP 能力。为了评估对新任务的零样本泛化,我们在一个任务子集上进行训练,并在一组保留的任务上进行评估。
模型训练详情
关键词:编码器-解码器架构/自回归/最大似然训练
我们训练的所有模型都基于 T5,这是一种基于 Transformer 的编码器-解码器语言模型,使用来自 C4 的 1T 标记的掩码语言建模风格目标进行预训练(Raffel 等人,2020)。由于 T5 的预训练目标涉及从已删除的输入文本中填充标记,因此它与我们提示数据集中使用的条件文本生成格式完全不同。因此,我们使用来自 Lester 等人的公开可用的 LM-adapted T5 模型。 (2021)(称为 T5+LM),它是通过在标准语言建模目标上使用来自 C4 的 100B 额外标记训练 T5 产生的。除非另有说明,否则我们使用具有 11B 参数的 XXL 版本。
参考
- 使用统一的文本到文本转换器探索迁移学习的局限性 — https://arxiv.org/abs/1910.10683
- 多任务提示训练实现零样本任务泛化 — https://arxiv.org/abs/2110.08207
- 参数高效提示调整的规模力量 — https://arxiv.org/abs/2104.08691
来源:
https://medium.com/@chengjing/multitask-prompted-learning-62b87a9b8665
内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢