一. TextRank算法介绍
TextRank算法想对来说,其实是很简单的一个算法。算法的流程类似Kleinberg的HITS算法,google的PageRank算法,不得不说是google的pageRank算法的出现引发了搜索引擎的一次变革。PageRank算法成功运用到互联网上来评估网页的重要性,当用户搜索时,返回与搜索问题相关又又质量的网页。TextRank算法可以说借鉴了pageRank算法的思想,也非常成功得运用到文章的引文提取,关键词提取上。当然一个单纯的算法提取关键词,可能效果并不那么如意,可以结合其他算法,比如TF-IDF来筛选有力表达主题/文章中心思想的词语。
二. TextRank 算法解析
TextRank算法对文章关键词进行提取的过程,实际就是迭代计算一个由文章中的词语构建的有向有权图G=(V,E) 。其中集合V(图中的节点)有文章中的词语构成,中文我们可以利用ansj_seg进行分词筛选特定词性的词。集合E(图中的边)由文章中的词在特定的滑动窗口下组成。E是一个VxV的子集。图中任意两节点Vi,Vj之间的权重为Wij,而对于一个节点Vi,In(Vi)表示图中指向该节点的其他节点集合,入度。而Out(Vi)为节点Vi指向的其他节点的集合。
对于TextRank算法每次迭代是Vi节点的得分的计算公式为: