Simplifying Paragraph-Level Question Generation via Transformer Language Models. 2021

摘要

问题生成 (QG) 是自然语言处理 (NLP) 中的一项重要任务,涉及在给定上下文段落时自动生成问题。
虽然 QG 任务存在许多技术,但它们采用了复杂的模型架构、广泛的特征和额外的机制来提高模型性能。

在这项工作中,我们表明基于转换器的微调技术可用于仅使用单个预训练语言模型创建稳健的问题生成系统,而无需使用额外的机制、答案元数据和广泛的特征。
我们最好的模型优于以前更复杂的基于 RNN 的 Seq2Seq 模型,METEOR 和 ROUGE L 分数分别提高了 8.62 和 14.27。

我们表明,它的表现也与使用答案意识和其他特殊机制的 Seq2Seq 模型相当,尽管只有一个单一模型系统。我们分析了各种因素如何影响模型的性能,例如输入数据格式、上下文段落的长度以及答案意识的使用。最后,我们还研究了模型的故障模式,并确定了模型失败的可能原因。

1 介绍

问题生成 (QG) [14],虽然不如其兄弟任务问答 (QA) 突出,但在 NLP 中仍然是一项相关任务。提出有意义问题的能力为人工智能 (AI) 模型 [10] 中的理解提供了证据。这使得 QG 的任务在 AI 的更大图景中很重要。

虽然所有这些技术都是稳健的,但它们都使用了复杂的模型、额外的特征和额外的机制,这使得它们更难训练和昂贵重现。在这项工作中,我们表明基于转换器的微调技术可用于仅使用单个预训练语言模型创建稳健的问题生成系统,而无需使用额外的机制、答案元数据和广泛的特征。

我们表明,我们的方法虽然更简单,但产生的结果与最先进的结果相当。我们在 SQuAD [13] v.1.1 数据集的重新格式化上对标准语言模型微调进行了基准测试,并使用标准语言生成指标评估生成性能。此外,我们进行了各种分析,以隔离我们模型中的性能指标并识别其弱点和故障模式。

2方法

2.1数据准备

由于 GPT-2 被预训练以执行语言建模,我们以类似于它在语言建模上训练的方式对其进行微调。因此,我们格式化 SQuAD,使其看起来类似于语言建模的输入数据。整个数据集被转换为连续的文本正文。每个训练示例由一个上下文段落及其相关问题组成,该问题被转换为一个连续序列,中间有一个分隔符。训练示例由新行字符 \n 分隔。图 2 显示了这种形式的单个训练示例的示例。

有多种方法可以将这种转换从数据集的原始表示(SQuAD 的 JSON)执行到连续语言建模就绪文本。我们在格式化此数据时尝试了两个因素:使用的分隔符和每个上下文段落的多个问题的表示方法。图 1 说明了我们用于模型训练的六种数据格式。

分隔符:
在数据准备过程中,在每个输入上下文段落和输出问题之间放置一个分隔符。在训练期间,这个分隔符允许模型正确区分上下文和问题,而在预测期间,它可以用作一些输入文本末尾的标记来调用模型中的问题生成行为。我们尝试了三种不同的分隔方案:1)ARTIFICIAL,或以标记 [SEP] 的形式分隔符,2)NATURAL-QUESTION,或 wordQuestion 形式的分隔符,以及 3)NATURAL-NUMBER,或以编号列表的形式划分方案,其中每个项目都是一个问题。

ARTIFICIAL 分隔符不存在于原始模型的词汇表中,其权重是在微调阶段从头开始学习的,而 NATURAL 分隔方案依赖于预训练阶段已经学习的标记权重,从而使模型的预训练知识有可能通过这些分隔符影响性能。类似的关键字已被证明在调用某些预训练模型行为(例如 TL;DR:for 摘要)方面是有效的,即使在零样本设置中也是如此 [

每行问题
可能有多个可能的问题与单个段落相关联。我们尝试了两种方法来展平格式化数据中的这种多对一关系:

每行所有问题 (AQPL)
单个训练示例由一个上下文段落组成,其中包含在其之后立即放置的所有相关问题,彼此与选定的分隔符分开。虽然这避免了上下文的重复,从而导致更快的训练时间,但它可能会导致模型不再能够关注较早的标记,因为它上下文窗口远离输入段落的开头。
这在问题生成任务中至关重要,因为有关参考问题的信息可以在输入段落中的任何位置找到。如果信息在开始时找到,在模型当前上下文窗口之外,模型可能难以生成相应的问题。

每行一个问题 (OQPL)
每个上下文段落都是为其每个相关问题复制的,因此对于单个训练示例,只有一个上下文和一个问题。在许多情况下,这可能会缓解 AQPL 提出的移动上下文窗口问题,因为单个训练示例的长度减少到输入段落的长度加上单个相关问题的长度。然而,由于重复的上下文增加了最终格式化数据集的大小,这种格式确实会导致更长的训练时间

2.2 模型设置和微调

对于我们的基本预训练模型,我们使用了 12400 万个参数 GPT-2 的 HuggingFace 实现 [18],这是四个可用 GPT-2 模型大小中最小的。从这个基本模型中,我们对六个问题生成模型进行了微调,每个模型都使用第 2.1 节中列举的数据格式组合之一。
我们使用因果语言建模损失训练了每个模型 3 个 epoch。我们使用了初始学习率为 5 × 10−4 的 Adam 优化器 [8] 和线性递减的学习率计划,预热总训练步骤的 10%。
为了训练,我们使用了单个 Tesla V100 16GB GPU。由于该模型使用 GPT-2 的默认最大序列长度 1024 和 32 的批量大小不适合内存,我们通过将 2 的实际批量大小与每个小批量 16 个梯度累积步骤相结合来模拟这个批量大小。
由于时间和硬件限制,我们选择使用更大的模型;使用单个 16GB GPU 训练 345 万个参数 GPT-2 会迫使我们使用 1 的实际批量大小来将模型拟合到内存中,大大增加了训练时间,而训练两个更大模型大小中的任何一个都需要我们使用多个 GPU。

2.3 模型生成

我们将模型温度设置为0.6。较高的温度值导致代的随机性更大,而较低的值接近贪婪行为。我们使用top-p核采样方法[7],值为p = 0.9。Top-p允许比纯贪婪方案更多样化的代,并最小化生成文本中无限重复的某些令牌或令牌跨度的出现。当模型生成换行符 \n 或当模型达到 32 个标记的生成长度时,每个生成循环都会终止。我们手动设置这个最大长度,以终止被困在令牌跨度循环中的生成会话,并不会自行到达 \n 个文本结束标记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值