周 懿,褚晓敏,朱巧明,蒋 峰,李培峰
(苏州大学 计算机科学与技术学院,江苏 苏州 215006)
随着自然语言处理的发展,其处理信息的粒度呈现出由细到粗的变化趋势。具体而言,其处理的对象已经从字、词等细粒度单元拓展到句子等较粗粒度的单元上。篇章作为比句子更大的一种文本分析粒度也愈发受到人们的重视。
篇章分析的主要任务是挖掘篇章单元之间的内在结构和语义关系,此处的篇章单元可以是句子、复句、句群或段落等。篇章分析分为微观和宏观两个层面,微观层面主要研究段落内的句子和连续两个句子间的关系,而宏观篇章分析主要研究段落及更高层次的段落群和章节之间的关系。同词法、句法分析一样,篇章分析作为篇章级的基础研究,能够对更高层次的自然语言处理问题,如问答系统[1]、情感分析[2]、信息抽取[3]等提供更加有效的支撑。
在篇章分析的任务中,篇章关系识别,尤其是隐式篇章关系识别始终是一个重难点。在宏观篇章关系识别的任务中,由于汉语文章的写作方法,段落与段落间很少出现标识宏观语义联系连接词。即使出现连接词,也很难将它们和标识段内关系的微观连接词区分开。因此,中文文本的宏观篇章关系的识别均是隐式关系的识别,而且相对于一般的隐式篇章识别,它有着论元长度长、论元间关系复杂的特点,因而难度更大。本文以CTB 8.0[4]中的一个篇章(chtb_0010.nw.raw)来说明宏观篇章之间的关系,如例1所示。
分析例1的篇章可知,整个篇章的主题就是标题所示的“中国进出口银行在日本获债券信用高等级”这一事件,因而(1)是本文的主题段落。(2)则一方面重述了(1)所陈述的事实,同时附加了信息“与日本评级机构内部对中国主权信用等级的评级一致”,并未细化本文的主题内容,只是对(1)起到补充说明的作用。(3)、(4)、(5)段描述(1)中所述事件的详细过程,对段落(1)进行了解说。而在(3)、(4)、(5)段内部,(4)说明了(3)中采取的“向日本评级机构提出评级申请”这一行为的目的,(5)段说明提出申请后进出口银行所采取的一系列行为,与(3)中的内容有着明确的时间上的先后关系。由以上分析,我们可以得到如图1所示的篇章间的宏观结构。
例1 chtb_0010.nw.raw内容
图1 chtb_0010.nw.raw宏观结构
本文提出了一种基于词向量的宏观篇章语义表示和一组在宏观篇章关系识别中适用的特征,并给出了一个基于该特征的宏观篇章关系识别方法。
目前篇章关系识别的任务在宏观层面上的研究尚属空白,但在微观层面上已经有了比较广泛的研究,研究主要涉及基于修辞结构的篇章树库和基于连接依存树的篇章树库这两类语料资源。
修辞结构篇章树库(RST-DT)[5]是以Mann和Thompson[6-7]提出的修辞结构理论(RST)为理论支撑的篇章树库。RST提出了“命题—证据”的关系模式,其中,命题是涵盖了作者陈述的观点的篇章,其观点读者不一定认同,而证据是为命题提供支撑的篇章。据此,RST-DT树库标注了16种关系大类和78种小类。同时,还标注了篇章单元,“核—卫星”模式的主次类型、篇章结构等,将文本组织成了层次化的篇章结构树。
在RST-DT树库上,Hernault[8]等提出了HILDA分析器,HILDA分析器使用两个支持向量机分别进行篇章单元识别和主次—关系标签标注,实现了一个自底向上构建自动篇章树的框架,在篇章关系识别的任务上得到了50.90%的F1值。Joty[9-10]等认识到句内和句间的关系分布上有差异,使用了两个动态条件随机场模型针对句内和句间关系分别建模,并使用动态规划算法对篇章树的构建进行优化,在篇章关系识别的任务上得到了55.73%的F1值。Feng和Hirst[11-12]认识到篇章结构对于关系识别的重要性,提出了先识别篇章结构再识别篇章关系的两步走策略,使用每组两个的两组线性条件随机场模型,在篇章关系识别上获得了58.20%的正确率。Wang[13]等使用基于转移的方法将篇章树构建转化成shift-reduce序列,提出了先标注结构—主次,再进行标签标注的两步模型,在篇章关系识别上获得了59.70%的正确率。
相比修辞结构理论,基于连接依存树的体系借鉴了“谓词—论元”的模式,凸显了连接词的作用,以连接词为核心标注与之相关的篇章单元,依据有无连接词将篇章关系分为显式篇章关系和隐式篇章关系,代表性的语料资源有宾州篇章树库(PDTB)[14],在汉语上有汉语篇章树库(CDTB)[15]等。
在PDTB上,Lin[16]等探索了各种上下文特征、词对特征、句法特征等,对隐式篇章关系进行识别,得到了40.20%的正确率。Park[17]等通过特征集优化算法对特征进行选择,分类的性能有所提高。Qin[18]等尝试将对抗生成网络用于篇章分析,构建了对抗生成模型来从隐式篇章关系中获得包含隐藏连接词的段落表示,获得了44.61%的正确率。
在CDTB上,李艳翠[19]等构建了基于连接依存树的汉语篇章分析平台,在微观篇章关系识别上,同时考虑显式和隐式篇章关系,在句内和句间的分类任务上分别达到了78.40%和69.60%的正确率。Kong[20]等建立了一个端到端的篇章结构分析器,在“解说”“并列”“因果”三大类的分类上分别取得了51.80%、85.80%、57.10%的F1值。
宏观篇章分析的任务在国内的研究还处于起步阶段。蒋峰等[21]、Chu[22]等在宾州汉语树库(CTB)的基础上标注了语料的宏观结构,形成了汉语宏观篇章树库(MCDTB)。
MCDTB以段落为基本篇章单元,使用自底向上的方式对段落及段落以上的篇章从篇章主题、段落主题、篇章摘要、篇章结构、篇章主次、篇章关系等方面进行了标注。总共标注了720篇文章的2 870个关系。在类别上,MCDTB将这些关系分为“解说类”“并列类”“因果类”,然后进一步细分为15个小类,具体分布如表1所示。
表1 MCDTB语料库中宏观关系类型分布
本文进行的任务是在MCDTB上进行三个大类的划分。依据MCDTB的标注方式,本文将篇章结构树的结构视为已知条件进行关系分类。由于MCDTB中的关系分为二元关系和多元关系,在本文中,二元关系表示为一个元组([Arg1,Arg2],Label),而多元关系表示为([Arg1,Arg2,…,Argn],Label)。参照RST-DT上的一些研究,本文将多元关系以右连接的方式转化为二元关系,例如对于多元关系([a,b,c],Label),转化之后为([a,c],Label),([b,c],Label)两个元组。最终问题转化为对二元关系进行“解说类”“并列类”“因果类”的三分类问题。
由于宏观篇章分析分析的是段落及更高层次的篇章单元之间的关系,致使在进行微观篇章分析时常用的语法、句法信息很难被有效利用。单个词和词性相对宏观篇章单元而言粒度过小,难以表示篇章本身的语义和篇章之间的语义关系。本文认为在宏观篇章分析的时候应当考虑粒度更大的特征,提出了一种基于词向量的宏观篇章单元表示方法和一组用于宏观篇章关系识别的特征。
基于词向量的宏观篇章单元表示方法通过词向量训练算法训练得到词向量模型WV,从中获取篇章单元中每个词的词向量WVi,再通过式(1)计算得到整个篇章单元的表示。
(1)
其中,W是篇章单元中所有词的集合,WVi是W中第i个词在词向量模型WV中的表示。N表示篇章单元中词的数量。
考虑到目前常用的词向量算法中,Word2Vec[23]能很好地表示词语的局部信息,而GloVe[24]同时考虑了局部信息和全局词共现信息,正与宏观篇章关系识别任务中既要考虑两段落间内容的关系,同时统筹考虑全文主题的要求相一致,本文通过式(2)得到两种词向量间的差异,以表示与该词相关的全局信息,最后通过结合篇章的局部表示和全局信息得到式(3)为篇章单元最终的向量表示。
其中,GloVei和Word2Veci分别表示第i个词在GloVe模型和Word2Vec模型下的表示,λ是全局信息的权重参数。
在宏观篇章的关系识别任务上,目前还没有可供参考的研究,在结构特征上,本文整合了蒋等[21]在宏观篇章主次识别时使用的和Hernault的HILDA[8]中做微观篇章分析时使用的特征中在宏观篇章识别关系的任务上最有效的特征集,并把Feng[12]等在后剪辑时使用的节点所处的深度信息也作为结构特征来使用。
上述三人的工作在将原来的篇章结构树转化为二叉树后不再考虑转化前的多叉树的结构,本文认为树本来的结构对于篇章关系的分类,尤其是对并列类和其他两类的区分有着至关重要的作用。因此将二叉化前树的结构也作为结构特征来使用。
基于上述讨论,本文最终使用了如表2所示的5组特征,其中,基础组织结构特征是蒋、Hernault、Feng等先前的研究中使用的特征,originalStructure是二叉化前树的结构特征,Vecw2v是使用Word2Vec训练的仅考虑局部信息的宏观篇章语义表示,Vecglobal是仅考虑全局信息的宏观篇章语义表示,Vecw2v+golbal是加上了全局信息补正之后的宏观篇章语义表示。
表2 本文使用的特征
本文使用Python的sklearn包提供的SVC分类器[注]http://scikit-learn.org,参数均使用默认值,篇章单元的词向量表示使用中文维基语料,经由Word2Vec和GloVe训练成50维词向量,训练时窗口大小为5。数据集大小为MCDTB的全部720篇文章,二叉化后共3 265条关系。
考虑到样本集相对较小,实验采用5倍交叉验证的方式,将720篇文章按段落数平分为5份,如有58篇7段的文章,则给每个样本集11篇,再将剩下3篇随机分派给3个样本集。然后将5个样本集中的一个作为测试集,其他作为训练集,共进行五次实验。在训练集1中,又将其划分成5份,使用其中4份作为训练集,一份作为验证集,进行参数选择,最终将式(4)中的全局信息权重λ调整为2。
本文选取5组特征集组合来进行实验,基准系统使用表3中的基础组织结构特征,第2组在基准系统的基础上附加二叉化之前的结构树特征originalStructure,第3、4、5组分别在基准系统的基础上附加词向量特征Vecw2v、Vecglobal和Vecw2v+global,第6组同时使用基础组织结构特征,加上全局信息补正的词向量特征和二叉化之前的结构树特征。
本文使用的测评指标为正确率(Accuracy)、准确率(Precision)、召回率(Recall)和F1值(F1-Score),其中每个类别的测评指标按照标准的正确率、准确率、召回率和F1值的计算公式计算,整体性能的测评指标分别由式(4)~式(7)计算所得。
其中,TP表示5次实验中分类正确的样本总数,N表示样本集所有样本的总数,Precision(c)、Recall(c)、F1-Score(c)分别表示类型c的准确率、召回率和F1值,support(c)表示样本集中属于类型c的样本数量。
从表3中可以看到,使用了特征集中所有特征的第六组实验相比基准系统在正确率、准确率、召回率、F1值上分别有了4.08%、6.27%、4.08%和4.17%的提升,在6组实验中4项指标均达到了最优。
表3 实验结果
从表3中,1、2两组实验结果的对比和1、3两组实验结果的对比可见本文提出的二叉化之前树的结构特征以及宏观篇章的词向量表示对于宏观篇章的关系识别均有积极作用。而从3、4、5三组实验的对比中则能看出全局信息和局部词向量信息间的相互补充。
本文还对特征集2和5的两个模型的预测结果进行了配对样本t检验,结果显示两个模型具有显著差异(p<0.01),说明二叉化前树的结构特征和词向量表示的宏观语义分别从两个层面对基准系统做出了优化。为探究本文提出的两个特征分别对基准系统在哪几个方面进行了优化,本文取出五折交叉验证实验中的一组,在这组样本上,6个特征集在3个类别上的具体表现如表4所示。
对比表4中的实验数据,可以得出以下结论:
(1) 对比1、2两组实验结果可知,二叉化前树的结构主要起到了提高解说类召回率和并列类准确率的作用,即减少了解说类中误分到并列类中的样本。这是因为并列类中包含许多多元关系,而解说类中以二元关系为主。
表4 5组特征在测试集2上的实验结果
(2) 对比1、3两组实验结果可知,词向量表示的宏观语义提高了因果类的召回率和解说类的准确率,使得很多因果类关系从解说类中区分出来,这是因为因果类中的关系具有更强的语义上的连贯性,本文提出的宏观语义表示方法表达了篇章的语义信息,对于识别因果类关系有帮助。
(3) 对比3、4、5三组实验可知,结合了全局信息和局部信息的模型比起单独使用其中一个取得了更好的效果。结合的模型一方面保持了全局信息对因果类关系的识别率,另一方面进一步提高了并列类识别的正确率,说明局部语义和全局信息间有着互相补充、互相约束的关系。
同时,表4还反映出在不同的类别上,本文提出的模型表现的差异也较大。即使在最佳的第5组中,因果类的表现仍是比较差的。究其原因,这一方面是因为样本集不平衡,因果类的样本数相较其他两类少很多;另一方面,从上述分析也可看出,因果类关系对于语义信息极为敏感,就其中占比最多的背景关系而言,与解说类关系的区别仅在于是对事物本身的属性进行解说,还是对事物相关的环境要素进行解说,是很难通过仅由词汇集成的语义来完全区分的。
本文提出了一种基于词向量的宏观篇章语义表示方法和一组适用于宏观篇章关系类型识别的结构特征,并在MCDTB语料库上进行了一系列实验。实验结果证明,在宏观篇章关系识别的任务上,本文提出的二叉化前树的结构特征提高了解说类和并列类关系的区分度,而基于词向量的宏观篇章表示方法提高了解说类和因果类关系的区分度,在两个不同的维度上为系统做出了贡献。在将来的工作中,一方面我们将进一步探究宏观篇章的语义表示,寻找类似于微观篇章分析时的句法信息等更高层面的宏观语义特征,另一方面将寻找方法解决样本集不平衡带来的问题,并在此基础上开展更细粒度的小类识别工作。