(一)jieba分詞
阿新 • • 發佈:2018-12-09
jieba分詞
1、全模式
按照前後的順序分詞,句子有交叉
import jieba
seg_list = jieba.cut("我喜歡自然語言處理", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list)) # 全模式
Building prefix dict from the default dictionary ... Dumping model to file cache /tmp/jieba.cache Loading model cost 0.829 seconds. Prefix dict has been built succesfully. Full Mode: 我/ 喜歡/ 自然/ 自然語言/ 語言/ 處理
2、精確模式
按照前後的順序分詞,句子無交叉
import jieba
seg_list = jieba.cut("我喜歡自然語言處理", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list)) # 全模式
Default Mode: 我/ 喜歡/ 自然語言/ 處理
關鍵詞提取
基於 TF-IDF 演算法的關鍵詞抽取
import jieba.analyse
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
sentence 為待提取的文字
topK 為返回幾個 TF/IDF 權重最大的關鍵詞,預設值為 20
withWeight 為是否一併返回關鍵詞權重值,預設值為 False
allowPOS 僅包括指定詞性的詞,預設值為空,即不篩選
import jieba.analyse as analyse
lines = open('NBA.txt').read()
print(" ".join(analyse.extract_tags(lines, topK=20, withWeight=False, allowPOS=())))
韋少 杜蘭特 全明星 全明星賽 MVP 威少 正賽 科爾 投籃 勇士 球員 斯布魯克 更衣櫃 NBA 三連莊 張衛平 西部 指導 雷霆 明星隊
詞性標註
import jieba.posseg as pseg
words = pseg.cut("我喜歡自然語言處理" )
for word, flag in words:
print('%s %s' % (word, flag))
我 r
喜歡 v
自然語言 l
處理 v