[毕业设计]多文档自动摘要.面向灾害事件

我在做什么

 

  顾名思义,多文档自动摘要,即是完成多个文档的摘要内容提取。

  在这里,我们的研究对象,单指灾害事件。

 

设计思路

  在完成多文档自动摘要前,首先要思考以下几个问题:

  • 以什么为基本单位做内容提取?
  • 什么才能称为重要的内容?

 

基本单位

  对于一个文档,我们可以将它拆分为:文档本身,段落,句子,词语,字。

  • 首先,摘要内容将会是一段可阅读的内容,因此我们不能以"词语"、"字"为单位,因为很显然,他们都不能表达完整语义。
  • 第二,一个文档完整的描述了一个事件,它包含了很多方面的内容,因此也不能以文档本身为单位,它包含的内容太多,不具有原子性。
  • 第三,一部分情况下,段落描述的是一个事件某一个方面的内容,但我们依旧要考虑,由于文档来自于网络,在一些情况下,一个文档都只有一个段落,描述了过多的内容。

 

  结论:

  以句子为基本单位,它表达了完整的语义,只描述了某个特定的内容。

 

聚类

  一个事件会由多方面内容组成。例如对于一个新闻事件:飞机失事。它必定会涉及到:现场情况、财产损失,人员伤亡、救援情况、后期处理等方面的内容。因此,我们需要基本单位进行分类。遗憾的是,我们无法预知一个事件将会由多少方面的内容构成。因此,这里将会提到一个算法:聚类,用于自动分类。

重要内容

  重要的内容很好理解,大量文档都提及的内容,必定是重要的内容。

因此我们可以认为,一个句子,如果大量出现,那它必定是重要内容。

 

设计结论

  1. 将多文档拆分为句子集合。
  2. 句子集合聚类。
  3. 得到重要的类。
  4. 对类组合,得到摘要(删除类中相似的元素,得到重要元素)。

 

实现

  对于第一步,做简单的字符串拆分处理,即可从文档集合得到句子集合。对于第二步,下文将详细描述聚类算法。对于第三步,一个类包含的元素越多,即表示这个类越重要。对于第四步,需要解决两个问题,什么是相似的元素,什么是重要的元素。

 

句子相似判断

  句子相似度计算从上世纪50年代开始,至今已经有了不短的研究历史,中文句子相似度计算虽然起步较晚,但也有了不少的研究成果。对于相似度计算算法本文不做过多叙述(注意:这不代表此算法对于本文来说不重要)若要深入研究可查阅相关资料。本文将使用较为简单的句子相似度计算:编辑距离矢量。

 

聚类算法

  基于相似度计算,我们可以提出下面的比较巧妙而简单的聚类算法。

  聚类即是将相似的元素归类到一起,在此可以把句子集合抽象为一个无向图:句子为节点,为相似的句子节点连接一条边。

所有的子图即是最后的结果,但我们依旧要注意到许多单节点图和节点数量较少的图,这意味着它们可能不重要,因此无需考虑这些集合。

 

集合相似句子和重要句子

  相似的句子很好处理,显然,若聚合中存在相似度很高的句子子集合,保留其中最重要的那条。

  重要句子:对于集合中的任意一个句子A,A其他元素的相似值的总和记作Va。按照V值递减排序,即可得到靠前的重要句子。

posted @ 2015-07-01 17:56  早餐  阅读(640)  评论(0编辑  收藏  举报