APP下载

面向阅读理解的多对一中文文本蕴含问题研究

2018-05-29陈夏飞王素格

中文信息学报 2018年4期
关键词:单句层级语义

陈 千,陈夏飞,郭 鑫,2,王素格

(1. 山西大学 计算机与信息技术学院,山西 太原 030006; 2. 同济大学 电子与信息工程学院,上海 201804)

机器学会阅读是人工智能理解人类语言的里程碑式目标之一,也是自然语言处理的核心任务之一。近年来,随着自然语言处理技术和深度学习的不断发展,国内外自然语言处理领域的研究人员高度关注机器阅读理解这个研究方向,如谷歌于2016年推出一个基于公众可用的 Gigaword 数据集(AFP 部分)生成的开源机器阅读理解数据集MC-AFP;微软也将发布微软机器阅读理解数据集(简称MS MARCO),包含有十万条英文查询及对应回答,用来帮助人工智能系统更好地理解人类语言。东京大学机器人项目始于2011年,目标是在2021年通过东京大学入学考试,其评测语料使用真实的日本大学入学考试阅读理解文本。国家高科技发展计划推出类脑计划,其中就包含子课题阅读理解的关键问题研究。

文本蕴含识别(recognizing textual entailment,RTE)是一个判断文本之间推理关系的任务[1]。文本蕴含可以定义为: 给定一个连贯文本P与一个假设文本H,如果假设文本H的语义可以从文本P的语义中推断出来,那么文本P蕴含文本H[2]。如何让机器识别背景材料中候选句与选项之间的蕴含关系,从而实现深层语言理解,是自然语言处理领域最核心的目标之一。文本蕴含识别技术为自动问答系统[3]、聊天机器人、机器阅读理解[4]、信息检索和机器翻译[5]等诸多应用领域提供的关键技术支撑。反过来,RTE还能促进语言理解任务及基础理论研究的发展,如自动文摘[6]、实体关系识别和抽取[7]等。文本蕴含相关研究能提供一个一般化的文本信息推理引擎,在机器阅读理解中,问题的答案可以通过判断文档是否蕴含问题与选项的组合来获得[8]。

目前,面向阅读理解的文本蕴含任务主要存在如下问题: (1)传统文本蕴含主要针对句子对之间,且句子长度较短、句子长度差不大,如斯坦福自然语言推理(SNLI)[9]和日本国家情报研究所NII(national institute of informatics)识别文本推理(RITE)评测任务数据集。SNLI的Premise的平均长度是14.1,Hypothesis的平均长度是8.3,但是在真实的阅读理解材料中,会出现多句—单句的蕴含,即需要判断多个句子与一个句子间的蕴含关系,示例如表1所示;(2)缺乏大规模中文蕴含标注语料。RITE是目前唯一评测中文文本蕴含关系的研讨会[10],其中CS(simplified Chinese)评测子任务面向中文,但规模不大;SNLI规模较大,但主要面向英文;(3)面向阅读理解的中文文本蕴含识别需要全面理解背景材料的语义信息,融合多个相关候选片段得出选项的蕴含与否,需要深层的候选片段答案融合。这些问题给中文文本蕴含带来诸多挑战。本文主要考虑从两个方面开展相关研究,首先构建面向阅读理解的中文文本蕴含语料,其次聚焦中文文本蕴含的多对一蕴含问题。

表1 多句—单句的文本蕴含示例

从表1可以看出H的语义信息要通过综合P1、P2、P3的语义信息才能得到,H中前半句的意思是与P1整个句子的意思相对应的,而H后半句的语义是与P2、P3的语义相对应的。

通过以上示例可知,阅读理解中的文本蕴含,并非是简单的单句之间蕴含关系判断,更多的是多句—单句的蕴含判断。中文RTE识别常常是作为一个分类任务进行处理的,但是在P是多句时,很多特征对多句—单句的情况无法适用。因此,本文针对蕴含的多句—单句的特点,采用了层级神经网络来识别多对一中文文本蕴含。使用层级神经网络目的在于考虑了P中多句的句间语义和句间关系。

