0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种将信息直接编码到预训练的语言模型中的结构

深度学习自然语言处理 来源:船长尼莫 作者:船长尼莫 2022-12-05 10:15 次阅读

边界信息的挖掘,对于NER的任务是非常重要的,这种类似于分词的功能,能够很好的挖掘到词语,并且把一个句子拆分成多个词语的构成。

以目前世界杯火的例子来说:“葡萄牙有望得到冠军”,可以按照边界信息,分割成为以下的组成,接着有了这种边界信息,我们可以用来做很多的上游任务。

在之前的工业技术分享中,NER的上一步就是由分割任务来做的。

NLP基础任务的极限在哪里?一文告诉你工业界是如何做NER的

下面我们进行本次论文的分享:

Unsupervised Boundary-Aware Language Model Pretraining for ChineseSequence Labeling | EMNLP2022

在这项工作中,提出了无监督的计算边界,并提出了一种将信息直接编码到预训练的语言模型中的结构,从而产生了边界感知BERT(BABERT)。船长在此处辩证的分析一下,无监督有什么好处,有什么坏处?

好处:

可以节省大量的人力,本模型可以直接用于中文的边界信息计算任务中。

坏处:

有监督的结果一般都比无监督的结果要好,从结果的角度来看,肯定是受限的。

实际上这里最好是利用半监督学习,使用到之前标注的词库信息,在进而进行无监督的训练,这点才是值得肯定的地方。

模型结构

0f5fb8a8-73b4-11ed-8abf-dac502259ad0.png

图1:边界感知预训练语言模型的总体架构。总共由三部分组成:(a) 边界信息提取器;(b)边界感知表示;(c) 边界感知BERT学习。

边界信息提取器

其实为什么第一个部分是边界信息提取器呢?因为我们的模型需要先猜一个结果,然后再判断他是否“正确”,再进行迭代来不断地进行学习。那么具体如何提取边界信息,本文分成了两个步骤。

从原始语料库中收集所有N-grams,以建立一个词典,在其中我们统计每个词的频率,并过滤掉低频项,去除掉噪声词语。

考虑到词频不足以表示汉语上下文中的灵活边界关系,本文进一步计算了两个无监督指标,这两个指标可以捕获语料库中的大部分边界信息。在下文中,我们将详细描述这两个指标。

公式预警,读者觉得复杂可以直接调到边界信息感知的BERT学习

点交互信息 PMI

给定一个N-gram,将其分成两个子字符串,并计算它们之间的互信息(MI)作为候选。然后,我们枚举所有子字符串对,并选择最小MI作为总PMI,以估计紧密性。设g={c1…cm}是由m个字符组成的N-gram,使用以下公式计算PMI:

0f83bbf4-73b4-11ed-8abf-dac502259ad0.png

p()代表了文章中出现的概率。当m等于1的时候PMI这时也是最大的,即为1。除去这种情况后,如果PMI指数很高,也就意味着总字符串和子字符串有着同时出现的概率,例如总字符串“贝克汉姆”和子字符串“贝克”+“汉姆”,这时就让N-Gram “贝克”和“汉姆”更像是两个实体。

左右交叉熵

给定一个N-gram g,我们首先收集到左边的邻接字符集合Sl,之后我们用g和Sl的条件概率来计算左交叉熵:

0fb0015a-73b4-11ed-8abf-dac502259ad0.png

右交叉熵是同理的:

0fc5f398-73b4-11ed-8abf-dac502259ad0.png

直观地说,左右交叉熵(LRE)代表了N-gram中相邻字符的数量。对于较低的LRE“汉姆”,表示它更可能是短语或实体的一部分。相反,具有更高LRE(例如,“贝克汉姆”),说明和上下文的交互很多,那么它很可能是单独的一个实体,这点是毋庸置疑的,越高说明当前的词语是单个实体的概率更大。作者使用的指标能够感知到什么是上下文,什么是实体,从而更好的做好边界计算的逻辑。

最后,我们利用PMI和LRE来测量中文上下文中的灵活边界关系,然后用上面的无监督统计指标更新每个N-gram。

边界信息表示

边界信息计算的核心就是上下文和实体之间的差别,针对于字符Ci,我们抽取出和Ci相关的N-Gram来代表Ci的上下文。设计一种组合方法,通过使用特定的条件和规则来集成S中N个词的统计特征,旨在避免统计信息的稀疏性和上下文独立性限制。

具体地,我们将信息合成方法分为PMI和熵表示。首先,我们连接了所有和字符Ci相关的N-Gram,去形成PMI的表达:

0fd7a502-73b4-11ed-8abf-dac502259ad0.png

