掌桥专利:专业的专利平台
掌桥专利
首页

一种融合局部上下文信息并利用标签语义进行命名实体识别的方法

文献发布时间:2024-04-18 20:02:18


一种融合局部上下文信息并利用标签语义进行命名实体识别的方法

技术领域

本发明属于自然语言处理技术中的命名实体识别领域,具体涉及一种融合局部上下文信息并利用标签语义进行命名实体识别的方法。

背景技术

命名实体识别是自然语言处理中一项基础性关键任务,也是关系抽取、事件抽取、知识图谱、机器翻译、问答系统等诸多NLP任务的基础,具有重大的应用价值。早期的命名实体识别方法大多是基于词典和规则的方法,规则的设计一般基于句法、语法、词汇的模式以及特定领域的知识等。词典是由特征词构成的词典和外部词典共同组成,外部词典指已有的常识词典。制定好规则和词典后,通常使用匹配的方式对文本进行处理以实现命名实体识别。虽然基于规则的命名实体识别系统在词库详尽的情况下工作得非常好。但是由于特定领域的规则和词典的不完整,从这些系统中经常可以观察到高精确度和低召回率,而且这些系统不能转移到其他领域。

随着深度学习模型在图像识别领域取得优异效果,自然语言处理研究者们逐渐将深度学习模型应用到自然语言处理领域。深度学习中较为经典的NER模型是2015年由Huang等人提出的Bi_LSTM-CRF模型。Bi_LSTM-CRF模型可以有效地利用过去和未来的输入特征。借助CRF(条件随机场)层,它还可以使用句子级别的标记信息。Bi_LSTM-CRF模型在POS(词性标注),chunking(语义组块标注)和NER(命名实体识别)数据集上取得了当时的SOTA效果。Bi_LSTM虽然可以通过其递归机制有效地学习序列信息,但是由于存在梯度爆炸和梯度消失,Bi_LSTM在对长序列的学习上是无效的。后来,基于Transformer的预训练模型被提出来,如BERT和RoBERTa等。基于Transformer的模型得益于其多头注意力机制可以捕捉长距离的全局上下文信息,并且取得了不错的成果。然而,多头注意力机制通常对每个位置一视同仁,导致对局部上下文信息的提取往往是不够充分的。而且现有的大部分命名实体识别模型忽视了实体标签和实体两者之间应该存在的内在关系,可能会影响命名实体识别性能。

发明内容

为解决以上现有技术存在的问题,本发明提出了一种融合局部上下文信息并利用标签语义进行命名实体识别的方法,该方法包括以下步骤:对数据进行预处理,并得到数据中所有标签的自然语言形式;将预处理后的数据以及自然语言形式的标签集分别输入到两个基于Transformer的模型中,以获得蕴含全局上下文信息的向量和蕴含标签语义信息的向量;将蕴含全局上下文信息的向量输入到多窗口的Bi_LSTM层,以获得多层次的蕴含局部上下文信息的向量;并将蕴含全局上下文信息的向量输入到基于CNN的联合学习模块,增强模型对相邻词之间局部上下文信息的捕捉能力;然后将之前得到的蕴含全局上下文信息的向量和多层次的蕴含局部上下文信息的向量一起输入到多窗口注意力层进行信息融合,以获得token的最终表示,然后取蕴含标签语义信息的向量中[CLS]对应的词嵌入作为标签的最终表示;将token的最终表示与每个标签的最终表示进行点乘,以计算token与每个标签之间的相似度;最后,利用softmax和argmax来选取与token相似度最高的标签作为该token的预测值。

训练命名实体识别模型的过程包括:

S1:数据预处理,遍历训练集和验证集,获取所有标签。

S2:将经过预处理的数据和自然语言形式的标签集分别输入两个基于Transformer的模型,以获得蕴含全局上下文信息的向量和蕴含标签语义信息的向量。

S3:将蕴含全局上下文信息的向量输入多窗口的Bi_LSTM层,以获得多层次的蕴含局部上下文信息的向量。并将蕴含全局上下文信息的向量输入到基于CNN的联合学习模块,增强模型对相邻词之间局部上下文信息的捕捉能力。

S4:将之前获得的蕴含全局上下文信息的向量和多层次的蕴含局部上下文信息的向量一起输入到多窗口的注意力层,进行信息融合,得到token的最终表示。

S5:从蕴含标签语义信息的向量中选择[CLS]对应的词嵌入作为标签的最终表示。

S6:将token的最终表示与每个标签的最终表示进行点乘,计算token与每个标签之间的相似度。然后使用softmax和argmax选择与token相似度最高的标签作为该token的预测值。

S7:设置迭代次数的初始值。

S8:使用交叉熵损失函数训练模型。

