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

基于重排序的命名实体识别方法、系统、设备及存储介质

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


基于重排序的命名实体识别方法、系统、设备及存储介质

技术领域

本发明涉及命名实体数据识别技术领域,特别是涉及一种基于重排序的命名实体识别方法、系统、设备及存储介质。

背景技术

本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。

命名实体识别(Named Entity Recognition)旨在识别文本中的实体词并将其划分为预定义的类别,是信息抽取的一项基础任务,为关系抽取、文本问答等下游任务提供了技术支持。现有工作中,基于生成式预训练模型,把命名实体识别建模为序列到序列的生成式任务。

但是,生成式模型存在固有的“曝光偏置问题”,即训练阶段采用最大似然估计,最大化给定标准序列前提下的预测序列的条件概率;

然而,推断阶段是基于之前步生成的带噪声的子序列来预测当前步的词,这种训练和推断阶段不匹配的操作会影响模型的表现。也就是说,采用现有方法得到的模型预测出来的top K候选答案中,概率最大的答案不一定是期望答案。

发明内容

为了解决上述问题,本发明提出了一种基于重排序的命名实体识别方法、系统、设备及存储介质,解决了生成式模型存在的曝光偏置问题,提高命名实体识别效果。

为了实现上述目的,本发明采用如下技术方案:

第一方面,本发明提供一种基于重排序的命名实体识别方法,包括:

对文本训练集采用预构建的命名实体识别模型得到候选识别结果;

对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序;

对排序后的候选识别结果定义对比学习损失函数,以此对预构建的命名实体识别模型进行训练;

对待处理文本采用训练后的命名实体识别模型,得到目标实体词的分类识别结果。

作为可选择的一种实施方式,所述预构建的命名实体识别模型包括编码器和解码器,采用预构建的命名实体识别模型得到候选识别结果的过程包括:

采用编码器对文本进行编码后得到文本词向量,对文本词向量通过多层感知机映射得到标签空间词向量;

将文本映射成Embedding词向量后,将Embedding词向量和标签空间词向量加权求和后得到实体词向量;

采用解码器对文本词向量经解码后得到实体词的隐向量;

将实体类型标签映射成Embedding标签向量;

根据实体词向量和隐向量得到目标实体序列中第t个实体词为各下标的概率,根据Embedding标签向量和隐向量得到所属实体类型标签的概率,将两种概率拼接后得到第t个实体词及其所属实体类型的最终概率。

作为可选择的一种实施方式,所述对比学习损失函数为:

其中,

作为可选择的一种实施方式,线性函数λ

作为可选择的一种实施方式,对命名实体识别模型还采用交叉熵损失函数在训练集

作为可选择的一种实施方式,所述交叉熵损失函数对给定标准答案前提下的条件概率进行优化,优化后的条件概率为:

其中,θ表示命名实体识别模型所包括的参数,P

作为可选择的一种实施方式,所述交叉熵损失函数为:

其中,

第二方面,本发明提供一种基于重排序的命名实体识别系统,包括:

初步识别模型,被配置为对文本训练集采用预构建的命名实体识别模型得到候选识别结果;

排序模型,被配置为对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序;

训练模型,被配置为对排序后的候选识别结果定义对比学习损失函数,以此对预构建的命名实体识别模型进行训练;

识别模型,被配置为对待处理文本采用训练后的命名实体识别模型,得到目标实体词的分类识别结果。

第三方面,本发明提供一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成第一方面所述的方法。

第四方面,本发明提供一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。

与现有技术相比,本发明的有益效果为:

本发明提出一种基于重排序的命名实体识别方法、系统、设备及存储介质,对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序,且在候选识别结果上定义对比学习损失函数,使用交叉熵损失函数和对比学习损失函数对命名实体识别模型进行多任务学习,由交叉熵损失函数优化给定标准答案前提下的条件概率,使命名实体识别模型保留第一阶段的生成能力,又能够让命名实体识别模型学会给候选识别结果按照F1分值排序,解决现有方法预测得到概率最大的答案不一定是期望答案的问题,解决了生成式模型存在的曝光偏置问题,提高命名实体识别效果。

本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。

图1为本发明实施例1提供的基于重排序的命名实体识别方法示意图。

具体实施方式

下面结合附图与实施例对本发明做进一步说明。

应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

实施例1

针对目前生成式命名实体识别方法存在的曝光偏置问题,本实施例提供了一种基于重排序的命名实体识别方法,提高命名实体识别效果;如图1所示,具体包括:

对文本训练集采用预构建的命名实体识别模型得到候选识别结果;

对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序;

对排序后的候选识别结果定义对比学习损失函数,以此对预构建的命名实体识别模型进行训练;

对待处理文本采用训练后的命名实体识别模型,得到目标实体词的分类识别结果。

