NLP基本工具之jieba:关键词提取

jieba除了最重要的功能--分词之外,还可以进行关键词提取以及词性标注

使用:

import jieba  # 导入 jieba

import jieba.analyse as anls  #关键词提取

import jieba.posseg as pseg  #词性标注

 

其中,关键词提取有两种算法:

第一种是TF-IDF算法(Term Frequency-Inverse Document Frequency, 词频-逆文件频率),其基本思想为:一个词语在一篇文章中出现次数越多,同时在所有文档中出现次数越少,越说明该词语能够代表该文章。

 

第二种是TextRank算法,基本思想:

  1. 将待抽取关键词的文本进行分词
  2. 以固定窗口大小(默认为5,通过span属性调整),词之间的共现关系,构建图
  3. 计算图中节点的PageRank,无向带权图

 

代码:

TF-IDF: jieba.analyse.extract_tags(sentence, topK=20, withWeight=True, allowPOS=())

TextRank: jieba.analyse.textrank(sentence, topK=20, withWeight=True)

topK是输出多少个关键词,withWeight是否输出每个关键词的权重。

 

输入语句“jieba除了最重要的功能--分词之外,还可以进行关键词提取以及词性标注”:

TF-IDF输出的关键词:

词性 0.91

jieba 0.85

-- 0.85

分词 0.84

标注 0.66

关键词 0.64

提取 0.54

之外 0.42

功能 0.39

除了 0.37

重要 0.29

以及 0.29

进行 0.27

可以 0.25

 

TextRank输出的关键词:

词性 1.00

提取 0.99

关键词 0.99

功能 0.90

分词 0.90

进行 0.76

标注 0.75

 

相对而言,TextRank输出的关键词更规整一些。

 

词性标注

使用jieba.posseg进行词性的标注。

代码:

import jieba.posseg

words = jieba.posseg.cut("我来到北京清华大学")

for x, w in words:

    print('%s %s' % (x, w))

 

输出:

我 r

来到 v

北京 ns

清华大学 nt

 

相关文章

人工智能技术分析

人工智能 机器学习 深度学习

第六届世界互联网大会乌镇峰会简评

华为人工智能战略分析:2019华为全连接大会

阿里含光 VS 华为昇腾:AI芯片路在何方

AI人工智能三要素:数据、算力和算法

计算机视觉(CV)任务介绍:分类、检测、分割、超分、关键点识别、图像生成、度量学习

理解深度学习中的分类网络:LeNet

 

PyTorch 1.3

tf.GradientTape详解:梯度求解利器

TensorFlow高阶API和低阶API

TensorFlow静态图和eager机制

TensorFlow 2.0

TensorFlow高阶API和低阶API

TensorFlow调试技巧

TensorFlow与PyTorch对比

PyCharm调试技巧

解读谷歌的AI杀手级专利:Dropout

 

AutoML算法分析(一):基于强化学习的算法

SENet详解

 

关于我

缘起:新的开始

 

公众号持续更新,欢迎订阅。

 

AI人工智能与大数据

 

猜你喜欢

转载自blog.csdn.net/guanxs/article/details/105695965