S9:使用Adam算法来优化模型,即在训练过程中调整基于Transformer的模型、Bi_LSTM和基于CNN的联合学习模块的参数。

S10:检查迭代次数是否达到最大迭代次数。如果达到,完成命名实体识别模型的训练;否则,返回到步骤S8,增加迭代次数。

进一步的,数据的预处理过程包括以下步骤:首先,遍历数据集中的训练集和验证集,以获取所有标签,然后将这些标签转换为自然语言形式,例如将“B-PER”转换成“beginperson”。预处理后的数据格式如下:

tokenInput(X)=[CLS],x

labelInpu(L)=[CLS],l

X表示输入序列,x

进一步的,Transformer编码器包括多头注意力机制层和前馈神经网络层,用于获得蕴含全局上下文信息的向量和蕴含标签语义信息的向量。Transformer编码器处理数据的过程如下:

步骤1:通过多头注意力机制处理问题句和答案句的词嵌入表示,获得每个词的注意力权重表示。

步骤2:使用前馈神经网络层处理带有注意力权重的词嵌入,以获得Transformer编码器的最终输出。

进一步的,基于Transformer的模型获得蕴含全局上下文信息的向量g蕴含标签语义信息的向量l的过程如下:

步骤1:确定多头注意力机制层的参数矩阵W

步骤2:将参数矩阵W

步骤3:根据查询向量Q

步骤4:根据head

其中,W

进一步的,基于Transformer模型的自注意力计算公式如下:

其中,d

多头注意力计算方法如下:

