jieba分詞用法介紹

2021-09-22 16:25:23 字數 4340 閱讀 8565

支援繁體分詞

支援自定義詞典

mit授權協議分詞

**示例

import jieba

seg_list = jieba.cut(

"我來到中國科學院大學"

,cut_all=

true

)print

("【全模式】:"

+"/"

.join(seg_list)

)seg_list = jieba.cut(

"我來到中國科學院大學"

, cut_all=

false

)print

("【預設模式】: "

+"/ "

.join(seg_list)

)# 精確模式

seg_list = jieba.cut(

"他來到了網易杭研大廈"

)# 預設是精確模式

print

("【精確模式】: "

+", "

.join(seg_list)

)seg_list = jieba.cut_for_search(

"小明碩士畢業於中國科學院計算所,後在日本京都大學深造"

)# 搜尋引擎模式

print

("【搜尋引擎模式】: "

+", "

.join(seg_list)

)

輸出:

【全模式】:我/來到/中國/中國科學院/科學/科學院/學院/大學

【預設模式】: 我/ 來到/ 中國科學院/ 大學

【精確模式】: 他, 來到, 了, 網易, 杭研, 大廈

【搜尋引擎模式】: 小明, 碩士, 畢業, 於, 中國, 科學, 學院, 科學院, 中國科學院, 計算, 計算所, ,, 後, 在, 日本, 京都, 大學, 日本京都大學, 深造

新增自定義詞典

import jieba.analyse

jieba.analyse.tfidf(idf_path=none)新建tfidf例項,idf_path為idf頻率檔案

**示例:

import jieba.analyse

print()

print

('-'*40

)print

(' tf-idf'

)print

('-'*40

)s =

"此外,公司擬對全資子公司吉林歐亞置業****增資4.3億元,增資後,吉林歐亞置業註冊資本由7000萬元增加到5億元。吉林歐亞置業主要經營範圍為房地產開發及百貨零售等業務。目前在建吉林歐亞城市商業綜合體專案。2023年,實現營業收入0萬元,實現淨利潤-139.13萬元。"

for x, w in jieba.analyse.extract_tags(s, withweight=

true):

print

('%s %s'

%(x, w)

)

輸出:

----------------------------------------

tf-idf

----------------------------------------

歐亞 0.7300142700289363

吉林 0.659038184373617

置業 0.4887134522112766

萬元 0.3392722481859574

增資 0.33582401985234045

4.3 0.25435675538085106

7000 0.25435675538085106

2013 0.25435675538085106

139.13 0.25435675538085106

實現 0.19900979900382978

綜合體 0.19480309624702127

經營範圍 0.19389757253595744

億元 0.1914421623587234

在建 0.17541884768425534

全資 0.17180164988510638

註冊資本 0.1712441526

百貨 0.16734460041382979

零售 0.1475057117057447

子公司 0.14596045237787234

營業 0.13920178509021275

以固定視窗大小(預設為5,通過span屬性調整),詞之間的共現關係,構建圖

計算圖中節點的pagerank,注意是無向帶權圖

使用示例

print

(' textrank'

)print

('_'*40

)for x,w in jieba.analyse.textrank(s,withweight=

true):

print

('%s %s'

%(x,w)

)

輸出

textrank

________________________________________

吉林 1.0

歐亞 0.9966893354178172

置業 0.6434360313092776

實現 0.5898606692859626

收入 0.43677859947991454

增資 0.4099900531283276

子公司 0.35678295947672795

城市 0.34971383667403655

商業 0.34817220716026936

業務 0.3092230992619838

在建 0.3077929164033088

營業 0.3035777049319588

全資 0.303540981053475

綜合體 0.29580869172394825

註冊資本 0.29000519464085045

**** 0.2807830798576574

零售 0.27883620861218145

百貨 0.2781657628445476

開發 0.2693488779295851

經營範圍 0.2642762173558316

詞性標註

import jieba.posseg as pseg

words = pseg.cut(

"我愛自然語言處理"

)for word,flag in words:

print

('%s %s'

%(word,flag)

)

輸出

我 r

愛 v自然語言 l

處理 v

並行分詞

tokenize:返回詞語在原文的起止位置

result = jieba.tokenize(u'永和服裝飾品****'

)for tk in result:

print

("word %s\t\t start: %d \t\t end:%d"

%(tk[0]

,tk[1]

,tk[2]

))

輸出

word 永和		 start: 0 		 end:2

word 服裝 start: 2 end:4

word 飾品 start: 4 end:6

word **** start: 6 end:10

result = jieba.tokenize(u'永和服裝飾品****'

,mode=

'search'

)for tk in result:

print

("word %s\t\t start: %d \t\t end:%d"

%(tk[0]

,tk[1]

,tk[2]

))

輸出

word 永和		 start: 0 		 end:2

word 服裝 start: 2 end:4

word 飾品 start: 4 end:6

word 有限 start: 6 end:8

word 公司 start: 8 end:10

word **** start: 6 end:10

jieba 利用jieba分詞

目錄 三種分詞模式 新增自定義詞典進行分詞 jieba提供了三種分詞模式,分別是全模式,精確模式和搜尋引擎模式。全模式下會將所有可能的詞語都進行分詞,精確模式下會盡可能的將句子精確切開,搜尋引擎模式實在精確模式的基礎上,對長詞再進行劃分,提高分詞的召回率。使用cut和cut for search即可...

jieba分詞原理

關於jieba分詞的原理,在平時做文字方面的演算法時沒有仔細研究過,昨晚在網上看了一篇部落格,寫的很全面很詳細,其中有些深入的部分還並沒有完全看懂。jieba分詞系統介紹 涉及演算法 基於字首詞典實現詞圖掃瞄,生成句子中漢字所有可能成詞情況所構成的有向無環圖 dag 採用動態規劃查詢最大概率路徑,找...

Jieba分詞簡介

jieba分詞官網 jieba提供了三種分詞模式 精確模式,試圖將句子最精確地切開,適合文字分析 全模式,把句子中所有的可以成詞的詞語都掃瞄出來,速度非常快,但是不能解決歧義 搜尋引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜尋引擎分詞。import jieba sent 用刀...