Boundary Smoothing for Named Entity Recognition

news2024/11/24 12:46:26

原文链接:https://aclanthology.org/2022.acl-long.490.pdf

ACL 2022

介绍

问题

        作者认为在命名实体任务中,由于实体的边界标注存在模糊、不一致的情况,比如一些实体中的冠词和修饰词。如下图所示中蓝色框和红色框中的内容都可以被认为是同一个实体,而目前基于span的NER模型,对于边界不正确的预测都认为是完全错误的,但是对于部分实体来说边界的区分并不是很明显,而这种硬标签性的评判就会导致模型受到干扰。

idea 

         因此作者受图像分类任务中标签平滑(比如标签(0,1)准换为: [0, 1] * (1 - 0.1) + 0.1/2 = [0.05, 0.95])的启发,提出了boundary smooth,用于span-based的NER模型的正则化技术,将实体概率从标记的span重新按曼哈顿距离平均分配到其周围的span

方法 

        作者所提出的只是一个减少过拟合的方法,由于主要改动是在decoder部分,因此对使用的Biaffine decoder进行了介绍,再介绍提出的boundary smoothing的应用。

Biaffine Decoder 

        对输入序列encode得到序列表征:x = x_{1},x_{2},x_{3},,,,x_{T},T表示序列的长度。

        decoder部分使用Biaffine作为baseline,两个前馈网络分别对x进行拟合,生成两个表征:h^{s}\subseteq R^{T\times d}h^{e}\subseteq R^{T\times d},分别对应于span的起点和终点。

        对于c个实体类别,给定一个span(i-j),使用以下公式计算出分数向量r_{ij}\subseteq R^{c}并送入一个分类器,得到这个sapn预测的分数\hat{y}_{ij} 

        其中wj-i表示可学习矩阵中(j-i)宽度的embedding,U、W、b都是可学习参数。 

        ground-truth类别使用one-hot进行编码,该模型的交叉熵损失函数如下所示:

        在推理阶段,首先回对被预测为“non-entity”标签的span进行丢弃,然后按预测的分数进行排序,如果存在边界冲突的span,则会丢弃掉分数较低的span。 

Boundary Smoothing

        作者对句子中标注了两个实体的例子进行了可视化来解释boundary smooth,如下图所示。在之前的NER模型中,被标注的span肯定是一个实体,其他区域都不可能是实体,作者将这种称为hard boundary。但实体的边界是比较模糊的,因此作者将标记span周围的token也分配一定的可能性(\epsilon),原标记span的分数为(1-\epsilon)如b部分所示。

         

        主要是对原来标记的span周围的span分配一些分数,在平滑度为D时,所有与被标记实体的曼哈顿距离在d(d<D)以内的span都平分概率\epsilon / D。这样进行调整后还可能性为0的span 分配“non-entity”标签。因此biaffine模型的损失函数修改为以下形式:

         其中为\tilde{y}_{ij}^{T}平滑处理后的分数。

         在数据集中,正样本被离散的分配到这些候选span上,原始数据集中一共有378万的候选span,但是仅有3.5w的实体,也就是说正样本只有0.93%,通过标签平滑将可能性分配给标注实体周围的span,也可以缓解原始数据集中正负样本不平衡的问题。

实验

对比实验

         在英文数据集上进行实验,结果如下所示:

         在中文数据集上的实验结果如下所示:

消融实验

         作者对边界平滑的参数\epsilon和D的取值,以及使用标签平滑来代替边界平滑这两个内容进行了实验,结果如下所示:

         作者提到该超参数的设计与数据集有关,在新的数据集上进行实验则需要对参数进行微调。

        另外,作者认为标签之前是没有相关性的,因此使用标签平滑不仅不能提升模型的性能,甚至还会降低模型的消息(但是实验部分没有表现出来)。

        作者对模型的结构进行了消融实验,即在多个baseline上对所提出的边界平滑进行了实验,以证明该方法的鲁棒性。作者还将Robert与biaffine之间的BiLSTM进行了实验,结果表示去掉BiLSTM后,虽然模型的性能出现了一定的下降,但也没有改变边界平滑所起到的积极作用。