本文首先介绍国内外文本蕴含相关工作,接着描述了所采用的层级神经网络模型,并将该模型用于多对一文本蕴含语料库中,对实验及结果进行了分析,并对论文工作进行了总结和展望。

1 相关工作

文本蕴含由Dagan等[11]在 2004 年提出,通常采用有监督机器学习方法,即先对大量有正确蕴含关系标签的文本进行训练,再用训练得到的分类模型判断测试文本是否存在蕴含关系。传统的文本蕴含处理方法是通过抽取蕴含对(P-H对)的词汇特征(词汇对齐特征、基于同义词林语义相似度特征、基于知网的语义相似度特征、反义词特征等)、句法结构特征(依存图对齐特征、谓词-论元结构特征)等,然后用类似 SVM 分类器进行分类,如基于 FrameNet 框架关系的文本蕴含识别[12]、基于事件语义特征的中文文本蕴含识别[13]、基于短文本隐含语义特征的文本蕴含识别[14]、多特征文本蕴涵识别研究[15]。此类方法需要人工去设计多种特征,且依赖大量外部资源。

深度学习方法依赖于大规模训练语料,SNLI大规模语料库的出现使得利用深度学习解决RTE问题成为可能,深度学习模型采用端对端模式,避免了繁琐的人工特征设计。Bowman等人[9]首次采用神经网络模型处理文本蕴含,首先使用Word2Vec对单词进行向量化,然后采用三种句子向量化方式(单词相加、LSTM、RNN)对SNLI中的P和H两个句子进行表示,最后将两个向量的连接传入MLP分类器,在SNLI数据集上获得了较好的效果。Rocktäschel等人采用的是Seq2Seq模型,用LSTM同时读两个句子判断蕴含而不是每个句子独立映射到语义空间,并提出了word-by-word attention机制,促进了句对中词和短语对齐的蕴含推理[16]。Liu等人提出了Inner-Attention机制,即在句子内部使用attention机制,用双向LSTM产生的句子表示去关注句子内部的单词而非用Hypothesis去注意Premise里面的单词。Inner-Attention的引入产生了更准确的句子表示,使得文本蕴含的准确率有了提升[17]。

真实阅读理解材料经常需要判断多个句子与一个句子间的蕴含关系,多句—单句的长文本蕴含概念首先是王宝鑫[2]等人提出的,采用了基于词汇的启发式算法来计算长文本蕴含强度,只从词汇的角度考虑,忽略了句子级别的语义信息。

文献[18-19]采用层级神经网络融合句子级别语义信息,对文档的表示采用统一的自下而上的方式,模型先学习文档中的句子表示,然后用学习到的句子表示来表示文档。文献[18]在文档级文本生成任务中验证了可行性。文献[19]将层级神经网络应用于文档级情感分类,取得了较好的效果。通过层级神经网络,文档表示较好地融合了句子语义信息和句间关系。

2 基于层级神经网络的中文文本蕴含

在多句—单句的中文文本蕴含中,文本P是多个句子,相比较于传统的对整个文本P进行序列建模方式,本章利用层级神经网络对多句—单句蕴含对进行处理,考虑了句间语义,实验结果也有一定的提升。

2.1 LSTM

LSTM(long short-term memory)由Hochreiter等在1997年提出,近年来LSTM被广泛应用于自然语言处理任务中,如机器翻译和语言建模中[20]。LSTM中含有记忆细胞,可以长时间存储信息,同时它还有三个门结构: 输入门(等式1)、遗忘门(等式2)和输出门(等式3),用来控制信息的流动。在时刻t,输入为xt,各个值的计算如下:

其中W∈Rk×k,b∈Rk,分别为各类行中的训练权重和偏置。h(t)表示t时刻的输出,σ表示逐元素的应用sigmoid函数,⊙表示两个向量进行逐元素相乘。

LSTM模型能较好地对序列数据进行建模,在文本表示中,LSTM可以学习语义丰富的句子表示[16]。将LSTM模型作为神经网络中的一层,我们可以构建多层次LSTM神经网络。

2.2 层级LSTM

段落或文档由句子构成,句子由词语构成,表达了丰富的语义。基于这种假设,层级LSTM神经网络模型包含文档层、句子层和词语层[17]。为了获得文档中的句子表示,采用一层LSTM将句子中的所有词语映射变换成句子向量,每个时刻代表一个词,任意时刻的输出可以表示为式(7)。