无嵌套命名实体识别、嵌套命名实体识别、非连续命名实体识别等三类识别任务都可以被形式化为:给定一句有n个词的文本X=[x

根据上述形式化定义,将命名实体识别任务建模成序列到序列的生成任务,则序列到序列的生成式目标函数为:

其中,m是目标实体序列的长度,P(Y|X)为生成的句子的概率。

命名实体识别模型包括编码器(Encoder)和解码器(Decoder),编码器用于对输入的文本X进行编码得到文本词向量H

H

其中,

解码器用于自回归式的产生目标实体序列,在第t步产生目标实体序列Y中第t个实体词y

(1)将文本X映射成Embedding词向量E

E

其中,Embedding()为Encoder和Decoder之间的共享参数,用来将文本X映射成向量

(2)H

(3)通过标签空间词向量

其中,

(4)将实体类型标签G映射成Embedding标签向量

G

(5)采用解码器对文本词向量H

(6)第t个实体词的最终概率为:

其中,

在本实施例中,使用交叉熵损失函数在训练集

使用命名实体识别模型为每个训练样本

交叉熵损失函数优化了给定标准答案S*前提下的条件概率,公式如下:

其中,θ表示命名实体识别模型所包括的参数,P

对于一个样本来说,以上优化等价于最小化负对数似然函数即交叉熵损失函数:

其中,

在候选识别结果上定义对比学习损失函数,使用上述交叉熵损失函数和对比学习损失函数对命名实体识别模型进行多任务学习,使命名实体识别模型保留第一阶段的生成能力,又让命名实体识别模型学会给候选识别结果按照F1分值排序。

对于一个样本及其若干候选识别结果

其中,对于任意两个候选识别结果

λ

其中,λ为常量,本实施例取0.001。

f()是命名实体识别模型输出的条件概率,该条件概率由交叉熵损失函数进行优化;

本实施例为了探究背景技术中所述问题对命名实体识别任务的影响,对于无嵌套命名实体识别任务(flat NER)、嵌套命名实体识别任务(Nested NER)和非连续命名实体识别任务(Discontinous NER),在在八个主流命名实体识别数据集,即CoNLL2003、OntoNotes4、Genia、ACE04、ACE05、CADEC、ShARe13、ShARe14上进行探究性实验,这个实验也可以看作是测量预测阶段使用的束搜索算法的性能上限。

具体地,使用现有方法得到训练好的命名实体识别模型,并生成若干候选答案,然后计算给定标准答案前提下各个候选答案的F1分值,并取F1分值最高的候选答案作为最终答案,结果如表1-表3所示,包括现有方法的性能、生成5个候选答案时束搜索算法的性能上限、生成10个候选答案时束搜索算法的性能上限。此结果表明了“曝光偏置问题”对生成式命名实体识别任务的性能具有一定影响,束搜索的性能上限远高于使用现有方法得到的性能。

表1无嵌套命名实体识别任务(flat NER)的结果

表2嵌套命名实体识别任务(Nested NER)的结果

表3非连续命名实体识别任务(Discontinous NER)的结果

通过本实施例所提供的对候选项重排序的方法,提高了命名实体识别模型的F1分值指标。对无嵌套、嵌套、非连续三类命名实体识别任务进行效果验证,实验设置为:采用BART-large预训练模型,进行30轮训练,学习率采用2e-5,批大小采用16,beamsize采用10,候选序列数量采用10条,对比学习损失权重为1,对比学习损失为0.01。结果如表4所示,对比基线模型(第一行)和理论上限(第二行),本实施例提出的方法虽然和理论上界还有一定差距,但在所有数据集上取得了一致的提高,验证了本实施例方法的有效性。

表4在8个主流命名实体识别数据集上的F1分值指标

本实施例所提出的基于重排序的命名实体识别方法,对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序,且在候选识别结果上定义对比学习损失函数,使用交叉熵损失函数和对比学习损失函数对命名实体识别模型进行多任务学习,由交叉熵损失函数优化给定标准答案前提下的条件概率,使命名实体识别模型保留第一阶段的生成能力,又能够让命名实体识别模型学会给候选识别结果按照F1分值排序,解决现有方法预测得到概率最大的答案不一定是期望答案的问题,解决了生成式模型存在的曝光偏置问题,提高命名实体识别效果。

实施例2

本实施例提供一种基于重排序的命名实体识别系统,包括:

初步识别模型,被配置为对文本训练集采用预构建的命名实体识别模型得到候选识别结果;

排序模型,被配置为对候选识别结果根据预设的标准答案计算F1分值,并按照F1分值对候选识别结果排序;

训练模型,被配置为对排序后的候选识别结果定义对比学习损失函数,以此对预构建的命名实体识别模型进行训练;

识别模型,被配置为对待处理文本采用训练后的命名实体识别模型,得到目标实体词的分类识别结果。

此处需要说明的是,上述模块对应于实施例1中所述的步骤,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。

在更多实施例中,还提供:

一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成实施例1中所述的方法。为了简洁,在此不再赘述。

应理解,本实施例中,处理器可以是中央处理单元CPU,处理器还可以是其他通用处理器、数字信号处理器DSP、专用集成电路ASIC,现成可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。

一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例1中所述的方法。

实施例1中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。

本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元即算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

技术分类

06120116541529