【NLP】如何提高模型泛化能力?以中文NER为例

article/2025/10/13 20:08:12

      我们知道模型的泛化能力是很重要的,如果一个模型具有很好的泛化性能,那么它往往能够在没有见过的数据上表现良好。以中文命名实体识别为例,在用于评估模型泛化性能的数据集中,我们可能忽略了数据偏差对模型泛化的影响。

论文标题

Improving Model Generalization: A Chinese Named Entity Recognition Case Study

论文链接

https://aclanthology.org/2021.acl-short.125.pdf

0bcf514279af799bcc112bfe0284d10b.png

        通过分析五个中文NER的基准数据集后,作者观察到两种可能影响模型泛化能力的数据偏差。首先,所有这五个数据集中的测试集都包含了很大一部分在训练集中已经见过的实体(占比可达到50%-70%),因此这些测试数据不适合评估模型处理看不见数据的能力;其次,所有数据集都由少数fat-head实体主导,即出现频率特别高的实体,因此,模型可能只是通过关键字记忆就能够产生高预测精度,其基本原理是,给定相同的实体和上下文,模型收敛的最简单方法是记住实体,而不是从不同的上下文中提取模式。为了解决上述数据偏差问题,作者提出将测试集中的可见实体排除以改善测试集,然后通过提出的一种简单有效的实体重新平衡方法,让同一类型中的实体平均分布,从而鼓励模型在训练过程中利用名称和上下文知识。

实体重新平衡算法

       为了提高模型在检测看不见的实体的泛化能力,作者认为应该在训练模型时把名称和上下文知识利用起来,因此提出一种简单有效的实体重新平衡算法,其主要思想是使标注的实体在同一类别内平均分布。提出的实体重新平衡算法有效的主要原因有两个。首先,平均分布将鼓励模型同时利用名称知识和上下文知识,因为由于分布不均,没有简单的统计线索可供利用。其次,在大多数情况下,同一类别内的不同实体在语义上应该是可互换的,从而避免了训练与测试的差异。

       所提出的算法的工作原理如下。首先,重新平衡训练数据中标注的实体频率,让表示类别的原始实体频率计数,例如给定计数器={,,},其表示实体被标注了11次,实体e1和e2被标注了1次,然后将转变成平衡的实体频率计数器={, , },在中最大和最小实体频率之差最多为1。一旦fat-head实体累计出现次数超过中的重新平衡频率,用同类别的随机采样实体替换fat-head实体,具体算法细节如下:

c5c0a9a0d6ddf5bc335b67780d0b317d.png

实验/结果

        由于在测试数据集中有很大一部分在训练集中出现过的可见实体,为了更好的评估模型的泛化能力,将测试集中的这部分可见实体排除,作者以BERT-CRF模型架构对比了一些复杂的SOTA模型,结果如下图所示:

1e88a6c666591ce047792dfbd7c1aa9f.png

        可以看到作者的方法在两个数据集上有比较明显的提升。进一步的,作者将所提方法和baseline在五个数据集上类别层面的性能比较。其中baseline使用原始的训练数据,所提方法使用应用了实体重新平衡算法的训练数据。(注:有些数据实体类别缺失是因为在这些类别上的未见实体为0或很少)

ae198ed7ac0480c7ffb973fbe682a1b9.png

        总的来说,作者所提方法在MSRA、OntoNotes、Cluener三个数据集上都表现良好,除了在Cluener的地址类别实体上降低了2.58%,作者认为这是因为地址类别包含地缘政治实体和位置实体,它们在语义上不可互换。在Weibo数据集上PER.NAM类别实体相比baseline提高了8.89%,然而在PER.NOM类别实体上降低了2.98%,注意到PER.NOM类别包含诸如男人、女人和朋友之类的实体,这些实体很难根据上下文知识进行概括。在Resume数据集上表现不佳,作者认为这是因为Resume语料库的结构特点导致可以利用的上下文知识很少。

小结

        总而言之,作者所提方法能够提高模型检测未见实体的泛化能力,但是这种方法仅适用于满足特定条件的类别:

        1)同一类别的实体需要在语义上可互换

        2)实体应该依赖于上下文知识。

END

 

879e7c83fe7bea0c4d9ced33d9139f33.png

 
 
 
往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》视频课

本站qq群851320808,加入微信群请扫码:

70b8514d47d127805fa97459003a65a5.png


http://chatgpt.dhexx.cn/article/UWpHH9Cp.shtml

相关文章

C#提升(一、泛型)

一、什么是泛型 泛型,即“参数化类型” 我们来看以下代码,目的很明确,就是显示参数类型,这种类似的代码或者说只有参数类型不同,但是功能相同时,我们如何让代码写的更优雅? 在泛型没有出现的…

深度学习提高泛化能力的技术