MultiHead(Z

其中,MultiHead(Z

进一步的,采用多窗口的Bi_LSTM层能够获取多层次的蕴含局部上下文信息向量。该过程如下:

步骤1:设置不同大小的窗口k,如k=[3,5,7]。

步骤2:遍历k,将窗口中的子序列送入Bi_LSTM进行局部特征提取。对于x

步骤3:将Bi_LSTM的前向输出forwardOutput=[h

进一步的,使用基于CNN的联合学习模块增强了模型对相邻词之间局部上下文信息的捕捉能力。该过程如下:

我们设定了一个新的训练目标X→Y

进一步的,采用多窗口注意力层来融合全局上下文信息和局部上下文信息,从而得到最终的token表示。计算公式如下:

m=softmax(g(H)

f

我们将g作为查询向量,H作为键向量和值向量;其中m表示不考虑全局上下文信息的不同局部上下文信息的加权和,g表示基于Transformer模型得到的蕴含全局上下文信息的向量,H表示多层次的蕴含局部上下文信息的向量,f

进一步的,token与标签之间的相似度计算公式和预测公式如下:

prediction=argmax(softmax(similarity))

其中,similarity表示token与每个标签的相似度,f

进一步的,损失函数如下:

Loss=CrossEntropy(prediction,Y)+CrossEntropy(S

其中CrossEntropy表示交叉熵函数,Y表示序列对应的目标标签序列,S

其中N表示标签的类别数目,y表示真实标签,p表示预测标签值。

进一步的,Adam算法的公式如下:

其中,

本发明利用基于Transformer的模型获取全局上下文信息,利用多窗口的Bi_LSTM对局部上下文信息进行提取,并利用基于CNN的联合学习模块增强了模型对相邻词之间局部上下文信息的捕捉能力,再通过多窗口注意力层精心结合全局上下文信息和局部上下文信息,解决了以往基于Transformer的模型对局部上下文信息提取不充分的问题。本发明还对标签进行自然语言化,并对其进行编码,通过对token和每个标签进行相似度计算来进行预测,充分利用了标签中的语义信息,使得命名实体识别模型的准确性得到提升。

附图说明

图1为本发明的整体流程图。

图2为本发明的总体模型结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

一种融合局部上下文信息并利用标签语义进行命名实体识别的方法,如图1所示,该方法包括以下步骤:对数据进行预处理,并得到数据中所有标签的自然语言形式;将预处理后的数据以及自然语言形式的标签集分别输入到两个基于Transformer的模型中,以获得蕴含全局上下文信息的向量和蕴含标签语义信息的向量;将蕴含全局上下文信息的向量输入到多窗口的Bi_LSTM层,以获得多层次的蕴含局部上下文信息的向量;并将蕴含全局上下文信息的向量输入到基于CNN的联合学习模块,增强模型对相邻词之间局部上下文信息的捕捉能力;然后将之前得到的蕴含全局上下文信息的向量和多层次的蕴含局部上下文信息的向量一起输入到多窗口注意力层进行信息融合,以获得token的最终表示,然后取蕴含标签语义信息的向量中[CLS]对应的词嵌入作为标签的最终表示;将token的最终表示与每个标签的最终表示进行点乘,以计算token与每个标签之间的相似度;最后,利用softmax和argmax来选取与token相似度最高的标签作为该token的预测值。

如图1所示,训练命名实体识别模型的过程包括:

S1:数据预处理,遍历训练集和验证集,获取所有标签。

S2:将经过预处理的数据和自然语言形式的标签集分别输入两个基于Transformer的模型,以获得蕴含全局上下文信息的向量和蕴含标签语义信息的向量。

S3:将蕴含全局上下文信息的向量输入多窗口的Bi_LSTM层,以获得多层次的蕴含局部上下文信息的向量。并将蕴含全局上下文信息的向量输入到基于CNN的联合学习模块,增强模型对相邻词之间局部上下文信息的捕捉能力。

S4:将之前获得的蕴含全局上下文信息的向量和多层次的蕴含局部上下文信息的向量一起输入到多窗口的注意力层,进行信息融合,得到token的最终表示。

S5:从蕴含标签语义信息的向量中选择[CLS]对应的词嵌入作为标签的最终表示。

S6:将token的最终表示与每个标签的最终表示进行点乘,计算token与每个标签之间的相似度。然后使用softmax和argmax选择与token相似度最高的标签作为该token的预测值。

S7:设置迭代次数的初始值。

S8:使用交叉熵损失函数训练模型。

S9:使用Adam算法来优化模型,即在训练过程中调整基于Transformer的模型、Bi_LSTM和基于CNN的联合学习模块的参数。

S10:检查迭代次数是否达到最大迭代次数。如果达到,完成命名实体识别模型的训练;否则,返回到步骤S8,增加迭代次数。

如图2所示,对数据进行预处理的过程包括:遍历数据集中的训练集和验证集,以获取所有标签,然后将这些标签转换为自然语言形式,例如将“B-PER”转换成“beginperson”。预处理后的数据格式如下:

tokenInput(X)=[CLS],x

labelInpu(L)=[CLS],l

X表示输入序列,x

将数据预处理完成后,输入到基于Transformer的模型中进行编码,获取蕴含全局上下文信息的向量g和蕴含标签语义信息的向量l。该步骤通过多头自注意力机制充分地捕捉单词之间的联系,多头注意力计算公式如下:

MultiHead(Z

其中E

对于

其中,d

得到多头注意力表示Z

如图2所示,得到蕴含标签语义信息的向量l后,我们取l中[CLS]对应的词嵌入表示作为标签的最终表示;为了获取token的最终表示,我们采用多窗口的Bi_LSTM层得到多层次的蕴含局部上下文信息向量,该过程包括:

步骤1:设置不同大小的窗口k,如k=[3,5,7]。

步骤2:遍历k,将窗口中的子序列送入Bi_LSTM进行局部特征提取。对于x

步骤3:将Bi_LSTM的前向输出forwardOutput=[h

此外我们使用了基于CNN的联合学习模块增强了模型对相邻词之间局部上下文信息的捕捉能力。该过程如下:

我们设定了一个新的训练目标X→Y

然后我们使用多窗口注意力层来融合全局上下文信息和局部上下文信息,得到最终的token表示,其计算公式如下:

m=softmax(g(H)

f

我们将g作为查询向量,H作为键向量和值向量;其中m表示不考虑全局上下文信息的不同局部上下文信息的加权和,g表示基于Transformer的模型得到的蕴含全局上下文信息的向量,H表示多层次的蕴含局部上下文信息的向量,f

最后我们将token和每个标签进行相似度计算,选取最高相似度的标签作为该token的最终预测标签,token与标签之间相似度计算公式和预测公式如下:

prediction=argmax(softmax(similarity))

其中,similarity表示token与每个标签的相似度,f

本发明中模型的损失函数如下:

Loss=CrossEntropy(prediction,Y)+CrossEntropy(S

其中CrossEntropy表示交叉熵函数,Y表示序列对应的目标标签序列,S

其中N表示标签的类别数目,y表示真实标签,p表示预测标签值。

采用Adam算法对损失函数进行优化,获取最小损失函数。Adam算法是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重,能够通过计算梯度的一阶矩估计和二阶矩估计为不同的参数设计独立的自适应性学习率。主要计算公式如下:

其中,

模型的评价指标:

模型使用F1分数作为评价指标,F1分数是由精确率(Precision)和召回率(Recall)计算得出的。精确率衡量了NER系统只呈现正确实体的能力,而召回率衡量了NER系统识别语料库中所有实体的能力。具体的公式如下:

True Positive(TP):被NER识别并与真实标签相匹配的实体。

False Positive(FP):被NER识别但不符合真实标签的实体。

False Negative(FN):在真实标签中注释的实体但未被NER识别。

以上所述仅是本申请的具体实施方式,应当指出,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

技术分类

06120116581957