当前位置: 首页 > 工具软件 > FoolNLTK > 使用案例 >

python3 FoolNLTK 自然语言处理 分词

翟渝
2023-12-01

原文链接: python3 FoolNLTK 自然语言处理 分词

上一篇: neo4j 导入数据的优化

下一篇: Python3 豆瓣登录并评论,保存登录状态

github

https://github.com/rockyzhengwu/FoolNLTK

特点

  • 可能不是最快的开源中文分词,但很可能是最准的开源中文分词
  • 基于 BiLSTM模型 训练而成
  • 包含分词,词性标注,实体识别, 都有比较高的准确率
  • 用户自定义词典

Install

需要提前安装TensorFlow,否则无法使用

pip3 install foolnltk
pip3 install tensorflow

使用说明

分词

import fool

text = "一个傻子在北京"
print(fool.cut(text))
# ['一个', '傻子', '在', '北京']

命令行分词

python -m fool [filename]

用户自定义词典

词典格式格式如下,词的权重越高,词的长度越长就越越可能出现, 权重值请大于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', '北京')]

注意

  • Python2 暂时不支持是因为数据文件是pickle读取的,Python2和Python3不兼容,待修改
  • 有找不到模型文件的, 可以看下 sys.prefix ,一般默认为 /usr/local/
  • 暂时只在Python3 Linux 平台测试通过
 类似资料: