一、前言
新闻在动摘要生成的前两部分在这里:
自动摘要生成(二):由PageRank转变而来的TextRank算法
这里是新闻摘要生成系列的第三部分,这一篇没有什么具体算法,主要介绍两种更偏向工程实现的抽取式摘要生成方法,分别是词向量相似度值计算,以及句子有效词含量的计算。
二、词向量相似度
首先来说一下词向量相似度的方法,Word2Vec的出现使得近年来对于自然语言处理的研究走上了快车道。Word2Vec解决了One-hot词向量过于稀疏以及词汇之间的“语意鸿沟”的问题。以后会专门在写一个系列来专门说说我自己对于Word2Vec的一些了解,这里我们只用Word2Vec训练好的词向量,就不深入介绍其原理了。
前面说到Word2Vec解决了One-hot词向量中的一个问题,俗称“语意鸿沟“,大概的意思就是两个语意相似的词语在使用one-hot向量来表示时,无法体现其相似性。但在使用Word2Vec表示,或者更广泛的说,在使用词的分布式表示方法时,我们可以通过计算两个词语的向量的距离或夹角来表征它们的语意相似度。
抽取式摘要生成中的词向量相似度方法正是利用了词的分布式向量表示方法的这个特点。在使用这种方法前,首先需要自己训练一套分布式词向量,常用的有Word2Vec或者Glove。当然也可以从网上下载别人训练好的词向量来用。
词向量相似度计算与之前说过的MMR与TextRank一样,同样以每个完整的句子为最小单位,具体的实施分为以下两个方法。
1.与文章标题计算相似度
一般来说,新闻的标题通常说明了整个文章或新闻大概要讲一个什么事儿,所以第一种方法这就是把每句话中的所有词的词向量累加,求平均,作为句子向量。再将文章的标题中的词的词向量累加求平均,作为标题向量。再计算所有句子向量与标题向量间的相似度。其中可以使用余弦相似度作为相似度度量方法。再根据相似度从高到低的排列,将相似度最高的个句子选为组成摘要的句子来生成摘要。