LeetCode题目记录 1.泛化能力(generalization) 2.正则化(regularization)2.1 正则化方法 1.泛化能力(generalization) 对于模型,我们不仅要求它对训练数据集有很好的拟合(训练误差&a…

lecture9-提高模型泛化能力的方法

HInton第9课,这节课没有放论文进去。。。。。如有不对之处还望指正。话说hinton的课果然信息量够大。推荐认真看PRML《Pattern Recognition and Machine Learning》。 摘自PRML中22页。 正文: 一、提高泛化方法的概述 在这部分中,将会介绍…

思考深度学习的泛化能力

神经网络通过记忆学习 传统观点论文观点论文实验 神经网络 不 通过记忆学习参考资料 深度神经网络往往带有大量的参数,但依然表现出很强的泛化能力(指训练好的模型在未见过的数据上的表现)。 深度神经网络为何会拥有如此强的泛化能力&…

SQL提升(一)

Sql不常见关键字提升 一、前言 Sql是最重要的关系数据库操作语言,现在基本上任何与数据库相关的操作都离不开sql。所以说sql功能是很强大的。 我们常用的sql关键字不外乎 group by;in; where; from; update……等,这些关键字有时组成sql的基础。 但是…

越大的数据集训练,网络泛化能力越强

虽然这个直观很好理解,但我想找这个论点的论文支持,如果再能找张图就好了,下面是过程 首先是On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima这篇经典文章,里面的这张flat minima和sharp minim…

浅谈深度学习泛化能力

谷歌最近出品的82页论文《ON THE GENERALIZATION MYSTERY IN DEEP LEARNING》,在此我简单归纳下论文的思想,有兴趣的看看原论文。论文链接:github.com/aialgorithm/Blog 一、DNN泛化能力的问题 论文主要探讨的是, 为什么过参数的…

深入理解泛化

文章目录 1.引言2.泛化的定义3.数据集分类4.泛化能力分类5.从训练过程来理解泛化参考资料 1.引言 什么是泛化呢? 先举个栗子: 小明和小李都上了高三。小明头脑机灵,一边刷着五年高考三年模拟一边总结做题规律,而小李一门心思刷题…

机器学习-泛化能力

目录 1.什么是泛化能力 2.什么是好的机器学习模型的提出 3.泛化误差 4.模型泛化能力的评价标准 4.提高泛化能力 5.举例 6.相关引用文献 1.什么是泛化能力 百度百科解释:机器学习算法对新鲜样本的适应能力。 更加具体的解释:学习到的模型对未知…

机器学习中的泛化能力

模型的泛化能力:指机器学习算法对新鲜样本的适应能力。 学习的目的:学到隐含在数据背后的规律,对具有同一规律的学习集以外的数据,经过训练的网络也能给出合适的输出,该能力称为泛化能力。 由此可见,经训练…

神经网络泛化的能力因素,神经网络泛化的能力差

1、BP神经网络当中 所提到的泛化能力是指什么? 就是外推的能力。 很多时候训练的网络对于训练的数据能很好的拟合,但是对于不在训练集内的数据拟合就很差强人意了。这种情况就叫泛化能力----差。也就是说可能你的网络存在过拟合的现象。 谷歌人工智能写…

【深度学习】常见的提高模型泛化能力的方法

前言 模型的泛化能力是其是否能良好地应用的标准,因此如何通过有限的数据训练泛化能力更好的模型也是深度学习研究的重要问题。仅在数据集上高度拟合而无法对之外的数据进行正确的预测显然是不行的。本文将不断总结相关的一些方法。 一、模型角度 Dropout 首先随…

TCP/IP报文格式

1、IP报文格式    IP协议是TCP/IP协议族中最为核心的协议。它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制。在局域网环境,IP协议往往被封装在以太网帧(见本章1.3节)中传送。而所有的TCP、UDP、ICMP、IGMP数据…

TCP首部报文段格式

最近《计算机网络》这本书看到了传输层的 TCP 协议,因为TCP 的全部功能都体现在它的首部中,因此觉得有必要将这些知识梳理一下。 首先TCP 是面向字节流的。这个流指的是流入到进程或从进程流出的字节序列。面向字节流的含义是:应用程序与 TC…

ARP报文格式详解

ARP 协议包(ARP 报文)主要分为 ARP 请求包和 ARP 响应包,本节将介绍 ARP 协议包的格式。 ARP 报文格式 ARP 协议是通过报文进行工作的,ARP 报文格式如图所示。 ARP 报文总长度为 28 字节,MAC 地址长度为 6 字节&…

CAN的报文格式

CAN的报文格式 在总线中传送的报文,每帧由7部分组成。CAN协议支持两种报文格式,其唯一的不同是标识符(ID)长度不同,标准格式为11位,扩展格式为29位。 在标准格式中,报文的起始位称为帧起始&am…

IPv4报文格式详解和报文示例

目录 一,IP数据报文的组成 二,IP报文格式 三,IPv4报文示例 作者:柒烨带你飞 一,IP数据报文的组成 一个IP数据报文都是由首部和数据两部分组成。 每个 IP 数据报都以一个 IP 报头开始。IP 报头中包含大量信息&#…

ICMP报文格式解析

ICMP报文的格式类型总共分为三大类: 1、差错报文 2、控制报文 3、查询报文 上图是ICMP报文的基本格式,上面提到的三种ICMP报文均有“类型,代码和校验和”三个字段,后面还有4个字节是根据不同的报文类型而有不同的格式&#xff…

常见网络报文数据包格式

当我们应用程序用TCP传输数据的时候,数据被送入协议栈中,然后逐个通过每一层,知道最后到物理层数据转换成比特流,送入网络。而再这个过程中,每一层都会对要发送的数据加一些首部信息。整个过程如下图。 以太网帧格式 以…

网络中的常见的各种协议--报文格式总结学习

网络中的各种协议总结学习 以太网帧结构IP报文格式ARP协议ICMP协议UDP用户数据包协议DNS TCP协议FTP协议HTTP协议SMTP协议POP协议SSH协议 以太网帧结构 注: 当LLC-PDU中携带的是数据的时候,那么左侧的2字节表示的就是长度;当然,以…