张 迎,王中卿,王红玲
(苏州大学 计算机科学与技术学院, 江苏 苏州 215006)
在信息呈现爆炸式增长的时代,如何从庞大的互联网上获取更有价值的信息成为人们日益关注的重点。自动文摘作为人们高效利用信息的重要手段,一直是自然语言处理领域的一个研究热点。自动文摘是通过对原文本进行压缩、提炼,为用户提供简明扼要的文字描述。根据处理的文档数量,自动文摘可以分为: 单文档自动文摘(Single-document Summarization)和多文档自动文摘(Multi-document Summarization)。根据文摘句选取方式的不同又分为: 抽取式文摘(Extraction Summarization)和理解式文摘(Abstraction Summarization)。
抽取式文摘是目前最主流、应用最广、最容易实现的方法。传统的抽取式摘要主要考虑单词的词频信息,通过计算句子的相似度得分,再对关键句排序,抽取得分高的句子作为摘要[1]。这种方法只考虑单独的字、词等语义信息,并没有考虑结构信息,抽取的摘要的可读性较差。
近年来,随着篇章级语料库(尤其是PDTB[2]、RST-DT[3]、CDTB[4])的不断建设,以及相关国际学术评测(如CoNLL2015、CoNLL2016等)的大力推动,篇章结构分析发展迅速,目前已成为自然语言处理领域最活跃的研究方向之一。篇章是句子层级之上的自然语言单位,篇章结构分析旨在研究篇章内部的结构关系,从整体上理解篇章。篇章主次关系作为篇章结构的一个重要组成部分,一直融合在篇章结构的研究中。篇章的主次关系可分为段落间的主次关系[5]和句子间的主次关系[6],本文研究的篇章主次关系指的是句子间的主次关系。句子间的主次关系研究旨在分析篇章内部的主要内容和次要内容,进而更好地理解篇章的主题思想和展开思路。篇章的主次关系标记主要有3类,center=1: 前一句为核心句子;center=2: 后一句为核心句子;center=3: 两个句子同为核心句子。例如,图1中“|”是句子的分隔符,表示这两个句子在此处被分割开来。可以看出,这两个句子中,前一句是主要内容,后一句是为前一句作解释说明是次要内容。所以它们的主次关系标记为: center=1。如果在抽取摘要的时候给这两个句子标记主次关系标签,则第一个句子的重要性就会被凸显出来,在抽取文档核心句子的时候,第一句就会被格外关注,这样就可以抽取出更能概括文档核心内容的句子。
图1 主次关系示例
本文将篇章主次关系等结构信息加入到自动摘要任务中,以此来指导摘要的抽取。首先,通过一个主次关系标记模型给实验语料标记篇章的主次关系,这里标记的是相邻两个句子间的主次关系。然后,按比例从正文中抽取与参考摘要相似度最高的句子作为正例,其余为负例。最后,在模型构建方面,本文基于神经网络模型构建一个篇章的主次关系预测和文本摘要任务的联合学习模型,同时学习与预测每个句子的篇章主次关系和代表性,从而抽取出文档的候选摘要句。这种方法不仅考虑了词组、短语等语义信息,而且利用了篇章的主次关系等结构信息来指导文本摘要任务,从而抽取出更能概括文档核心内容的句子。实验结果表明,本文提出的方法能有效提高文本摘要的效果。
单文档抽取式摘要是指: 给定一篇文档,通过对原文本进行提炼、压缩,抽取出最能代表文档核心内容的信息作为文档的摘要,其本质是一个排序问题。常用的实现方法主要有: 基于统计学习的方法、基于图模型的方法和基于神经网络模型的方法。
基于统计学习的方法主要是通过手工设计大量的特征,然后从原始文档中抽取出这些特征,并指定一个分类器来学习这些特征,从而通过文本分类的方式来实现自动摘要。在20世纪90年代,随着NLP机器学习技术的出现,Kupiec[7]等开始使用贝叶斯分类器等机器学习的方法进行自动文摘。同年,Cortes和Vapnik提出了支持向量机(Support Vector Machine)算法[8],这种算法在小样本、非线性及高维模式识别中表现出了许多优势,并能够推广应用到函数拟合等其他机器学习问题中,具有很好的泛化能力。Joachims第一次将SVM用到文本分类任务中[9],并在不同的数据集上都取得了较好的分类性能和良好的鲁棒性。
基于图模型的算法主要是在词频的基础上利用各种关联度计算方法计算词项间的关联度,构建相应的无权或加权的网络图,从而抽出文档最核心的句子,在PageRank[10]算法的基础上Mihalcea和Tarau提出了TextRank算法[11],Erkan和Radev提出了LexPageRank算法[12]等。这种算法可以找出文档最中心的主题,但不适合长句子,并且在处理多主题文档时存在较大的误差和局限性。
近几年,基于神经网络模型的自动文摘方法很受欢迎。例如,Kågebäck[13]等采用递归自编码器来抽取摘要,在Opinosis数据集上取得了良好的性能。Kim[14]提出了一种卷积神经网络(Convolutional Neural Network,CNN)短文本分类模型,CNN网络的优点在于能够捕捉局部的相关性,类似于文本中的N-gram。它由输入层、隐层和输出层构成,通过反向传播算法进行参数优化。CNN 在很多自然语言处理任务中可以得到较好的结果,但是由于它需要固定卷积核窗口的大小,不适合序列信息较长的情况,同时对于卷积核大小的参数调节也很烦琐。因此自然语言处理中更常用到的是循环神经网络[15](Recurrent Neural Network,RNN)。RNN可以抓取任一长度序列,并分析长句之间的关联。传统的递归神经网络中,在梯度反向传播阶段,容易出现梯度爆炸或梯度消失的情况。1997年Hochreiter和Schmidhuber提出了一种长短期记忆神经网络(Long Short Term Memory,LSTM)[16],这种网络结构可以解决RNN中的长期依赖问题,让记住长期信息成为神经网络的默认行为。
篇章指由一系列连续的子句、句子或语段构成的语言整体单位[17]。在一个篇章中,子句、句子或语段间具有一定的层次结构和语义关系,篇章结构分析旨在分析出这种结构关系。篇章结构分析的研究成果在自然语言处理领域应用广泛,例如,在统计机器翻译(statistical machine translation)[18]、自动文摘(text summarization)[19-20]、信息抽取(information extraction)[21]和情感分析(sentiment analysis)[22]等领域都取得了一定的研究成果。刘凯[23]提出的基于篇章修辞结构的自动文摘研究,首先从微观角度入手,以篇章单元的主次关系为依据,抽取篇章单元中的主要部分,然后依据宏观的篇章修辞结构,从段落摘要中抽出主要的内容作为整篇文章的摘要,该方法得到的摘要能够更加完整地表达篇章的信息,更加贴近人工摘要。这些应用研究的成果表明,对文本进行更深层次的挖掘,包括对结构和语义信息的深入分析,有助于在已有的抽取式文摘研究上取得新的进展。
基于主次关系的单文档抽取式摘要方法以基于神经网络的单文档抽取式摘要方法为基础,构建一个篇章主次关系预测和文本摘要任务的联合学习模型,同时考虑词组、短语等篇章语义信息和篇章主次关系等篇章的结构信息。本节将从篇章主次关系抽取、基于神经网络的单文档抽取式摘要模型和主次关系与文本摘要的联合学习模型三个方面介绍该方法。
篇章主次关系研究是篇章结构解析的一项结构预测任务: 对于给定的子句序列,通过模型预测出这些子句之间的主次关系。本文的篇章主次关系标记采用的模型是: 基于转移的中文篇章结构解析框架[24],是将篇章树的构建过程看成是一个状态转移路径的搜索过程,将篇章结构解析任务形式化为对给定状态进行分类的问题。
基于转移的中文篇章结构解析将一篇文章经过分句、篇章解析后得到一棵形似二叉树的篇章结构解析树。树中的每个节点包含了该节点的子节点、父节点、该节点所包含子句在文中的句子位置和主次关系标记。
例如,给定一篇文章:
①世界卫生组织发布报告,②指出自杀已经取代难产,③成为女性的头号杀手。④报道称,根据报告提供的数据显示,多年来,难产死亡一直是女性丧命的最主要原因,⑤然而在过去10年,⑥自杀取代难产死亡,⑦成为女性死亡的最主要原因。⑧报告将全球分为美洲、东南亚、中东、欧洲、非洲及西太平洋6大地区,⑨自杀唯独在非洲未有列入5大杀手之内,⑩原因是当地难产和艾滋病死因占绝大多数。在东南亚,自杀占少女死因的比率也较其他死因高两倍。专家分析指出,造成这种结果的原因是当地性别歧视严重。
将这篇文章输入到基于转移的中文篇章结构解析标注的模型中,会依据模型的分句规则得到12个子句,值得注意的是,该模型并非将所有标点都作为句子的边界标识。如第11句“在东南亚,自杀占少女死因的比率也较其他死因高两倍。”这个句子单元中就包含了两个子句。这种分句方式主要是为了保证每个句子单元中都包含较为完整的句子信息,确保篇章结构解析可以顺利进行。具体的分句方式参考文献[25]中的方法。
标注完成将得到如图2所示的篇章结构树。其中,根节点包含整篇文章的内容,非叶子节点表示待分割的句子集,叶子节点表示该节点的子节点不可再分。符号“|”表示句子分割符,标识文档的分割位置。篇章解析树形似一棵二叉树,每个节点通过分隔符分割后得到两个子节点,若子节点不可再分则不在图中显示。逐层分割,直到整篇文档都不可再分时解析完成。
从图2可以看出,该篇章结构树共有6层,表示该篇文档从根节点到叶子节点共经过6次分割。共有11个节点,每个节点中包含该节点的父节点、子节点、该节点句子在文中的句子位置和主次关系标记。加粗部分表示该部分是被主次关系分析为核心的内容,即center=1的前半部分和center=2的后半部分,center=3时前后两部分同为核心,不做加粗标记。可以看出,节点Node1标记为核心的部分基本上可以概括整篇文档的核心内容,这些核心句可以直接抽取出来作为文档的摘要句。这就证明了主次关系标记对我们抽取摘要句具有一定的指导作用。需要指出的是,在节点Node8中,核心句子为“自杀唯独在非洲未有列入5大杀手之内,原因是当地难产和艾滋病死因占绝大多数”,这个核心句显然就不是摘要句,这是因为本文标记的主次关系是微观层面的主次关系,是句子间的主次关系,某个句子在和相邻句子比较的时候被认为是核心句,但在整篇文档中却不一定是能概括整篇文档核心内容的句子。
图2 基于转移的中文篇章结构树示例
为了得到任意两个相邻句子的主次关系标记,我们通过句子位置信息找到该句子在树中的位置,然后从该节点到根节点遍历该树,找到这两个相邻节点的最小公共父节点,最小公共父节点的主次关系标记就作为这两个相邻句子的主次关系标记。例如,要得到第二句“指出自杀已经取代难产,”和第三句“成为女性的头号杀手”的主次关系,首先通过这两个句子在文档中的句子位置,找到它们的最小公共父节点为Node4,则Node4的主次关系标记就为这两个相邻句子的主次关系标记。
单文档抽取式摘要可以形式化地表示为一个文本二分类的问题: 给定一篇文档D,包含句子序列{S1,…,Sn},选择k(k 图3 单文档抽取式摘要流程图 图3中给定的一篇文档D,首先要对它进行去除噪声、分句、分词等预处理,这里的噪声主要是新闻语料中的一些无法用中文汉字表示的标签、符号等。然后把每个分好词的句子单元转换成向量表达的形式,这一步本文是通过生成一个高频词表,用词组在高频词表中的位置来取代该词的中文表示的方法来实现的。接下来,就依次把句子向量输入到一个分类器中,并输出该句子的0/1概率分布P=[P0,P1]。最后,我们把一篇文章的所有句子按P1从大到小排序,选取前k个句子作为候选摘要句。 在基于神经网络的单文档抽取式摘要模型中,我们用一个标准的LSTM神经网络作为分类器。LSTM模型引入了一种称为存储单元的新结构。如图4所示,存储单元主要由四个主要元件组成: 输入门、具有自回归链接的神经元、 遗忘门和输出门。自回归连接的权重为1.0,并确保在禁止任何外部干扰的情况下,存储器单元的状态可以从一个时间步长保持恒定到另一个时间步长。门用于调节存储器单元本身与其环境之间的相互作用。输入门可以允许输入信号改变存储器单元的状态或阻止它。另一方面,输出门可以允许存储器单元的状态对其他神经元产生影响或阻止它。最后,遗忘门可以调制存储器单元的自我重复连接,允许单元根据需要记住或忘记其先前的状态。 图4 LSTM存储单元 然后,计算t时刻,遗忘门的激活函数ft如式(3)所示。 ft=σ(Wfxt+Ufht -1+bf) (3) (4) 最后,利用存储单元的新状态,我们可以计算t时刻输出门的值ht,如式(5)、式(6)所示。 其中,xt表示的是t时刻的神经元输入,Wi,Wf,Wc,Wo,Ui,Uf,Uc,Uo,Vo表示的是权重矩阵,bi,bf,bc,bo表示的是误差项。 传统的神经网络模型的输入只是单纯的句子序列,并没有考虑到篇章的结构信息,由前面的理论分析我们可以知道,篇章结构信息,尤其是篇章的主次关系信息,对于我们选择哪些句子为文档的核心句子,具有重要的指导作用。为了将篇章的主次关系信息加入到文本分类中去,我们利用LSTM神经网络构造了如图5所示的主次关系与文本分类的联合学习模型。 其中si={wi1,wi2,…,win},sj={wj1,wj2,…,wjm}表示相邻的两个句子输入,通过一个高频词表转变为相应的句子向量,然后把这个句子向量输入到LSTM神经网络模型中,得到相应的隐藏神经元向量Hi,Hj,将这两个神经元向量拼接起来得到向量Hall。一方面,Hall可以通过一个全连接层得到相邻两个句子的主次关系分布概率Pc=[P1,P2,P3],cl∈{1,2,3)},其中,cl表示句子的主次关系标记,center=1: 前一句为核心句子;center=2: 后一句为核心句子;center=3: 两个句子同为核心句子。另一方面,Hi、Hj分别与Hall拼接起来得到新的向量Halli和Hallj,Halli和Hallj经过一个全连接层之后得到相应句子是否为摘要的概率分布Pt=[P0,P1],tl∈{0,1},其中tl表示句子是否为摘要的标记,0表示该句不是摘要,1表示该句是摘要。 对于主次关系与文本摘要的联合学习模型,我们的训练目标是最小化交叉熵损失,联合模型的损失函数如式(7)所示。 (7) 其中,PC和PL分别是模型预测的主次关系和摘要句抽取结果,yC和yL是文本的主次关系标记和是否为摘要的标记,θ是模型的参数集,τ是L2正则化的参数,本文使用AdaGrad梯度下降算法进行模型训练过程中的优化。 图5 基于主次关系的单文档抽取式摘要模型 原始数据集为NLPCC2017 Shared Task3评测任务的数据集(1)http://tcci.ccf.org.cn/conference/2018/taskdata.php,其中训练集有50 000篇带有手工摘要的新闻文本,测试集是2 000篇带有手工摘要的新闻文本。数据集文本的平均长度如表1所示。 表1 数据集平均长度统计表 我们使用ROUGE(Recall-Oriented Understudy for Gisting Evaluation)[26]作为我们的评价标准。ROUGE准则是2004年由ISI的Chin-Yew Lin提出的一种自动摘要评价方法,现被广泛应用于DUC(Document Understanding Conference)的摘要评测任务中。ROUGE基于摘要中n元词[(n-gram)]的共现信息来评价摘要,是一种面向n元词召回率的评价方法。基本思想为由多个专家分别生成人工摘要,构成标准摘要集,将系统生成的自动摘要与人工生成的标准摘要相对比,通过统计二者之间重叠的基本单元(n元语法、词序列和词对)的数目来评价摘要的质量。通过与专家人工摘要的对比,提高评价系统的稳定性和健壮性。该方法现已成为摘要评价技术的通用标注之一。 本文主要考虑ROUGE-1(单字组)、ROUGE-2(双字组)和ROUGE-L(最长公共子序列)来评测实验效果。 NLPCC_ONE[27]: 是NLPCC2017年评测任务的第一名的实验结果,也是本文使用的数据集官方公布的最好结果。本文采用此结果作为我们模型性能的参照。 LEAD: 这是本文的baseline模型,因为新闻文本习惯在开篇给出论点,开篇的句子一般都紧扣主题,所以本文取每篇新闻文本的前60个中文字符作为摘要。 PageRank[28]: 是基于图排序的自动摘要算法,使用句子作为图节点,从整个图递归绘制的全局信息来确定图中顶点重要性的一种方式。基本思想是顶点之间的“投票”或“推荐”。若一个句子与众多其他句子相似,那么此句话就可能是重要的。 LSTM: 采用标准的LSTM神经网络作为分类器。进行特征提取(特征表达),最后将训练好的神经元经过一个Dense全连接层,得到文本的0/1概率分布P=[P0,P1],按P1从大到小排序,选取前k个句子作为候选摘要句。 LSTM+Nuclear: 先通过LSTM模型抽取出候选摘要句,再通过查看候选摘要句的主次关系标记,抽取出其中核心的句子。例如,如果相邻两句的的主次关系标记center=1,则认为前一句是核心句子,若center=2则后一句是核心句,若center=3则认为前后两句都是核心句子。 3.4.1 文本预处理 预处理时,首先用正则表达式将原始数据集中的标签、符号等非法字符去除。然后,因为主次关系标记模型的限制,对于文本长度超过 3 000 个字符的文本只保留前 3 000 个字符。之后,从标记好主次关系的文本中,抽取出相邻两个句子的主次关系标记。这里抽取出的句子保留主次关系标记中的分句方式。最后,将正文中的句子依次与参考摘要的句子计算余弦相似度,从正文中选取与参考摘要余弦相似度最高的前15%标记为正例,其余的标记为负例。 3.4.2 统计与分析 为了查看主次关系标记的准确性,我们分别统计了主次关系标记在全文中和在正例文本中的标记占比,如表2、表3所示。 表2 全文中主次关系标记占比(%) 表2为训练集和测试集的全文中3类主次关系所占比例。其中,center=1的占比最少,只有14%左右。其次是center=2,占了三分之一左右。center=3所占的比例最高,占了一半左右。 表3为训练集和测试集的正例文本中三类主次关系所占比例。因为主次关系标记的是前后两个句子之间的关系,所以有些语句的主次关系标记可能会有两种情况,例如,句子对{s1,s2}的主次关系标记为: center=1,此时每个句子s1和s2被认为有center=1标记;句子对{s2,s3} 的主次关系标记为center=3,此时句子s2和s3被认为有center=3标记;若s2刚好被标记为正例,则在统计正例中主次关系标记占比时,s2既有center=1标记,又有center=3标记。 表3 正例中主次关系标记占比(%) 与表2对比我们可以发现,正例中center=1和center=2的比例明显上升,这说明,我们选取出来的正例文本和主次关系标记模型标记的重要文本在很大程度是吻合的,这进一步证明了,在抽取式摘要中加入篇章的主次关系信息,可以抽取出更能代表文档核心内容的句子。 3.4.3 实验参数设置 训练集用的是 10 000 篇带有手工摘要的新闻文本,测试集是 2 000 篇带有手工摘要的新闻文本。词表取的是前 20 000 个高频词。 实验模型的相关参数如表4所示。 表4 实验参数设置表 本文baseline采用的是每篇文本的前60个中文字符作为摘要。因此,为保证评测结果的公正性和有效性,最终用于评测的摘要是候选摘要句的前60个中文字符。 如表5所示,NLPCC_ONE是本文使用的数据集在NLPCC2017 Shared Task3任务中获得第一名的评测结果,我们采用其ROUGE-2的结果作为本文实验结果的参照。LEAD为本文实验的baseline,即取每篇文档的前60个中文字符作为摘要。此外,PageRank模型、LSTM模型和LSTM+Nuclear这三个模型作为对比实验,Ours模型是本文采用的主次关系与文本摘要的联合学习的模型。 表5 实验结果(%) 分析表5实验结果可以得到: 首先,本文采用的对比实验的结果均超过了baseline的结果,这说明本文采用的单文档抽取式摘要方法均是有效的。其次,LSTM+Nuclear的实验结果超过了仅仅使用LSTM模型的实验结果,这说明本文标记的主次关系对于抽取出更能代表文档核心内容的句子有一定的帮助。但是由于本文采用的主次关系是句子间的主次关系,微观层面上主要的句子有时并不代表在整篇文档中也是核心的句子。所以通过LSTM模型抽取摘要句再选取其中主要的句子,这种方法存在一定弊端。最后,本文采用的主次关系和文本摘要联合学习的模型效果最好,该模型在考虑了词组、短语等语义信息的同时,利用了篇章的主次关系信息来指导文本摘要任务,抽取出更能代表文档核心内容的句子。由前文的分析可知: 本文通过余弦相似度标记的正例文本,即整篇文档的核心句子,和主次关系标记的重要文本,即微观层面上的主要句子,二者在很大程度上是吻合的,这说明我们将两项任务联合学习的时候,二者会有一个相辅相成的过程。实验结果表明: 本文模型的ROUGE-2得分比baseline提高了6个多百分点,比单独的LSTM模型提高了约2.3个百分点。这充分说明了篇章主次关系和文本摘要联合学习的模型可以得到更高质量的文本摘要。 此外,本文的实验结果虽然已经超过了该数据集官方评测第一名的结果,但优势并没有很明显。与以下两个原因有关: 一是本文采用篇章主次关系标记模型的分句方式。如2.1节中所述,基于转移的中文篇章结构解析模型并非将所有标点都作为句子的边界标识,即一个句子单元中可能包含多个子句,因此导致抽取出的摘要句冗余度较大。二是抽取式摘要按照预测句子的分布概率从高到低抽取句子,容易导致抽取出的摘要句中存在相似度特别高的现象。在规定摘要长度较短的情况下,该现象导致抽取出的摘要句概括性不高。所以本文做了一个对候选摘要句去冗余的实验,在按照预测句子的分布概率从高到低抽取摘要句的时候,后一个句子在被抽取之前分别与已抽取的句子计算余弦相似度,若余弦相似度大于0.75或句子长度小于4时舍弃该句子。 如表6所示,通过该方法去除冗余后的实验结果在原有基础上有了一定的提升,PageRank和LSTM模型的提升效果最好,均提升了2个百分点左右,说明PageRank和LSTM模型抽取出来的摘要句中存在较多的冗余信息和重复信息。而主次关系与文本摘要联合学习模型的结果只提升了0.2个百分点,也从侧面证实了本文采用的基于主次关系的单文档抽取式摘要模型抽取出来的句子在不去冗余的情况下已经具有很高的概括性。 表6 去冗余后实验结果(%) 篇章的主次关系研究,对于更好地把握篇章的主题思想、主要内容和展开思路具有很好的指导作用。本文提出了一种基于篇章主次关系的单文档抽取式摘要方法,构建了篇章主次关系和文本分类的联合学习模型,在考虑词组、短语等语义信息的同时,利用篇章的主次关系等结构信息指导文本摘要任务,从而抽取出更能代表文档核心内容的句子。实验结果表明,与传统的单文档抽取式摘要方法相比,该方法在ROUGE值的评测上有了较大的提升。在接下来的工作中,一方面考虑提高篇章的主次关系标记精度,争取让篇章主次关系在文本摘要中发挥最大的指导作用。另一方面,可把篇章的衔接关系等修辞结构信息加入到文本摘要任务中,进一步提高文本摘要句的衔接性和可读性。2.3 主次关系与文本摘要的联合学习模型
3 实验与评价
3.1 实验数据
3.2 评价方法
3.3 对照实验
3.4 实验设置
3.5 实验结果及分析
4 结束语