a=1+2+··+N是包含ci的N-Gram的数量。注意,在PMI表示中,每个N的位置是固定的。我们严格遵循N-gram长度的顺序和ci在N-gram中的位置来连接它们对应的PMI,确保位置和上下文信息可以被编码到交叉熵信息中:

0fed50dc-73b4-11ed-8abf-dac502259ad0.png

从而也就有了公式5,就是左右交叉熵。那么最终,我们就有了边界信息的表示,通过PMI和左右交叉熵的整合可以得到:

101e516e-73b4-11ed-8abf-dac502259ad0.png

公式6很有意思,作者在文中提到,三个表达方式的顺序是很特殊的,左边的交叉熵放在了最左面,而右边的交叉熵放在了最右边,中间的是用来计算当前是否是实体的概率。那么我们可以这么理解这个公式,ei代表了 前文+实体+后文,也就是一种清晰的解决方案。

这个地方关于公式的地方读者可以自行跳过,下面我们来举一个具体的例子帮助理解,详见图2:

10389830-73b4-11ed-8abf-dac502259ad0.png

图2:字符边界感知表示的“”在文本中“南京市江大桥”

图2显示了边界感知表示的示例。首先整句话呢,会按照N-Gram (N=3)来进行拆分,所以我们有了下面的字符串序列,接着,我们三个公式开始计算各自的数值,LE包含了三个词,而PMI包含了所有词,RE包含了三个词,最终会把三个计算的数值并在一起作为边界信息感知的表达方式。

边界信息感知的BERT学习

边界信息感知的BERT是BERT预训练模型中的一种,在这节中,我们主要描述了如何把边界信息引入到BERT的训练中。

边界信息感知的目标训练

那么如何让BERT拥有这种信息的感知呢?实际上用MSE来规范BERT的hidden states,让这个和公式6中的ei来不断地接近。详细公式如公式7所示,其中h代表了BERT中某一层的隐状态,W是可学习参数矩阵。

1079e57e-73b4-11ed-8abf-dac502259ad0.png

不过话说回来,船长平日做实验的时候,很少有发现MSE loss针对这种回归有效的,因为两个向量本身就在不同的向量空间,如何让他们两个接近呢?其实很难。

最终BERT的预训练损失函数,由两部分组成,也即公式7+完形填空任务。完形填空任务类似于把某一个单词挖空,然后让BERT去预测这个单词,这种方式能够加强BERT对于上下文的感知能力。

序列标注任务的微调

微调的方法是很简单粗暴的,对于序列标注的任务,只需要序列标注的信号,输入文本,模型的输出层加上CRF进行预测。因为本模型和BERT的结构几乎一样,所以在使用起来可以完全按照BERT+CRF的框架来走。

如何引入词语?

回到了我们做NER的初心,如何利用好词语的信息,是增强NER的关键之一,那么本文的方式就是利用Adapter的方式来引入词语的信息,他的方法和我之前分析过的论文是类似的,感兴趣的读者可以看看我之前发的文章。

如何把单词插入到预训练模型?达摩院研究告诉你答案


数据集

1088b68a-73b4-11ed-8abf-dac502259ad0.png

图3:基准数据集的句子数统计。对于没有测试部分的数据集,我们从相应的训练集中随机选择10%的句子作为测试集。

本文的数据集有三种类型,分别是NER (Named Entity Recognition), POS (Part-Of-Speech Tagging),CWS (Chinese Word Segmentation)。

结果

109e538c-73b4-11ed-8abf-dac502259ad0.png

从结果的角度来讲,提升是比较明显的,相对于原始的BERT,很多数值都已经刷到了SOTA,确实是一篇很容易借鉴的工作。

写在最后

在本文,提出了BABERT,一种用于中文序列标记的新的无监督边界感知预训练模型。在BABERT中,给定一个中文句子,使用无监督统计信息计算边界感知表示以捕获边界信息,并在预训练期间将这些信息直接注入BERT的参数学习。与之前的工作不同,BABERT开发了一种以无监督方式利用边界信息的有效方法,从而减轻了基于监督词典的方法的局限性。在三个不同任务的十个基准数据集上的实验结果表明,方法非常有效,并且优于其他中文的预训练模型。此外,与监督词典扩展相结合可以在大多数任务上实现进一步的改进和最先进的结果。

接下来船长提几个问题,读者可以思考一下:

我想用这个模型,如何使用呢?

首先,先拿论文的框架训练出BABERT,然后在自己的语料上训练/微调,最终可以当做一个普通BERT来使用,我们可以做NER任务,也可以去做CWS任务。

这个模型好用吗?

