Python中的結巴分詞初探
python中的結巴分詞有如下三種模式:
精確模式,試圖將句子最精確地切開,適合文字分析;
全模式,把句子中所有的可以成詞的詞語都掃描出來, 速度非常快,但是不能解決歧義;
搜尋引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜尋引擎分詞。
主要功能
- 分詞
jieba.cut 方法接受三個輸入引數: 需要分詞的字串;cut_all 引數用來控制是否採用全模式;HMM 引數用來控制是否使用 HMM 模型
jieba.cut_for_search 方法接受兩個引數:需要分詞的字串;是否使用 HMM 模型。該方法適合用於搜尋引擎構建倒排索引的分詞,粒度比較細
待分詞的字串可以是 unicode 或 UTF-8 字串、GBK 字串。注意:不建議直接輸入 GBK 字串,可能無法預料地錯誤解碼成 UTF-8
jieba.cut 以及 jieba.cut_for_search 返回的結構都是一個可迭代的 generator,可以使用 for 迴圈來獲得分詞後得到的每一個詞語(unicode),或者用
jieba.lcut 以及 jieba.lcut_for_search 直接返回 list
jieba.Tokenizer(dictionary=DEFAULT_DICT) 新建自定義分詞器,可用於同時使用不同詞典。jieba.dt 為預設分詞器,所有全域性分詞相關函式都是該分詞器的對映。
2.程式碼示例:
import jieba
seg_list = jieba.cut("我來到北京清華大學", cut_all=True)
print ("Full Mode:", "/ ".join(seg_list)) # 全模式
seg_list = jieba.cut("我來到北京清華大學", cut_all=False)
print ("Default Mode:", "/ ".join(seg_list)) # 精確模式
seg_list = jieba.cut("他來到了網易杭研大廈") # 預設是精確模式
print (", ".join(seg_list))
seg_list = jieba.cut_for_search("我來到北京清華大學") # 搜尋引擎模式
print (", ".join(seg_list))
實驗結果:
Full Mode: 我/ 來到/ 北京/ 清華/ 清華大學/ 華大/ 大學
Prefix dict has been built succesfully.
Default Mode: 我/ 來到/ 北京/ 清華大學
他, 來到, 了, 網易, 杭研, 大廈
我, 來到, 北京, 清華, 華大, 大學, 清華大學
開發者可以指定自己自定義的詞典,以便包含 jieba 詞庫裡沒有的詞。雖然 jieba 有新詞識別能力,但是自行新增新詞可以保證更高的正確率
用法: jieba.load_userdict(file_name) # file_name 為檔案類物件或自定義詞典的路徑
詞典格式和 dict.txt 一樣,一個詞佔一行;每一行分三部分:詞語、詞頻(可省略)、詞性(可省略),用空格隔開,順序不可顛倒。file_name 若為路徑或二進位制方式開啟的檔案,則檔案必須為 UTF-8 編碼。
詞頻省略時使用自動計算的能保證分出該詞的詞頻。
相關文章
- “結巴”分詞:做最好的Python分片語件分詞Python
- python呼叫jieba(結巴)分詞 加入自定義詞典和去停用詞功能PythonJieba分詞
- iOS中文近似度的演算法及中文分詞(結巴分詞)的整合iOS演算法中文分詞
- 使用cjieba(結巴分詞庫)實現php擴充套件中文分詞JiebaPHP套件中文分詞
- Simple: SQLite3 中文結巴分詞外掛SQLite分詞
- 北大開源了中文分詞工具包:準確率遠超THULAC、結巴分詞!中文分詞
- 北大開源全新中文分詞工具包:準確率遠超THULAC、結巴分詞中文分詞
- 使用cjieba(結巴分詞庫)實現php擴充套件中文分詞-支援php5, php7JiebaPHP套件中文分詞
- Python:Python 中 jieba 庫的使用(中文分詞)PythonJieba中文分詞
- [Python] 基於 jieba 的中文分詞總結PythonJieba中文分詞
- HanLP分詞工具中的ViterbiSegment分詞流程HanLP分詞Viterbi
- Python分詞模組推薦:jieba中文分詞PythonJieba中文分詞
- python分詞和生成詞雲圖Python分詞
- 自然語言處理中的分詞問題總結自然語言處理分詞
- 【Python】jieba分詞模組PythonJieba分詞
- 中文分詞原理及常用Python中文分詞庫介紹中文分詞Python
- Python 分發工具初探之 setuptoolsPython
- python 中文分詞包 jiebaPython中文分詞Jieba
- python jieba庫,句子分詞PythonJieba分詞
- Python文字處理NLP:分詞與詞雲圖Python分詞
- 如何用Python做中文分詞?Python中文分詞
- 大資料語義分析:靈玖中文分詞的分詞處理大資料中文分詞
- 中文分詞演算法總結中文分詞演算法
- python中文分詞jieba的高階應用Python中文分詞Jieba
- Python 分發工具初探之 setuptools 進階Python
- python 實現中文分詞統計Python中文分詞
- python呼叫hanlp分詞包手記PythonHanLP分詞
- 使用python進行漢語分詞Python分詞
- 分詞分詞
- [python] LDA處理文件主題分佈及分詞、詞頻、tfidf計算PythonLDA分詞
- Spring MVCD框架中呼叫HanLP分詞的方法SpringMVC框架HanLP分詞
- Hanlp在java中文分詞中的使用介紹HanLPJava中文分詞
- python使用jieba實現中文文件分詞和去停用詞PythonJieba分詞
- 分詞工具Hanlp基於感知機的中文分詞框架HanLP中文分詞框架
- 用Python寫一個簡單的中文分詞器Python中文分詞
- #Elasticsearch中文分詞器 #IK分詞器 @FDDLCElasticsearch中文分詞
- Python初探Python
- 中文分詞工具之基於字標註法的分詞中文分詞