自动问句生成综述

2021-02-25 01:28红,孙
乐山师范学院学报 2021年12期
关键词:语料段落语句

谢 红,孙 锐

(乐山师范学院 人工智能学院,四川 乐山 614000)

0 引言

自动问句生成(Question Generation,QG)旨在根据文本段落或上下文生成问题[1]。该任务被广泛地应用于教育、对话、自动问答等领域。在教育领域,问句生成可用于课程材料的评价,亦可作为智能辅助教学的组成部件。通过构建高质量的问题集,对学生知识掌握程度或自主学习能力的评估起到至关重要的作用。在对话领域,生成流畅的问句是对话系统的一个重要技能。作为问答系统(Question Answering,QA)的逆向任务,问题生成具备提供大规模问答对的潜质,可减少构建大规模数据集所需的人力。

1 任务概述

一般地,问句生成的目标为给定源文本生成一个问题集合,其中每个问题均能在文本中找到对应答案。问句生成任务框架如图1 所示,大体分为三个子任务:

图1 问句生成框架

a)内容选择旨在选择和设定待提问的目标或想要的答案,主要解决“问什么”的问题。故需要抓住文本重要信息,标记出待提问的重要属性。

b)问题类型选择旨在给定目标答案后,确定待提问的问题类型(What、When、Who、Which、Where,Why,How 和Yes/No 等)。此子任务常用在基于规则的方法里。在基于神经网络的模型里,问句类型和句法形态可通过语句或词的特征和问句表示的构造来确定。

c)问句构造旨在给定目标和问句类型后构造问句,主要解决“如何问”的问题。此子任务关注如何用自然语言描述待提问的重要属性,因而需聚焦于语法正确性、语义精确性和语言灵活性。

自动问句生成任务面临的挑战有:(a)问题类型众多;(b)文本理解中的部分语言学挑战,如否定检测和指代消解等;(c)问句形态多样化,特别是在中文领域。例如,百度老总是谁?谁是百度老总?(d)词形词义多样化,例如,百度老总是谁?百度董事长是谁?

2 主要方法

自动问句生成方法主要分为两类:一类是基于规则的问句生成[2-5],多利用启发式规则将语句转换为相关问句;另一类是基于神经网络的问句生成模型[6-9],主要利用深度学习中的序列到序列(Seq2Seq)技术。

2.1 基于规则的问句生成模型

多数基于规则的基本思路,将输入语句转换为语法结构表示,利用这种结构表示去匹配预定义模板或者利用句法特征对语句进行重排以生成问句。典型地,此类方法需要确定输入语句的句法模板、关键字或语义角色,故多以语法和语义为依托进行语法或语义解析。在问句生成时,采用转换(Transformation-based)方法重排输入语句的表达,或利用模板方法(Template-based)来定制问句的生成。

为提升问句生成质量,此类方法多从以下几个技术角度改进:a)词形和词义。词性识别、实体识别、关键词识别、词干化、词相似性;b)语句句法结构。语义依存关系、语义角色标注、句法成分结构;c)语句相似性或主题相关性。

Yllias[2]等提出根据主题从正文信息生成所有可能的问句。首先进行语句简化去除冗余句子成分,以便利用命名实体信息和谓词论元信息生成问句;然后利用主题模型和字符串核方法计算问句与正文以评估主题相关度;最后采有句法树核方法计算问句与正文的句法相似度以评估句法正确度。Karen[3]等探索了在教育领域下构建各种深度或不同类型的问句,结合语言学特点深度分析了语句的语义角色关系,设计了约42 个语义模板,以生成语句相关的问句和答案。Mass[4]等利用依存分析工具、PropBank、VerbNet、WordNet 等知识库或工具开发了一套句法规则,有效地实现了全局依存关系、浅层语义分析、词汇资源和习惯性规则的平衡,最后利用回译技术生成语法准确、高度相关的问句。

可以看出,基于规则的方法简单且易于实现,但无一例外,都面临着一些较难的语言学挑战,如否定词检测、指代消解和动词形态变化等。问句语用学的研究对问句生成应能产生积极的影响。

2.2 基于神经网络的问句生成模型

主流的深度问句生成模型大多沿用Seq2Seq框架,如图2 所示。给定一个段落X={x1,...,xn}false 和目标答案Afalse,模型旨在针对Afalse 生成一个问句Y={y1,...,ym}false。故,模型优化目标为最大化给定Xfalse 和Afalse 时生成最佳问句Y^false 的条件概率,即:

图2 基于神经网络的模型典型结构

多数基于神经网络的模型关注以下两方面的技术细节:

a)与QG 有关的因素,如答案编码、问句词的生成和段落级的上下文表示等。

