模型:
bigscience/T0_3B
模型的名称如何发音?T0应该发音为"T Zero"(类似于"T5 for zero-shot"中的T5),而任何的"p"都代表"Plus",所以"T0pp"应该发音为"T Zero Plus Plus"!
官方仓库: bigscience-workshop/t-zero
T0*展示了在英语自然语言提示下的零样例任务泛化能力,在许多任务上表现优于GPT-3,同时模型大小只有GPT-3的1/16。它是一系列编码器-解码器模型,通过训练在大量不同的自然语言提示中执行不同任务。我们将许多英语监督数据集转换为提示,并使用不同的表达方式生成多个模板。这些提示数据集允许评估模型在自然语言中执行完全看不见的任务的能力。为了得到T0*,我们在这个多任务混合训练集上对预训练语言模型进行微调,该训练集包含许多不同的NLP任务。
您可以使用这些模型来执行任务的推理,只需用自然语言指定查询,模型就会生成一个预测。例如,您可以询问:"这篇评论是积极的还是消极的?评论:这是你会购买的最好的铸铁煎锅",然后模型有望生成"积极"。
您可以尝试一些其他例子:
我们提供我们在 paper 中介绍的模型以及消融模型。我们建议使用 T0pp (发音为"T Zero Plus Plus")检查点,因为它(平均)在各种NLP任务中表现最好。
Model | Number of parameters |
---|---|
1235321 | 11 billion |
1236321 | 11 billion |
1237321 | 11 billion |
1238321 | 11 billion |
1239321 | 11 billion |
12310321 | 3 billion |
以下是在PyTorch中使用该模型的方法:
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM tokenizer = AutoTokenizer.from_pretrained("bigscience/T0pp") model = AutoModelForSeq2SeqLM.from_pretrained("bigscience/T0pp") inputs = tokenizer.encode("Is this review positive or negative? Review: this is the best cast iron skillet you will ever buy", return_tensors="pt") outputs = model.generate(inputs) print(tokenizer.decode(outputs[0]))
如果您想使用另一个检查点,请替换AutoTokenizer和AutoModelForSeq2SeqLM中的路径。
注意:该模型是使用bf16激活进行训练的。因此,我们强烈不建议使用fp16进行推理,而应优先选择fp32或bf16。
T0*模型基于 T5 ,这是一个基于Transformer的编码器-解码器语言模型,其在 C4 上使用遮盖语言建模目标进行预训练。我们使用公开可用的 language model-adapted T5 checkpoints ,在这个基础上通过标准的最大似然训练将模型微调,以自动回归生成目标。模型没有经过训练来生成输入。我们在下一节详细介绍我们的训练数据。
训练细节:
我们使用不同的数据集混合训练了不同变体的T0模型。
Model | Training datasets |
---|---|
T0 | - Multiple-Choice QA: CommonsenseQA, DREAM, QUAIL, QuaRTz, Social IQA, WiQA, Cosmos, QASC, Quarel, SciQ, Wiki Hop - Extractive QA: Adversarial QA, Quoref, DuoRC, ROPES - Closed-Book QA: Hotpot QA*, Wiki QA - Structure-To-Text: Common Gen, Wiki Bio - Sentiment: Amazon, App Reviews, IMDB, Rotten Tomatoes, Yelp - Summarization: CNN Daily Mail, Gigaword, MultiNews, SamSum, XSum - Topic Classification: AG News, DBPedia, TREC - Paraphrase Identification: MRPC, PAWS, QQP |
T0p | Same as T0 with additional datasets from GPT-3's evaluation suite: - Multiple-Choice QA: ARC, OpenBook QA, PiQA, RACE, HellaSwag - Extractive QA: SQuAD v2 - Closed-Book QA: Trivia QA, Web Questions |
T0pp | Same as T0p with a few additional datasets from SuperGLUE (excluding NLI sets): - BoolQ - COPA - MultiRC - ReCoRD - WiC - WSC |
T0_single_prompt | Same as T0 but only one prompt per training dataset |
T0_original_task_only | Same as T0 but only original tasks templates |
T0_3B | Same as T0 but starting from a T5-LM XL (3B parameters) pre-trained model |
为了可复现性,我们在 P3 dataset 中发布了我们用于训练(和评估)的数据。提示示例可以在数据集页面找到。
*: 由于长的输入序列长度,我们将Hotpot QA重新构造为闭书QA。
我们在一套保留任务上评估我们的模型:
Task category | Datasets |
---|---|
Natural language inference | ANLI, CB, RTE |
Coreference resolution | WSC, Winogrande |
Word sense disambiguation | WiC |
Sentence completion | COPA, HellaSwag, Story Cloze |
我们还在一部分 BIG-bench benchmark 上评估了T0、T0p和T0pp:
即使我们有意排除了潜在有害内容的数据集,但经过训练的模型仍存在偏见。根据一些实验,T0++可以生成被归类为阴谋论、有偏见、冒犯或过度强调性话题的答案:
语言模型可能会重现大型预训练语料库中所表示的不利社会偏见。我们通过两种方式评估我们的模型:首先是其识别或标记性别偏见的能力,其次是其重现这些偏见的程度。为了衡量模型识别性别偏见的能力,我们使用WinoGender Schemas(在SuperGLUE中也称为AX-g)和CrowS-Pairs进行评估。WinoGender Schemas是仅通过句子中一个代词的性别差异来区分的最小句对,旨在测试性别偏见的存在。我们使用Diverse Natural Language Inference Collection( Poliak et al., 2018 版本)来将WinoGender视为文本蕴涵任务,并报告准确率。CrowS-Pairs是用于测量掩码语言模型中美国陈规陋习偏见的挑战数据集,我们重新构建了该任务,通过预测两个句子中哪个是陈规(或反陈规)的来进行评估,并报告准确率。对于每个数据集,我们评估了5到10个提示。
Dataset | Model | Average (Acc.) | Median (Acc.) |
CrowS-Pairs | T0 | 59.2 | 83.8 |
T0p | 57.6 | 83.8 | |
T0pp | 62.7 | 64.4 | |
T0_single_prompt | 57.6 | 69.5 | |
T0_original_task_only | 47.1 | 37.8 | |
T0_3B | 56.9 | 82.6 | |
WinoGender | T0 | 84.2 | 84.3 |
T0p | 80.1 | 80.6 | |
T0pp | 89.2 | 90.0 | |
T0_single_prompt | 81.6 | 84.6 | |
T0_original_task_only | 83.7 | 83.8 | |
T0_3B | 69.7 | 69.4 |
为了衡量我们的模型重现性别偏见的程度,我们使用WinoBias Schemas进行评估。WinoBias Schemas是代词指代关系任务,可能会受到性别偏见的影响。WinoBias Schemas有两个模式(type1和type2),分为"赞成陈规"和"反对陈规"两个子集。 "赞成陈规"的示例是正确答案符合陈规的示例,而"反对陈规"的示例是正确答案与陈规相悖的示例。所有示例都有一个明确的正确答案,因此"赞成-"和"反对-"子集之间得分的差异反映了刻板印象会使模型偏离正确答案的程度。我们报告准确率,如果目标名词出现在模型的预测中,则认为预测正确。我们对6个提示进行评估。
Model | Subset | Average (Acc.) | Median (Acc.) | ||||
Pro | Anti | Pro - Anti | Pro | Anti | Pro - Anti | ||
T0 | Type 1 | 68.0 | 61.9 | 6.0 | 71.7 | 61.9 | 9.8 |
Type 2 | 79.3 | 76.4 | 2.8 | 79.3 | 75.0 | 4.3 | |
T0p | Type 1 | 66.6 | 57.2 | 9.4 | 71.5 | 62.6 | 8.8 |
Type 2 | 77.7 | 73.4 | 4.3 | 86.1 | 81.3 | 4.8 | |
T0pp | Type 1 | 63.8 | 55.9 | 7.9 | 72.7 | 63.4 | 9.3 |
Type 2 | 66.8 | 63.0 | 3.9 | 79.3 | 74.0 | 5.3 | |
T0_single_prompt | Type 1 | 73.7 | 60.5 | 13.2 | 79.3 | 60.6 | 18.7 |
Type 2 | 77.7 | 69.6 | 8.0 | 80.8 | 69.7 | 11.1 | |
T0_original_task_only | Type 1 | 78.1 | 67.7 | 10.4 | 81.8 | 67.2 | 14.6 |
Type 2 | 85.2 | 82.3 | 2.9 | 89.6 | 85.4 | 4.3 | |
T0_3B | Type 1 | 82.3 | 70.1 | 12.2 | 83.6 | 62.9 | 20.7 |
Type 2 | 83.8 | 76.5 | 7.3 | 85.9 | 75 | 10.9 |
@misc{sanh2021multitask, title={Multitask Prompted Training Enables Zero-Shot Task Generalization}, author={Victor Sanh and Albert Webson and Colin Raffel and Stephen H. Bach and Lintang Sutawika and Zaid Alyafeai and Antoine Chaffin and Arnaud Stiegler and Teven Le Scao and Arun Raja and Manan Dey and M Saiful Bari and Canwen Xu and Urmish Thakker and Shanya Sharma Sharma and Eliza Szczechla and Taewoon Kim and Gunjan Chhablani and Nihal Nayak and Debajyoti Datta and Jonathan Chang and Mike Tian-Jian Jiang and Han Wang and Matteo Manica and Sheng Shen and Zheng Xin Yong and Harshit Pandey and Rachel Bawden and Thomas Wang and Trishala Neeraj and Jos Rozen and Abheesht Sharma and Andrea Santilli and Thibault Fevry and Jason Alan Fries and Ryan Teehan and Stella Biderman and Leo Gao and Tali Bers and Thomas Wolf and Alexander M. Rush}, year={2021}, eprint={2110.08207}, archivePrefix={arXiv}, primaryClass={cs.LG} }