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