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

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

3天内不再提示

FLAT的一种改进方案

深度学习自然语言处理 来源:小任学不废 作者:小任学不废 2022-08-19 11:55 次阅读

许久没有更新,今天来水一篇之前在arXiv上看到的论文,这篇NFLAT是对FLAT的改进(其实也是对TENER的改进),FLAT在文本后面挂单词的方式可能会导致文本长度过长,论文中讲长度平均会增加40%,从而导致:

self-attention的时候计算量和显存占用量增大,限制了FLAT对更大更复杂的词表的使用;

有一些冗余计算,比如“word-word”和“word-character”级别的self attention是没有必要做的,因为在FLAT中word部分在解码的时候会被mask掉(如下图),不参与后续计算,所以只需要"character-character"和“character-word”级别的self-attention。

4eb1877a-19eb-11ed-ba43-dac502259ad0.pngFLAT中word部分在解码的时候会被MASK掉

其实讲到这里,相信读者们也看出来了,改进思路已经比较明显了:既然只要"character-character"和“character-word”级别的self-attention,那么就拆开搞,「不要把word往句子后面拼了,而是character有一个序列(原始文本序列),word有一个序列(原始文本序列在外部词表中匹配出来的单词序列)」

先进行“character-word”的attention,获得融合了word边界和语义信息的character表征——论文中称这部分叫「InterFormer」

再做"character-character"级别的self-attention,获取最终character表征——「Transformer Encoder」,论文这部分用的TENER对Transformer Encoder的改动,所以其实这篇论文也是对TENER的改进方案,「是TENER+外部词典的解决方案」

Linear Project + CRF

模型分为上面所说的三个模块,接下来我们一个一个介绍。

模型

4ed113ba-19eb-11ed-ba43-dac502259ad0.pngNFLAT模型结构

1. InterFormer

其实就是Transformer Encoder的改进版,InterFormer包含多头inter-attention和一个FFN,目的是构建non-flat-lattice,可以同时对character和word两个不同长度的序列进行建模,让他们交互,从而获得融合了word边界和语义信息的character表征。

对Transformer Encoder的改进主要是:

「attention中query/key/value不再同源」,也就不再是self-attention,「character序列作为query的输入,word序列作为key和value的输入」。这样的话attention在character序列中每个字上的输出就是word序列中与这个字相关的word表征(value)的加权求和的结果。

他们在word序列中加入了一个标记,这样的话,如果character序列中的某个character与单词序列没啥关系的时候,总不至于强行加权求和,论文的分析部分表示这个还是有用的,但论文没有做消融实验,这里我就不列了,感兴趣可以去看一下原文。

「参考了TransformerXL和FLAT中的相对位置编码部分,同时做了一些改动」

下面直接列公式了:

输入:character序列embedding ,word序列embedding。

获取QKV表征:

计算Inter-Attention

4eec8d3e-19eb-11ed-ba43-dac502259ad0.png

是attention中常规操作,就是对序列中padding部分的score赋一个很小的值,让softmax后结果为0的;

的计算方法参考了TransformerXL,只是相对距离的表征的计算方式不太一样,是参考FLAT,但也做了一些改动,FLAT中计算了四种位置距离表征:head-head, head-tail, tail-head, tail-tail,但这里只有两种位置距离:character head - word head ()和 character tail - word tail ()。

同样这个Inter-attention也可以做成multi-head attention的方式:

4f0c8972-19eb-11ed-ba43-dac502259ad0.png

然后是FFN、残差连接、PostNorm

4f233546-19eb-11ed-ba43-dac502259ad0.png

通过上面的这一系列操作,我们就获得了“「融合了word边界和语义信息的character表征」”。

2. Transformer Encoder

然后进行"character-character"级别的上下文编码,用TENER中改造的Transformer Encoder,也就是两部分改动:

Un-scaled Dot-Product Attention,TENER中发现不进行scale的attention比进行了scale的在NER上的效果要好;

使用了对方向和距离敏感的相对位置编码,其实和上面Inter-attention中相对位置编码差不多,就是就只有query位置-value位置。

4f32ae0e-19eb-11ed-ba43-dac502259ad0.png

所以NFLAT其实就是在TENER前面加了一个模块。

3. 最后就是CRF层

实验结果

数据:

4f43dcb0-19eb-11ed-ba43-dac502259ad0.png数据集

外部词表:

外部词表他们主要采用了:https://github.com/jiesutd/RichWordSegmentor

结果:

如下图,可以看到,NFLAT在4个数据集上效果都还挺好的,达到了SOTA。

