抽取式TextRank算由PageRank算法发展而来,所以讲解TextRank的时候不得不先学习一下PageRank算法的思想。
看博客都是千篇一律差不多的,就不给大家添乱了,整理了一下资料,方便大家进行学习。
链接1和4涉及代码实现,链接一看到最后才发现调用了一个nx.pagerank(graph)去计算pagerank值(还在想这个函数可以修改参数就变成了textrank了吗,结果看评论也有人遇到我一样的问题了),这个算法没有涉及textrank公式的权重的计算,不过也选到了些许东西真是又气又感谢。
中文分词库使用jieba库有三种模式,精准模式、模式、搜索引擎模式非常好用,请参考第5个链接,还有text4rank包,可以通过直接调用text4rank包实现抽取式摘要,这在链接4得到了很好的解读,text4rank还可以分词基于jieba包封装成了一个更高级的api,还有gensim是word2vec工具的一个python实现包,里面包含了skip_gram与cbow的训练和参数解读,还有networkx包一个与图息息相关的包(中途去学习了一下图与矩阵的关系,这是基本的,不然你都不知道别人调着包干嘛),下图为textrank实现抽取式摘要的一个流程,看国内的博客几乎没有能把textrank讲明白的,也花了两天时间自己好好弄了一下,重新讲解一下textrank这里是传送门,第四个链接直接就是github传送门,这部分代码是透明的所有的理论都能在这个仓库里面找到。
参考资料:
TextRank算法详细讲解与代码实现(完整) - 方格田 - 博客园
PageRank算法_黄规速博客:学如逆水行舟,不进则退-CSDN博客_pagerank
机器学习经典算法之PageRank - 程序员姜小白 - 博客园
GitHub - summanlp/textrank: TextRank implementation for Python 3.
What is Gensim?
Gensim简介
Gensim简介_zxhohai的博客-CSDN博客_gensim
Gensim库的使用——Gensim库的核心概念介绍
Gensim库的使用——Gensim库的核心概念介绍_一个小菜鸟的博客-CSDN博客_gensim库
刘建平先生关于gensim包的描述
如何让jieba分词不分开某些词(suggest_freq方法的使用)