Span抽取和元学习能碰撞出怎样的新火花,小样本实体识别来告诉你!

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 这是一种面向命名实体识别的小样本学习算法,采用两阶段的训练方法,检测文本中最有可能是命名实体的Span,并且准确判断其实体类型,在仅需要标注极少训练数据的情况下,提升预训练语言模型在命名实体识别任务上的精度。

近日,阿里云机器学习平台PAI与华东师范大学高明教授团队、达摩院机器智能技术NLP团队合作在自然语言处理顶级会议EMNLP2022上发表基于Span和元学习的小样本实体识别算法SpanProto。这是一种面向命名实体识别的小样本学习算法,采用两阶段的训练方法,检测文本中最有可能是命名实体的Span,并且准确判断其实体类型,在仅需要标注极少训练数据的情况下,提升预训练语言模型在命名实体识别任务上的精度。


论文:

Jianing Wang, Chengyu Wang, Chuanqi Tan, Minghui Qiu, Songfang Huang, Jun Huang, Ming Gao. SpanProto: A Two-stage Span-based Prototypical Network For Few-shot Named Entity Recognition. EMNLP 2022

背景

大规模预训练语言模型的广泛应用,促进了NLP各个下游任务准确度大幅提升,然而,传统的自然语言理解任务通常需要大量的标注数据来微调预训练语言模型。例如,对于命名实体识别任务,模型的训练需要一定数量的语料来学习Token与Label之间的依赖关系。但是在实际应用中,标注数据资源比较稀缺,传统的序列标注方法很难达到较好的效果,因为其需要解决实体识别中的标签依赖(Label Depnedency)关系,同时也无法应对实体嵌套(Nested Entity)问题。因此,我们研究一种基于Span和元学习的小样本实体识别技术。特别地,我们关注于解决N-way K-shot的实体识别场景。下图所展示了一个2-way 1-shot实体识别任务:

在上述2-way 1-shot任务中,包含了若干个Support Set和Query Set,每个Support Set只包含2个类别的实体(即上图的PER和LOC,除了非实体的“O”类别),且每个类别的标注实体数量只有1个。

算法概述

为了解决上述小样本命名实体识别问题,SpanProto采用两阶段方法,即将实体识别任务分解为两个阶段,分别是Span Extraction和Mention Classification。模型框架图如下所示:

Span Extraction

首先,SpanProto使用与类别无关的Span抽取器,抽取出可能的命名区间。在这个工作中,我们参考了Baffine Decoder和Global Pointer的技术,设计了Global Boundary Matrix,显式让模型学习到实体区间的边界信息。在这个Matrix中,每一个坐标元素(i, j)恰好可以表示一个区间[i:j],如果这个区间是一个实体,那么元素将对应于1,如果这个区间不是一个实体,那么元素将对应于0:

Span Extraction模型采用下述基于Span的Cross-Entropy损失函数进行训练:

通过上述模型,SpanProto可以利用Global Boundary Matrix抽取出所有可能的实体。

Mention Classification

在Mention Classification模块中,SpanProto采用标准的Prototypical Learning技术给每个Span分配标签,即最小化每个Span表征与对应类别的原型的欧式距离。与此同时,我们考虑到命名实体识别的False Positive问题,即存在一些抽取的Span在当前Episode内没有合适的类别可以分配的情况。例如,在上图中,Span Extraction阶段模型会抽取出August 15. 1954为一个Span,它可能是一个“Time”类别的实体,但是在当前episode任务中其实只有PER和LOC,没有合适的标签给到这个Span。针对False Positive,我们采用Margin Learning方法,最大化这些Span表征与所有实体类别的原型向量的欧式距离:

整体算法流程

SpanProto整体算法流程图如图所示:

算法精度评测

为了验证SpanProto算法的有效性,我们在Few-NERD这一标准评测数据集上进行了测试,效果证明SpanProto对精度提升明显:

我们也对算法的模块进行了详细有效性分析,我们可以发现Span Extraction和Mention Classification均对模型有一定贡献。

为了更好地服务开源社区,SpanProto算法的源代码即将贡献在自然语言处理算法框架EasyNLP中,欢迎NLP从业人员和研究者使用。


EasyNLP开源框架:https://github.com/alibaba/EasyNLP

参考文献

  • Chengyu Wang, Minghui Qiu, Taolin Zhang, Tingting Liu, Lei Li, Jianing Wang, Ming Wang, Jun Huang, Wei Lin. EasyNLP: A Comprehensive and Easy-to-use Toolkit for Natural Language Processing. EMNLP 2022 (accepted)
  • Juntao Yu, Bernd Bohnet, Massimo Poesio. Named Entity Recognition as Dependency Parsing. ACL 2020: 6470-6476
  • Ning Ding, Guangwei Xu, Yulin Chen, Xiaobin Wang, Xu Han, Pengjun Xie, Haitao Zheng, Zhiyuan Liu. Few-NERD: A Few-shot Named Entity Recognition Dataset. ACL/IJCNLP 2021: 3198-3213
  • GlobalPointer:用统一的方式处理嵌套和非嵌套NER. https://spaces.ac.cn/archives/8373

