以下介紹4款開源中文分詞系統。
1、ICTCLAS – 全球最受歡迎的漢語分詞系統
中文詞法分析是中文信息處理的基礎與關鍵。中國科學院計算技術研究所在多年研究工作積累的基礎上,研制出了漢語詞法分析系統ICTCLAS(Institute of Computing Technology, Chinese Lexical Analysis System),主要功能包括中文分詞;詞性標注;命名實體識別;新詞識別;同時支持用戶詞典;支持繁體中文;支持GBK、UTF-8、UTF-7、UNICODE等多種編碼格式。我們先后精心打造五年,內核升級6次,目前已經升級到了ICTCLAS3.0。ICTCLAS3.0分詞速度單機996KB/s,分詞精度98.45%,API不超過200KB,各種詞典數據壓縮后不到3M,是當前世界上最好的漢語詞法分析器。
系統平臺:Windows
開發語言:C/C++、Java、C#
使用方式:dll調用
演示網址:http://ictclas.org/test.html
開源官網:http://ictclas.org
晴楓附注:ICTCLAS有共享版、商業版、行業版,支持Linux平臺,但不開源。ICTCLAS已進入商用,且應用范圍較廣,相信分詞效率出色。
2、HTTPCWS – 基于HTTP協議的開源中文分詞系統
HTTPCWS 是一款基于HTTP協議的開源中文分詞系統,目前僅支持Linux系統。HTTPCWS 使用“ICTCLAS 3.0 2009共享版中文分詞算法”的API進行分詞處理,得出分詞結果。
ICTCLAS是中國科學院計算技術研究所在多年研究工作積累的基礎上,基于多層隱馬模型研制出的漢語詞法分析系統,主要功能包括中文分詞;詞性標注;命名實體識別;新詞識別;同時支持用戶詞典。ICTCLAS經過五年精心打造,內核升級6次,目前已經升級到了ICTCLAS3.0,分詞精度98.45%,各種詞典數據壓縮后不到3M。ICTCLAS在國內973專家組組織的評測中活動獲得了第一名,在第一屆國際中文處理研究機構SigHan組織的評測中都獲得了多項第一名,是當前世界上最好的漢語詞法分析器。
ICTCLAS 3.0 商業版是收費的,而免費提供的 ICTCLAS 3.0 共享版不開源,詞庫是根據人民日報一個月的語料得出的,很多詞語不存在。所以本人補充的一個19萬條詞語的自定義詞庫,對ICTCLAS分詞結果進行合并處理,輸出最終分詞結果。
由于 ICTCLAS 3.0 2009 共享版只支持GBK編碼,因此,如果是UTF-8編碼的字符串,可以先用iconv函數轉換成GBK編碼,再用httpcws進行分詞處理,最后轉換回UTF-8編碼。
HTTPCWS 軟件自身(包括httpcws.cpp源文件、dict/httpcws_dict.txt自定義詞庫)采用NewBSD開源協議,可以自由修改。HTTPCWS 使用的 ICTCLAS 共享版 API 及 dict/Data/ 目錄內的語料庫,版權及著作權歸中國科學院計算技術研究所、ictclas.org所有,使用需遵循其相關協議。
系統平臺:Linux
開發語言:C++
使用方式:HTTP服務
演示網址:http://blog.s135.com/demo/httpcws/
開源官網:http://blog.s135.com/httpcws_v100/
晴楓附注:基于ICTCLAS,增加了19萬條詞語的擴展詞庫,并且構建成HTTP服務的方式,使用上更加便捷。
3、SCWS – 簡易中文分詞系統
SCWS 在概念上并無創新成分,采用的是自行采集的詞頻詞典,并輔以一定程度上的專有名稱、人名、地名、數字年代等規則集,經小范圍測試大概準確率在 90% ~ 95% 之間,已能基本滿足一些中小型搜索引擎、關鍵字提取等場合運用。 SCWS 采用純 C 代碼開發,以 Unix-Like OS 為主要平臺環境,提供共享函數庫,方便植入各種現有軟件系統。此外它支持 GBK,UTF-8,BIG5 等漢字編碼,切詞效率高。
系統平臺:Windows/Unix
開發語言:C
使用方式:PHP擴展
演示網址:http://www.ftphp.com/scws/demo.php
開源官網:http://www.ftphp.com/scws/
晴楓附注:作為PHP擴展,容易與現有的基于PHP架構的Web系統繼續集成,是其一大優勢。
4、PhpanAlysis - PHP無組件分詞系統
PhpanAlysis分詞系統是基于字符串匹配的分詞方法 ,這種方法又叫做機械分詞方法,它是按照一定的策略將待分析的漢字串與一個“充分大的”機器詞典中的詞條進行配,若在詞典中找到某個字符串,則匹配成功(識別出一個詞)。按照掃描方向的不同,串匹配分詞方法可以分為正向匹配 和逆向匹配;按照不同長度優先匹配的情況,可以分為最大(最長)匹配和最?。ㄗ疃蹋┢ヅ洌话凑帐欠衽c詞性標注過程相結合,又可以分為單純分詞方法和分詞與標注相結合的一體化方法。
系統平臺:PHP環境
開發語言:PHP
使用方式:HTTP服務
演示網址:http://www.itgrass.com/phpanalysis/
開源官網:http://www.itgrass.com/phpanalysis/
晴楓附注:實現簡單,容易使用,能做一些簡單應用,但大數據量的計算效率不如前幾種。
試用了幾個系統,基本分詞功能都沒什么問題,只是在個別一些詞的劃分上存在一些差異;對于詞性的確定,系統間有所不同。
5 、MMSEG4J
MMSEG4J基于Java的開源中文分詞組件,提供lucene和solr 接口
1)、mmseg4j 用 Chih-Hao Tsai 的 MMSeg 算法實現的中文分詞器,并實現 lucene 的 analyzer 和 solr 的TokenizerFactory 以方便在Lucene和Solr中使用。
2)、MMSeg 算法有兩種分詞方法:Simple和Complex,都是基于正向最大匹配。Complex 加了四個規則過慮。官方說:詞語的正確識別率達到了 98.41%。mmseg4j 已經實現了這兩種分詞算法。
6、盤古分詞
盤古分詞是一個基于.net 平臺的開源中文分詞組件,提供lucene(.net 版本) 和HubbleDotNet的接口
高效:Core Duo 1.8 GHz 下單線程 分詞速度為 390K 字符每秒
準確:盤古分詞采用字典和統計結合的分詞算法,分詞準確率較高。
功能:盤古分詞提供中文人名識別,簡繁混合分詞,多元分詞,英文詞根化,強制一元分詞,詞頻優先分詞,停用詞過濾,英文專名提取等一系列功能。
7、IKAnalyzer 開源的輕量級中文分詞工具包
IKAnalyzer 是一個開源的,基于java語言開發的輕量級的中文分詞工具包。從2006年12月推出1.0版開始,IKAnalyzer已經推出 了3個大版本。最初,它是以開源項目Luence為應用主體的,結合詞典分詞和文法分析算法的中文分詞組件。新版本的IKAnalyzer3.0則發展為 面向Java的公用分詞組件,獨立于Lucene項目,同時提供了對Lucene的默認優化實現。
IKAnalyzer3.0特性:
采用了特有的“正向迭代最細粒度切分算法“,具有60萬字/秒的高速處理能力。
采用了多子處理器分析模式,支持:英文字母(IP地址、Email、URL)、數字(日期,常用中文數量詞,羅馬數字,科學計數法),中文詞匯(姓名、地名處理)等分詞處理。優化的詞典存儲,更小的內存占用。
支持用戶詞典擴展定義,針對Lucene全文檢索優化的查詢分析器IKQueryParser(作者吐血推薦);采用歧義分析算法優化查詢關鍵字的搜索排列組合,能極大的提高Lucene檢索的命中率。
您可能感興趣的文章:- IKAnalyzer結合Lucene實現中文分詞(示例講解)
- python使用jieba實現中文分詞去停用詞方法示例
- java中文分詞之正向最大匹配法實例代碼
- python中文分詞教程之前向最大正向匹配算法詳解
- Python中文分詞工具之結巴分詞用法實例總結【經典案例】
- Python結巴中文分詞工具使用過程中遇到的問題及解決方法
- php實現的中文分詞類完整實例
- 開源php中文分詞系統SCWS安裝和使用實例
- PHP中文分詞 自動獲取關鍵詞介紹
- PHP中文分詞的簡單實現代碼分享
- IKAnalyzer使用不同版本中文分詞的切詞方式實現相同功能效果