常用中文分词- 整理收集

来源:互联网 发布:五浪真言知乎 编辑:程序博客网 时间:2024/05/20 10:22

 常用中文分词

1. 庖丁解牛分词包,适用于与Lucene整合。http://www.oschina.net/p/paoding
    庖丁中文分词库是一个使用Java开发的,可结合到Lucene应用中的,为互联网、企业内部网使用的中文搜索引擎分词组件。
    Paoding填补了国内中文分词方面开源组件的空白,致力于此并希翼成为互联网网站首选的中文分词开源组件。 Paoding中文分词追求分词的高效率和用户良好体验。
    Paoding's Knives 中文分词具有极 高效率 和 高扩展性 。引入隐喻,采用完全的面向对象设计,构思先进。
    高效率:在PIII 1G内存个人机器上,1秒 可准确分词 100万 汉字。
    采用基于 不限制个数 的词典文件对文章进行有效切分,使能够将对词汇分类定义。
    能够对未知的词汇进行合理解析

2. LingPipe,开源自然语言处理的Java开源工具包。http:/alias-i.com/lingpipe/
    功能非常强大,最重要的是文档超级详细,每个模型甚至连参考论文都列出来了,不仅使用方便,也非常适合模型的学习。
    主题分类(Top Classification)、命名实体识别(Named EntityRecognition)、词性标注(Part-of Speech Tagging)、句题检测(SentenceDetection)、查询拼写检查(Query Spell Checking)、兴趣短语检测(Interseting PhraseDetection)、聚类(Clustering)、字符语言建模(Character LanguageModeling)、医学文献下载/解析/索引(MEDLINE Download, Parsing andIndexing)、数据库文本挖掘(Database Text Mining)、中文分词(Chinese WordSegmentation)、情感分析(Sentiment Analysis)、语言辨别(Language Identification)等

3. JE分词包
4. LibMMSeg http://www.oschina.net/p/libmmseg
    采用C++开发,同时支持Linux平台和Windows平台,切分速度大约在300K/s(PM-1.2G),截至当前版本(0.7.1)。
    LibMMSeg没有为速度仔细优化过,进一步的提升切分速度应仍有空间。
5. IKAnalyzer http://www.oschina.net/p/ikanalyzer
    IKAnalyzer基于lucene2.0版本API开发,实现了以词典分词为基础的正反向全切分算法,是LuceneAnalyzer接口的实现。
    该算法适合与互联网用户的搜索习惯和企业知识库检索,用户可以用句子中涵盖的中文词汇搜索,如用"人民"搜索含"人民币"的文章,这是大部分用户的搜索思维;
    不适合用于知识挖掘和网络爬虫技术,全切分法容易造成知识歧义,因为在语义学上"人民"和"人民币"是完全搭不上关系的。
6. PHPCWS http://www.oschina.net/p/phpcws
    PHPCWS 是一款开源的PHP中文分词扩展,目前仅支持Linux/Unix系统。

    PHPCWS 先使用“ICTCLAS 3.0 共享版中文分词算法”的API进行初次分词处理,再使用自行编写的“逆向最大匹配算法”对分词和进行词语合并处理,并增加标点符号过滤功能,得出分词结果。

    ICTCLAS(Institute of Computing Technology, Chinese Lexical AnalysisSystem)是中国科学院计算技术研究所在多年研究工作积累的基础上,基于多层隐马模型研制出的汉语词法分析系统,主要功能包括中文分词;词性标注;命名实体识别;新词识别;同时支持用户词典。ICTCLAS经过五年精心打造,内核升级6次,目前已经升级到了ICTCLAS3.0,分词精度98.45%,各种词典数据压缩后不到3M。ICTCLAS在国内973专家组组织的评测中活动获得了第一名,在第一届国际中文处理研究机构SigHan组织的评测中都获得了多项第一名,是当前世界上最好的汉语词法分析器。

    ICTCLAS 3.0 商业版是收费的,而免费提供的 ICTCLAS 3.0共享版不开源,词库是根据人民日报一个月的语料得出的,很多词语不存在。所以本人对ICTCLAS分词后的结果,再采用逆向最大匹配算法,根据自己补充的一个9万条词语的自定义词库(与ICTCLAS词库中的词语不重复),对ICTCLAS分词结果进行合并处理,输出最终分词结果。

    由于 ICTCLAS 3.0 共享版只支持GBK编码,因此,如果是UTF-8编码的字符串,可以先用PHP的iconv函数转换成GBK编码,再用phpcws_split函数进行分词处理,最后转换回UTF-8编码。

原创粉丝点击