本篇文章測試的哈工大LTP、中科院計算所NLPIR、清華大學THULAC和jieba、FoolNLTK、HanLP這六大中文分詞工具是由 水...琥珀 完成的。相關測試的文章以前也看到過一些,但本篇闡述的能夠說是比較詳細的了。這裏就分享一下給各位朋友!python
安裝調用工具
jieba「結巴」中文分詞:作最好的 Python 中文分詞組件測試
THULAC清華大學:一個高效的中文詞法分析工具包3d
FoolNLTK可能不是最快的開源中文分詞,但極可能是最準的開源中文分詞blog
教程:FoolNLTK 及 HanLP使用教程
HanLP最高分詞速度2,000萬字/秒基礎
**中科院 Ictclas 分詞系統 - NLPIR漢語分詞系統配置
哈工大 LTP方法
LTP安裝教程[python 哈工大NTP分詞 安裝pyltp 及配置模型(新)]im
以下是測試代碼及結果
下面測試的文本上是極易分詞錯誤的文本,分詞的效果在很大程度上就能夠提現分詞器的分詞狀況。接下來驗證一下,分詞器的宣傳語是否得當吧。
jieba 中文分詞
thulac 中文分詞
fool 中文分詞
HanLP 中文分詞
中科院分詞 nlpir
哈工大ltp 分詞
以上能夠看出分詞的時間,爲了方便比較進行以下操做:
分詞效果對比
結果爲:
總結:
1.時間上(不包括加載包的時間),對於相同的文本測試兩次,四個分詞器時間分別爲:
jieba: 0.01699233055114746 1.8318662643432617
thulac : 10.118737936019897 8.155954599380493
fool: 2.227612018585205 2.892209053039551
HanLP: 3.6987085342407227 1.443108320236206
中科院nlpir:0.002994060516357422
哈工大ltp_ :0.09294390678405762
能夠看出平均耗時最短的是中科院nlpir分詞,最長的是thulac,時間的差別仍是比較大的。
2.分詞準確率上,經過分詞效果操做能夠看出
第一句:結婚的和還沒有結婚的確實在干擾分詞啊
四個分詞器都表現良好,惟一不一樣的是fool將「干擾分詞」合爲一個詞
第二句:汽水不若是汁好喝,重點在「不若是」,「」不如「」 和「」若是「」 在中文中均可以成詞,可是在這個句子裏是不如 與果汁 正確分詞
jieba thulac fool HanLP
jieba、 fool 、HanLP正確 thulac錯誤
第三句: 小白癡癡地在門前等小黑回來,體如今人名的合理分詞上
正確是:
小白/ 癡癡地/ 在/ 門前/ 等/ 小黑/ 回來
jieba、 fool 、HanLP正確,thulac在兩處分詞錯誤: 小白_np 癡癡_a 地_u 在_p 門前_s 等_u 小_a 黑回_n 來_f
第四句:是有關司法領域文本分詞
發現HanLP的分詞粒度比較大,fool分詞粒度較小,致使fool分詞在上有較大的偏差。在人名識別上沒有太大的差別,在組織機構名上分詞,分詞的顆粒度有一些差別,Hanlp在機構名的分詞上略勝一籌。
六種分詞器使用建議:
對命名實體識別要求較高的能夠選擇HanLP,根聽說明其訓練的語料比較多,載入了不少實體庫,經過測試在實體邊界的識別上有必定的優點。
中科院的分詞,是學術界比較權威的,對比來看哈工大的分詞器也具備比較高的優點。同時這兩款分詞器的安裝雖然不難,但比較jieba的安裝顯得繁瑣一點,代碼遷移性會相對弱一點。哈工大分詞器pyltp安裝配置模型教程
結巴由於其安裝簡單,有三種模式和其餘功能,支持語言普遍,流行度比較高,且在操做文件上有比較好的方法好用python -m jieba news.txt > cut_result.txt
對於分詞器的其餘功能就能夠在文章開頭的連接查看,好比說哈工大的pyltp在命名實體識別方面,能夠輸出標註的詞向量,是很是方便基礎研究的命名實體的標註工做。
精簡文本 效果對比