【菜鸡读论文】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…...
手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