分析 

         《On calibration of modern neural networks》中指出,模型产生的预测置信度不太能代表真实的正确性概率( poorly calibrated)。因此作者对加入边界平滑的模型这方面性能进行了验证,将预测出的实体按对应的置信度分为10组,然后计算每个组的精确度,如果模型具有较好的calibrated,即精确度应该接近每个组的置信度。结果如下所示:

        作者在CoNLL2003和OntoNotes5上进行了实验,可以看出加了边界平滑的模型具有更好的calibrate,也就是模型预测出的置信度与真实发生的概率是比较接近的。

        作者之前认为边界平滑可以去掉标注不一致所产生的噪声,但是在训练数据集中加入这样的边界噪声数据后,效果并没有得到明显的提升,因此作者对于该猜想并没有找到足够的证据(该部分也没有没实验数据展示)。

        作者在不同的平滑度下进行了实验:

        可以看出使用标准的交叉熵损失会比使用界平滑更加的sharp,从而导致找到的接近方案相对尖锐,而边界平滑可以达到一个平坦的最小值,而很多理论研究认为模型的平滑度是模型泛化的一个相关因素,这就能解释边界平滑带来的提升。

总结 

        作者通过将标记span周围的span分配一定的概率,来减弱模型的过拟合,在多个baseline上都有一定的提升。(感觉这个跟前面有篇two-stage的方法中为部分匹配的span分配权重来优化loss有点像?实验证明soft example对于模型性能也是有一定的提升的)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/715389.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

静态断言 static_assert

文章链接: https://subingwen.cn/cpp/static_assert/ 1. 断言 断言&#xff08;assertion&#xff09;是一种编程中常用的手段。在通常情况下&#xff0c;断言就是将一个返回值总是需要为真的判断表达式放在语句中&#xff0c;用于排除在设计的逻辑上不应该产生的情况。 比如…

NeurIPS 2022 | UniAD,一个模型解决所有类别的异常检测!代码已开源

paper&#xff1a;A Unified Model for Multi-class Anomaly Detection&#xff0c;Accepted by NeurIPS 2022. GitHub - zhiyuanyou/UniAD: [NeurIPS 2022] A Unified Model for Multi-class Anomaly Detection Introduction 异常检测已经取得了非常突出的进展。考虑到异常…

测试流程实战

目录&#xff1a; 测试流程梳理业务架构分析实战测试用例管理实战Bug 录入与管理实战如何写 Bug 报告编写 Bug 报告 1.测试流程梳理 2.业务架构分析实战 使用 plantuml 完成雪球 app 登录流程时序图plantuml 官网&#xff1a;使用简单的文字描述画UML图的开源工具。plantuml…

智云通CRM:电子元器件企业优化客户管理的智慧选择

在电子元器件行业&#xff0c;客户管理一直是企业发展的关键所在。如何高效地管理客户&#xff0c;提升销售业绩成为电子元器件企业亟需解决的问题。而智云通CRM作为一款专为企业客户管理和销售管理而生的软件&#xff0c;正成为电子元器件企业优化客户管理的智慧选择。 首先…

vue基础语法

目录 1&#xff1a;vue基础语法 2&#xff1a;内容渲染指令&#xff08;操作标签体中的内容&#xff09; 2.1&#xff1a;v-text指令 2.2&#xff1a;插值语法{{}}语法&#xff1a; 2.3&#xff1a;v-html指令 3&#xff1a;属性绑定指令 4&#xff1a;事件绑定&#xf…

我的大模型观:我眼中的LLM和AIGC

今年&#xff0c;大模型火的一塌糊涂。最近几个月paper with code上&#xff0c;前几名的论文几乎都是生成模型和LLM。参加AI相关的会议&#xff0c;也是千篇一律的LLM。国内的大厂争先恐后的发布自己的大模型&#xff0c;比如百度的文心、360的智脑、讯飞的星火等等&#xff0…

代码随想录算法训练营第三天 | 链表基础系列1-- 链表理论基础-移除链表元素-设计链表-反转链表(203、707、206)

