信息抽取(五)实体命名识别之嵌套实体识别哪家强,我做了一个简单的对比实验


嵌套实体识别

  1. 嵌套实体识别是实体命名识别中一个子问题,何为嵌套实体即“北京天安门”中“北京”是地点实体,“北京天安门”同样也是地点实体,两者存在嵌套关系。使用CRF等传统标注方法无法对嵌套实体进行区分,因此存在一定的局限性。
  2. 目前流行构建实体矩阵,即用一个矩阵 W t s e ( t y p e , l e n , l e n ) W_{tse}(type,len,len) Wtse(type,len,len)来代表语料中的所有实体及其类型,其中任一元素 N t , e , s N_{t,e,s} Nt,e,s表示类行为 t t t,起点为 s s s,结尾为 e e e的实体。通过这样的标注方式我们可以对任何嵌套实体进行标注,从而解决训练和解码的问题。
  3. 本文笔者将对比目前接触到的部分实体矩阵的构建方法在CMeEE数据集(医学NER,有一定嵌套实体)上的表现。

实体矩阵构建框架

  1. 为了方便后续对比说明,这里定义几个同一的变量与符号,上文中 N t e s N_{tes} Ntes表示类行为 t t t,起点为 s s s,结尾为 e e e的实体。在本实验中,我们均适用bert-base-chinese作为encoder, h i h_i hi表示最后一层隐藏层中第 i i i个token的embedding,则 h s h_s hs h e h_e he分别表示经过encoder之后实体Start和End token的embedding,则我们有公式 N t , e , s = p ( h s , h e , t ) N_{t,e,s} = p(h_s,h_e,t) Nt,e,s=p(hs,he,t),其中 p ( x ) p(x) p(x)就表示我们所需要对比的实体矩阵构建头(姑且这么称呼)。
  2. 在对比实验中,除了不同实体矩阵构建头对应的batch_size,learning_rate不同,所使用的encoder、损失函数、评估方式以及训练轮次均保持一致。
  3. 本文选取了GlobalPointer、TPLinker(Muti-head selection)、Tencent Muti-head、Deep Biaffine(双仿射)共四种实体矩阵构建方法进行比较。

方法比较

GlobalPointer

  1. GlobalPointer出自苏神的博客GlobalPointer:用统一的方式处理嵌套和非嵌套NER
  2. 计算公式: p ( h s , h e , t ) = q s , t T k e , t p(h_s,h_e,t) =q_{s,t}^Tk_{e,t} p(hs,he,t)=qs,tTke,t,其中 q s , t = W s , t h s + b s , t q_{s,t} =W_{s,t}h_s+b_{s,t} qs,t=Ws,ths+b
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值