簡(jiǎn)述python四種分詞工具,盤點(diǎn)哪個(gè)更好用?
大家好,我是安果!
分詞在自然語言處理中有著常見的場(chǎng)景,比如從一篇文章自動(dòng)提取關(guān)鍵詞就需要用到分詞工具,中文搜索領(lǐng)域同樣離不開分詞
Python 中有很多開源的分詞工具,下面給大家介紹幾款常見的分詞依賴庫(kù)
1. jieba 分詞
“結(jié)巴” 分詞,GitHub 最受歡迎的分詞工具,立志做最好的 Python 中文分詞組件,支持多種分詞模式,支持自定義詞典
github star:26k
代碼示例
import jieba strs=["我來到北京清華大學(xué)","乒乓球拍賣完了","中國(guó)科學(xué)技術(shù)大學(xué)"] for str in strs: seg_list = jieba.cut(str,use_paddle=True) # 使用paddle模式 print("Paddle Mode: " + '/'.join(list(seg_list))) seg_list = jieba.cut("我來到北京清華大學(xué)", cut_all=True) print("全模式: " + "/ ".join(seg_list)) # 全模式 seg_list = jieba.cut("我來到北京清華大學(xué)", cut_all=False) print("精確模式: " + "/ ".join(seg_list)) # 精確模式 seg_list = jieba.cut("他來到了網(wǎng)易杭研大廈") # 默認(rèn)是精確模式 print("新詞識(shí)別:", ",".join(seg_list)) seg_list = jieba.cut_for_search("小明碩士畢業(yè)于中國(guó)科學(xué)院計(jì)算所,后在日本京都大學(xué)深造") # 搜索引擎模式 print("搜索引擎模式:", ".join(seg_list))
輸出:
【全模式】: 我/ 來到/ 北京/ 清華/ 清華大學(xué)/ 華大/ 大學(xué) 【精確模式】: 我/ 來到/ 北京/ 清華大學(xué) 【新詞識(shí)別】:他, 來到, 了, 網(wǎng)易, 杭研, 大廈 (此處,“杭研”并沒有在詞典中,但是也被Viterbi算法識(shí)別出來了) 【搜索引擎模式】: 小明, 碩士, 畢業(yè), 于, 中國(guó), 科學(xué), 學(xué)院, 科學(xué)院, 中國(guó)科學(xué)院, 計(jì)算, 計(jì)算所, 后, 在, 日本, 京都, 大學(xué), 日本京都大學(xué), 深造
項(xiàng)目地址:
https://github.com/fxsjy/jieba
2. pkuseg 分詞
pkuseg 是北大語言計(jì)算與機(jī)器學(xué)習(xí)研究組開源的一款分詞工具
它的特點(diǎn)是支持多領(lǐng)域分詞,目前支持新聞?lì)I(lǐng)域,網(wǎng)絡(luò)領(lǐng)域,醫(yī)藥領(lǐng)域,旅游領(lǐng)域,以及混合領(lǐng)域的分詞預(yù)訓(xùn)練模型,用戶可以自由地選擇不同的模型
相比通用分詞工具,它的分詞準(zhǔn)確率更高
github star:5.4k
代碼示例
import pkuseg seg = pkuseg.pkuseg() # 以默認(rèn)配置加載模型 text = seg.cut('python是一門很棒的語言') # 進(jìn)行分詞 print(text)
輸出
['python', '是', '一', '門', '很', '棒', '的', '語言']
項(xiàng)目地址:
https://github.com/lancopku/pkuseg-python
3. FoolNLTK 分詞
基于 BiLSTM 模型訓(xùn)練而成,據(jù)說可能是最準(zhǔn)的開源中文分詞,同樣支持用戶自定義詞典
GitHub star: 1.6k
代碼示例
import fool text = "一個(gè)傻子在北京" print(fool.cut(text)) # ['一個(gè)', '傻子', '在', '北京']
項(xiàng)目地址:
https://github.com/rockyzhengwu/FoolNLTK
4. THULAC
THULAC 由清華大學(xué)自然語言處理與社會(huì)人文計(jì)算實(shí)驗(yàn)室研制推出的一套中文詞法分析工具包
具有詞性標(biāo)注功能,能分析出某個(gè)詞是名詞還是動(dòng)詞或者形容詞
github star:1.5k
代碼示例
import thulac thu1 = thulac.thulac() #默認(rèn)模式 text = thu1.cut("我愛北京天安門", text=True) #進(jìn)行一句話分詞 print(text) # 我_r 愛_v 北京_ns 天安門_ns 代碼示例2 thu1 = thulac.thulac(seg_only=True) #只進(jìn)行分詞,不進(jìn)行詞性標(biāo)注 thu1.cut_f("input.txt", "output.txt") #對(duì)input.txt文件內(nèi)容進(jìn)行分詞,輸出到output.txt
項(xiàng)目地址:
https://github.com/thunlp/THULAC-Python
目前我在用的還是結(jié)巴分詞,配合用戶自定義詞典,解決常見的網(wǎng)絡(luò)詞語
你在用什么分詞工具,歡迎留下你的意見
以上就是簡(jiǎn)述python四種分詞工具,盤點(diǎn)哪個(gè)更好用?的詳細(xì)內(nèi)容,更多關(guān)于python 分詞工具的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Python中文分詞工具之結(jié)巴分詞用法實(shí)例總結(jié)【經(jīng)典案例】
- Python結(jié)巴中文分詞工具使用過程中遇到的問題及解決方法
- Python jieba 中文分詞與詞頻統(tǒng)計(jì)的操作
- Python jieba庫(kù)分詞模式實(shí)例用法
- Python jieba結(jié)巴分詞原理及用法解析
- 用python實(shí)現(xiàn)前向分詞最大匹配算法的示例代碼
- Python3爬蟲中關(guān)于中文分詞的詳解
- Python中文分詞庫(kù)jieba,pkusegwg性能準(zhǔn)確度比較
- python中文分詞庫(kù)jieba使用方法詳解
- python同義詞替換的實(shí)現(xiàn)(jieba分詞)
相關(guān)文章
Django JWT Token RestfulAPI用戶認(rèn)證詳解
這篇文章主要介紹了Django JWT Token RestfulAPI用戶認(rèn)證詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01如何利用pyinstaller打包Python程序?yàn)閑xe可執(zhí)行文件
這篇文章主要給大家介紹了關(guān)于如何利用pyinstaller打包Python程序?yàn)閑xe可執(zhí)行文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04flask/django 動(dòng)態(tài)查詢表結(jié)構(gòu)相同表名不同數(shù)據(jù)的Model實(shí)現(xiàn)方法
今天小編就為大家分享一篇flask/django 動(dòng)態(tài)查詢表結(jié)構(gòu)相同表名不同數(shù)據(jù)的Model實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-08-08python實(shí)現(xiàn)快速排序的示例(二分法思想)
本篇文章主要介紹了python實(shí)現(xiàn)快速排序的示例(二分法思想),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03Python基于生成器迭代實(shí)現(xiàn)的八皇后問題示例
這篇文章主要介紹了Python基于生成器迭代實(shí)現(xiàn)的八皇后問題,簡(jiǎn)單描述了八皇后問題,并結(jié)合實(shí)例形式分析了Python基于生成器迭代解決八皇后問題的相關(guān)操作技巧,需要的朋友可以參考下2018-05-05