文本摘要技术是利用计算机自动实现文本分析、内容归纳和摘要自动生成的技术。
文本自动摘要的基本分类
文本自动摘要的分类方法有很多,根据原文语言种类划分,可以分为单语言照耀和跨语言摘要;根据输入文本的数量划分,文本摘要技术可以分为单文档摘要和多文档摘要;根据文摘和原文的关系划分,可以分为摘录式(extraction)文摘和理解式(abstraction)文摘。摘录型文摘由原文中抽取出来的片段组成,理解型文摘是对原文只要内容重新组织后形成的。
文本自动摘要的基本步骤
一般来说,自动文摘过程包括三个基本步骤:
1.文本分析过程:对原文进行分析处理,识别出冗余信息;
2.文本内容的选取和泛化过程:从文档中辨认重要信息,通过摘录或概括的方法压缩文本,或者通过计算分析的方法形成文摘表示;
3.文摘的转换和生成过程:实现对原文内容的重组或者根据内部表示生成文摘,并确保文摘的连贯性
文摘的输出形式依据文摘的用途和用户需求确定。不同的系统所采用的具体实现方法不同,因此在不同的系统中,上述几个模块所处理的问题和采用的方法也有所差异。
文本自动摘要的基本问题
在单文档摘要系统中,一般都采取基于抽取的方法。而对于多文档而言,由于在同一个主题中的不同文档中不可避免地存在信息交叠和信息差异,因此如何避免信息冗余,同时反映出来自不同文档的信息差异是多文档文摘中的首要目标,而要实现这个目标通常以为着要在句子层以下做工作,如对句子进行压缩,合并,切分等。另外,单文档的输出句子一般是按照句子在原文中出现的顺序排列,而在多文档摘要中,大多采用时间顺序排列句子,如何准确的得到每个句子的时间信息,也是多文档摘要需要解决的一个问题。
正如前面所说,自动文摘过程包含三个基本步骤,实现这些基本步骤的方法可以使基于句子抽取的,也可以是基于内容理解的。无论哪种方法,都必须面对三个关键问题:
1、文档冗余信息的识别与处理
2、重要信息的辨认
3、生成文摘的连贯性
文本自动摘要的评价
人工评价
一千个读者,有一千个哈姆雷特
不同的人理解一篇文档会有很大的不同,基于人工评价的方法有类似于评价开放的文科辨析题目答案一样,需要从答案中寻找一些所谓的要点,计算要点的覆盖率,打分。人工评价结果在很大程度上都是可信的,因为人可以推理、复述并使用世界知识将具有类似意思但形式不同的文本单元关联起来,更加灵活一些,但是时间成本太高,效率太低。
自动评价
计算机评价效果,需要给定参考摘要作为标准答案,通过制定一些规则来给生产的摘要打分。目前使用最广泛的是ROUGH系统(Recall-Oriented Understudy for Gisting Evaluation),基本思想是将待审的摘要和参考摘要的n元组共现统计量作为评价作为评价依据,然后通过一系列标准进行打分。包括(ROUGH-N, ROUGH-L, ROUGH-W,ROUGH-S和ROUGH-SU)几个类型。通俗地将就是通过一些定量化的指标来描述待审摘要和参考文摘之间的相似性,维度考虑比较多,在一定程度上可以很好地评价Extracive产生的摘要。
这里涉及到一个重要的问题,就是标注语料的问题。自动评价需要给定一些列文档以及它们的参考摘要,用来测试不同的算法效果。TAC(Text Analysis Conference)和TREC(Text REtrieval Conference)两个会议提供了相关的评测数据集,自动文摘领域的paper都是以这些数据集为baseline,与其他paper的算法进行对比。会议的数据集毕竟有限,新的领域中做自动文摘需要建立自己的数据集作为标准。
现有的评价标准存在的一个重要问题在于没有考虑语义层面上的相似,评价extractive还好,但评价abstractive就会效果不好了。Deep Learning其实就是一个representation learning,将世界万物表示成数字,然后作分析。在词、句子甚至段落这个层面上的表示学习研究的非常多,也有很多的state-of-the-art的结果,所以做语义层面上的评价并不难。
文本自动摘要的语料
这里的语料分为两种,一种是用来训练深度学习模型的大型语料,一种是用来参加评测的小型语料。
1.DUC
这个网站提供了文本摘要的比赛,2001-2007年在这个网站,2008年开始换到这个网站TAC。很官方的比赛,各大文本摘要系统都会在这里较量一番,一决高下。这里提供的数据集都是小型数据集,用来评测模型的。
2、Gigaword
该语料非常大,大概有950w篇新闻文章,数据集用headline来做summary,即输出文本,用first sentence来做input,即输入文本,属于单句摘要的数据集。
3、CNN/Daily Mail
该语料就是我们在机器阅读理解中用到的语料,该数据集属于多句摘要。
4、Large Scale Chinese Short Text Summarization Dataset(LCSTS)
这是一个中文短文本摘要数据集,数据采集自新浪微博,给研究中文摘要的童鞋们带来了福利。
文本自动摘要的基本实现
目前文本摘要的研究主要集中在抽取方法,主要考虑摘要的信息压缩比、内容的覆盖率和平衡性、语句的多样性、整体的可读性等因素,这些因素直接影响自动文摘结果的好坏。具体的实现方法有基于特征的分析方法,基于潜在语义分析的方法,基于主题模型的方法,还有基于HMM的方法等,这部分主要参考Extractive Summarization. 近几年,由于深度学习在自然语言处理领域的流行,使得用深度学习的技术来实现文本摘要成为可能,这部分主要参考neural summarization.