论文解读系列ner方向:flat(acl2020)(代码片段)

JasonLiu1919 JasonLiu1919     2022-12-01     123

关键词:

文章目录

FLAT(2020)
FLAT 出自 ACL 2020 FLAT: Chinese NER Using Flat-Lattice Transformer。

论文地址:https://arxiv.org/abs/2004.11795

论文代码:Flat Lattice

中文NER通常以字符为单位进行序列标注建模,即一般使用character-based模型。这主要是由于中文分词存在误差,会带来错误传导,所以一般character-based的中文NER模型通常要优于 基于word-based(经过分词)的序列标注建模方法。而在character-based模型中引入词汇信息可以显著提升中文NER效果已经得到多方验证。FLAT也是一种将词汇信息融入character-based模型的解决方案。此前通过 lattice 结构融入词汇信息的方式存在一些不足,比如Lattice LSTM存在以下缺点

  • 信息损失

  • 每个字符只取以它为结尾的词汇信息。如对于Figure 1中的示例,对于「药」,并无法获得inside的「人和药店」信息。而「人和药店」有助于区分示例中的地址实体重庆组织实体重庆人

  • 由于RNN特性,采取BiLSTM时其前向和后向的词汇信息不能共享。

  • Lattice LSTM并没有利用前一时刻的记忆向量,即不保留对词汇信息的持续记忆。

  • 计算性能低,不能batch并行化:究其原因主要是每个字符之间需要attend的word cell(看作节点)数目不一致;可以视为动态结构。不过,后续也有工作将Lattice LSTM进行batch化。

  • 可迁移性差:只适配于LSTM,不具备向其他网络迁移的特性。

为此,FALT提出以下2个创新点:

  • 将lattice结构转为由spans组成的平铺结构,每个span可以是字符或者词及其在原始lattice结构中的位置。
  • 基于Transformer设计了一种巧妙position encoding来充分利用lattice结构信息,从而无损地引入词汇信息

FLAT刚出炉之际,在MSRA-NER任务中,FLAT+BERT登顶榜首;而单独的FLAT(1层TransFormer)也超越了预训练模型ERNIE。

模型结构

由之前的分析可知,Lattice-LSTM采取的RNN结构难以捕捉长距离依赖,同时引入词汇信息是有损的,同时动态的Lattice结构也不支持GPU并行。

使用lattice引入词汇信息有2种:

  • 设计特定模型以兼容lattice输入,比如 lattice LSTM和 LR-CNN。比如lattice LSTM需要额外的word cell以编码潜在的word信息,在每个节点以注意力机制动态融入数量可变的节点信息,如Figure 1(b)所示。LR-CNN使用CNN的不同尺寸的Window来对潜在的词汇信息编码。但是,CNN和RNN都难以建模长程依赖关系,而这在NER中很重要。此外,像lattice LSTM这种动态结构难以GPU并行。
  • 将 lattice 转为图结构,再使用图神经网络将词汇信息进行encode,比如CGN和LGN。图结构虽然是通用结构,但是对于NER任务来说顺序结构至关重要,两者间的差距不容忽视。基于图结构的方法通常需要使用LSTM作为底层encoder来捕捉顺序性,这使得模型结构更为复杂。

为解决计算效率低下、引入词汇信息有损的这两个问题,FLAT基于Transformer结构进行了两大改进:

改进1:Flat-Lattice Transformer,无损引入词汇信息
改进2:相对位置编码,让Transformer适用NER任务

将Lattice结构平铺

文章将Lattice结构平铺为一序列的span,这些span有3种类型:token、head和tail。一个token可以是字也可以词,如Figure 1©所示。head和tail分别表示token在原始句子中的起始和终止索引位置。对于字符token,head和tail值相同。通过这种方式可以记录token在lattice结构中的位置,且易于重建回原始的lattice结构,因此这种平铺的结构能够完全保留原始lattice结构信息。正因为如此,FLAT可以直接建模字符与所有匹配的词汇信息间的交互,例如,字符[药]可以匹配词汇[人和药店][药店]

span的相对位置编码

从Figure 1©可以看出FLAT使用了两个位置编码(head position encoding 和 tail position encoding), 那么是否可以采用绝对位置编码呢?同样来自邱锡鹏老师组的论文TENER: Adapting Transformer Encoder for Named Entity Recognition给出答案:原生Transformer中的绝对位置编码并不直接适用于NER任务

TENER论文发现:对于NER任务来说,位置和方向信息十分重要。如下图所示,在「Inc.」前的单词更可能的实体类型是「ORG」,在「in」后的单词更可能为时间或地点。而对于方向性的感知有助于单词识别其邻居是否构成一个连续的实体Span。可见,对于**「距离」和「方向性」**的感知对于Transformer应用于NER任务至关重要。

但是,原生Transformer的绝对位置编码本身缺乏方向性。向量点积(inner dot)的交换性使得self-attention在方向性上有信息损失,因此文章使用相对位置编码。