(7)

为了获得当前文档L的表示eL,用第二层LSTM对文档L中所有句子进行处理,此时每个时刻代表一个句子,其任意时刻的向量输出表示为式(8)。

(8)

层级LSTM神经网络方便地将多个句子表示成一个向量,文献[18]利用该模型解决文档和句子生成问题。与之不同的是,本文主要利用LSTM编码公式解决蕴含识别问题。

2.3 层级LSTM神经网络识别文本蕴含

多句—单句蕴含对里面的P包含多个句子,本文采用层级LSTM模型对P进行建模,能有效融合多个句子的语义信息。在语文高考现代文阅读理解中,选项包含丰富的语义信息,为了更细粒度地体现语义对齐,需要将选项划分为多个语义片段,每个子句常常与候选集中一个句子或多个句子语义对应。为简单起见,我们采用规则对H中的单句进行子句划分,进而H也能采用层级LSTM模型进行处理。模型的整体结构如图1所示。我们采用两阶段策略方式对多句—单句蕴含对进行分类。

(1) 层级LSTM网络对蕴含对分别进行表示: 蕴含对主要包括Premise和Hypothesis这两个部分,首先将Premise和Hypothesis中的每个句子利用LSTM分别进行向量表示。基于学习到的句子向量,利用第二层LSTM模型将Premise和Hypothesis对应转换为固定大小的向量,这些向量蕴含了句间的语义和关系信息。同时,在层级LSTM神经网络中,Premise和Hypothesis编码器的参数形式和个数是一样的。

(2) Text Match网络层对Premise和Hypothesis进行连接: 在层级LSTM网络对蕴含对分别进行表示的基础上,我们得到Premise和Hypothesis的向量表示,采用匹配操作将Premise和Hypothesis进行联结。联结方式主要有三种: 向量拼接(concatenation)、逐元素相乘(element-wise product)、逐元素相差(element-wise difference)[20]。在实验部分,我们综合采用了三种方式进行蕴含识别。

阅读理解最终目标是判断候选材料是否蕴含选项,针对联结的结果采用softmax层将输出结果非线性映射到分类(entailment/contradiction)的目标空间。由于蕴含识别本质上是一个二分类问题,因此softmax层将退化为sigmoid层,采用的是logistic sigmoid函数。同时我们在层级LSTM之前还加了一个线性网络层,将词向量维度映射为LSTM的维度,产生了LSTM的输入。

图1 层级LSTM神经网络模型的整体结构

2.4 层级attention神经网络识别文本蕴含

在多句—单句的文本蕴含里,通常会出现P中的句子语义是与H中的子句语义是对齐的。如在表1 中,H的“朋友为……而感到遗憾”与候选句P1是对应的。为此我们引入attention机制[16],不同于文献[16],attention是针对单句—单句中的词或短语的对齐,本文利用attention完成句子—句子对齐。

在层级LSTM神经网络的Text Encode阶段,我们引入attention,从而方便地将Hypothesis中每个子句和Premise中每个句子进行对齐。attention机制形式化如式(9)~(11)所示。

其中,Y是Text Encode阶段LSTM处理Premise的输出矩阵,a(t)表示t时刻的attention向量,r(t)表示t时刻Hypothesis关注Premise输出Y后的加权输出。最后文档的输出表示为式(12)。

h*=tanh(Wpr(L)+Wxh(N))

(12)

其中,r(L)是最后时刻Hypothesis关注Premise输出Y后的加权输出,h(N)是LSTM处理Hypothesis的最后时刻的输出向量。最后直接将h*传入softmax进行分类。

3 实验设计与结果分析3.1 数据集

如表2所示,语文高考现代文阅读理解的选择题目标是判断每个选项对原文的理解是否正确,其特点是选项包含丰富的语义信息,表达方式多样化。我们通过网络爬虫在线爬取大量高考选择题,将高考选择题的答案作为蕴含标签,构建了针对阅读理解的中文文本蕴含训练数据集(M2OCTE),示例如表2所示。我们整理了两类数据集: 数据集A来自于各省高考阅读理解真题和历年模拟题;数据集B是从互联网上爬取的数据整理后得到阅读理解题目。

