法律状态公告日
法律状态信息
法律状态
2022-09-16
实质审查的生效 IPC(主分类):G06F40/295 专利申请号:2021115576767 申请日:20211220
实质审查的生效
技术领域
本发明涉及基于BERT和Attention机制的命名实体识别方法,属自然语言处理技术领域。
背景技术
命名实体识别(Named Entity Recognition,NER)旨在识别文本中预定的具有特殊意义的词语,包括人名,地点、组织等。NER不仅仅是信息提取的工具,而且在自然语言处理任务中发挥着重要作用,如:文本理解、信息检索、问答系统、机器翻译和知识库构建等。
目前,命名实体识别主要方法可分为三类:1)基于词典和规则的方法,不需要标注数据,却依赖于人工制定的规则。2)统计机器学习的方法,需要大量人工标注的数据。3)基于深度学习的方法,以端到端方式从原始输入自动发现、分类和检测所需的表示。
发明内容
本发明针对传统深度学习模型融合上下文特征能力比较弱,对中文实体识别准确率低的问题,提出了基于BERT和Attention机制的命名实体识别方法。该方法有效解决了模型编码能力弱,对中文实体识别准确率低的问题。
本发明的技术方案是:基于BERT和Attention机制的中文命名实体识别方法,所述方法的具体步骤如下:
Step1、采用BIO标注方法对数据集进行标注;
Step2、利用BERT层对输入文本进行编码:对于输入的字符,通过BERT层得到输入的语义表征,取得句子中每个词的向量表示;
Step3、将BERT层输出的词向量序列输入第二层BiLSTM层中做语义编码处理;
Step4、把BiLSTM层的输出,输入到Attention层做加权处理;
Step5、将经过Attention层加权后的句子向量输入到CRF层进行预测标注结果。
作为本发明的进一步方案,所述Step1中,标注时实体类型包括人名PER、地名LOC、机构名ORG,B-PER、B-LOC、B-ORG分别表示人名、地名、机构名的开始,I-PER、I-LOC、I-ORG分别表示人名、地名、机构名的其他词。
作为本发明的进一步方案,所述Step2中,利用BERT层对输入文本进行编码,BERT输出的编码向量是三个嵌入特征Token Embedding、Position Embedding和SegmentEmbedding的和;Token Embedding是将句子中的每个词转换成词向量的形式;PositionEmbedding是BERT学习并使用位置嵌入来表达单词在句子中的位置;Segment Embedding用于区分两个句子。
作为本发明的进一步方案,所述Step4中,首先计算出一个注意力权重向量,把BiLSTM的输出和计算出的注意力权重向量相乘得到Attention的输出。
作为本发明的进一步方案,所述Step5包括:对于输入的句子x=(x
T表示任意两个相邻标签的分数,
损失函数的定义如下:
本发明的有益效果是:本发明实现了对文本的深度编码,为后续的实体识别提供了支撑。本发明在加入Attention机制后,模型能够通过计算权重对关键词词重点关注。提高了命名实体识别的准确率。
附图说明
图1本发明中识别模型的具体结构示意图;
图2本发明中利用BERT对输入文本进行编码的过程示意图。
具体实施方式
实施例1:如图1-图2所示,基于BERT和Attention机制的中文命名实体识别方法,所述方法的具体步骤如下:
Step1、在某年某日报的数据集和MSRA数据集上采用BIO标注方法对数据集进行标注;标注时实体类型包括人名(PER)、地名(LOC)、机构名(ORG),B-PER、B-LOC、B-ORG分别表示人名、地名、机构名的开始,I-PER、I-LOC、I-ORG分别表示人名、地名、机构名的其他词。
数据划分为训练集、验证集和测试集,具体统计情况如表1所示。
表1为实验数据
Step2、利用BERT层对输入文本进行编码,BERT输出的编码向量是三个嵌入特征Token Embedding、Position Embedding和Segment Embedding的和;TokenEmbedding是将句子中的每个词转换成词向量的形式;Position Embedding是BERT学习并使用位置嵌入来表达单词在句子中的位置;SegmentEmbedding用于区分两个句子,在图2的例子中,所有标记为EA的词都属于句子A,所有标记为EB的词都属于句子B。在每个句子的开头都会添加一个[CLS]表示作为模型的起始标识。对于输入的字符,首先通过BERT层得到输入的语义表征,取得句子中每个词的向量表不。
Step3、将BERT层输出的词向量序列输入第二层BiLSTM层中做语义编码处理;
LSTM的递归神经网络有三个门控机制:一个输入门和相应的权重矩阵W
更新输入门:
i
更新遗忘门:
f
更新输出门:
g
计算记忆单元的值:
c
o
计算t时刻隐藏层的值:
h
拼接得到BiLSTM输出:
Step4、把BiLSTM层的输出,输入到Attention层做加权处理;计算产生一个注意力权重向量α
e
H′
H
Step5、将经过Attention层加权后的句子向量输入到CRF层进行预测标注结果。
所述Step5包括:对于输入的句子x=(x
T表示任意两个相邻标签的分数,
损失函数的定义如下:
使用准确率(Precisim,P)、召回率(Recall,R)、F1值作为评价指标,具体计算如下:
TP表示预测为正类,实际也为正类的数量,FP表示预测为正类,实际预测错误的数量,FN表示预测为负,实际为正的数量。
为了说明本发明的效果,实验设置了2组对比实验,分别在某日报和MSRA连个数据集上进行对比试验。实验结果如表2,表3所示。
表2为模型在某日报数据集上的识别效果
表3为模型MSRA数据集上的识别效果
分析表2和表3可知本文方法在两个数据集上均取得了最好的准确率、召回率和F1值。在MSRA数据集上,本文方法的F1值达到了95.13%,对比不加入预训练模型的命名实体识别方法,准确率提高了10.95%和5.58%,召回率提高了7.29%和5.28%,F1值提升了9.16%和5.43%,准确率和召回率都有较大的提升,说明加入BERT预训练模型能够提高模型提取信息的能力,有利于提升模型性能;对比加入预训练模型的命名实体识别方法,准确率提高了2.15%和0.92%,召回率提高了2.03%和1.51%,F1值提升了2.09%和1.20%,准确率和召回率都有小幅提升,说明加入Attention机制能够有效地突出关键字在文本数据中的作用,验证了本文模型的有效性。对比不同模型在人民日报和MSRA两个数据集上的实验结果发现,模型在人民日报上的表现略优于在MSRA上的表现,说明数据量的增加在一定程度上可以提高模型的性能。
上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
机译: 基于注意机制的命名实体识别方法和装置以及计算机设备
机译: 中文命名实体识别方法,设备和计算机可读存储介质
机译: 基于神经网络概率模糊消除的网络文本中命名实体识别方法