前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NLP基本工具之jieba:关键词提取、词性标注

NLP基本工具之jieba:关键词提取、词性标注

作者头像
用户7164815
发布2020-04-26 13:46:23
2.7K0
发布2020-04-26 13:46:23
举报

jieba除了上一篇介绍的基本功能--分词之外,还可以进行关键词提取以及词性标注

使用:

importjieba # 导入 jieba

importjieba.analyse as anls #关键词提取

importjieba.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

jieba0.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进行词性的标注。

代码:

importjieba.posseg

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

for x, win words:

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

输出:

我 r

来到 v

北京 ns

清华大学 nt

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI人工智能与大数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档