论文信息

论文名字:SpanProto: A Two-stage Span-based Prototypical Network For Few-shot Named Entity Recognition
论文作者:王嘉宁、汪诚愚、谭传奇、邱明辉、黄松芳、黄俊、高明
论文pdf链接:https://arxiv.org/abs/2210.09049

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
11月前
|
关系型数据库 MySQL 索引
MySQL的全文索引查询方法
【8月更文挑战第26天】MySQL的全文索引查询方法
163 0
|
SQL 关系型数据库 MySQL
MySQL - 一文解析 SQL 的执行顺序
MySQL - 一文解析 SQL 的执行顺序
501 0
|
SQL 缓存 监控
带你读《Apache Doris 案例集》——03 Apache Doris 在金融壹账通指标中台的应用实践(2)
带你读《Apache Doris 案例集》——03 Apache Doris 在金融壹账通指标中台的应用实践(2)
345 1
带你读《Apache Doris 案例集》——03  Apache   Doris  在金融壹账通指标中台的应用实践(2)
|
6月前
|
存储 缓存 安全
分布式系统架构7:本地缓存
这是小卷关于分布式系统架构学习的第10篇文章,主要介绍本地缓存的基础理论。文章分析了引入缓存的利弊,解释了缓存对CPU和I/O压力的缓解作用,并讨论了缓存的吞吐量、命中率、淘汰策略等属性。同时,对比了几种常见的本地缓存工具(如ConcurrentHashMap、Ehcache、Guava Cache和Caffeine),详细介绍了它们的访问控制、淘汰策略及扩展功能。
151 6
|
12月前
|
存储 弹性计算 大数据
阿里云服务器怎么样?云服务器ECS功能、租用费用全解析
阿里云ECS是弹性计算服务,提供安全可靠的云服务器,包括多种实例规格如经济型、通用型、计算型等,适合不同场景。ECS支持VPC专有网络、快照与镜像、多种付费模式。用户可按需选择计算架构、存储类型,享受灵活的网络控制、自动化数据备份和低成本计算资源。适用于Web应用、在线游戏、大数据分析和深度学习等场景。阿里云提供免费试用和优惠价格,服务众多知名企业,如新浪微博。
353 5
|
10月前
|
JavaScript 前端开发 小程序
一小时入门Vue.js前端开发
本文是作者关于Vue.js前端开发的快速入门教程,包括结果展示、参考链接、注意事项以及常见问题的解决方法。文章提供了Vue.js的基础使用介绍,如何安装和使用cnpm,以及如何解决命令行中遇到的一些常见问题。
582 5
一小时入门Vue.js前端开发
|
8月前
|
机器学习/深度学习 数据采集 Python
从零到一:手把手教你完成机器学习项目,从数据预处理到模型部署全攻略
【10月更文挑战第25天】本文通过一个预测房价的案例,详细介绍了从数据预处理到模型部署的完整机器学习项目流程。涵盖数据清洗、特征选择与工程、模型训练与调优、以及使用Flask进行模型部署的步骤,帮助读者掌握机器学习的最佳实践。
613 1
|
11月前
|
存储 安全 Linux
在Linux中,`/etc/passwd` 和 `/etc/shadow` 文件分别有什么作用?
在Linux中,`/etc/passwd` 和 `/etc/shadow` 文件分别有什么作用?
|
12月前
|
云安全 安全 网络安全
云安全合规:构建可信云环境的基石
自动化与智能化:随着人工智能、大数据等技术的不断发展,云安全合规将越来越趋向于自动化和智能化。通过引入自动化工具和智能算法,企业可以实现对云环境中安全风险的实时监测、预警和处置,提高合规效率和准确性。 综合化治理:未来的云安全合规将更加注重综合化治理。企业需要构建全方位、多层次的安全防护体系,将合规要求融入到业务规划、架构设计、系统开发、运维管理等各个环节中,实现全生命周期的安全合规管理。 标准化与规范化:随着云安全合规的不断发展,相关标准和规范将逐渐完善并趋于统一。这将有助于降低企业在实施云安全合规过程中的成本和难度,提高合规效率和质量。 国际合作与交流:面对全球化发展的挑战和机遇,各国政府
440 6
|
传感器 安全 Java
了解SENT协议及其应用
了解SENT协议及其应用

热门文章

最新文章