CRF++地名实体识别(特征为词性和词)
发布日期:2021-08-16 13:27:26 浏览次数:51 分类:技术文章

本文共 6048 字,大约阅读时间需要 20 分钟。

http://x-algo.cn/index.php/2016/02/29/crf-name-entity-recognition/

 

类似使用CRF实现分词和词性标注,地域识别也是需要生成相应的tag进行标注。这里使用的语料库是1998年1月人民日报语料集。最终学习出来的模型,对复杂的地名识别准确率(F值)非常低,推测是预料中对地名的标注多处是前后矛盾。例如  [华南/ns 地区/n]ns  标为地名实体,但是 东北/f 地区/n 确分开标注,类似错误还有很多。将来有时间可以考虑使用微软的词库 。

本文还是在人民日报的语料之下,在分完词的粒度BMES标注最后效果如下:

由于单字识别F值很高,并且数量多,所以整个识别的效果还是很高。 语料、相关代码下载:,下面为具体流程。

文章目录 []

生成训练和测试数据

通过一个python脚本按照一定比例生成训练和测试数据,生成过程中按照BMES对语料进行标识,具体规则如下:

实体识别-地点标注集定义

通过调用脚本: cat people-daily.txt | python get_ner_loc_train_test_data.py  >log 生成所需要的训练和测试数据,中间过程打印出来很多调试信息,打印到标准输出话费较多时间。具体代码如下(已折叠):

 

模板文件

 

 

开始训练和测试

通过下面命令执行训练和测试过程:

 

分类型计算F值

通过执行: python clc.py test.rst 执行脚本,脚本内容如下:

 

参考文献

基于 CRF和规则相结合的地理命名实体识别方法 何炎祥1,2 罗楚威2 胡彬尧

转载于:https://www.cnblogs.com/DjangoBlog/p/6782872.html

转载地址:https://blog.csdn.net/weixin_30807779/article/details/98159493 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:automake--关于两个文件configure.in和Makefile.am的编写
下一篇:图示/白话 ll_rw_blk.c

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年03月29日 00时37分31秒