知识图谱描边1.2——NER&CRF&数据标注

略多

named_entity_recognition

命名实体识别公司实操——详细步骤(raw数据+标注+数据集处理+crf)
项目的github地址

任务目标


从一些工厂、单位的日常检查日志中,识别出隐患设备实体和地点实体,如下表:

隐患日志隐患地点隐患设备
1轧钢部一轧反吹压力表未校验轧钢部反吹压力表
2铸管4.0施工现场多处气瓶间距不符合要求铸管、4.0施工现场气瓶
………………
121煤气职业危害告知牌检测数据未更新 煤气职业危害告知牌

ps:上表的顺序仅是实例展示,不代表selected_data.xlsx中的真实情况。
实验步骤:
1、将每一句话用BIO标注方式标注
2、写dataloader
3、使用crf模型训练
下面我们介绍详细的标注工具及步骤


数据标注:

  • 想要的训练数据集展示如下:

image.png
善其事而先利其器,采用YEDAA这个python开源工具包来标注,运行后界面长这样:
image.png

  • 使用时几点注意:

1、操作方法是用英文写的,基本能涵盖你的使用要求,花几分钟时间建一个txt文件练练就会了;
2、目前YEDDA(2020.11)只支持Python2,我用conda创建了一个py2环境;
3、支持直接导入文件(open按钮),我使用的是txt格式;
4、支持导出形式设置,标注完成后点击Export按钮即可输出,我们会得到一个.anns文件;
5、可设置快捷键命令,一键标注光标内文本
6、荧光笔标记的标签如果挨着,一定要避免重叠,一个字符的重叠都不可以,否则会出现如下错误:
image.png

数据集处理

  • 数据分析:

数据量只有121句,划分为10:1(110对train数据。11对val数据,也就是用来测试的。

  • 流程:

①把121个sentence和tag对以(s,t)的形式加载到内存(load_dataset)
②用固定的随机种子打乱顺序
③划分列表,再分别存储为train.txt和val.txt
image.png

CRF模型

阅读 138

可傻了!

1 声望
0 粉丝
0 条评论

可傻了!

1 声望
0 粉丝
宣传栏