FoolNLTK之前发布了分词等功能,但很多场景需要自定义模型,现发布训练代码,只需要准备好训练数据,其他交给工具完成。
另外修改了之前用户词典合并局部出现的 Bug。
提供训练和模型调用接口详情查看项目地址。
FoolNLTK是一款中文处理工具包
特点
- 可能不是最快的开源中文分词,但很可能是最准的开源中文分词
- 基于BiLSTM模型训练而成
- 包含分词,词性标注,实体识别, 都有比较高的准确率
- 用户自定义词典
- 可训练自己的模型
用户自定义词典
词典格式格式如下,词的权重越高,词的长度越长就越越可能出现, 权重值请大于1
难受香菇 10 什么鬼 10 分词工具 10 北京 10 北京天安门 10
加载词典
import fool fool.load_userdict(path) text = "我在北京天安门看你难受香菇" print(fool.cut(text)) # ['我', '在', '北京天安门', '看', '你', '难受香菇']
删除词典
fool.delete_userdict();
词性标注
import fool text = "一个傻子在北京" print(fool.pos_cut(text)) #[('一个', 'm'), ('傻子', 'n'), ('在', 'p'), ('北京', 'ns')]
实体识别
import fool text = "一个傻子在北京" words, ners = fool.analysis(text) print(ners) #[(5, 8, 'location', '北京')]
转自 http://www.oschina.net/news/92403/foolnltk-release-training-code