BILSTM-CRF-1

BILSTM-CRF

  • 目录
  • 1 简介
    • 1.1 在我们开始前
    • 1.2 BILSTM-CRF模型
    • 1.3如果我们没有CRF层怎么办?
    • 1.4 CRF层可以从训练数据中学习约束
  • 下一节
    • 2.1 [Emission score](https://blog.csdn.net/zhang2010hao/article/details/85284687)
    • 2.2 [Transition score](https://blog.csdn.net/zhang2010hao/article/details/85284687)
  • 参考

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

目录

本系列将包括:

  • 简介:介绍命名实体识别(NER)中的相关概念,一些解决方案,以及BILSTM-CRF模型
  • 详细实例:用于解释CRF如何工作的实例
  • CRF实现:详细说明CRF层的链式实现

1 简介

对于NER任务,基于神经网络的方法非常流行且常见。例如,本文[1]提出了一种使用单词和字符嵌入的BiLSTM-CRF命名实体识别模型。我将以本文中的模型为例来解释CRF层的工作原理。

如果您不了解BiLSTM和CRF的详细信息,请记住它们是命名实体识别模型中的两个不同层。

1.1 在我们开始前

假设,我们有一个数据集,其中我们有两个实体类型,Person和Organization。因此,事实上,在我们的数据集中,我们有5个实体标签:

  • B-Person
  • I-Person
  • B-Organization
  • I-Organization
  • O
    此外, x x x是一个包含5个单词的句子, [ w 0 , w 1 , w 2 , w 3 , w 4 ] [w_0, w_1,w_2, w_3,w_4] [w0,w1,w2,w3,w4]。在句子 x x x中, [ w 0 , w 1 ] [w_0,w_1] [w0w1]是一个Person实体, [ w 3 ] [w_3] [w3]是Organization实体,其他是“O”。

1.2 BILSTM-CRF模型

如下图所示:

BILSTM-CRF-1_第1张图片
图1.1:BiLSTM-CRF模型

虽然没有必要知道BiLSTM层的细节,但为了更容易理解CRF层,我们必须知道BiLSTM层输出的含义。

BILSTM-CRF-1_第2张图片
图1.2:BiLSTM层输出的含义

上图说明了BiLSTM层的输出是每个标签的分数。例如,对于 w 0 w_0 w0,BiLSTM节点的输出为1.5(B-Person),0.9(I-Person),0.1(B-Organization),0.08(I-Organization)和0.05(O)。这些分数将是CRF层的输入。然后,BiLSTM块预测的所有分数被馈送到CRF层。在CRF层中,将选择具有最高预测分数的标签序列作为最佳答案。

1.3如果我们没有CRF层怎么办?

您可能已经发现,即使没有CRF图层,我们也可以训练BiLSTM命名实体识别模型,如下图所示。

BILSTM-CRF-1_第3张图片
图1.3:没有CRF层输出正确标签的BiLSTM模型

因为每个单词的BiLSTM输出是标签分数。我们可以选择每个单词得分最高的标签。例如,对于 w 0 w_0 w0,“B-Person”得分最高(1.5),因此我们可以选择“B-Person”作为其最佳预测标签。同样,我们可以为 w 1 w_1 w1选择“I-Person”, w 2 w_2 w2选择”O“, w 3 w_3 w3选择“B-Organization”, w 4 w_4 w4选择"O"。
虽然我们在这个例子中可以取得 x x x的正确标签,但很多情况并不总是那样。请再次尝试下图中的示例。

BILSTM-CRF-1_第4张图片
图1.4:没有CRF层的BiLSTM模型输出一些无效的标签序列

显然,这次输出无效,“I-Organization I-Person”和“B-Organization I-Person”。

1.4 CRF层可以从训练数据中学习约束

CRF层可以为最终预测的标签添加一些约束以确保它们有效。在训练过程中,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损失函数,以解释CRF层如何或为何可以从训练数据集中学习上述约束。期待很快见到你!

2.1 Emission score

2.2 Transition score

参考

[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

你可能感兴趣的:(机器学习,NLP,人工智能,深度学习)