LDA 主题模型可以通过潜在的主题关系将看似毫无直接联系的文档中的词项与文档联系起来,对词项进行很好的分类。但是,其过程采用的是词袋模型的方法,词袋方法未能考虑词与词之间、句子与句子间的顺序关系。同时,TextRank 算法是一种可以处理文本的基于图的排序算法,两者对于文本摘要的提取都有一定的局限性,将 LDA 主题模型与 TextRank 算法相结合用于设计和实现自动摘要。
LDA 主题模型对处理的文档语料进行了词袋假设,这样会出现以下问题:
(1)在生成句子概率模型时,将句子视为同等概率发生事件,没有将句子的先验概率对模型造成的影响考虑进去;(2)不能很好地考虑文档间的结构关系,比如同一文档中句子和文档、词项和句子所在的位置等影响。基于图模型的TextRank 算法恰好可以结合文档的全局信息进行判断和计算节点权重,而不仅仅是依赖于其中几个节点有限的信息。这样在同 TextRank 算法相结合时,需要在计算句子权重过程中充分考虑词项之间、句子之间或者词与句子之间的全局关系。将两种算法相结合,恰好可以弥补 LDA 模型的不足,更好的对句子排序。
主要结合过程如下:
(1)主题模型生成中词汇、句子的概率可以由以下两式得到:
公式 3-1 中:其中 k 为给定主题的个数,需要提前给定,p(w|z)为词项 w 在主题 z 中的概率分布,而 p(z |d)表示主题 z 在文档中的布。p(w|d)为词项 w 在文档中的权重。公式 3-2 中的 n(w,s)代表词项 w 在句子 s 中出现的次数。p(s|d)为词项 w 所在句子 s 在文档中的概率分布,即句子在所属文档 d 中的重要性。
TextRank 排序算法利用了 PageRank 网页排序的迭代思想对文档中的句子打分:
公式 3-3 中 d∈[0,1]称为阻尼系数,每个节点转移到其他节点的概率为(1-d),本实验中设置 d 为 0.85,公式从左到右依次为 ws(vi)表示节点 i 的权重,第一个求和号表示每一个句子对所在文档的贡献度,分母的表示文本中相对应的部分句子的权重之和,ws(vj)表示上次迭代得到的节点 j 的权重。在结合了 LDA 主题概率模型对句子权重的影响后,得到新的节点权重迭代公式如下:
上式 3-4 中 Ti(vi)为节点 i 的主题贡献度,Tws(vi)为改进后节点 i 的权重值,α和β为大于 0 的权重因子且有α+β=1,经过多次试验,最终将权重因子α,β选取为 0.5 用于实验。即均衡考虑了主题概率以及句子节点对该点的影响概率,这样得到的句子权重更具说服力。
在计算句子权重过程中充分考虑词项之间、句子之间或者词与句子之间的全局关系。将两种算法相结合,恰好可以弥补 LDA 模型的不足,更好的对句子排序。
本文生成中文多文档自动摘要的主要实验流程如下图 3-1 所示:
摘要生成技术路线:本文所采取的是按照单文档自动摘要的生成思路,可以针对多文挡集合利用单文档摘要技术生成多文档文本摘要,具体的思路是:将同一主题下的多个文档合并为一个大的文档文本,经过分词、去除停用词、词性标注等预处理,然后采取某种算法对文档中的句子进行打分排序,最终按照一定的压缩比抽取得分靠前的部分句子作为文本的摘要句。
本文在基于统计的基础上提出结合 TF-IDF 以及语义信息的计算方法,具体过程如下:
1)基于 TF-IDF 算法计算句子相似度
TF-IDF 的基本原理是“某个句子中,其中所包含的每一个词语的重要性与该词语所在句子中出现的次数成正比,同时与出现该词语的其他句子数成反比例关系。”具体表达式为:
其中 TF 表示词 i 在句子中出现的概率(词频),IDF 表示该词 i 在其他句子中的出现情况并且取总句子数除以包含该词的句子数的商的对数,利用 TF、IDF的乘积得到词项 i 的权重。 可以看出,TF-IDF 将句子中的重要性以及在句子集中的普遍性综合考虑来得到,TF-IDF 值较高的词项与句子的相关度越大,重要性也就越高。因此,如果两个句子 si 和 sj 中对应的词项 wi 和 wj 的 TF-IDF 值分别在两个句子中最高,那么 si 和 sj 的向量形式就可以分别表示为 si=(wi),sj=(wj),然后利用余弦相似度公式计算 si 和 sj 相似度,相似度值越大,两个句子越相似。
(2)基于句子间的语义相似度
基于语义信息的相似度计算方法,考虑了词义、词语间的同义词、近义词等深层次的语义关系,相对来说,它使得相似度的准确率得到了一定的改善和提高。本文使用卷积神经网络(Convolutional Neural Network,CNN)和词向量相结合的方式来计算文本中句子间的语义相似度。具体计算过程如图 3-10:
本文提出一种综合考虑以上两种方法的相似度计算,因此,将各个方法的优点相结合,得到一种更加合理的相似度算法。
经过前面几个步骤已经对文档中的句子进行了比较合理的打分,但是,仍未将一些特殊句子进行单独考虑。
1)句子与标题的关系
2)句子的位置
3)特殊句子:特殊句子:在中文文档中如果存在某一个段落且仅仅只由一个单独的句子组成,那么该段落在文档中所起的作用就比较突出,可能起承上启下或者过渡的作用。这些句子一般比较符合摘要的标准——简短、精炼、信息全面。
4)句子的长度:新闻摘要是对新闻事件精简的表达,要求摘要的内容简明扼要,同时要考虑句子中含有的信息量。通常较短句子(句子中词的个数少于六个)包含的信息量会很少,这些句子就没有保留的必要,因此选取的句子在预处理过程中,利用正则表达式去除掉短句子对新闻摘要的干扰。此时,定义文档di 中的句子 s 的长度特征 L(s)为:
公式 3-10 中|l(si)|代表句子 s 中所含词的个数,lavg(di)代表文档 di 中每个句子长度的平均长度。
对以上句子各个特征值经过线性加权求和,可得到句子的最终权重为:
本实验中参数λ1,λ2,λ3,λ4 分别取到{0.2,0.4,0.2,0.2}实验效果最佳。
详细阐述了 LDA 主题模型和 TextRank 算法相结合过程:首先我们通过建立主题模型得到词项在文档中的分布 p(w|d),根据公式 3-2 得到句子的概率分布 p(s|d);第二,在 TextRank 算法构建无向加图时,本文在基于统计的基础上提出结合 TF-IDF 以及语义信息的计算方法,使边的长度更加准确;第三,在计算节点最终权重时,将主题模型产生的结果考虑进去,句子(节点)主题概率大的优先利用公式 3-4 迭代计算其权重。第四,在第三步得到的句子得分基础上,综合考虑句子与标题之间的关系 Sim(si,sj)、句子的位置 P(si)、特殊句子 w(s)和句子的长度 L(si),进行加权求和,最终得到比较合理的句子得分。
对候选摘要句打分并进行排序,同时处理冗余的信息,目的是使得最终的摘要能够在叙事结构、可读性等方面得到提高。
本文所采用的新闻语料,新闻事件的叙述结构一般都是按照事件发生的先后顺序所描述的,比如我们实验中所使用语料中的关于地震的例子,在通过算法处理之后,得到了得分最高的前几个句子为“据悉,6 级以上地震强度就足以造成一定程度的破坏”;刚一出现地震的征兆,阿富汗首都喀布尔的居民就跑到了室外;塔吉克斯坦首都杜尚别的地震发生在莫斯科时间下午 3 时,震级为 6 级”,很明显这三个句子在时间上没有按照正常顺序列出。这样导致我们不能很好地理解信息。因此,在挑选摘要句时,句子的排序比较重要。
(1)如果两个句子之间存在一些可以直接比较时间的关键信息如日期,那么这两个句子的先后顺序直接由这些关键信息决定;
(2)如果两个句子都来源于同一文档中,那么这两个句子的排序按照自身在文档出现的次序排序;
(3)如果句子 a 和句子 b 属于不同文档 D1 和 D2,那么进行具体分类:a).根据句子相似度判断:如果句子 i 和另一文档中的句子 j 的相似度较大,那么认为句子 i 和句子 j 的排序保持一致;b).根据句子所处位置判断:在确定句子 i 的情况下,如果句子 i 后面的句子j 排在句子 m 之前的句子 n 之前,那么句子 i 应排在句子 m 之前;
(4)对于余下的候选摘要句,也是通过比较相似度的办法,利用公式 3-7余弦相似度公式计算,分别得到文档与句子的相似度值,与档相似度值较大的句子靠前排列。
消除冗余方法最常用的两种方法有:(1)基于词语共现的信息冗余处理:(2)基于语义层面的信息冗余处理方法。目前,比较流行的去除冗余方法是 MMR,其最初的目标是为了提高信息检索系统的性能,主要是它可以降低搜索引擎所返回信息的冗余度。比如搜索引擎,往往可以通过输入一个关键词甚至一个字,搜索引擎便会随之返回大量的相关内容,这些内容当中就包含大量的冗余信息。这种思想恰好符合多文档自动摘要的初衷——减少了冗余又提高了摘要内容的多样性,使得到的摘要更加简洁、全面且与主题具有更高的相关度。直观和简单是该模型的最大优点。
MMR 针对搜索引擎中的查询与文档关系如公式 4-2:
MMR 值的大小可以衡量主题多样性,D,Q,R,S 都为句子集,其中,D 表示当前文档,Q 表示当前查询的关键信息,用在自动摘要中可表示为文档集合的主题,R\S 表示候选摘要句的集合,S 表示摘要句的集合。λ是一个在0 到 1 之间的调节参数,本实验中取 0.5。其基本思想与应用在 IR 系统中的 MMR一样:主要的目的是为了使得生成的摘要与用户所查询的内容相关度变高,最终达到降低冗余的效果。
在应用于摘要时,将 Sim1(Di,Q)改成前面得到的句子 i 的得分 Score﹙Di)得到的公式如下:
公式 4-3 中 Score(Di)为句子 i 的权重,Sim(Di,Dj)为句子 i 和句子 j 的相似度,两个句子的相似度值越大,那么这两个句子的相关性也就越大,摘要句中句子的多样性就越小。
基于 MMR 的摘要句选取处理过程如下:
(1)输入候选摘要句集合;
(2)通过计算每个候选摘要句与所取文档之间的相似度,将相似值最高的一个句子作为第一个摘要句存入摘要中,同时在候选摘要句中去除该句;
(3)利用公式 4-2 对于剩余句子的 MMR 值的大小进行计算,如果一个句子的 MMR 值大于给定的阈值,那么该句可作为摘要句,同时在候选摘要句中去
除该句;
(4)循环步骤 3,直到摘要的长度达到规定的长度为止,结束该过程。
(5)输出摘要句集合。
为了使得生成的摘要简洁且可读性强,因此本章主要从两方面叙述了摘要句的处理:摘要句的排序和冗余信息的处理,首先制定了一个排序的准则,利用这个准则对候选摘要进行处理并得到了 Spearman 秩相关系数,结果表明根据定义的准则得到的句子排序比较合理。然后利用 MMR 技术对排完序的摘要句进行处理,最终得到了比较理想的摘要。
首先,对实验所使用的哈工大信息检索研究中心提供的多文档自动摘要语料进行了分词、去停用词以及词性标注等预处理工作;
其次,分别实现了基于 LDA 概率主题模型的中文多文档自动摘要的提取和基于 TextRank 算法的中文多文档自动摘要的提取;
再次,对经典的 TextRank 进行了如下改进:在进行边的构建时,结合了基于语义的相似度计算方法和基于 TF-IDF 算法计算句子相似度得到了句子边的值。得到了同一主题下的多篇新闻报道的摘要。
最后,在迭代计算节点权重的时候,将 LDA 主题模型得到的句子概率考虑进去,得到新的迭代公式,从而获得基于 LDA 和 TextRank 相结合的中文多文档自动摘要,并且对得到的摘要句进行了排序处理。通过多文档摘要评价方法对提取到的摘要进行对比实验,最终,得到了摘要句的 ROUGE 值、准确率 P、召回率 R、F 值等指标。
最终的实验结果表明,本文提出的中文多文档自动摘要提取方法,相比较于基于 LDA 主题模型的中文多文档自动摘要和基于 TextRank 算法中文多文档自动摘要提取方法,在各项指标下都得到了一定提高,而且得到的摘要较为客观。
(1)当下中文多文档语料库的严重不足。加之,目前仍没有一个完整的中文摘要评价系统,本文实验使用的数据语料量稍显不足,下一步可以使用搜狗语料库等大规模的语料进行实验,另一方面可以构造一个完整的评价系统。
(2)本文使用的摘要生成方法依然是基于原文句子抽取摘要句的方法,而基于理解的摘要效果要更加优秀。因此,将来的重点是考虑何优化算法去打破句子结构从而得到基于理解的文本摘要。
(3)本文得到的候选摘要句之间的衔接、连贯性、可阅读性、完整性等方面有待进一步的处理和提高。