知识图谱
程序员文章站
2022-06-12 17:33:50
...
一、获取关键词
#基于nltk获取关键字(针对英文)
from rake_nltk import Rake
r = Rake()
#mytext = 'Hello evryone , my name is wyz.Nice to meet you'
mytext = '海南拟建国际自贸区和自贸港。对此,多家公司回应在海南业务情况。基金君整理如下:欣龙控股:在海南老城经济开发区拥有的近1000亩土地证载尚为工业用地。在联营企业欣龙丰裕实业名下的173亩土地为商住用地;东华软件:2014与海南省*战略合作起,开始布局海南大数据和大健康产业,下个5年将加大投入迅速形成产出能力;安通控股:去年在海口港吞吐量已突破100万标箱;安控科技称,正努力借助海南当地优惠政策积极拓展业务。海南瑞泽:2018年恰逢海南省建省办特区30周年庆典,作为国际旅游岛,海南省必将迎来新一轮发展机遇,为率先抢占国际旅游岛稀缺资源,布局旅游文化产业,协议双方决定整合双方区域及产业优势,在海南省共同投资现代马产业文化旅游综合项目。'
r.extract_keywords_from_text(mytext)
print(r.get_ranked_phrases())
二、jieba 分词,提取关键词
提取关键词有两种方法:
import jieba.analyse
基于TF-IDF:jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
基于TextRank:jieba.analyse.textrank(sentence, topK=20, withWeight=False, allowPOS=('ns', 'n', 'vn', 'v'))
基于 TF-IDF 算法的关键词抽取
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=(‘ns’, ‘n’, ‘vn’, ‘v’))
参数解释:
(1)sentence :待提取的文本;
(2)topK :返回K个权重最大的关键词
(3)withWeight :是否返回权重
(4)allowPOS :是否仅包括指定词性的词
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=(‘ns’, ‘n’, ‘vn’, ‘v’))
参数解释:
(1)sentence :待提取的文本;
(2)topK :返回K个权重最大的关键词
(3)withWeight :是否返回权重
(4)allowPOS :是否仅包括指定词性的词
jieba.analyse.textrank(sentence, topK=20, withWeight=False, allowPOS=(‘ns’, ‘n’, ‘vn’, ‘v’))
参数解释:
(1)sentence :待提取的文本;
(2)topK :返回K个权重最大的关键词
(3)withWeight :是否返回权重
(4)allowPOS :是否仅包括指定词性的词
TextRank基本思想:
(1)分词
(2)找词之间共现关系,构建图
(3)计算图中节点的PageRank