蕴含对构建过程如图2所示。从大量试卷里,首先整理出选择题的背景材料、选项、题干、答案。

接着对背景材料进行分句,并计算选项与背景材料句子之间的相似度。然后进行降序排列,选出前三个作为对应选项的候选句集。最后结合题干和答案,判断每个选项和对应候选句集的蕴含标签。其中基于Word2Vec的句间相似度计算步骤为: 先利用Word2Vec训练的词向量表示句中的词,再计算句中词的tfidf值,用tfidf值对词向量加权求和得到句向量,最后对句向量计算余弦相似度。

图2 蕴含对构建过程

为了保证数据集的质量,在后续的处理过程中我们对自动构建的多对一蕴含对进行了人工标注: 首先将数据集分为六等分,分别分发给六位同学,每位同学分别对多对一蕴含对进行校验;其次,每位同学交换手中的数据集进行第二轮的校验;接着,根据两次的校验结果,确定蕴含的P、H和对应的蕴含标签,去除有争议和无法界定的蕴含对,最后形成精标数据集C。精标数据集C主要用于对训练出来的模型参数进行进一步优化调整。中文文本蕴含数据集如表3所示。

表3 中文文本蕴含数据集

3.2 参数设置

模型训练目标函数是交叉熵损失函数,利用标准反向传播算法优化参数。优化过程中采用的是mini-batch随机梯度,batch设为16。为防止过拟合,模型采用了dropout策略,dropout rate设置为0.3。模型的输入词向量是用爬取和整理的七万散文文学作品库和科技文语料通过Word2Vec[21]进行训练得到。在训练集中,不属于词汇表里面的词语用[-0.05, 0.05]上的均匀分布进行初始化,并在训练过程中进行优化。

3.3 评测方法

由于本文的多句对单句文本蕴含对是从真实阅读理解选择题的基础上构建的,要同时考虑蕴含和非蕴含两个类别。因而系统的性能采用国际度量指标MacroF1和准确率(Accuracy)度量,这两个指标的定义如式(13)~(14) 所示。

其中C为类别集合,取值为“Y”(蕴含)和“N”(非蕴含),Pc和Rc分别为类别c的精确率和召回率,定义如式(15)、式(16)所示。

3.4 实验结果与分析

实验首先将P中的多个句子直接合并为一个句子,转换为单句—单句的文本蕴含识别问题,采用传统分类器(SVM)和单层LSTM进行处理。其中传统分类器方法是先人工设计字符串特征和句法特征等,最后采用SVM*http://www.csie.ntu.edu.tw/~cjlin/libsvm/进行分类。接着我们采用层级神经网络模型(hierarchical model)和层级attention神经网络模型(hierarchical attention model)识别多句—单句的文本。注意,在H进行子句划分时,主要采用符号规则和关键词规则。符号规则主要以逗号和分号为主。关键词规则通过构建关键词库、关键词包括“说明”、“表现”和“表明”等观点引出词。这四种方法在A和B数据集上得到的实验结果如表4所示。

表4 实验结果

在表4中可以看出,采用层级神经网络识别多句—单句的文本蕴含准确率比将多句—单句的文本蕴含转换为单句—单句的文本蕴含后采用传统分类器和单层LSTM进行实验的准确率分别高5%和1.9%,同时MacroF1的值也是最高的。由于本文关于多句—单句的文本蕴含采用的方法是将H中的句子采用规则切分成多个子句后,分别用层级LSTM对P和H进行表示,即使用的是词语—句子—文档的建模思想。在层级attention神经网络的attention阶段,让Hypothesis中的子句对齐Premise的句子。实验证明,直接用LSTM处理后的句子来进行对齐效果不好,说明句子语义对齐还是存在一定的难度,无法达到文献[16]中的词语与短语对齐的效果。

在层级神经网络识别文本蕴含的Text Match阶段,对两个文本进行连接的三种策略(concatenation,element-wise product,element-wise difference)也进行了对比实验,结果如表5所示。

表5 不同Text Match联结方式的实验结果

