教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

中文分詞模塊jieba有幾種模式?

更新時(shí)間:2021年11月05日10時(shí)27分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

隨著漢語(yǔ)言的廣泛應(yīng)用,中文信息處理成了一個(gè)重要的研究課題,常見(jiàn)于搜索引擎:信息檢索、中外文自動(dòng)翻譯、數(shù)據(jù)挖掘技術(shù)、自然語(yǔ)言處理等領(lǐng)域。在處理的過(guò)程中,中文分詞是最基礎(chǔ)的一環(huán)。
中文分司是指將個(gè)漢字序列切分成一個(gè)一個(gè)單獨(dú)的話,是一個(gè)學(xué)生”經(jīng)分詞中文語(yǔ)句或語(yǔ)段拆成若干漢語(yǔ)詞匯。例如,用戶輸人的語(yǔ)句“我是一個(gè)學(xué)生,經(jīng)分詞系統(tǒng)處理之后,該語(yǔ)句被分成“我”是”“一個(gè)”“學(xué)生”四個(gè)漢語(yǔ)詞匯。

在英文本中,每個(gè)單詞之間以空格作為自然分界符,而中文只有句子和段落能夠
通過(guò)明顯的分界符來(lái)簡(jiǎn)單劃分,詞并沒(méi)有有二個(gè)形式上的分界符,雖然英文也同樣存在短語(yǔ)的劃分問(wèn)題,但是在詞這層上,中文要比英文復(fù)雜得多、困難得多。jieba是國(guó)內(nèi)使用人數(shù)最多的中文分詞工具,可以采用如下方式進(jìn)行安裝:

>>> pip install jieba

安裝完之后,通過(guò)import語(yǔ)句將其引入:

import jieba


jieba模塊支持以下3種分詞模式。
(1)精確模式,試圖將句子最精準(zhǔn)地切開(kāi)。
(2)全模式,將句子中所有可以成詞的詞語(yǔ)都掃描出來(lái),速度非??臁?br /> (3)搜索引擎模式,在精確模式的基礎(chǔ)上對(duì)長(zhǎng)詞再次切分。
jieba模塊中提供了一系列分詞函數(shù),常用的是jieba.cut()函數(shù),該函數(shù)需要接收如下3個(gè)參數(shù)。
(1)sentence,需要分詞的字符串。
(2)cut_all,控制是否采用全模式。若設(shè)為True,代表按照全模式進(jìn)行分詞;若設(shè)為False,代表按照精確模式進(jìn)行分詞。
(3)HMM,控制是否使用HMM(Hidden Markov Model,隱馬爾可夫模型)。
若要采用搜索引擎模式對(duì)中文進(jìn)行分詞,需要使用cut_for_search()函數(shù),該函數(shù)中需要接收兩個(gè)參數(shù):sentence和HMM。
下面分別采用以上3種模式對(duì)中文進(jìn)行分詞操作,代碼如下:

#02_word_segmentation.py
seg_list = jieba.cut("我來(lái)到北京清華大學(xué) ",cut_all-True)
print("[全模式]: "+"/".join(seglist))
#全模式
seg_list = jieba.cut("我來(lái)到北京清華大學(xué)",cut_all=False)
print("[精確模式]:"+"/".join(seg_list))
#精確模式
seg_list = jieba.cut_for_search("小明碩土畢業(yè)于中國(guó)科學(xué)院計(jì)算所,
后在日本京都大學(xué)深造")  #搜索引擎模式
print("[搜索引擎模式] :" + ",".join(seg list))

程序輸出的結(jié)果如下:

[全模式]:我/來(lái)到/北京/清華/清華大學(xué)/華大/大學(xué)
[精確模式]:我/來(lái)到/北京/清華大學(xué)
[搜索引擎模式]: 小明,碩士,畢業(yè),于,中國(guó),,科學(xué)院,中國(guó)科學(xué)院,計(jì)算,
計(jì)算所,后,在,日本,京都,大學(xué),日本京都大學(xué),深造

猜你喜歡:

Python模塊如何導(dǎo)入__all__屬性?

什么是Python模塊?Python模塊有幾類?

Python如何安裝pymysql模塊?

偏函數(shù)是什么?Functools模塊偏函數(shù)詳解

傳智python+大數(shù)據(jù)開(kāi)發(fā)培訓(xùn)

0 分享到:
和我們?cè)诰€交談!