发布于 2017-01-09 03:18:01 | 142 次阅读 | 评论: 0 | 来源: 网友投递
jcseg 基于mmseg算法的中文分词器
jcseg是使用Java开发的一个开源的中文分词器,使用流行的mmseg算法实现。是一款独立的分词组建,不是针对lucene而开发,但是提供了最新版本的lucene和solr分词接口。
Jcseg 2.1.0更新内容:
一,新增功能:
01,词库增加词条实体标识和识别,方便应用对切分出来的词条做词条类别识别和应用,例如:时间,地点(比词性和实体识别更灵活,可以持有n种自定义实体类别),后续会增加更多类别的实体识别。
02,新增了NLPSeg切分模式,用于NLP分析,继承自复杂模式,修改了数字,单位等词条的组合形式,增加电子邮件,大陆手机号码,网址,地名,人名,货币等实体的自动识别。
03,分隔符切分模式,对输入流直接按照单个分隔符(默认是空格)切分,特殊应用场景需求(个人项目需求开发)。
04,增加对目前最新版本的lucene-6.3.0的支持。
05,增加对目前最新版本的solr-6.3.0的支持。
06,增加对目前最新版本的elasticsearch-5.1.1的支持。
07,bug修复:DictionaryFactory#createSingletonDictionary loadDic参数无效bug修复。
二,优化功能:
08,优化Jcseg的英中组合词条的识别算法,之前的除类似“x射线”等英中混合词识别外,其他的类别的混合词维护过于麻烦,全部混合词库统一到lex-mixed.lex中管理或者新建词库;形如:x射线,卡拉ok,哆啦a梦等这类混合词条直接丢入lex-mixed.lex词库中即可。
09,部分词库类别合并到主类别(中英组合,英中组合,英文标点,英文词库),方便维护,也是为Jcseg的NLP计划做准备。
10,优化了词库加载的检测(关于各类词条对于config.max_length的检测验证)。
11,增加英文词条最大长度为64个字符的限制,防止输入很长的无空白英文字符串导致可能的内存溢出。
12,优化了jcseg-server模块的api数据处理,简化了api数据返回格式,请参考README文档。
13,词库优化,将ip2region中的全部地域词库合并到了lex-place.lex中作为统一地名词库。
14,优化了测试程序,关键字提取,自动摘要提取,关键短语提取以及分词的6中模式全部可以在通过运行jcseg-core-{version}.jar来体验,按照如下提示输入切换操作即可:
+--------Jcseg chinese word tokenizer demo---------------+ |- @Author chenxin<chenxin619315@gmail.com> | |- :seg_mode : switch to specified tokenizer mode. | |- (:complex,:simple,:search,:detect,:delimiter,:NLP) | |- :keywords : switch to keywords extract mode. | |- :keyphrase : switch to keyphrase extract mode. | |- :sentence : switch to sentence extract mode. | |- :summary : switch to summary extract mode. | |- :help : print this help menu. | |- :quit : to exit the program. | +--------------------------------------------------------+ jcseg~tokenizer:complex>>
升级指南:
2.1.0版本因为的词库的更改和之前的版本有些不兼容,升级注意两点:
01,如果之前自定义过混合词库(中英,英中混合都一样),则需要将混合词库的第一行的类别标识更改为:CJK_WORD,不然会不兼容而出现没法识别混合词的情况。
02,如果之前自定义过词库文件格式,2.1.0开始词库文件硬编码使用“lex-”开头和“.lex”结尾,jcseg.properties中关于此功能的配置项已经无效。
03,因为elasticsearch 5.1.1开始必须java 8才能运行,目前jcseg默认的编译版本变成了1.8如果你的产品没法同步,请删除elasticsearch模块,然后更改pom.xml中的版本重新编译即可。
下载地址:
1,大码云(推荐):http://git.oschina.net/lionsoul/jcseg/tree/v2.1.0-release
2,github:https://github.com/lionsoul2014/jcseg/tree/v2.1.0-release
3,maven仓库同步中。