(a)答案编码。答案作为模型输入用于指导模型在问句生成时关注哪些信息,以免模型生成与特定目标无关的问句。主要有两种实施方案,一是利用额外的答案指示特征增广答案中的每个词向量,如BIO 标记,位置向量等,另一种则采用特定的词条替换答案以进行段落编码。

(b)问句词生成。问句词在问句生成起着重要的作用。当前大多的模型中存在着问句词生成和答案类型不一致的情况。

(c)段落上下文。有统计表明,约20%的问句需要借助段落上下文信息作答。但随着输入问句长度的增加,Seq2Seq 模型的学习需要较高的耗时才能有效利用上下文信息。

b)常见的自然语言处理技术,如拷贝机制和语言特征等。

(a)拷贝机制。在解码过程中,若回指了在源语句中的短语或实体,或用于构建事实性问句或难以用RNN 解码生成稀疏词时,可以直接从源语句拷贝相关词到问句。

(b)语言特征。用于补充词表示,包括词的大小写、词性(POS)、命名实体(NER)标签、指代和依存信息等。

Zhou[6]等提出应用神经编码-解码模型以生成有意义的多样化的问句。编码输入为文本和答案位置,以得到答案敏感(Answer-aware)的输入表示,再由解码器生成聚焦答案(Answer-focused)的问句。模型使用BiGRU 获得前向和后向编码,除传统的词向量输入,还引入NER 和POS 标签作为额外特征来标注答案的位置,使得模型对目标答案更敏感,在解码时采用了注意力和拷贝机制。Sun 等[7]提出一种和位置敏感的神经问句生成模型。通过聚焦答案以引入答案表示,显式地对疑问词的生成建模,有助于疑问词和答案类型的匹配。通过对上下文和答案的相对距离建模,以生成相应的位置敏感的注意力,有助于原文中拷贝相对距离较近且相关的上下文词条。同Zhou[7]等的工作类似,引入了NER 和POS 等特征,在解码阶段同时支持在拷贝和生成两种模式的切换。Zhao[8]等聚焦于答案敏感的问句生成,以段落和答案为输入,生成针对给定答案的问句,假定答案是由给定段落中的某些文本片段组成。提出一种带门自注意力(Gated Self-attention)的指针机制,以处理问句生成中长文本挑战。其中,门自注意力用于在每个时间步聚集来源于段落的信息,嵌入段落内部依存以提炼段落答案的编码表示;在解码时每个时间步上的词均被看成单独的一个拷贝目标并限制重复词的得分。Kim[9]等认为大多数现有神经网络模型通过答案位置特征引入目标答案信息,从而使得生成的问句中大多包含了目标答案中的词。因此,聚焦于如何把原始段落和目标答案分离开,提出答案分离(Answer-separated)的Seq2Seq 模型,更好地利用段落和目标答案的信息。采用掩码替代目标答案,单独保留对应的目标答案,采用基于检索的词生成方式以纠正传统Seq2Seq 模型的缺陷(传统Seq2Seq 倾向于记忆序列模式而非词义),有效地抓住语义。

2.3 模型对比

a)从方法的难易程度来看,基于规则的方法实现简单,问句可根据模板或句法结构直接生成,而基于神经网络的方法以数据为驱动,问句的生成质量依赖于网络结构的特征学习能力以及训练数据的质量。

b)从方法的语言学本质来看,基于规则的方法多利用浅层语义工具来分析词的句法角色和语句的句法结构,而基于神经网络的方法更关注词的语义角色,强调语句的深层语义分析。

c)从方法的鲁棒性来看,基于规则的方法依赖于模板的质量,故大多在特定的领域实现,而基于神经网络的方法则具有更强的鲁棒性,领域无关性较好。

d)从问句类型选择方式来看,基于规则的方法大多对不同问句类型分别设计或统计模板,而基于神经网络的方法则允许在一个统一的框架里联合优化多个不同类型的问题,无需分别关注不同类型的问句。

e)从数据资源和人力耗费来看,基于规则的方法对模板质量有较高要求,故需要具有一定语言学背景的领域专家,而基于神经网络的方法则依赖大量训练语料来习得任务相关的特征,故需要人力来标注大量的问句-答案对。

从对比分析结果可看出,基于规则的方法能利用常用句法结构和模板生成质量较高的问句,领域依赖性较强,对稀疏性的结构则难以应用。基于神经网络的方法采用数据驱动,依靠网络结构强大的特征学习和表示能力,具备更强的灵活性和鲁棒性,从而具备更好的应用前景。

2.4 其他方法

除以上两类方法外,学术界也开展了多任务学习[10]、增强学习[11-12]等技术在问句生成上的研究。

Tang[10]等认为在QA 和QG 任务中,Seq2Seq的QG 模型大多以最大似然估计为目标函数,为同时提升QA 和QG 性能,提出一种在问答场景下同时泛化生成对抗网络和生成域适应网络的训练算法,通过引入额外的QA 特定信号作为损失函数以提升QG 性能。

