【菜鸡读论文】Cross-domain Named Entity Recognition via Graph Matching
【菜鸡读论文】Cross-domain Named Entity Recognition via Graph Matching
最近到了研一下学期,很多身边的同学也开始有了成果,但本菜鸡一点成果都没有【大哭】所以也没什么好写的。虽然菜鸡口头上不说,但内心也感受到非常之焦虑。最近读论文系列也没有很好的更下去,心里一直在想着五一要去哪里玩,菜并焦虑并摆烂,主打一个啥也干不好。所以这周要打起精神,好好的更新博客。

这篇文章是ACL2022的一篇关于跨域命名实体识别的论文,创新点主要是对源域和目标域标签不匹配问题提出一种将标签建模为标签图,并通过将源域和目标域的标签图进行图匹配来提升模型的预测性能。
背景
下面我们先来看一下这篇论文的提出背景:
- 跨域NER是一个实际但具有挑战性的问题,由于现实场景中的数据稀缺,获得足够的特定领域的数据通常是昂贵和耗时的。常见的做法是首先在丰富资源的一般领域学习NER模型,然后将模型适应特定领域。由于跨域实体类型之间的不匹配问题,一般领域的广泛知识不能有效地转移到目标域NER模型。
- 为此,我们将标签关系建模为一个概率分布,并在远标签控件和目标标签空间中构造标签图。为了增强标签结构的上下文表示,我们将标签图融合到BERT的单词嵌入输出中。通过将标签关系表示为图,我们将跨域NER表示为一个图匹配问题。
- 据我们所知,我们是第一个捕获跨域NER的标签图结构的人。在本研究中,我们专注于提高基于预训练-微调训练范式的跨域能力,只有目标域标记数据进行域适应。
下面我们先来看一下这个模型是如何通过标签图之间的图匹配来提高模型的性能,以下面这句“David was a member of both ACL and ICCL”为例

在本例中,“ACL”是目标域中的一个“会议(conference)”命名实体。当源域和目标域之间的标签集完美匹配时,源NER模型自然地以最高的概率预测“会议”。然后,目标模型直接从源域学习这个属性。当两个标签集不匹配时,源NER模型可以将“ACL”预测为一个“组织(organization)”,因为标签“组织”可以在源域中看到。通过源域中“ICCL”和“David”的得分分布,我们可以将它们与“ACL”的关系建模为图结构。然后,目标模型通过图匹配来学习标签结构,并正确的将“ACL”预测为“会议”。这样,即使当两个域的标签集不同时,也可以学习标签关系。
给定一个在源数据集上预训练的模型f0,在实验中假设只有目标数据集和模型f0可用,因为源数据集通常是非常大的。
接下来,我们来看一下完整的模型结构:

由于源标签集Ys和目标标签集Yt可能不匹配,所以f0不能直接应用于目标数据。一种常见的做法是将f0分为两部分:用于学习一般表示的主干网络(backbone)和用于将表示映射到标签空间的任务特定层(classifier)。在整个研究过程中,我们采用BERT作为我们的主干模型,而全连接(FC)层作为任务特定层。
Label Graph Construction
我们分别用源模型和目标NER模型的概率输出来构造源图和目标图。
我们将每个目标标签映射为源标签的概率分布。获得这个映射(即条件分布)的一种简单方法是对每个目标实体类型的所有样本的源数据的预测进行平均。

ys/yt为源/目标标签,T为平滑概率分布的温度参数,|Dt|为具有标签y的目标域训练样本数。预先训练好的模型f0被认为是一个近似于源标签ys上的概率分布p的概率模型。
接下来,我们构造源图Gs(Vs,Es),其中节点表示目标标签,边表示节点之间的语义相似性。为了消除不同维尺度的影响,我们将节点对的平均距离除以后对图节点进行归一化,以l2距离作为距离度量。


|Yt|为目标标签的数量,l2为距离函数。
然后当且仅当两个节点的距离小于阈值时,我们在两个节点之间加边。

与源图类似,我们通过微调模型f构造目标图Gt(Vt,Et)。在目标图中,节点表示目标标签,边表示在目标标签空间中度量的语义相似度。
Label Semantics Fusion
通常在NER中,一个命名实体的真实标签与上下文有关(例如,标签“研究者(researcher)”可以通过标签“会议”来推断)。在这一部分中,我们将学习到的图结构融合到BERT提供的单词上下文嵌入输出中,以建模句子的标签语义关系。
给定一个具有标签序列Y的句子X,通过主干网络可以得到每个token的上下文表示hj(第j个token的上下文表示hj)。然后,我们在微调之前随机初始化标签表示ci(第i个标签的标签表示ci)。
标签表示ci表示每种实体类型的语义含义,并在微调过程中进行学习。对于句子X,我们应用一个标签引导的注意机制来提取特定于标签的成份如下:

aij表示第j个token对第i个标签的信息丰富程度。对于每个句子,ui建模其与每个实体类型的语义相关性。这里我的理解是通过将句子中所有token与标签的相关性累加起来,可以看做是一整个句子与标签的相关性也就是可以看作一个多标签分类任务,看这句话中可能包含哪几个命名实体也就是标签。
接下来,我们利用GCN,通过在相邻节点之间传播消息,来增强每个标签特定组件的表示。

最后,我们利用token引导的注意机制,将聚合的标签特定组件融合到每个单词的上下文表示中:
我们将u的加权和映射到hi的相同空间,并将它们加在一起,允许信息融合。

根据特定任务的FC层,可以计算出NER任务的分类损失:

此外,我们还引入一个辅助任务,以确保label-specific components专注于正确的实体类型。具体地说,该模型预测了句子中出现的实体类型,这是一个多标签分类任务。辅助任务的损失计算为BCE是二进制-交叉熵的损失

Graph Structure Matching
由于源图Gs是由预先训练好的LM(预训练模型)f0构造的,因此他自然地包含了来自丰富资源领域的先验知识。在本部分中,我们利用不同标签空间中构造的标签图进行图匹配,利用源图中标签之间的语义关系。



实验

相关文章:
【菜鸡读论文】Cross-domain Named Entity Recognition via Graph Matching
【菜鸡读论文】Cross-domain Named Entity Recognition via Graph Matching 最近到了研一下学期,很多身边的同学也开始有了成果,但本菜鸡一点成果都没有【大哭】所以也没什么好写的。虽然菜鸡口头上不说,但内心也感受到非常之焦虑。最近读论…...
代码随想录算法训练营第三十五天|860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球
文章目录 860.柠檬水找零406.根据身高重建队列452. 用最少数量的箭引爆气球:star: 860.柠檬水找零 链接:代码随想录 5美元相当滴珍贵 解题思路: 情况一:账单是5,直接收下。 情况二:账单是10,消耗一个5,增加…...
爬虫为什么需要多线程
多线程爬虫是一种同时运行多个线程来提高爬取速度的爬虫方式。通过将大量的工作分配给不同的线程,可以减少爬虫的运行时间,提高效率。不过需要注意的是,在爬取过程中需要合理的管理线程数,以避免对被爬取的网站造成过大的负荷。 …...
下一代智能座舱风口下,“超级”Tier 1强势崛起
智能座舱进入全新周期,强者愈强的趋势会快速显现。 可以观察到,智能座舱功能日趋多元化。从多屏互动到舱内全场景多元交互,到更多娱乐平台的上线,智能座舱已经从最初的重多功能转变成重体验。 从架构层面来看,各个功…...
第 三 章 UML 类图
文章目录 前言一、依赖关系(虚线箭头)二、泛化关系:继承(实线空心箭头)三、实现关系(虚线空心箭头)四、关联关系(一对一为实线箭头,一对多为实线)五、聚合关系…...
java版工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离 功能清单
Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目显示…...
内网穿透实现在外远程连接RabbitMQ服务
文章目录 前言1.安装erlang 语言2.安装rabbitMQ3. 内网穿透3.1 安装cpolar内网穿透(支持一键自动安装脚本)3.2 创建HTTP隧道 4. 公网远程连接5.固定公网TCP地址5.1 保留一个固定的公网TCP端口地址5.2 配置固定公网TCP端口地址 转载自远控源码文章:无公网IPÿ…...
抖音数字人主播app
抖音数字人主播app是指一款利用计算机生成的虚拟数字人,在抖音平台上进行实时音视频传输和互动的应用程序。该软件可以让用户创建自己的虚拟数字人,并在抖音平台上进行实时互动和交流。 抖音数字人主播app通常需要包含以下功能: 3D建…...
亚马逊平台使用API接口通过关键字搜索商品
亚马逊公司(Amazon,简称亚马逊;NASDAQ:AMZN),2022年营收为5140亿美元, 是美国最大的一家网络电子商务公司,位于华盛顿州的西雅图。是网络上最早开始经营电子商务的公司之一ÿ…...
《花雕学AI》用ChatGPT创造猫娘角色:人工智能角色扮演聊天对话的风险与对策
出于好奇心,我以“ChatGPT,调教猫娘”为题,开始了解ChatGPT角色扮演提示语的用法。ChatGPT给出的介绍是,调教猫娘是一种利用ChatGPT的角色扮演功能,让模型模仿一种类似猫的拟人化生物的行为和语言的活动,并…...
软件测试常规测试过程模型——V模型与X模型
一、V模型简单介绍及讲解 V模型是软件测试过程模型中最广为人知的模型,尽管很多富有实际经验的测试人员还是不太熟悉V模型,或者其它的模型。V模型中的过程从左到右,描述了基本的开发过程和测试行为。V模型的价值在于它非常明确地标明了测试过…...
feign-starter
使用说明 功能 自动装配 设置客户端不主动重试日志打印客户端负载均衡json 转换使用 JacksonUtil 如何引入 com.hete.support xx-feign-starter 如何配置 超时时间 ⚠️ 默认值比较大,需要手动根据实际场景设置 feign: client: config: # 默认配置,…...
FVM初启,Filecoin生态爆发着力点在哪?
Filecoin 小高潮 2023年初,Filecoin发文分享了今年的三项重大变更,分别是FVM、数据计算和检索市场的更新,这些更新消息在发布后迅速吸引了市场的广泛关注。 特别是在3月14日,Filecoin正式推出了FVM,这一变革使得Filec…...
对比度亮度调整与通道分离合并
对比度亮度调整与通道分离合并 对比度亮度调整: 1)原理介绍: g’ g * Mult Add ⚫ g 表示原图像像素 ⚫ g’ 表示输出图像像素 ⚫ Mult 被称为增益(gain), 通常用来控制图像的对比度 ⚫ Add 通常被称为偏置(bias), 通常用来控制图像的亮度 g’(i,j) Mult * g(i,j) Add …...
Java终止线程
1、正常运行结束 程序运行结束,线程自动结束。 2、使用stop方法强制终止 不安全,不建议使用: 调用 stop() 方法会立刻停止 run() 方法中剩余的全部任务,包括在 catch 或 finally 语句中的,并抛出ThreadDeath异常&a…...
Qt的Qss用法
Qt 的 Qss 是一种用于定义用户界面的样式表语言。它可以用来定义控件的颜色、字体、边框、背景等样式,可以很方便的实现自定义的样式效果。 Qss 的基本语法和 CSS 类似,主要是由选择器和样式属性构成。 选择器 选择器用来指定要样式化的控件ÿ…...
数塔dp -A
文章目录 数塔dp -A程序设计程序分析数塔dp -A 【问题描述】 在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的: 有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点, 则经过的结点的数字之和最小是多少? 已经告诉你了,这是个DP的题目,你…...
Spring MVC 接收 json 和返回 json (14)
目录 总入口 测试case 源码分析 1. 针对RequestBody的参数解析 2. 针对 ResponseBody 的返回值处理 总入口 通过上一篇Spring MVC 参数解析(13)_chen_yao_kerr的博客-CSDN博客的说明,相信大家对Sping MVC的参数解析有了一定的了解&…...
注释和关键字
注释 注释概念 ●注释是在程序指定位置添加的说明性信息 ●简单理解:对代码的一种解释说明,方便我们程序员更好的去阅读代码 例如: public class HelloWorld {//这是通过class定义了一个类,类名叫HelloWorld public static voi…...
第一次参加CSDN周赛,这体验很难说···
👨💻个人主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 本文章收录于专栏 【CSDN周赛】 本篇文章目录 🌏前言🌏一、勾股数🌸题目描述🌸题解 &a…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用
中达瑞和自2005年成立以来,一直在光谱成像领域深度钻研和发展,始终致力于研发高性能、高可靠性的光谱成像相机,为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...
Windows电脑能装鸿蒙吗_Windows电脑体验鸿蒙电脑操作系统教程
鸿蒙电脑版操作系统来了,很多小伙伴想体验鸿蒙电脑版操作系统,可惜,鸿蒙系统并不支持你正在使用的传统的电脑来安装。不过可以通过可以使用华为官方提供的虚拟机,来体验大家心心念念的鸿蒙系统啦!注意:虚拟…...
Spring AOP代理对象生成原理
代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】,这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...
软件工程教学评价
王海林老师您好。 您的《软件工程》课程成功地将宏观的理论与具体的实践相结合。上半学期的理论教学中,您通过丰富的实例,将“高内聚低耦合”、SOLID原则等抽象概念解释得十分透彻,让这些理论不再是停留在纸面的名词,而是可以指导…...
项目研究:使用 LangGraph 构建智能客服代理
概述 本教程展示了如何使用 LangGraph 构建一个智能客服代理。LangGraph 是一个强大的工具,可用于构建复杂的语言模型工作流。该代理可以自动分类用户问题、分析情绪,并根据需要生成回应或升级处理。 背景动机 在当今节奏飞快的商业环境中,…...