链表基础系列1 链表基础移除链表元素203 移除链表元素代码随想录的代码 707 设计链表我的代码(错误太多&#xff0c;一致debug&#xff0c;没有用虚拟头&#xff0c;不想写了&#xff0c;是未通过的代码)代码随想录的代码小记&#xff1a;双链表好复杂&#xff0c;要仔细看。 2…

【狂神】MySQL - Delete 和 Truncate 的区别

1. DELETE 命令 语法 &#xff1a; delete from 表名 [where 条件] -- 删除数据 (避免这样写, 会全部删除) DELETE FROM student;-- 删除指定数据 DELETE FROM student WHERE id 1; 2. TRUNCATE 命令 作用 : 完全清空一个数据库表, 表的结构和索引约束不会变. -- 清空 stu…

【Linux】LVS+Keepalived高可用负载均衡群集

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 LVSKeepalived高可用负载均衡群集 一、Keepalived实现原理1.Keepalived案例分析2.Keepalived工具介绍3&#xff0c;Keepalived实现原理剖析4.Keepalived案例讲解5.Keepalived…

自媒体新手如何从零开始做自媒体?有哪些步骤流程?

自媒体已经成为了一种非常流行的个人创业方式&#xff0c;相比于传统的创业方式&#xff0c;自媒体的投入成本较低&#xff0c;且门槛较低。许多人都有一个梦想&#xff0c;希望成为一个自媒体人&#xff0c;成为自己的老板。但是&#xff0c;对于很多自媒体小白来说&#xff0…

基于Springboot+mybatis+mysql+vue实现企业注册模块功能

基于Springbootmybatismysqlvue实现企业注册模块功能 一、系统介绍二、功能展示1.主页面2.注册成功 三、数据库四、代码展示四、其他系统实现五、获取源码 一、系统介绍 该系统实现简单的企业信息注册&#xff0c;保存后&#xff0c;提示注册成功。 运行环境&#xff1a;idea…

IP 协议(网络层协议)

IP协议 IP 协议作用地址管理动态分配 IP 地址NAT 机制IPv6IP 地址的组成 路由选择 IP 协议作用 主要有两点 : 地址管理 为每个上网的设备分配一个唯一地址. 路由选择 两台主机间的信息交互, 具体走哪条线路. 地址管理 先来看看 IP协议 报文格式 : IP 协议最主要就是 32 位的…

2.9寸NFC卡片

应用广泛 无需电池 可挂、可横向/纵向摆放&#xff0c;适合多种场所 使用2.9寸电子纸墨水屏&#xff0c;持续显示不耗电 本产品无电池&#xff0c;节能环保&#xff0c;助力实现碳中和 ​ 基于电子纸墨水屏作为显示屏&#xff0c;符合当下节能环保、护眼的需求。质地轻薄、大…

Flameshot (火焰截图)截图无法插入汉字

前不久&#xff0c;Debian11升级至Debian12后&#xff0c;发现fcitx5无法用了&#xff0c;好似包也被删除了。于是重新安装了fcitx5,但发现了一个问题&#xff0c;利用Flameshot&#xff08;火焰截图&#xff09;截取图片时&#xff0c;无法对图片进行文字注释。如下图所示&…

HTML常用标签

1、HTML HTML Hyper Text Markup Language 超文本标记语言 Markup Language 标记语言 XML Extensible Markup Language 可扩展标记语言 HTML2HTML3HTML4XHTML1XHTML2HTML5 2 、HTML基本结构 3 、网页 header header 文档的开始部分 网页加载时&#xff0c;首先加载header…

Spring Cloud Config: 了解、原理和使用

Spring Cloud Config: 了解、原理和使用 Spring Cloud Config 是 Spring Cloud 生态系统中的一个重要组件&#xff0c;它提供了一种分布式配置管理的解决方案&#xff0c;能够集中管理应用程序的配置&#xff0c;支持多种后端存储&#xff0c;如 Git、SVN、本地文件系统、Vaul…

ADG环境下统计每天的归档

现场项目经理反馈&#xff0c;使用日常的归档查询sql看到每天的归档量都快2T了&#xff0c;截图出来确实 很大 查看每天的归档文件总量比当天的归档量少了一半左右&#xff0c;百度了很多案例&#xff0c;最后发现问题该环境是ADG一主一备&#xff0c;每天的归档量也传输到备库…

JavaScript(JS)的引入方法

内部脚本 JS代码必须位于<script></script>标签之间在HTML文档中&#xff0c;可以在任意地方&#xff0c;放置任意数量的<script>一般会把脚本置于<body>元素的底部&#xff0c;可以改善显示速度 外部脚本&#xff1a;将JS代码定义在外部JS文件中&…

0基础学习VR全景平台篇 第55篇:专业版功能-数据统计

使用蛙色VR平台数据统计功能&#xff0c;可以统计分析整个账号下【所有作品】的访问数据&#xff1b; 亦可分析单个作品中【每个场景】的访问数据。 账号数据统计功能位置 单作品数据统计功能位置 一、本功能将用在哪里&#xff1f; 数据统计功能&#xff0c;可实现对作品总访…

自发二元行为预测人际神经同步(INS)的出现

导读 人际神经同步(INS)正在成为预测多人协调、沟通和合作成功等社会互动的有力标志。由于对INS的起源知之甚少&#xff0c;本研究测试了INS是否以及如何从自发的二元行为中产生。要求一对参与者在不说话或做出共同语言手势的情况下互相看着对方&#xff0c;并记录他们的神经活…