自然语言NLP必备(2):jieba 工具 4 行代码提取文章关键词

今天是介绍 jieba 中文分词工具使用的第 2 篇文章,上一篇主要介绍了 jieba 分词的三种模式以及对应的分词实例,今天来介绍通过 jieba 分词工具来提取中文文章中的关键词,以及对应的权重。

今天的文章能让你学到什么?

你可以快速知道一篇中文文章中,哪些词出现频率比较高,从而可以快速的知道这篇文章的核心思想是什么以及对应的话题,这在自然语言当中是比较基础同时也是比较重要的知识来的,这个知识点通常用于“文本分析”。
自然语言NLP必备(2):jieba 工具 4 行代码提取文章关键词

安装

pip install jieba

jieba 关键词提取主要有两种方法:

第一种:基于 TF-IDF 算法的关键词抽取

第二种:基于 TextRank 算法的关键词抽取

语法

1、基于 TF-IDF 算法的关键词抽取

jieba.analyse.TFIDF(idf_path=None) 新建 TFIDF 实例,不设置就采用默认方式
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())

2、基于 TextRank 算法的关键词抽取

jieba.analyse.TextRank(idf_path=None) 新建 TFIDF 实例,不设置就采用默认方式
jieba.analyse.textrank(sentence, topK=20, withWeight=False, allowPOS=())

参数介绍

★idf_path :为 IDF 频率文件

★sentence: 为待提取的文本

★topK :返回几个 TF/IDF 权重最大的关键词,默认值为 20

★withWeight :表示是否一并返回关键词权重值,默认值为 False

★allowPOS: 仅返回指定词性的词如:allowPos=('nr', 'n'),默认值为空,即不筛选

返回值

返回形式为 [(), ()]

例子

实例1:基于analyse.extract_tags()提取

代码解释:

topK=3 代表输出前面的3个关键词,默认是输出20个

withWeight=True 代表输出词语对应的权重信息

from jieba import analyse
s = """
关联问题交叉销售问题等属于关联问题,关联分析
也叫购物篮分析,我们要掌握常见的关联分析算法
"""
data = analyse.extract_tags(s, topK=3, withWeight=True)
for key, weight in data:
 print('%s %s' % (key, weight))

关联 1.6245281341733333

分析 0.8072675027333334

购物篮 0.6641537501611111

实例2:只返回指定的的词性,比如只返回出现"名词"

代码解释:allowPOS=('n') 代表只返回名词

更多词性表示,请看链接:https://www.cnblogs.com/chenbjin/p/4341930.html

from jieba import analyse
s = """
关联问题交叉销售问题等属于关联问题,关联分析
也叫购物篮分析,我们要掌握常见的关联分析算法
"""
data = analyse.extract_tags(s, topK=3, withWeight=True, allowPOS=('n'))
for key, weight in data:
 print('%s %s' % (key, weight))

购物篮 1.9924612504833332

问题 1.98175678654

算法 1.4485319165216666

实例3:基于 analyse.textrank() 提取

from jieba import analyse
s = """
关联问题交叉销售问题等属于关联问题,关联分析
也叫购物篮分析,我们要掌握常见的关联分析算法
"""
for key, weight in analyse.textrank(s, topK=3, withWeight=True):
 print('%s %s' % (key, weight))

关联 1.0

问题 0.8928709491961201

分析 0.6495388430401274

在实际的文本中提取关键词,可以将上面的例子中的 s 的内容替换成你需要分析的文本数据就可以了

End-----

喜欢的读者朋友可以点赞和关注小编,更多精彩内容等着你.......

往期文章推荐如下:

自然语言NLP必备(1),jieba工具 5 行代码对整篇文章分词

机器学习必备知识(1),线性回归官方参数和用法介绍

机器学习必备知识(2),岭回归模型参数和用法介绍

python科学数据分析包|numpy、pandas等5大数据分析包入门教程

封面图片来源于网络


分享到:


相關文章: