BILSTM-CRF-2


声明:本系列转载自createmomo大神的博客https://createmomo.github.io,并在其中加入一些新的内容,如有侵权请及时联系。

上一节中,我们知道CRF层可以从训练数据集中学习一些约束,以确保最终预测的实体标签序列是有效的。约束可能是:

  • 句子中第一个单词的标签应以“B-”或“O”开头,而不是“I-”
  • “B-label1 I-label2 I-label3 I- …”,在此模式中,label1,label2,label3 …应该是相同的命名实体标签。例如,“B-Person I-Person”有效,但“B-Person I-Organization”无效。
  • “O I-label”无效。一个命名实体的第一个标签应以“B-”而非“I-”开头,换句话说,有效模式应为“O B-label”

  • 阅读本文后,您将了解为什么CRF层可以学习这些约束。

2 CRF层

在CRF层的损失函数中,我们有两种类型的分数。这两个分数是CRF层的关键概念。

2.1 Emission score

emission score来自BiLSTM层。如图2.1所示,例如, w 0 w_0 w0的得分标记为“B-Person”的是1.5。

图2.1:排放分数来自BiLSTM层

为方便起见,我们将为每个标签提供一个索引号,如下表所示。

标签索引号
B-Person0
I-Person1
B-Organization2
I-Organization3
O4

我们使用 x i y j x_{iy_j} xiyj代表emission scrore。 i i i是词的索引, y j y_j yj是标签的索引。例如,根据图2.1, x i = 1 , y j = 2 = x w 1 , B − O r g a n i z a t i o n = 0.1 x_{i=1, y_j=2}=x_{w_1, B-Organization}=0.1 xi=1,yj=2=xw1,BOrganization=0.1,其表示 w 1 w_1 w1被认为是“ B-Organization”的分数是0.1。

2.2 Transition score

我们使用 t y i y j t_{y_{i}y_{j}} tyiyj表示transition score。例如, t B − P e r s o n , I − P e r s o n = 0.9 t_{B-Person, I-Person}=0.9 tBPerson,IPerson=0.9表示标签“B-Person”->“I-Person”的转换分数是0.9。因此,我们有一个转换分数矩阵,用于存储所有标签之间的所有分数。为了使转换得分矩阵更加健壮,我们将再添加两个标签,“START”和“END”。“START”表示句子的开头,而不是第一个单词。“END”表示句末。以下是转换矩阵分数的示例,包括额外添加的“START”和“END”标签。

STARTB-PersonI-PersonB-OrganizationI-OrganizationOEND
START00.80.0070.70.00080.9
B-Person00.60.90.20.00060.6
I-Person-10.50.530.550.00030.85
B-Organization0.90.50.00030.250.80.77
I-Organization-0.90.450.0070.70.650.76
O00.650.00070.70.00080.9
END000000

如上表所示,我们可以发现转换矩阵已经学到了一些有用的约束

  • 句子中第一个单词的标签应以“B-”或“O”开头,而不是“I-” (从“START”到“I-Person或I-Organization”的转换分数非常低。)
  • “B-label1 I-label2 I-label3 I- …”,在此模式中,label1,label2,label3 …应该是相同的命名实体标签。例如,“B-Person I-Person”有效,但“B-Person I-Organization”无效。(例如,从“B-Organization”到“I-Person”的得分仅为0.0003,远远低于其他人。)
  • “O I-label”无效。一个命名实体的第一个标签应该以“B-”而不是“I-”开头,换句话说,有效模式应该是“O B-label” (例如,分数 t O , I − P e r s o n t{O, I-Person} tO,IPerson非常小。)

  • 您可能想询问有关转换矩阵的问题。在何处或如何获得转换矩阵?实际上,转换矩阵是BiLSTM-CRF模型的参数。在训练模型之前,您可以随机初始化矩阵中的所有转换分数。所有随机分数将在训练过程中自动更新。换句话说,CRF层可以自己学习这些约束。我们不需要手动构建矩阵。随着训练迭代次数的增加,分数将逐渐变得越来越合理。

下一节

2.3 CRF损失功能

引入CRF损失函数,其由实际路径得分和所有可能路径的总得分组成。

2.4 真实路径得分

如何计算句子真实标签的分数。

2.5 所有可能路径的得分

如何使用逐步玩具示例计算句子所有可能路径的总分。

参考

[1] Lample, G., Ballesteros, M., Subramanian, S., Kawakami, K. and Dyer, C., 2016. Neural architectures for named entity recognition. arXiv preprint arXiv:1603.01360. https://arxiv.org/abs/1603.01360

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值