4f52a7fe-19eb-11ed-ba43-dac502259ad0.png实验结果

效率分析

时间复杂度:

n是character序列长度,m是word序列的长度,一般n越长,m越长,所以看复杂度的话NFLAT还是降低了许多了,作者们还做了相关的实验,每种长度挑选1000个句子,用batch_size=1计算跑完1k条句子的时间(3090的卡),发现句子长度大于400的时候,NFLAT与FLAT的速度才会有差距。

4f6ae2ec-19eb-11ed-ba43-dac502259ad0.png运行时间对比

FLAT:

NFLAT:

空间复杂度:

显存占用还是有明显差别的:

4f81568a-19eb-11ed-ba43-dac502259ad0.png显存占用对比

FLAT:O((n+m)^{2})

NFLAT:

差不多,这篇论文就到这里吧。

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

    关注

    0

    文章

    171

    浏览量

    27132
  • 显存
    +关注

    关注

    0

    文章

    103

    浏览量

    13552
  • 数据集
    +关注

    关注

    4

    文章

    1179

    浏览量

    24356

原文标题:中文NER | 江南大学提出NFLAT:FLAT的一种改进方案

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

收藏 人收藏

    评论

    相关推荐

    一种8位单片机中ALU的改进设计

    一种8位单片机中ALU的改进设计 摘要: 文章提出了一种精简指令集8 位单片机中, 算术逻辑单元的工作原理。在此基础上, 对比传统PIC 方案、以及在ALU 内部再次采用流水
    发表于 08-26 15:01

    一种改进的SEDF调度算法

    【摘要】:Xen由于其很低的性能损失,而逐渐成为最受欢迎的虚拟化管理工具之.但是,它的SEDF调度算法存在在SMP下不能支持全局负载平衡的问题.本文针对此问题提出一种名为IEDF的改进算法.该算
    发表于 04-24 10:03

    一种8位单片机中ALU的改进设计

    一种8位单片机中ALU的改进设计
    发表于 08-09 00:35

    一种改进的DSP固定点采样算法

    一种改进的DSP固定点采样算法
    发表于 08-20 23:34

    一种中频直接采样方案

    一种中频直接采样方案
    发表于 11-25 15:47

    一种改进的Wallace树型乘法器的设计

    请求大神分享一种改进的Wallace树型乘法器的设计
    发表于 04-14 06:41

    分享一种基于Actel Flash FPGA的高可靠设计方案

    本文以星载测控系统为背景,提出了一种基于 Actel Flash FPGA的高可靠设计方案。采用不易发生单粒子翻转的 flash FPGA芯片,结合 FPGA内部的改进型三模冗余、分区设计和降级重构,实现了高实时、高可靠的系统。
    发表于 05-10 06:58

    分享一种实用的WiFi语音解决方案

    分享一种实用的WiFi语音解决方案
    发表于 05-19 06:49

    分享一种FPGA的动态配置方案

    本文提出了一种基于嵌入式系统和Internet的FPGA动态配置方案
    发表于 05-27 06:38

    分享一种不错的无线语音传输系统设计方案

    本文介绍了nRF401的特点,提出了一种将其应用于无线集群语音传输系统的实现方案。此方案硬件电路简单,易于调试,软件编程也不复杂,是一种较好的设计思路。
    发表于 05-31 06:36

    分享一种DTMF信号检测器工程的应用方案

    基于改进的ADALINE神经网络的DTMF检测算法基于改进的ADALINE神经网络的DTMF解码仿真结果分享一种DTMF信号检测器工程的应用方案
    发表于 06-03 07:03

    介绍一种基于小波域的分形图像编码改进算法

    本文介绍了一种基于小波域的分形图像编码改进算法。
    发表于 06-03 07:28

    一种改进的模型预测直接转矩控制算法

    为什么要提出一种改进的模型预测直接转矩控制算法?改进的模型预测直接转矩控制算法有哪些功能?
    发表于 07-06 07:45

    一种消息恢复型数字签名方案改进

    研究一种消息恢复型数字签名方案,该方案不需要hash函数和消息冗余就能抵抗伪造攻击。讨论已有的攻击方法和一种能够抵抗这些攻击的改进
    发表于 04-23 10:08 14次下载

    一种改进的强代理签名方案

    基于Lee 等人提出的修改的LKK 型方案,提出了一种改进的强代理签名方案。新方案在授权阶段采用CA 认证的密钥生成协议,解决了原
    发表于 08-13 08:54 23次下载