解读DiffusionNER: Boundary Diffusion for Named Entity Recognition

news2024/12/24 9:52:12

content

  • 摘要
  • 1. 图1
  • 图2
    • 1. 上方:扩散过程与实体边界
    • 2. 下方:网络结构(Sentence Encoder + Entity Decoder)
    • 3. 关键思想小结

摘要

主要内容分为四个部分:

  1. 模型定位与基本原理:
  • 提出了DiffusionNER模型
  • 将命名实体识别(NER)任务重新定义为边界去噪扩散过程
  • 目标是从带噪声的文本片段中生成命名实体
  1. 工作流程:
    训练阶段:
  • 对黄金标准(ground truth)的实体边界逐步添加噪声
  • 使用固定的前向扩散过程
  • 学习反向扩散过程来恢复实体边界

推理阶段:

  • 从标准高斯分布随机采样噪声片段
  • 使用学习到的反向扩散过程对这些片段进行去噪
  • 最终生成命名实体
  1. 创新优势:
  • 允许渐进式改进:可以逐步优化结果
  • 支持动态采样:能够灵活调整生成实体的数量
  • 高效灵活:具有高效且灵活的实体生成能力
  1. 实验验证:
  • 在多个数据集上进行了测试,包括:
    • 平面(flat)NER数据集
    • 嵌套(nested)NER数据集
  • 实验结果表明:
    • 性能与现有最优模型相当
    • 在某些情况下甚至取得了更好的性能

这个摘要简洁地概括了论文的核心创新和主要贡献,强调了DiffusionNER在实体识别任务中的独特方法和优越性能。这是一个将扩散模型创新性地应用于NER任务的尝试,显示了很好的应用潜力。

1. 图1

在这里插入图片描述

图1展示了DiffusionNER的核心工作流程,主要包含3个关键部分:

  1. 左侧(原始命名实体):
  • 展示了一个示例句子:“Premier of the western Canadian province of British Columbia”
  • 包含多个标注的命名实体,例如:
    • (1, 9 | PER): "Premier of the western Canadian province"是人物
    • (8, 9 | GPE): "British Columbia"是地理政治实体
    • (16, 18 | ORG): 某个组织实体
  1. 中间(前向过程 Forward Process):
  • 使用符号"~"表示添加噪声的过程
  • 公式 ε ~ N(0,1) 表示从标准高斯分布中采样噪声
  • 这个过程会逐步将原始的实体边界信息模糊化
  • 噪声是按照预定义的方差时间表来添加的
  1. 右侧(反向过程 Reverse Process):
  • 展示了从带噪声的span恢复到原始实体的过程
  • 通过"denoise"(去噪)操作逐步恢复实体边界
  • 最终目标是重构出原始的命名实体及其类型

关键创新点:

  1. 双向转换设计:
  • 前向过程:实体→噪声
  • 反向过程:噪声→实体
    这种设计允许模型学习如何从噪声中恢复实体信息
  1. 边界扩散思想:
  • 不是对整个文本进行扩散
  • 而是专注于实体边界的扩散
    这使得模型可以更精确地关注实体识别任务的核心
  1. 渐进式改进:
    通过多步骤的去噪过程,模型可以逐步提升实体识别的准确性

  2. 灵活性:

  • 推理时可以从任意数量的噪声span开始
  • 这提供了更大的识别灵活性

这个图很好地展示了DiffusionNER的核心思想:将实体识别转化为一个边界去噪的过程,通过逐步去噪来实现高质量的实体识别。

图2

在这里插入图片描述
从这张图可以看出,DiffusionNER 的整体流程是将「实体边界的预测」用一个「扩散+去噪」的思路来建模。图中分为上下两个部分:上方展示了 扩散过程(forward & reverse) 如何在实体边界上加噪、去噪;下方展示了具体的 网络结构(句子编码器 + 实体解码器)及输入输出。以下是各部分的要点:


1. 上方:扩散过程与实体边界

  1. 左到右的扩散过程 (xₜ → x₀):

    • 最左侧的 xₜ(T 步时的表示)是一个完全「随机噪声」或「极度带噪」的实体边界表示,随着步骤从 T 递减到 0 (t: T → T-1 → … → 0),噪声逐渐被去除。
    • 最右侧的 x₀ 对应「干净的」或「金标准」实体边界(也就是我们想要预测/还原的实体)。
    • 每个矩形格子可以理解为句子中某个 token(或者 token 边界)的位置;中间的小圆点表示在这个位置上,实体边界可能存在的概率或噪声强度。
  2. q(xₜ | xₜ₋₁) 及 pθ(xₜ₋₁ | xₜ):

    • 图中用两条箭头分别标注了前向扩散 (q) 和逆向扩散 (pθ) 两个条件概率。
    • 前向扩散 (q): 逐步向干净的实体标注 x₀ 注入噪声,一直走到 xₜ
    • 逆向扩散 (pθ): 训练好的网络根据当前带噪的 xₜ,反向预测出更“干净”一点的 xₜ₋₁,最终一步步逼近 x₀
  3. 彩色边界标注

    • 在最右侧,彩色的框线/下划线表示最终识别到的实体及其类型:红色 (PER)、蓝色 (GPE)、绿色 (ORG)、橙色 (LOC) 等。
    • 这与上方示例 “Premier … British Columbia … University of Sydney …” 对应,是对文本中人名、地理实体、组织机构、地点等的分类结果。

