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