Kumar[11]等认为神经网络技术常常忽略训练集和测试集的词分布之间的差异,提出一种端到端的框架以生成问句。生成器建立在问句语义和结构基础上,利用指针网络标识出目标答案,采用覆盖机制避免问句中可能会出现的冗余词;而评估器则既可以通过问句生成评价指标以优化问句与的一致性,又可以通过可分解的注意力机制实现适合问句的匹配。

此外,随着近年来大量预训练神经语言模型席卷整个自然语言处理领域,在开放文本生成的采样中预训练模型同样展示出了较强的鲁棒性,并开始用于问句生成任务[4][12-13]。

3 语料和评价

3.1 实验语料

大多数学术界的研究成果主要针对英文语料。近两年,因为中文语料上自动对答和会话任务的兴起,开始出现中文问句语料,但未有中文问句自动生成的标准评测语料。

一般来说,问句生成语料主要关注两个层面[1]:一是答案的认知层面,主要关注于事实性问题,例如SQuAD 和MS Marco 等。另一个是关注答案的类型的不同,主要分为四种:(a)答案为段落中一个文本片段;(b)答案不直接出现在段落中;(c)多选问题,通常问题和相关干扰项联合生成;(d)未给定答案,要求模型能自动学习“什么值得问”。受限于目前的学习技术,大多数的研究主要聚焦于前者。

3.2 评价方法

一个较好的问句生成模型应具备以下能力:(a)能抓住问句在段落中最显著的信息;(b)以显著信息为目标答案,能生成答案相关且符合段落主旨的问句;(c)生成的问句应具备语法的正确性和语句的连贯性。和文本生成任务类似,问句生成的评价方法主要包括两类:(a)人工评价。一般随机采样几百个问句,评分员采用5 级分制对问句进行打分。通常采用平均得分或最好得分占比作为质量得分。评价主要从语法正确性、语义精确性和回答难度等几个因素度量。(b)自动评价。主要包括BLEU、METEOR 和ROUGE 等。其中,BLEU 通过统计模型答案和参考答案中子串的匹配数量来度量,常用BLEU-4 指标;Meteor 主要比较模型答案和参考答案在词干化、同词义和改写后,词和短语上的匹配数量;而Rouge-L 则度量模型答案和参考答案的最长公共子串的平均长度。

4 发展趋势

随着自动问答和多轮对话的广泛应用,问句生成开始扮演越来越重要的角色。教会机器如何提问已经成为一个刻不容缓的任务。有研究者针对自动问句生成任务,尝试采用不同的解决方法或开展新应用场景的研究。这些探索性的研究给问句生成任务的发展提供了方向上的指引,大体可归纳为以下几个方面:

a)问句生成模型结构的研究。改造神经网络结构,提升与问句生成有关的特征学习效果,特别是将外部知识库引入到网络结构是研究方向之一。例如,利用贝叶斯推理或知识蒸馏技术(Knowledge Distillation)将问句模板知识引入网络结构从而强化词特征和结构特征。

b)由常规问句生成演化的新任务。现有的研究大多是针对答案有关的问句生成,近年来开始出现一些常规问句生成相关的新任务,例如Pan等[14]提出一种对话问句生成,旨在基于段落和对话历史(如过去几轮的问答对)生成问句。如前所述,问句生成亦可与答案无关,即仅提供输入段落,问句生成模型应能自动标注出段落中值得提问的部分。这种新任务因动机和输入不同,使得任务模型结构上存在着较大的研究空间。例如,长程语义依赖学习能力更强的Transformer 及变种在段落语义理解上将拥有更大的优势。

c)尝试在问句的输入端引入不同的模态,例如知识库和图像信息[15]。给定知识图谱和实体,如何实现问句生成?给定图像,该如何提问?直观地视觉问句生成可以以较小的代价为视觉问答任务生成规模更大的训练语料,从而减少人工标注的工作量。开展多模态语义融合技术的研究将为问句生成的广泛应用提供更好的保障。

5 结论

受限于问句生成任务起步较晚和本身任务的复杂性,目前自动问句生成的准确率还比较低。标准评测数据集上的BLEU-4 和Meteor 得分在0.25-0.3 之间,Rouge-L 得分在0.55 左右,离实际应用需求还有差距。随着人工智能技术的飞速发展,特别是自动问答和会话系统的广泛应用需求,自动问句生成任务无论是从语料建设、评价方法还是技术实现将得到快速的推动。

猜你喜欢
语料段落语句
趣味•读写练 答案
面向低资源神经机器翻译的回译方法
【短文篇】
心理小测试
濒危语言与汉语平行语料库动态构建技术研究
夏天,爱情的第四段落
我喜欢
国内外语用学实证研究比较:语料类型与收集方法
冠词缺失与中介语句法损伤研究
作文语句实录