利用 Python 实现中文文本关键词抽取
的三种方法
文本关键词抽取,是对文本信息进行高度凝练的一种有效手段,通过 3-5 个词
语准确概括文本的主题,帮助读者快速理解文本信息。目前,用于文本关键词
提取的主要方法有四种:基于 TF-IDF 的关键词抽取、基于 TextRank 的关键词
抽取、基于 Word2Vec 词聚类的关键词抽取,以及多种算法相融合的关键词抽
取。笔者在使用前三种算法进行关键词抽取的学习过程中,发现采用 TF-IDF
和 TextRank 方法进行关键词抽取在网上有很多的例子,代码和步骤也比较简
单,但是采用 Word2Vec 词聚类方法时网上的资料并未把过程和步骤表达的很
清晰。因此,本文分别采用 TF-IDF 方法、TextRank 方法和 Word2Vec 词聚类
方法实现对专利文本(同样适用于其它类型文本)的关键词抽取,通过理论与
实践相结合的方式,一步步了解、学习、实现中文文本关键词抽取。
1 概述
一篇文档的关键词等同于最能表达文档主旨的 N 个词语,即对于文档来说最重
要的词,因此,可以将文本关键词抽取问题转化为词语重要性排序问题,选取
排名前 TopN 个词语作为文本关键词。目前,主流的文本关键词抽取方法主要
有以下两大类:
(1)基于统计的关键词提取方法
该方法根据统计信息,如词频,来计算得到文档中词语的权重,按权重值排序
提取关键词。TF-IDF 和 TextRank 均属于此类方法,其中 TF-IDF 方法通过计算
单文本词频(Term Frequency, TF)和逆文本频率指数(Inverse Document
Frequency, IDF)得到词语权重;TextRank 方法基于 PageRank 的思想,通