一. 分詞
1. 全模式
import jieba
seg_list = jieba.cut("我來到北京清華大學", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list)) # 全模式
2. 精確模式
import jieba
# seg_list = jieba.cut("我來到北京清華大學")
seg_list = jieba.cut("我來到北京清華大學", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list)) # 精確模式
3. 搜索引擎模式
import jieba
# 搜索引擎模式
seg_list = jieba.cut_for_search("小明碩士畢業於中國科學院計算所,後在日本京都大學深造")
print(", ".join(seg_list))
二. 關鍵詞提取
1. 基於TF-IDF
import jieba
import jieba.analyse
# TF-IDF 提取關鍵詞
sentence = "2018年,在慶祝海南建省辦經濟特區30週年大會上宣佈,決定支持海南全島建設自由貿易試驗區,"\
"支持海南逐步探索、穩步推進中國特色自由貿易港建設,分步驟、分階段建立自由貿易港政策和制度體系。"
keywords = jieba.analyse.tfidf.extract_tags(sentence, topK=20, withWeight=True, allowPOS=())
for item in keywords:
print(item[0], item[1])
2. 基於TextRank
import jieba
import jieba.analyse
# 基於TF-IDF 提取關鍵詞
sentence = "2018年,在慶祝海南建省辦經濟特區30週年大會上宣佈,決定支持海南全島建設自由貿易試驗區,"\
"支持海南逐步探索、穩步推進中國特色自由貿易港建設,分步驟、分階段建立自由貿易港政策和制度體系。"
# 基於TextRank
keywords = jieba.analyse.textrank(sentence, topK=20, withWeight=True, allowPOS=('ns', 'n', 'vn', 'v'))
for item in keywords:
print(item[0], item[1])
三. 詞性標註
1. 默認模式
import jieba
import jieba.posseg as pseg
words = pseg.cut("我愛北京天安門") #jieba默認模式
for word, flag in words:
print('%s %s' % (word, flag))
2. 使用Paddle
import jieba
import jieba.posseg as pseg
jieba.enable_paddle() #啓動paddle模式。 0.40版之後開始支持,早期版本不支持
words = pseg.cut("我愛北京天安門",use_paddle=True) #paddle模式
for word, flag in words:
print('%s %s' % (word, flag))