Deep Span Representations for Named Entity Recognition

原文链接:

https://aclanthology.org/2023.findings-acl.672.pdf

ACL 2023

介绍

        问题

        作者认为,一个好的span表征对于NER任务是非常重要的,而之前的工作都是将第一个或最后一个的表征简单的进行组合后,没有进行充分的交互就送入到实体分类器中进行分类,不利于长实体的识别,并且对于嵌套实体中共享token的情况下,会导致产生的span是相似的。

        IDEA 

         作者提出了DSpERT模型,该模型包括了一个transformer和一个span transformer(用于span 表征和token表征之间的交互),来获取span的深层表征。

方法

         整体的结构如下图所示:

Deep Token Representations

         第l层的token表征为:

        最初的H^{0}由token embedding、positional embedding和segmentation embedding组成。

TrBlock由一个多头注意力模块和一个position-wise前馈网络(FFN)组成,并在其中加入了残差连接和层归一化。经过L层计算得到的token表征H^{L}被认为是包含了深层且丰富的语义,可用于各种任务,因此在典型的NLP范式中,只对顶层的H^{L}计算损失和解码。

Deep Span Representations

         在大小为k的span transformer中,使用对应的token embedding进行初始化,

        s_{i}^{0,k}覆盖了(i,i+k)这个span中的token embedding。

        span表征高层的计算与标准的transformer相似,对于每个span transformer block,query是低层的span 表征,k和value是上述span的position向量。第l层的span表征表示为:

        将最后一层的span 表征用于实体分类。另外,这里的SpanTrBlock与token中的TrBlock的结构一致,并且初始化参数也是一致的。作者尝试将这两个模块共享同一个transformer,但这样会导致模型性能下降。

Entity Classifier

        在进行解码前,先对span进行了降维,整个分类过程如下所示:

        使用one-hot对ground truth标签进行编码,计算每个span的loss:

实验

对比实验

         在多个英文嵌套实体数据集上进行实验,结果如下所示:

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

消融实验

        作者对span representation的深度进行了消融实验,结果如下所示:

        为了更好的严重模型在嵌套实体上的表现,作者将nest ner分为两类:

        1)被嵌套在其他真实实体中;

        2)覆盖在其他真实实体中;

        比如“New York University”,作者认为一个好的模型要能够做到:1)将“New York”与外部实体“New York University”内的其他span区分开来;2)将“New York University”与涵盖的内部实体“new York”的其他span区分开。

        对模型在不同长度span上的表现进行了实验,如下所示:

        可以看出在长实体上,作者提出的模型明显优于简单的span 表征。

        在不同嵌套结构下的实验结果:

分析 

         对于神经网络中的分类模型,logits只和预定的分类类别有关,而pre-logit(我理解为在算分数前的表征)表征包含了更丰富的信息。作者通过研究pre-logit span表征,来探究为什么深度的span 表征会比简单表征更好的。

        通过计算实体共享的token个数来表示两个实体之间的重叠率,计算实体与其邻居实体之间的余弦相似度。

        可以看出,DSpERT与简单模型在非嵌套上的表现相近,然而对于嵌套率越高的实体,简单模型生成的表征要比DSpERT相似度更高,即简单模型会产生跨度重叠的表示,而DSpERT生成的表征之间相似率更低,在嵌套实体上产生更好的性能。

         计算了不同类别(positive和negative)之间的L2范式和余弦相似度,可以看出深度表征在类别之间具有较低的相似度、在类别内具有较高的相似度。

        对span的表征进行PCA降维进行可视化,也可以看出作者提出的deep 表征在别类之间有更明显的界限,各个类别联系也更加紧密。

总结 

        作者认为在span NER中,最小的建模单元应该是span而不是token,并且作者探讨了该模型的局限性,时间开销很大,是普通模型的5倍。因此可以看作该模型是用了时间来换取了精度,并且只是对表征进行了处理,其他地方都没有什么创新点,12层的transf,这是往死里丰富span啊,,

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 查看CPU架构是AMD还是ARM

