NER(命名实体识别)之FLAT详解

62 篇文章 3 订阅

图片

paper:https://arxiv.org/pdf/2004.11795.pdf

code:https://github.com/LeeSureman/Flat- Lattice-Transformer

前言

       本文继续之前的NER词汇增强方式,介绍一下复旦邱锡鹏的佳作FLAT,之前介绍的基于Lattice结构的NER模型(比如Lattice LSTM、LR-CNN)动态引入词汇信息,避免了分词错误带来的级联误差,取得了当时的SOTA效果。然而基于RNN或者CNN的模型都存在一些天生的缺陷,RNN不能并行,不能充分利用GPU性能,而CNN无法捕获长依赖。文本提出了基于Transformer来解决Lattice LSTM中词汇损失问题(每个字符只能获取以它为结尾的词汇信息),并且使用相对位置编码来使得Transformer适应NER。

一、FALT模型:

      目前处理Lattice结构一般有两种思路:一种是适配Lattice的输入,比如Lattice LSTM和LR-CNN;另一种就是把Lattice转换为graph结构,然而使用GNN去编码,比如LGN和CGN。然而对于NER模型,序列结构是非常重要的;图结构是通用方法,去做NER模型,作者认为存在不可忽视的差距。

       下图Figure1展示了Lattice LSTM和FLAT模型的区别:

图片

       FLAT的结构如上图Figure1(c)所示,每个字符和每个潜在的word使用head和tail两个索引去表示token在输入序列中的绝对位置,head表示开始索引,tail表示结束索引,对于每个字符,head和tail是一样的;每个word是不一样的,比如word“重庆”,head为1,tail为2,说明序列中第一个字符和第二个字符为“重庆”。

二、Transformer子模块

Transformer的encoder模块主要有self-attention,feedforward network(FFN)以及他们之间的residual连接和layer normalization。一般是为了捕获更多的语义信息,会使用Multi-head机制,下面介绍一个head的self-attention机制:

图片

三、FLAT模型的相对位置

       每两个span(包括字符和潜在的词)的相对关系有三种:相交intersection、包含inclusion、互斥separation。我们不去直接表示这三种关系,而是使用向量去表示,使用head[i]和tail[i]表示span Xi的开始位置和结束位置,那么对于任意两个span的位置关系就可以表示为如下公式:

图片

最终的相对位置是把这四个位置向量进行拼接起来,如下:

图片

 

其中

图片

 

然后根据self-attention计算如下:

图片

最后使用A∗替换等式(1)的A即可

注意:最后只使用字符向量来作为输出,用于CRF进行解码。

 

四、FALT完整模型:

图片

五、FALT实验:

5.1、模型实验效果

图片

5.2、模型的推理速度

图片

5.3、FLAT与BERT融合

图片

结论:在大数据集上FLAT+BERT优于BERT,小数据集上不太明显。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wshzd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值