https://github.com/shibing624/crf-seg
crf-seg:用于生产环境的中文分词处理工具,可自定义语料、可自定义模型、架构清晰,分词效果好。java编写。
https://github.com/shibing624/crf-seg
crf nlp
Last synced: 12 days ago
JSON representation
crf-seg:用于生产环境的中文分词处理工具,可自定义语料、可自定义模型、架构清晰,分词效果好。java编写。
- Host: GitHub
- URL: https://github.com/shibing624/crf-seg
- Owner: shibing624
- License: apache-2.0
- Created: 2017-06-06T08:12:02.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-12-11T15:03:26.000Z (almost 4 years ago)
- Last Synced: 2025-03-31T04:41:23.912Z (7 months ago)
- Topics: crf, nlp
- Language: Java
- Homepage: http://www.borntowin.cn:8080/xmnlp
- Size: 256 KB
- Stars: 14
- Watchers: 3
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# crf-seg
**crf-seg**是CRF模型用于自然语言处理(NLP)的Java工具包,目标是普及自然语言处理在生产环境中的应用。
**crf-seg**具备性能高效、架构清晰、语料时新、可自定义语料、可自定义模型的特点。#### author:xuming(shibing624)
#### environment:jdk 1.8
#### 演示页面 http://www.borntowin.cn:8080/xmnlp----
#### CRF模型对新词有很好的识别能力,对繁体字的处理及专有名词识别良好,但开销较大。是目前中文分词效果最好的模型,可用于生产环境。
## 使用
模型文件需要另外下载,并不包含在源码中,网盘下载:http://pan.baidu.com/s/1skQW35j,放置在 data/model/segment 下。##### crf-seg调用方便:
`
System.out.println(Xmnlp.crfSegment("你好,欢迎使用CRF分词工具!"));
`## 训练自定义模型
1. 使用GenerateBMESDemo(位于test中的org.xm.xmnlp.demo下)生成自己数据的序列标注集,之后用crf++生成crf模型。
2. 提供熟语料参考文件以及我用GenerateBMESDemo生成的测试文件,可以作为格式参考,网盘下载:http://pan.baidu.com/s/1eStd0jg 。
3. 提供人民日报2014版标注的分词数据,网盘下载:链接:http://pan.baidu.com/s/1gfae4Zh 密码:l506 。尊重版权,传播请注明出处。
4. 提供linux版和windows版的crf++模型生成工具,网盘下载:http://pan.baidu.com/s/1skKkTgL 。
5. 请通过命令行参数指定CRF++生成txt格式的模型,比如:
crf_learn -f 3 -c 4.0 template train.bmes.txt crf-simple.model -t
然后将生成的 crf-simple.model.txt 的路径替换到配置项CRFSegmentModelPath,首次运行后会得到相应的 crf-simple.model.txt.bin 文件;
下次加载时会直接从bin缓存加载,速度会快很多。