论文解读:Finetuned Language Models Are Zero-shot Learners

论文解读:Finetuned Language Models Are Zero-shot Learners

简要信息:

序号属性
1模型名称Instruction-tuning
2发表位置2021
3所属领域自然语言处理、预训练语言模型
4研究内容预训练语言模型、多任务学习
5核心内容instruction, prompt
6GitHub源码https://github.com/google-research/flan
7论文PDFhttps://arxiv.org/pdf/2109.01652.pdf

一、概念:

Instruction-tuning——finetuning language models on a collection of tasks (more than 60 NLP tasks) described via instructions

  本文提出一种基于instruction-tuning的方法叫做FLAN(Finetuned LAnguage Net)
评估方法:对所有的NLP task,根据其任务类型和目标划分若干个簇,随机挑选一个簇内的所有task作为评估,其他所有簇的task用于instruction-tuning

we group NLP tasks into clusters based on their task types and hold out each cluster for evaluation while instruction tuning FLAN on all other clusters.

在这里插入图片描述
  首先在包括commonsense reasoning、machine translation、sentiment analysis等NLP task上进行微调,然后在从未见过的natural language inference任务上进行zero-shot evaluation

  Instruction-tuning与Fine-tuning和Prompt-Tuning的对比:
在这里插入图片描述

  • Pretrain-Finetune:现在大规模语料上根据某一个(几个)训练目标进行预训练,然后主要针对某一个task进行微调;
  • Prompting(Prompt-based Fine-tuning):通用选择预训练语言模型,为每个样本生成一个prompt模板,并采用类似完形填空的模式,在某一个具体的task上微调;
  • Instruction-Tuning:在预训练语言模型的基础上,获得若干混合的NLP task上进行微调,然后在某一个具体的task上进行评估(zero-shot)

二、FLAN

  首先整理了62个NLP task,并进行了归类(cluster),如下图所示:
在这里插入图片描述
可知,一共划分了12个cluster

  • 我们定义task表示一个数据集,例如RTE表示一个task;
  • 对于每个task,手动构建10个template,作为描述该任务的instruction;
  • 为了增加多样性,对于每个任务,我们包括多达3个“扭转任务”的模板;
  • 在混合的task上进行instruction-tuning,对于每个task,随机挑选template;
    例如下图,给定某个NLI任务的样本,构建与其有关的若干个template

在这里插入图片描述
  FLAN是在unseen task上进行zero-shot evaluation,那如何定义unseen task?
一个task T \mathcal{T} T 对于FLAN是unseen的(即没有在instruction-tuning出现过),当且仅当这个task所属的clust的所有task都没有在instruction-tuning出现过。

In this work, we only consider task T \mathcal{T} T unseen at evaluation time if no tasks from any clusters that T \mathcal{T} T belongs to were seen during fine tuning.

任务的目标主要分为classification和generation两种

  • generation:基于instruction-tuning的FLAN本质就是一个语言模型,输出部分即为free-text,因此对于纯生成式任务无需修改;
  • classification:先前工作通过添加template企图让模型生成出预设的几个label word,但是作者认为并不合理,因此在此基础上,添加了一个option;

三、模型训练:

  使用left-to-right(单向),只包含decoder部分的transformer模型,共计137B个参数,在未经处理的语料上(10%非英文,包含大量code,对话文本等),预训练的模型命名为BaseLM。

  在Instruction-tuning阶段,混合了所有数据集和每个数据集的随机样本示例。有些数据集有超过1000万个训练示例(例如,机器翻译),因此我们将每个数据集的训练示例数量限制为30000个。其他数据集很少有训练示例(例如,CommitmentBank只有250个),为了防止这些数据集被边缘化,我们采用示例-比例混合方案(examples-proportional mixing scheme,Raffel et al., 2020),混合率最大为3000。fine-tunine模型30000个step,每个step的batch size为8192,优化器为Adafactor,学习率3e-5,输入输出长度分别为1024和256。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

华师数据学院·王嘉宁

$感谢支持$

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值