前提:在招投标数据领域中,我们对IT类的数据进行了NER提取,发现其精度一直在73-79之间,即使调整相关参数难以提升(当然没有考虑用bert)。下面是我从规则方面提升精度的方法记录:
这个是刚刚开始训练的情况:
下面都是对上面的精度提升的记录
1,总的方法:
去除无用标签,且标签F1精度不高于30的。
依据NER的精度提升优化来改动了相关的参数,降低学习率,调低loss值
预处理数据删除干净,如:前端网页标签、\t、\n 和空格等等
模型+规则的过滤匹配,清理掉无用的数据
数据在输入模型做数据提取时要将太长的文章进行切分。
2,注意重点
过滤数据规则如何确定?
正则提取部分标签数据的规则有那些?
3,解决办法
详细观察数据本身,和it行业招投标数据又什么共同的特征。
因为了解了所处的行业后就要知道文本数据里面的实体是个什么规律,了解到规律了,就好做实体的提取和关键词的规则提取和过滤。
4,观察数据,查看数据的规律:
我把所有我打上标签的数据都拿出来查看寻找规律和相关关键词;
查看 采购招标金额的数据分布描述情况:
招投标项目的采购内容描述情况:
中标金额的数据分布描述情况
然后对相关的数据和关键词进行汇总记录
金额描述的汇总,和通过查看近500条文本数据,在加上对it行业的数据了解到招投标行业的情况 做的金额的各个关键词汇总
5,采购内容的规则提取关键词-代码部分
6,项目名称关键词规则提取部分
7,将句子分割
8,中标金额和采购金额关键词规则过滤部分
9,其他相关规则的过滤和提取
10,查看开始时训练的精度:
11,这个是人工测试的第一个版本的精度
12,在第一次人工测试后对提取错误的实体进行规则的补充和完善。然后开始对第二个版本,测试精度如下:
**
虽然精度不是很高。但是有了很大的提升在精度方面。
**