客观的来说,这个模型有一些地方很难调参,比如说MSE Loss,还有MSE Loss中的隐状态的层数,我们并不知道哪一层的结果最好。总不能每次实验都去确定层数吧?这点很困难。除了上述的,其他的都比较好复现。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SCWS技术
    +关注

    关注

    0

    文章

    2

    浏览量

    5821
  • PMI
    PMI
    +关注

    关注

    0

    文章

    14

    浏览量

    9199
  • NER
    NER
    +关注

    关注

    0

    文章

    7

    浏览量

    6201

原文标题:如何将边界信息融入到预训练模型中?最新顶会告诉你答案

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    直播预约 |数据智能系列讲座第4期:训练的基础模型下的持续学习

    鹭岛论坛数据智能系列讲座第4期「训练的基础模型下的持续学习」10月30日(周三)20:00精彩开播期待与您云相聚,共襄学术盛宴!|直播信息报告题目
    的头像 发表于 10-18 08:09 130次阅读
    直播预约 |数据智能系列讲座第4期:<b class='flag-5'>预</b><b class='flag-5'>训练</b>的基础<b class='flag-5'>模型</b>下的持续学习

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    的表达方式和生成能力。通过预测文本缺失的部分或下个词,模型逐渐掌握语言的规律和特征。 常用的模型
    发表于 08-02 11:03

    语言模型训练

    能力,逐渐成为NLP领域的研究热点。大语言模型训练是这技术发展的关键步骤,它通过在海量无标签数据上进行
    的头像 发表于 07-11 10:11 363次阅读

    LLM训练的基本概念、基本原理和主要优势

    在人工智能和自然语言处理(NLP)领域,大型语言模型(Large Language Model,简称LLM)的兴起极大地推动了技术的进步和应用的发展。LLM通过在大规模文本数据上进行
    的头像 发表于 07-10 11:03 907次阅读

    训练模型的基本原理和应用

    训练模型(Pre-trained Model)是深度学习和机器学习领域中的个重要概念,尤其是在自然语言处理(NLP)和计算机视觉(CV)
    的头像 发表于 07-03 18:20 2027次阅读

    CNN模型的基本原理、结构训练过程及应用领域

    CNN模型的基本原理、结构训练过程以及应用领域。 卷积神经网络的基本原理 1.1 卷积运算 卷积运算是CNN模型的核心,它是一种数学运算
    的头像 发表于 07-02 15:26 2812次阅读

    语言模型:原理与工程时间+小白初识大语言模型

    语言模型进行训练,此处训练为自然
    发表于 05-12 23:57

    【大语言模型:原理与工程实践】大语言模型的应用

    输出的关键词或短语。对于任何输入,大语言模型都会根据提示词提供相应的输出。例如,“天空是”就是个提示词,引导模型输出关于天空的描述。提示词的完善度和
    发表于 05-07 17:21

    【大语言模型:原理与工程实践】大语言模型训练

    数据格式的转换、数据字段的匹配和整合等。通过数据级净化,可以进步提高数据的质量和可用性,为后续的数据分析和建模提供更有价值的数据支持。 在得到了大语言模型的数据之后,就是对其进行
    发表于 05-07 17:10

    【大语言模型:原理与工程实践】大语言模型的基础技术

    就无法修改,因此难以灵活应用于下游文本的挖掘。 词嵌入表示:每个词映射为个低维稠密的实值向量。不同的是,基于训练的词嵌入表示先在语
    发表于 05-05 12:17

    【大语言模型:原理与工程实践】核心技术综述

    我也不打算把网上相关的信息在总结下,这样的话,工作量很大。 我主要看了-大语言模型基础技术这节 大语言
    发表于 05-05 10:56

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    学习能力。这些模型以生成能力强和灵活性强为特点,逐渐演变成一种通用计算平台。其参数多样性、生成能力和涌现性使其不仅在自然语言处理领域表现出色,还能适应多种复杂任务。参数多样性让模型能学
    发表于 05-04 23:55

    【大语言模型:原理与工程实践】探索《大语言模型原理与工程实践》

    处理训练架构Transformer,以及这些技术在现实世界的如何应用。通过具体案例的分析,作者展示了大语言
    发表于 04-30 15:35

    语言模型语言与知识:一种神秘的分离现象

    自然语言处理领域存在着个非常有趣的现象:在多语言模型,不同的语言之间似乎存在着
    发表于 02-20 14:53 468次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b><b class='flag-5'>中</b>的<b class='flag-5'>语言</b>与知识:<b class='flag-5'>一种</b>神秘的分离现象

    语言模型推断的批处理效应

    随着开源训练大型语言模型(Large Language Model, LLM )变得更加强大和开放,越来越多的开发者
    的头像 发表于 01-04 12:32 567次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b>推断<b class='flag-5'>中</b>的批处理效应