为encoder不同span之间的交互,文章对span使用相对位置编码。2个span x i x_i xi x j x_j xj之间3种关系:相交、包含、独立。这些关系取决于heads和tails值。文章中使用dense vector来对他们之间的关系进行建模。头部和尾部信息不仅可以表示两个token的关系,还能够表示一些更详细的信息,例如一个字符和一个单词之间的距离。
假定 h e a d [ i ] head[i] head[i] t a i l [ i ] tail[i] tail[i]表示spand x i x_i xi的头部和尾部位置,spand x i x_i xi和spand x j x_j xj之间有4种距离:

d i j ( h h ) = h e a d [ i ] − h e a d [ j ] , d i j ( h t ) = h e a d [ i ] − tail ⁡ [ j ] d i j ( t h ) = tail ⁡ [ i ] − h e a d [ j ] d i j ( t t ) = tail ⁡ [ i ] − tail ⁡ [ j ] \\beginaligned d_i j^(h h) &=h e a d[i]-h e a d[j], \\\\ d_i j^(h t) &=h e a d[i]-\\operatornametail[j] \\\\ d_i j^(t h) &=\\operatornametail[i]-h e a d[j] \\\\ d_i j^(t t) &=\\operatornametail[i]-\\operatornametail[j] \\endaligned dij(hh)dij(ht)dij(th)dij(tt)=head[i]head[j],=head[i]tail[j]=tail[i]head[j]=tail[i]tail[j]
其中 d i j ( h h ) d_i j^(h h) dij(hh) 表示head x i x_i xi 和 tail x j x_j xj之间的距离, d i j ( h t ) , d i j ( t h ) , d i j ( t t ) d_i j^(h t), d_i j^(t h), d_i j^(t t) dij(ht),dij(th),dij(tt)同理。 这两个spand最终的相对位置编码是上述4个距离的简单非线性变换:

R i j = ReLU ⁡ ( W r ( p d i j ( h h ) ⊕ p d i j ( t h ) ⊕ p d i j ( h t ) ⊕ p d i j ( t t ) ) ) , R_i j=\\operatornameReLU\\left(W_r\\left(\\mathbfp_d_i j^(h h) \\oplus \\mathbfp_d_i j^(t h) \\oplus \\mathbfp_d_i j^(h t) \\oplus \\mathbfp_d_i j^(t t)\\right)\\right), Rij=ReLU(Wr(pdij(hh)pdij(th)pdij(ht)pdij(tt))),

其中 W r W_r Wr 是待学习的参数, ⊕ \\oplus 表示拼接操作, p d \\mathbfp_d pd与原生的Transformer相同:

p d ( 2 k ) = sin ⁡ ( d / 1000 0 2 k / d model  ) p d ( 2 k + 1 ) = cos ⁡ ( d / 1000 0 2 k / d model  ) \\beginarrayr \\mathbfp_d^(2 k)=\\sin \\left(d / 10000^2 k / d_\\text model \\right) \\\\ \\mathbfp_d^(2 k+1)=\\cos \\left(d / 10000^2 k / d_\\text model \\right) \\endarray pd(2k)=sin(d/100002k/dmodel )pd(2k+1)=cos(d/100002k/dmodel )
其中 d d d 表示 d i j ( h h ) , d i i ( h t ) , d i j ( t h ) d_i j^(h h), d_i i^(h t), d_i j^(t h) dij(hh),dii(ht),dij(th) d i j ( t t ) d_i j^(t t) dij(tt) k k k表示位置编码各个维度的索引。再使

论文解读系列ner方向:softlexicon(acl2020)(代码片段)

文章目录背景模型结构字符表示层引入词汇信息序列建模层和标签预测层背景SoftLexicon出自ACL2020的SimplifytheUsageofLexiconinChineseNER官方代码:https://github.com/v-mipeng/LexiconAugmentedNER论文:https://arxiv.org/abs/1908.05969模型结构近年来 查看详情

论文解读系列ner方向:softlexicon(acl2020)(代码片段)

文章目录背景模型结构字符表示层引入词汇信息序列建模层和标签预测层背景SoftLexicon出自ACL2020的SimplifytheUsageofLexiconinChineseNER官方代码:https://github.com/v-mipeng/LexiconAugmentedNER论文:https://arxiv.org/abs/1908.05969模型结构近年来 查看详情

论文解读系列ner方向:latticelstm(acl2018)

文章目录简介模型结构LSTM结构Character-BasedModelWord-BasedModelLatticeModelDecoding和Training缺点:简介LatticeLSTM出自于ACL2018中的ChineseNERUsingLatticeLSTM。论文地址:https://arxiv.org/abs/1805.02023有多个版本的代码࿱ 查看详情

论文解读系列ner方向:latticelstm(acl2018)

文章目录简介模型结构LSTM结构Character-BasedModelWord-BasedModelLatticeModelDecoding和Training缺点:简介LatticeLSTM出自于ACL2018中的ChineseNERUsingLatticeLSTM。论文地址:https://arxiv.org/abs/1805.02023有多个版本的代码࿱ 查看详情

论文解读系列ner方向:fgn(2020)

...型结构****表示阶段****融合阶段****序列标注阶段**FGN(2020)论文地址:https://arxiv.org/abs/2001.05272论文代码:FGN摘要汉字作为象形文字有其潜在的特殊字形信息,而这一点经常被忽视。FGN是一种将字形信息融入网络结构的... 查看详情