2. 下方:网络结构(Sentence Encoder + Entity Decoder)

  1. Sentence Encoder(句子编码器):

    • 图中底部左侧的浅粉色框 “Sentence Encoder” 负责对整句话(“Premier of the western Canadian province of British Columbia achieved his master’s degree from the University of Sydney”)进行表征提取,输出上下文隐藏向量 Hₛ
    • 这一步类似常规的预训练语言模型(如 BERT、RoBERTa)或其它 Transformer 编码器,把文本转成深层特征表示。
  2. Entity Decoder(实体解码器):

    • 编码器输出的 Hₛ 被送入右侧粉色框 “Entity Decoder”。
    • 同时,解码器也会接收当前扩散步骤的带噪实体表示 xₜ
    • 解码器根据 (Hₛ, xₜ),预测下一时刻更“干净”的实体边界 xₜ₋₁,或直接估计最终的 x₀
    • 公式所示:
      x t − 1 = 1 − α t − 1   x ^ t + α t   x 0 x_{t-1} = \sqrt{1 - \alpha_{t-1}} \,\hat{x}_t + \sqrt{\alpha_t}\, x_0 xt1=1αt1 x^t+αt x0
      说明了在去噪时如何加权当前估计和原始信号,从而逐渐还原出实体边界。
  3. 动态去噪 & 实体生成:

    • 整个解码过程中,网络反复执行「去噪」的推理步骤,使得最初随机的 xₜ 慢慢收敛到正确的实体位置。
    • 最终我们得到的 x₀ 就是模型认为的实体分布(边界及类型)。

3. 关键思想小结

  • 加噪→去噪:训练时先对真实实体边界注入噪声,然后学会从噪声中一步步还原;推断时则可从随机噪声出发,逐步生成实体。
  • 渐进式修正:每一轮去噪都可看作一次「渐进式修正」或「动态采样」,有助于在实体起止边界比较模糊的情况下,做更灵活的预测。
  • 网络结构:在句子编码器的上下文表示 Hₛ 辅助下,实体解码器通过一系列去噪步骤还原实体。
  • 结果:不同颜色的实体边界最终呈现在文本上,实现多类型实体识别,包括人名 (PER)、地点 (LOC)、组织 (ORG)、地理政治实体 (GPE) 等。

这张图的核心就是:在命名实体识别的场景中,将“实体边界的预测”视作一个需要去噪的生成任务,利用扩散模型的逐步去噪过程来获得更准确、鲁棒的实体识别结果。

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

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

相关文章

【QSS样式表 - ⑥】:QPushButton控件样式

