首页
登录 | 注册

用foolnltk工具包实现中文分词和命名实体识别

由于需要做中文的命名实体识别,网上搜到foolnltk是一个比较好用的工具,安装和使用的过程

1、安装
由于网络问题指定清华的源安装

2、使用

# 分词
import fool
text = '我在北京天安门'
print(fool.cut(text))

报错:FileNotFoundError: [Errno 2] No such file or directory:’/usr/fool/map.zip’`
是因为安装的模型包放在了程序找不到的地方
搜到作者提供的解决办法:把 /home/yang/.local 路径下的fool文件整个拷贝到sys.prefix下,查看sys.prefix:

import sys
sys.prefix

路径为:/usr
这样就可以使用分词、词性标注以及命名实体识别功能

# 词性标注
print(fool.pos_cut(text))
# 命名实体识别
words,ners = fool.analysis(text)
print(ners)

其中输出的ner[0][0][2]如果是’location’表明有地名
ner[0][0][3]为提取的地名

自定义用户词典:
难受香菇 10
什么鬼 10
分词工具 10
北京 10
北京天安门 10
(数字是权重,应大于1)
加载用户词典:

另外,作者提供了自己训练模型的方法
自训练模型



2020 jeepxie.net webmaster#jeepxie.net
10 q. 0.008 s.
京ICP备10005923号