开发者社区 > ModelScope模型即服务 > 自然语言处理 > 正文

【AdaSeq论文解读】COLING-22基于RaNER的垂直行业NER优化

本文介绍阿里达摩院NLP团队在垂直领域(地址文本、电商文本)NER的优化探索,相关工作发表于 COLING 2022:https://arxiv.org/pdf/2208.12995.pdf

**论文标题:**Domain-Specific NER via Retrieving Correlated Samples

代码链接:https://github.com/modelscope/AdaSeq/tree/master/examples/RaNER

1 简介

基于大量有标注数据的有监督机器学习是目前命名实体识别 (Named Entity Recognition, NER) 技术的主流,但是这一范式可能会在某些特殊领域上遇到问题,比如地址文本上的NER。

下图展示了地址元素NER的一个例子,模型需要识别出给定地址文本中的 省-Prov, 市-City, 兴趣点-POI 等地址元素。在此例子中,模型错误的预测出了“白城镇”和“赉县火车站”,如果不知道正确答案“白城”和“镇赉县”的相关背景知识,即便是人来识别也会出现同样的错误,因为这是十分符合地址元素的常规模式的,即“XX镇”和“XX火车站”。

image

而如果我们能够获取到很多相似的样本补充信息,我们就可以从样本观察、归纳、总结出“白城”是一个市,“镇赉县”是一个县。

2 方法

为了让模型也能建模和获取相似样本所蕴含的知识,我们使用 elasticsearch 为输入文本检索top k无标注相似样本,然后探索了两种建模方法。

2.1 实体投票 Entity-Voting

最简单的一种方法就是,先平行的对所有相似样本,然后对相同的文本片段进行标签的多数投票,比如所有的“白城”的标签进行投票,大多数都是 city 标签,那么我们最终输入文本中的“白城”就是city。

针对地址领域的文本特性,我们在实体投票时,会将常用的后缀去除,也就是说“白城”和“白城市”是一起计算投票,这一trick很有效。

这种方法不需要重新训练模型,只需要对所有的文本进行预测,然后投票统计即可。

2.2 相似样本建模 Cross-Encoder

为了更进一步的在模型编码时捕捉相似样本所蕴含的信息,我们使用 cross-encoder 对输入文本和相似样本进行联合编码。

具体的,我们将输入文本和其多个相似样本拼接到一起,输入预训练语言模型提取特征编码,然后只保留输入文本的特征用于NER解码,相似文本的特征直接扔掉。

image

3 实验

我们在 CCKS 2021 地址解析数据集 上进行实验,在内部的4亿无标注地址文本库上使用 elasticsearch 为每条有标注数据检索相似样本。

我们使用预训练模型 NEZHA 和 BiLSTM-CRF 模型 作为 baseline 结构,详细参数设置请参见论文3.1节。实验结果见下表,可以看到基于相似样本的实体投票 (Entity-Voting) 可以相比基线模型 (NEZHA-BC) 有一定提升,而基于相似样本的 Cross-Encoder 建模能进一步提升性能。

image

我们也对最有效的 Cross-Encoder 方法进行了更多实验,比如随机采样50%,10%等比例的训练数据,模拟低资源场景,发现训练数据越少,提升越多。另外类似的,拼接的相似样本越多,提升越多。

image

基于相同的技术,我们也在电商NER数据上进行了实验,同样有效。

image

4 总结

在本文中,我们提出检索使用相似样本来提升垂直领域NER性能,以及 Entity-Voting 和 Cross-Encoder 两个简单的相似样本建模方法,在 地址 和 电商 两个特殊领域上的实验验证了方法的有效性。

如对相关技术比较感兴趣,欢迎关注我们的「AdaSeq序列理解技术」专栏,github主页,加入我们的钉钉群 (4170025534) 进行技术交流。

展开
收起
游客tqsxlcu6ie37g 2023-04-14 17:24:37 698 0
0 条回答
写回答
取消 提交回答

包含命名实体识别、文本分类、分词、关系抽取、问答、推理、文本摘要、情感分析、机器翻译等多个领域

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载