赞
踩
命名实体识别(Named Entity Recognition,简称 NER) 属于序列标注(Sequence Labeling)问题,可以把此处的 NER 方法看成是通用的处理序列标注问题的方法。
序列标注问题
自然语言处理中,属于序列标注问题的常见任务:
它们所用的方法是相通的,三项任务主要的区别为:训练集所准备的数据(训练集) x、y 的不同
命名实体识别 NER
NER 有何用?
NER 可做词级别的序列标注、也可做字符级别的序列标注。
识别出句子中命名实体的边界与类别的任务称为命名实体识别(Named Entity Recognition,NER)。 —— 摘自:何晗《自然与语言处理入门》
标注策略 | 说明 |
---|---|
IOB | I:inside 内部;O:outside 非实体词;B:begin。注意:IOB中的 B 仅用于两个或多个连续的同类型命名实体的边界区分(如果该实体前面有一个类别相同的另一个实体, 那它的第一个 token 就用 B-X 标记)。 |
BIO | B:begin 实体的开头;I:inside 内部;O:outside 非实体词。除了标签 B 的使用不同,BIO 与 IOB 字母对应的含义相同。 |
BIOES | B:begin 实体的开头;I:inside 内部;O:outside 非实体词;E:end 实体尾部;S:single 表示该词本身就是一个实体 |
BMES | B:begin 实体的开头;M:middle 中间位置;E:end 实体尾部;S:single 单独的字词 |
示例:比如识别人名 PER(person)
我 | 是 | 李 | 小 | 四 | , | |
---|---|---|---|---|---|---|
IOB | O | O | I-PER | I-PER | I-PER | O |
BIO | O | O | B-PER | I-PER | I-PER | O |
BIOES | O | O | B-PER | I-PER | E-PER | O |
BMES | S | S | B-PER | M-PER | E-PER | S |
区别 | 张 | 三 | 李 | 小 | 四 | 走 | 了 |
---|---|---|---|---|---|---|---|
IOB | I-PER | I-PER | B-PER | I-PER | I-PER | O | O |
BIO | B-PER | I-PER | B-PER | I-PER | I-PER | O | O |
人工标注的成本比较高,一般可预先使用基于规则的方法(或其他方法)标注,再进行人工审查。
参考1:命名实体识别的三中标注方法BIO,BIOES,BMES
参考2:命名实体识别(NER):BiLSTM-CRF原理介绍+Pytorch_Tutorial代码解析
对于命名实体识别任务,基于神经网络是非常流行和常见的。例如,使用 BiLSTM-CRF ( BiLSTM 双向长短时记忆网络 和 CRF 条件随机场 是两个不同的层在 NER 模型中)结合词或字嵌入的网络模型来进行命名实体识别。
下面将会用 Word2vec + BiLSTM + CRF 网络模型来解释 CRF 层是如何工作的。
数据标签
假设,我们的数据集中有两种实体类型:人名和机构名,因此,在我们的数据集中有 5 种实体标签。
BiLSTM-CRF 模型
如果我们不加 CRF 层
CRF 层可以从训练数据学习限制
在 CRF 层的损失函数中,我们有两种类型的分数 ① Emission score(发射分数)、② Transition score(转移分数),这两分数是 CRF 层的关键。
本部分内容:CRF 的损失函数(由真实路径分数和所有可能路径的总分数构成)
本部分内容:了解如何去计算一个句子真实标签的分数
本部分内容:学习如何去计算所有可能路径的总分数,并用一个一步步的例子来讲解
本部分内容:当应用模型到测试集上时,探索如何预测一个新的句子的标签(如:句子中每个单词的词性)
—— 说明:本文写于 2022.12.30-12.31、2023.1.1-1.3
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。