要查看 Linux 系统的 CPU 架构是 AMD 还是 ARM,可以使用以下命令: 使用 lscpu 命令并查找 Architecture 字段: lscpu | grep Architecture如果输出结果中包含 x86_64 或 i686,则表示系统的 CPU 架构是 AMD(或者是 x86…

android去掉 原生锁屏

1. /frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java 直接 return true 2./packages/apps/Settings/src/com/android/settings/password/ScreenLockType.java 都改成 none 类型

软件定义网络-OpenvSwitch

软件定义网络(SDN)。它主要有以下三个特点: 控制与转发分离:转发平面就是一个个虚拟或者物理的网络设备,就像小区里面的一条条路。控制平面就是统一的控制中心,就像小区物业的监控室。它们原来是一起的&…

xxl-job分布式调度框架

课程目标 1、 掌握xxl-job部署以及开发的方式 2、 掌握xxl-job特性以及架构设计 3、 掌握xxl-job运行原理 内容定位 适合已经掌握了Quartz的同学 quartz这节课是本节课的基础,这个要求大家一定掌握,因为xxl-job早期就是使用quartz改造的&#xff0…

基于微信小程序的高校就业招聘系统设计与实现(源码+lw+部署文档+讲解等)

前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 👇🏻…

【OLSR路由协议】链路状态路由(OLSR)协议中选择多点中继节点算法研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Simulink 封装

快捷键: Edit Mask:CtrlM Look Under Mask:CtrlU 封装之后的模型: Edit Mask界面: 双击模块后的提示界面: 封装的模块内部:

软件测试-测试用例

软件测试-测试用例 1.什么是测试用例 为了实施测试而向被测系统提供的一组集合。这组集合包括测试环境、操作步骤、测试数据、预期结果等要素。 举例:对一个垃圾桶设计测试用例 2.设计测试用例的万能公式 设计测试用例的万能公式:功能测试性能测试界…

国产手机芯片4G方案_紫光展锐安卓核心板虎贲4G智能模块方案定制

元器件清单即BOM物料清单,不同行业领域的BOM表侧重点不一样。安卓主板的BOM表则侧重点在于元器件物料的清单,也就是安卓电路板的PCBA清单,精密的安卓板有上千个物料,可以帮助我们估算物料成本,建立生产计划&#xff0c…

单日 5000 亿行 / 900G 数据接入,TDengine 3.0 在中国地震台网中心的大型应用

小T导读:为满足地震预警数据存储、检索和处理的建设与集成需求,以及响应国家国产软件自主可控的号召,中国地震台网中心决定选用国产数据库 TDengine 来存储和处理地震波形数据。本文将针对 TDengine 3.0 在地震领域的应用展开详细讲解。 关于…

Tensorflow Federated Framework 谷歌联邦学习框架

目录 Tensorflow Federated Framework 谷歌联邦学习框架 1、TensorFlow Federated Framework 数据为主 整体训练 新的语言 Federated Learning (FL) API 安装TFF库(conda) 2、数据类型 3、完整代码 Tensorflow Federated Framework 谷歌联邦学习…

系统架构设计师(第二版)学习笔记----软件工程

【原文链接】系统架构设计师(第二版)学习笔记----软件工程 文章目录 一、软件工程1.1 软件危机的表现1.2 软件工程的内容 二、软件过程模型2.1 软件的声明周期2.2 瀑布模型2.3 瀑布模型的缺点2.4 原型模型2.5 原型模型开发阶段2.6 开发原型的途径2.7 螺旋…

leetcodeTop100(21) 相交链表

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 双链表…

SAP PO运维(一):系统概览异常处理

打开SAP PIPO Netweaver Administration界面,系统概览下显示异常: 参考SAP note: 2577844 - AS Java Monitoring and Logging parametrization best practice service/protectedwebmethods = SDEFAULT -GetVersionInfo -GetAccessPointList -ListLogFiles -ReadLogFile -Para…

基于微信小程序的宠物用品商城设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言系统主要功能:具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

Jmeter配置性能监控插件

一、版本不兼容时,有报错 1、当jmeter版本比较高时,只需要从官网安装jmeter-plugins-manager-1.10.jar一个包 2、当jmeter版本较低时,安装JMeterPlugins-Extras-1.4.0.zip、JMeterPlugins-Standard-1.4.0.zip内两个jar包 3、服务器上传文件…

Vue实现Hello World

<div id"aa"> <p>{{h}}</p> </div> <script src"https://cdn.jsdelivr.net/npm/vue2/dist/vue.js"></script> <script> const hello new Vue({ el:#aa, data:{ h : Hello World } }) </script>

『C语言进阶』qsort函数及模拟实现

&#x1f525;博客主页&#xff1a; 小羊失眠啦 &#x1f516;系列专栏&#xff1a; C语言 &#x1f325;️每日语录&#xff1a;没有退路&#xff0c;只能让自己变得强大 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 前言 在上篇指针进阶中&#xff0c;我们对函数指针、函数…

Zookeeper-集群介绍与核心理论

Zookeeper集群 4.Zookeeper集群4.1) 介绍4.2) 核心理论 4.Zookeeper集群 4.1) 介绍 Leader选举&#xff1a; Serverid&#xff1a;服务器ID。比如有三台服务器&#xff0c;编号分别是1,2,3。编号越大在选择算法中的权重越大。Zxid&#xff1a;数据ID。服务器中存放的最大数据…

用CNC网关推动工业自动化革命

在当今的工业自动化领域&#xff0c;机床&#xff08;CNC&#xff0c;计算机数值控制&#xff09;已成为制造业的重要支柱。然而&#xff0c;这些复杂的设备在数据收集、通信和集成方面通常面临诸多挑战。其中&#xff0c;CNC转Modbus网关为解决这些问题提供了有效的解决方案。…