模型:

mrm8488/t5-base-finetuned-break_data

英文

T5-base 在 break_data / QDMR-high-level 上微调 ❓➡️?

Google's T5 break_data 数据集上对 QDMRs 进行了微调。

T5 的详细信息 ? ➡️ ?

T5 模型是由 Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, Peter J. Liu 在 Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer 中提出的。下面是摘要:

迁移学习是一种先对数据丰富的任务进行预训练,然后对下游任务进行微调的强大技术,在自然语言处理(NLP)中已经被证明非常有效。迁移学习的有效性催生了各种方法、方法论和实践。在本文中,我们通过引入一个统一的框架,将每个语言问题都转化为文本到文本的格式,来探索 NLP 的迁移学习技术。我们的系统研究比较了预训练目标、架构、无标签数据集、迁移方法和其他因素在数十种语言理解任务上的表现。通过将我们探索的见解与规模和我们的新的“Colossal Clean Crawled Corpus”相结合,我们在涵盖摘要、问答、文本分类等许多基准测试中取得了最先进的结果。为了促进未来关于 NLP 的迁移学习的研究,我们发布了我们的数据集、预训练模型和代码。

下游任务(QDMRs) - 数据集的详细信息 ?

Break 是一个人工标注的自然语言问题和其问题分解意义表示(QDMRs)数据集。Break 包括来自10个文本、图像和数据库问答数据集的83,978个示例。该存储库包含了 Break 数据集以及有关确切数据格式的信息。

Dataset Split # samples
break_data train 17503
break_data valid 3130

NLP Viewer 中了解更多关于此数据集以及其他数据集的信息。

模型微调 ?️‍

训练脚本是 this awesome one 的一个稍微修改版,作者是 Suraj Patil 。主要的变化在于我们给模型提供的预处理输入和目标。我们将其作为一个释义任务进行处理。

模型展示 ?

# Tip: By now, install transformers from source

from transformers import AutoModelForSeq2SeqLM, AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("mrm8488/t5-base-finetuned-break_data")
model = AutoModelForSeq2SeqLM.from_pretrained("mrm8488/t5-base-finetuned-break_data")

def get_decomposition(question):
  input_text = "paraphrase: %s </s>" % question
  features = tokenizer([input_text], return_tensors='pt')

  output = model.generate(input_ids=features['input_ids'], 
               attention_mask=features['attention_mask'],
               max_length=32)

  return tokenizer.decode(output[0])

question = "The composer of Sands Theme plays what type of guitar?"

get_decomposition(question)

# output: 'return Sands Theme ;return composer of #1 ;return guitar that #2 plays'

Manuel Romero/@mrm8488 创作 | LinkedIn

在西班牙