从表5可以看出,在层级神经网络的Text Match阶段,基于concatenation,element-wise product,element-wise difference三种方式结合的效果会比其中的任何一个方法进行处理的效果要好。

为了提高模型的性能,采用精标数据集C对模型参数进行进一步优化微调,在精标数据集C上进行测试,对比加入精标数据前后结果如表6所示。

表6 加入数据集C的实验结果

从表6的对比结果可以看到,加入精标数据集C后接着训练模型,准确率和MacroF1比加入前都提高了近8%。由于数据集C是对数据集A和B人工精标得到,因而加入精标数据前训练的模型在数据集C上测试的准确率反而低于自动构建数据集的测试准确率。同时也说明自动构建数据集时,还需加入一些人工干预,以提高构建的质量。综上可知,在训练神经网络时,适当添加精标数据能够提高模型的性能。

为了验证本文所提方法在不同语言上的有效性,本文在英文数据集Story Cloze Test*http://cs.rochester.edu/nlp/rocstories/(表7)上进行了测试。

表7 Story Cloze Test示例

依据Story Cloze Test语料库中的每个故事都对应一个好的结局和一个坏的结局的特点,试验时我们将每个故事和结局作为多对一蕴含对,结局的好坏作为蕴含对的蕴含标签,结果如表8所示。

表8 不同语言数据集的实验结果

从表8可以看到,层次神经网络在中英文多对一蕴含对上都有较好的效果,同时在Story Cloze Test上的测试结果超过了LSDSem’17 shared task[22]中的三个评测系统的准确率。中文阅读理解在用词和表达方式上的多样性,造成了句子语义的复杂性,因而模型在中文数据集上的效果较低于英文数据集。

4 结论与展望

本文针对阅读理解中常出现的多句—单句的文本蕴含,采用了层级神经网络的处理方法。利用高考现代文阅读理解的选择题选项正误明确的特点,我们通过寻找每个选项的候选句,构造选项与对应候选句的多句—单句的文本蕴含数据集。最终采用多种方法在多句—单句的文本蕴含数据集上进行测试,基于层级神经网络的蕴含识别准确率为58.92%,比将多个句子拼接为一个句子之后采用传统方法和单层LSTM方法的准确率都要高。本文也在英文数据集Story Cloze Test上进行了测试,通过以上的多个实验验证了层级神经网络对于多句—单句的文本蕴含有较好的效果。

对实验结果的进一步分析可知,采用层级神经网络处理多句—单句的文本蕴含准确率有一定的提升空间,同时我们观察数据可知,选项通常使用代词来指代原文中出现的词语,在语料库构造时造成H中代词无法与P中词语对齐的问题,使用指代消解技术对语料库进行预处理可能会提高多句—单句文本蕴含的准确率;其次,由于现代文阅读理解的数目少,导致构造的多句—单句的中文文本蕴含数据集过小,未来考虑增加数据集的数量,且加入更多的人工干预来提高数据集质量。同时在Sentence Encode阶段将来考虑采用Doc2Vector[23]或Tree-structured[24]来进行处理,考虑更丰富的句子级的语义信息。

[1] 任函, 盛雅琦, 冯文贺,等. 基于知识话题模型的文本蕴涵识别[J]. 中文信息学报, 2015, 29(6): 119-126.

[2] 王宝鑫, 郑德权, 王晓雪, 等. 基于文本蕴含的选择类问题解答技术研究[J]. 北京大学学报 (自然科学版), 2016, 52(1): 134-140.

[3] Kim M Y, Xu Y, Goebel R. Legal question answering using ranking svm and syntactic/semantic similarity[C]//Proceedings of the JSAI International Symposium on Artificial Intelligence. Berlin Heidelberg: Springer, 2014: 244-258.

[4] Gómez-Adorno H, Pinto D, Vilarino D. A question answering system for reading comprehension tests[C]//Proceedings of the Mexican Conference on Pattern Recognition. Berlin Heidelberg: Springer, 2013: 354-363.

[5] Sebastian, Galley M, Jurafsky D, et al. Textual entailment features for machine translation evaluation[C]//Proceedings of the Workshop on Statistical Machine Translation. Association for Computational Linguistics, 2009: 37-41.