论文解读系列ner方向:w2ner(aaai2022)(代码片段)

文章目录基本信息简介多类型NER抽取方法NER->词词关系分类W2NER模型框架小结基本信息论文标题:UnifiedNamedEntityRecognitionasWord-WordRelationClassification论文地址:https://arxiv.org/abs/2112.10070论文代码:https://github.com/lj 查看详情

论文解读系列ner方向:w2ner(aaai2022)(代码片段)

...容欢迎微信公众号围观:小窗幽记机器学习基本信息论文标题:UnifiedNamedEntityRecognitionasWord-WordRelationClassification论文地址:https://arxiv.org/abs/2112.10070论文代码:https://github.com/ljynlp/W2NER简介NER任务主要有三种类型ÿ... 查看详情

论文解读系列ner方向:fgn(2020)

...型结构****表示阶段****融合阶段****序列标注阶段**FGN(2020)论文地址:https://arxiv.org/abs/2001.05272论文代码:FGN摘要汉字作为象形文字有其潜在的特殊字形信息,而这一点经常被忽视。FGN是一种将字形信息融入网络结构的... 查看详情

论文解读系列ner方向:markbert(2022)(代码片段)

文章目录简介模型结构实验结果讨论简介论文地址:https://arxiv.org/abs/2203.06378论文代码:https://github.com/daiyongya/markbertMarkBERT也是一种考虑如何将词信息引入到模型的方案。MarkBERT基于字的模型,但巧妙地将词的边界信... 查看详情

论文解读系列ner方向:markbert(2022)(代码片段)

文章目录简介模型结构实验结果讨论简介论文地址:https://arxiv.org/abs/2203.06378论文代码:https://github.com/daiyongya/markbertMarkBERT也是一种考虑如何将词信息引入到模型的方案。MarkBERT基于字的模型,但巧妙地将词的边界信... 查看详情

论文解读:acl2021ner|基于模板的bart命名实体识别

...:本文是对ACL2021NER基于模板的BART命名实体识别这一论文工作进行初步解读。本文分享自华为云社区《ACL2021NER|基于模板的BART命名实体识别》,作者:JuTzungKuei。论文:CuiLeyang,WuYu,LiuJian,YangSen,ZhangYue.TemplateBasedNamedEn... 查看详情

论文解读系列ner方向:markbert(2022)(代码片段)

...内容欢迎微信公众号:小窗幽记机器学习围观。简介论文地址:https://arxiv.org/abs/2203.06378论文代码:https://github.com/daiyongya/markbertMarkBERT也是一种考虑如何将词信息引入到模型的方案。MarkBERT基于字的模型,但巧妙地... 查看详情

跟我读论文丨acl2021ner模块化交互网络用于命名实体识别

...a;本文是对ACL2021NER模块化交互网络用于命名实体识别这一论文工作进行初步解读。本文分享自华为云社区《ACL2021NER|模块化交互网络用于命名实体识别》,作者:JuTzungKuei。论文:LiFei,WangZheng,HuiSiuCheung,LiaoLejian,SongDandan... 查看详情

cvpr2020论文分方向整理之检测篇(代码/论文解读/136篇打包下载)

zCVPR2020论文分方向整理之检测篇(代码/论文解读/136篇打包下载) 极市平台(微信公众号ID:extrememart):专注计算机视觉前沿资讯和技术干货。本文由极市平台首发,转载需获授权。本周三,CVPR... 查看详情

跟我读论文丨acl2021nerbert化隐马尔可夫模型用于多源弱监督命名实体识别

...ERBERT化隐马尔可夫模型用于多源弱监督命名实体识别这一论文工作进行初步解读。本文分享自华为云社区《ACL2021NER|BERT化隐马尔可夫模型用于多源弱监督命名实体识别》,作者:JuTzungKuei。论文:LiYinghao,ShettyPranav,LiuLu... 查看详情

《autodl论文解读:基于强化学习的开创性工作》

...在ICLR上各自发表基于强化学习的NAS以来,已产出200多篇论文,仅2019年上半年就有100多篇论文。此系列文章将解读AutoDL领域的经典论文与方法,笔者也是刚接触这个领域,有理解错误的地方还请批评指正!此系列的文章列表:Auto... 查看详情

腾讯论文入选ai国际顶会,详细解读nlp研究成果

...然语言处理(NLP)领域顶级会议ACL-IJCNLP2021公布了论文接收情况。腾讯有50余篇论文被接收,又一次刷新了论文录取数量纪录,领跑国内业界AI研究第一梯队。本文将对腾讯AILab主导的两篇论文进行详细解读。ACL2021... 查看详情

我组论文获得acl2022最佳论文奖!

大家好,我是对白。近日NLP组一篇论文获得了ACL2022BestDemoPaperAward。该奖项是ACL系列会议对SystemDemonstration论文授予的最佳系统论文奖,每届会议评选出一篇获奖论文,由审稿人提名,领域主席根据系统贡献度、完成度以及影响力... 查看详情