文章目录 QPushBUtton控件样式QSS示例 QPushBUtton控件样式 常用子控件 常用伪状态 QSS示例 代码: QPushButton {background-color: #99B5D1;color: white;font-weigth: bold;border-radius: 20px; }QPushButton:hover {background-color: red; }QPushButton:p…

数字经济下的 AR 眼镜

目录 1. 📂 AR 眼镜发展历史 1.1 AR 眼镜相关概念 1.2 市面主流 XR 眼镜 1.3 AR 眼镜大事记 1.4 国内外 XR 眼镜 1.5 国内 AR 眼镜四小龙 2. 🔱 关键技术 2.1 AR 眼镜近眼显示原理 2.2 AR 眼镜关键技术 2.3 AR 眼镜技术难点 3. &#x1f4a…

smb和nfs双栈协议共享目录

1 简介 NFS和SAMBA协议都是文件共享,Linux客户端常用于NFS协议访问远程共享目录,Windows客户端常用于SAMBA协议访问远程共享目录。 2 环境 合计使用三台服务器,服务器都位于同一个子网(10.0.0.0/19)、同一个安全组…

Day13 用Excel表体验梯度下降法

Day13 用Excel表体验梯度下降法 用所学公式创建Excel表 用Excel表体验梯度下降法 详见本Day文章顶部附带资源里的Excel表《梯度下降法》,可以对照表里的单元格公式进行理解,还可以多尝试几次不同的学习率 η \eta η来感受,只需要更改学习率…

Python获取系统负载并打印折线图

#! /opt/py36/bin/python import psutil import matplotlib.pyplot as plt import time# 创建一个空列表,用于存储负载数据 load_data []# 循环收集负载数据 while True:# 获取当前系统负载load_avg psutil.getloadavg()# 将平均负载添加到load_data列表中load_da…

RCE 命令执行漏洞 过滤模式 基本的过滤问题 联合ctf题目进行实践

前言 知道RCE 命令执行分为 代码执行 和 命令执行 原理 : 就是用户的输入被当做命令或者代码执行了 从而造成了危害 代码执行 除了eval php代码执行漏洞的函数还有 eval()、a ssert()、 preg_replace()、 create_function()、 array_map()、 call_user_func(…

Leetcode打卡:考场就坐

执行结果:通过 题目: 855 考场就坐 在考场里,有 n 个座位排成一行,编号为 0 到 n - 1。 当学生进入考场后,他必须坐在离最近的人最远的座位上。如果有多个这样的座位,他会坐在编号最小的座位上。(另外&am…

数据结构(哈希表(上)纯概念版)

前言 在软件开发和计算机科学中,数据结构的选择直接影响到程序的性能和效率。不同的数据结构适用于不同的场景,合理地选择合适的数据结构是高效编程的关键之一。哈希表(哈希表(Hash Table)作为一种高效的键值对存储结…

【机器学习与数据挖掘实战】案例06:基于Apriori算法的餐饮企业菜品关联分析

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈机器学习与数据挖掘实战 ⌋ ⌋ ⌋ 机器学习是人工智能的一个分支,专注于让计算机系统通过数据学习和改进。它利用统计和计算方法,使模型能够从数据中自动提取特征并做出预测或决策。数据挖掘则是从大型数据集中发现模式、关联…

深入解析 Spring WebFlux:原理与应用

优质博文:IT-BLOG-CN WebFlux 是 Spring Framework 5 引入的一种响应式编程框架,和Spring MVC同级,旨在处理高并发和低延迟的非阻塞应用。这是一个支持反应式编程模型的新Web框架体系。 顺便一提,Spring Cloud Gateway在实现上是…

C语言基础——指针(4)

一. 字符指针变量 字符指针变量的使用和整型指针变量的使用方法相似,以下是其基本使用方法的例子: (1)字符指针变量还有一种使用方法: const char* p "abcd" 需…

『 Linux 』高级IO (一)

文章目录 内容回顾及铺垫五种IO模型不同类型IO的区别非阻塞IOfcntl( ) 多路转接 - select( )select( ) 的基本使用 - SelectServer服务器 内容回顾及铺垫 在博客『 Linux 』基础IO/文件IO (万字)中介绍了对IO的认识; IO实际上为Input/Output,输入输出; 以网络协议栈的视角来看,…

Spark-Streaming集成Kafka

Spark Streaming集成Kafka是生产上最多的方式,其中集成Kafka 0.10是较为简单的,即:Kafka分区和Spark分区之间是1:1的对应关系,以及对偏移量和元数据的访问。与高版本的Kafka Consumer API 集成时做了一些调整,下面我们…

「下载」智慧城市包括哪些方面:大数据公共服务平台、城市运行指挥中心、城市综合治理平台、城市体检综合运营平台解决方案

在当今信息化高速发展的时代,智慧城市已成为全球城市发展的新趋势。系列全面而创新的智慧城市解决方案,旨在助力城市实现智慧化转型,提升城市管理效率,增强市民生活质量。 智慧城市最新解决方案,标准规范顶层设计指南、…

ChatGPT生成接口文档实践案例(二)

不难发现,两个方案都出色地完成了接口文档的生成,但笔者更喜欢Response 2的表达,因为其描述更加全面。 还可以让ChatGPT生成符合OpenAPI 3.0规范的接口文档,以便于项目相关成员阅读,如图5-13所示。 为什么要生成OpenAP…

【解决】Linux更新系统内核后Nvidia-smi has failed...

问题概述 由于服务器(操作系统为 RedHat 9)宕机,重启后,系统内核自动更新了,然后输入 nvidia-smi 发现报了下面的异常: NVIDIA-SMI has failed because it couldnt communicate with the NVIDIA driver. Make sure that the late…

Docker Compose 安装 Harbor

我使用的系统是rocky Linux 9 1. 准备环境 确保你的系统已经安装了以下工具: DockerDocker ComposeOpenSSL(用于生成证书)#如果不需要通过https连接的可以不设置 1.1 安装 Docker 如果尚未安装 Docker,可以参考以下命令安装&…

PCIe_Host驱动分析_设备枚举

往期内容 本文章相关专栏往期内容,PCI/PCIe子系统专栏: 嵌入式系统的内存访问和总线通信机制解析、PCI/PCIe引入 深入解析非桥PCI设备的访问和配置方法 PCI桥设备的访问方法、软件角度讲解PCIe设备的硬件结构 深入解析PCIe设备事务层与配置过程 PCIe的三…

【CVE-2024-53375】TP-Link Archer系列路由器认证操作系统命令注入(内附远离和代码利用)

CVE-2024-53375 TP-Link Archer系列路由器认证操作系统命令注入 受影响的设备 使用 HomeShield 功能的 TP-Link 设备容易受到此漏洞的影响。这包括 TP-Link Archer 系列的多款路由器。 经过测试 Archer AXE75(EU)_V1_1.2.2 Build 20240827(发布日期 2024 年 11 月 4 日)…

SpringBoot 自动装配原理及源码解析

目录 一、引言 二、什么是 Spring Boot 的自动装配 三、自动装配的核心注解解析 3.1 SpringBootApplication 注解 (1)SpringBootConfiguration: (2)EnableAutoConfiguration: (3&#xf…