[6] Lloret E, Ferrández O, Munoz R, et al. A Text Summarization Approach under the Influence of Textual Entailment[C]//Proceedings of the 5th International Workshop on Natural Language Processing and Cognitive Science (NLPCS 2008). 2008: 22-31.

[7] Wang R, Neumann G. Relation validation via textual entailment[C]//Proceedings of the Ontology-Based Information Extraction Systems (Obies 2008). 2008: 26-33.

[8] Yin W, Ebert S, Schütze H. Attention-based convolutional neural network for machine comprehension[C]//The Workshop on Human-Computer Question Answering. 2016: 15-21.

[9] Bowman S R, Angeli G, Potts C, et al. A large annotated corpus for learning natural language inference[C]//Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. 2015: 632-642.

[10] Shima H, Kanayama H, Lee C W, et al. Overview of NTCIR-9 RITE: Recognizing inference in text[C]//Proceeding of NTCIR-9 workshop meeting.Tokyo,2011: 291-301.

[11] Dagan I, Glickman O. Probabilistic textual entailment: Generic applied modeling of language variability[C]//Proceedings of the PASCAL Workshop on Learning Methods for Text Understanding and Mining. Grenoble, France. 2004.

[12] 张鹏, 李国臣, 李茹,等. 基于FrameNet框架关系的文本蕴含识别[J]. 中文信息学报, 2012, 26(2): 46-50.

[13] 刘茂福, 李妍, 姬东鸿. 基于事件语义特征的中文文本蕴含识别[J]. 中文信息学报, 2013, 27(5): 129-136.

[14] 张晗, 盛雅琦, 吕晨,等. 基于短文本隐含语义特征的文本蕴涵识别[J]. 中文信息学报, 2016, 30(3): 163-171.

[15] 赵红燕, 刘鹏, 李茹, 王智强. 多特征文本蕴涵识别研究[J]. 中文信息学报, 2014, 28(2): 109-115.

[16] Rocktäschel T, Grefenstette E, Hermann K M, et al. Reasoning about entailment with neural attention[C]//Proceedings of the International Conference on Learning Representations. 2016.

[17] Liu Y, Sun C, Lin L, et al. Learning natural language inferenceusing bidirectional LSTM model and Inner-Attention[J]. arXiv Preprint arXiv: 1605、09090.2016.

[18] Li J, Luong T, Jurafsky D. A nierarchical neural autoencoder for paragraphs and documents[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing. 2015: 1106-1115.

[19] Tang D, Qin B, Liu T. Document modeling with gated recurrent neural network for sentiment classification[C]//Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. 2015: 1422-1432.

[20] Lipton Z C, Berkowitz J, Elkan C. A critical review of recurrent neural networks for sequence learning[J]. arXiv preprint arXiv:2015,1506.00019.

[21] Mikolov T, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality[C]//Proceedings of the Advances in Neural Information Processing Systems. 2013: 3111-3119.

[22] Mostafazadeh N, Roth M, Louis A, et al. LSDSem 2017 Shared Task: The story cloze test[C]//Proceedings of the Workshop on Linking MODELS of Lexical, Sentential and Discourse-Level Semantics. 2017: 46-51.

[23] Le Q V, Mikolov T. Distributed representations of sentences and documents[J]. Computer Science, 2014, 4: 1188-1196.

[24] Bowman S R, Gauthier J, Rastogi A, et al. A fast unified model for parsing and sentence understanding[C]//Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics. 2016: 1466-1477.

[25] Mou L, Men R, Li G, et al. Natural language inference by tree-based convolution and heuristic matching[C]//Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics. 2016: 130-136.

E-mail: guoxinjsj@sxu.edu.cn

猜你喜欢

单句层级语义
科室层级护理质量控制网的实施与探讨
军工企业不同层级知识管理研究实践
基于军事力量层级划分的军力对比评估
语言与语义
职务职级并行后,科员可以努力到哪个层级
批评话语分析中态度意向的邻近化语义构建
“社会”一词的语义流动与新陈代谢
“吃+NP”的语义生成机制研究
参考答案
2015年《时代英语》高二第1期参考答案