- 前言: 之前学习过了tf-idf算法,而textrank算法与其相似,也是用来计算文本的重要程度的。
TextRank 关键词提取
1. 引入
学习TextRank之前,应该先了解PageRank。
谷歌借鉴了学术界评判学术论文重要性的通用方法————看论文的引用次数。由此想到网页的重要性也可以根据这种方法来评价。这就是PageRank的核心思想:
- 如果一个网页被很多其他网页链接到的话说明这个网页比较重要,也就是PageRank值会相对较高
- 如果一个PageRank值很高的网页链接到一个其他的网页,那么被链接到的网页的PageRank值会相应地因此而提高
如图,假设我们有4个网页——w1,w2,w3,w4。这些页面包含指向彼此的链接。有些页面可能没有链接,这些页面被称为悬空页面。
- w1有指向w2、w4的链接
- w2有指向w3和w1的链接
- w4仅指向w1
- w3没有指向的链接,因此为悬空页面
为了对这些页面进行排名,我们必须计算一个称为PageRank的分数。这个分数是用户访问该页面的概率。
为了获得用户从一个页面跳转到另一个页面的概率,我们将创建一个正方形矩阵M,它有n行和n列,其中n是网页的数量。
矩阵中得每个元素表示从一个页面链接进另一个页面的可能性。比如,如下高亮的方格包含的是从w1跳转到w2的概率。
PageRank流程如下
- 从页面i连接到页面j的概率,也就是M[i][j],初始化为1/页面i的出链接总数wi
- 如果页面i没有到页面j的链接,那么M[i][j]初始化为0
- 如果一个页面是悬空页面,那么假设它链接到其他页面的概率为等可能的,因此M[i][j]初始化为1/页面总数
因此在本例中,矩阵M初始化后如下:
2. TextRank算法
- 相似之处
- 用句子代替网页
- 任意两个句子的相似性等价于网页转换概率
- 相似性得分存储在一个方形矩阵中,类似于PageRank的矩阵M
流程如下
- 把所有文章整合成文本数据。
- 把文本分割成单个句子。
- 然后,我们将为每个句子找到向量表示(词向量)。
- 计算句子向量间的相似性并存放在矩阵中。
- 然后将相似矩阵转换为以句子为节点、相似性得分为边的图结构,用于句子TextRank计算。
- 最后,一定数量的排名最高的句子构成最后的摘要。
Comments | 0 条评论