CN115859996A - 一种实体关系抽取模型及其构建方法 - Google Patents
一种实体关系抽取模型及其构建方法 Download PDFInfo
- Publication number
- CN115859996A CN115859996A CN202211528737.1A CN202211528737A CN115859996A CN 115859996 A CN115859996 A CN 115859996A CN 202211528737 A CN202211528737 A CN 202211528737A CN 115859996 A CN115859996 A CN 115859996A
- Authority
- CN
- China
- Prior art keywords
- matrix
- sentence
- relation
- entity
- potential
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000605 extraction Methods 0.000 title claims abstract description 39
- 238000010276 construction Methods 0.000 title abstract description 8
- 239000011159 matrix material Substances 0.000 claims abstract description 321
- 239000013598 vector Substances 0.000 claims description 41
- 238000004364 calculation method Methods 0.000 claims description 37
- 230000006870 function Effects 0.000 claims description 30
- 230000004913 activation Effects 0.000 claims description 21
- 238000013507 mapping Methods 0.000 claims description 21
- 238000011176 pooling Methods 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 16
- 238000007781 pre-processing Methods 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims description 12
- 230000007704 transition Effects 0.000 claims description 12
- 230000007246 mechanism Effects 0.000 claims description 9
- 238000012512 characterization method Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- UFHFLCQGNIYNRP-UHFFFAOYSA-N Hydrogen Chemical compound [H][H] UFHFLCQGNIYNRP-UHFFFAOYSA-N 0.000 claims description 2
- 229910052739 hydrogen Inorganic materials 0.000 claims description 2
- 239000001257 hydrogen Substances 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims 1
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种实体关系抽取模型及其构建方法,属于知识图谱构建领域。所述实体关系抽取模型,包括:编码模块,用于提取待抽取句子的句子语义表示;潜在关系预测模块,用于根据所述句子语义表示进行关系类型的分类,得到待抽取句子的潜在关系集合;实体识别模块,用于识别所述潜在关系集合中的每个关系下的潜在实体;全局关联矩阵模块,用于根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体。本发明解决了现有技术中实体关系抽取中存在的关系重叠和实体重叠问题。
Description
技术领域
本发明属于知识图谱构建领域,特别是涉及一种实体关系抽取模型及其构建方法。
背景技术
关系抽取作为知识抽取中的子任务之一,旨在从给定的非结构化文本中识别出实体及实体之间的关系,即关系三元组(头实体,关系,尾实体)形式。关系抽取能够对文本数据进行更小粒度的语义关系分析,该任务得到的结果可以作为问答系统、知识图谱等一系列下游任务的基础。
当前关系抽取方法存在以下两方面不足:一是文本语义信息挖掘不充分,导致关系抽取中存在实体重叠、关系重叠问题;二是已有的关系抽取模型的泛化能力较差,导致模型在不同数据集表现差距大的问题。
发明内容
本发明的目的在于克服现有技术的一项或多项不足,提供一种实体关系抽取模型及其构建方法。
本发明的目的是通过以下技术方案来实现的:一种实体关系抽取模型,包括:
编码模块,用于提取待抽取句子的句子语义表示;
潜在关系预测模块,用于根据所述句子语义表示进行关系类型的分类,得到待抽取句子的潜在关系集合;
实体识别模块,用于识别所述潜在关系集合中的每个关系下的潜在实体;
全局关联矩阵模块,用于根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体。
进一步地,所述编码模块为基于Transformer的双向编码表征的预训练语言模型BERT。
进一步地,所述句子语义表示的提取方法为:将待抽取句子输入BERT模型中,得到句子的句子语义表示h。
进一步地,所述句子语义表示h的计算公式为:
h0=SWs+Wp
式中,S为输入句子的独热向量的矩阵表示句子注意力掩码;Ws为词嵌入矩阵;Wp为位置嵌入矩阵;h0为隐藏层第一层的状态向量;hα-1为第α-1层的状态向量;hα为第α层的隐藏层的状态向量;radv为对抗扰动;Trans()表示所采用的Transformer模块。
进一步地,所述潜在关系集合的生成方法为:
将所述句子语义表示进行池化操作得到池化向量;
利用sigmoid激活函数对池化向量进行处理得到句子中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
式中,Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵;
根据所述潜在关系的概率分布矩阵,将概率值大于预设的关系阈值的潜在关系输出形成潜在关系集合。
进一步地,所述潜在实体的识别方法为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵;
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的位置概率分布矩阵,所述头尾实体的位置概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q和矩阵k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα;
将所述头尾实体的位置概率分布矩阵中概率大于预设的实体阈值的位置对应的片段作为潜在头尾实体输出。
进一步地,根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体,包括:
根据句子的句子语义表示得到全局关联矩阵;
对于所述全局关联矩阵的行列为头尾识别得字符位置表示,所述全局矩阵中的概率值为句子中每个字符对的置信度,计算公式如下:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到头尾字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵的状态转移矩阵;bg为全局关联矩阵的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置的值都表示一个头尾字符对的置信度;
将所述全局关联矩阵中每个位置表示的置信度大于预设的关联阈值的都标注为1,否则标注为0;
根据潜在关系和该潜在关系下的潜在实体,利用潜在实体与全局关联矩阵中的序列进行对比,将全局关联矩阵中位置为1的地方,取其坐标值,横纵坐标值在句子中对应的字符表示头尾实体开始字符的位置,由此得到该潜在关系下对应的头尾实体对。
一种实体关系抽取模型的构建方法,包括:
S100.将数据集中的每条文本数据x以及文本数据x中包含的关系三元组(e1,r,e2)预处理为第一数据,所述第一数据包括文本数据x包含的真实关系矩阵Rrel和每个关系r对应的实体对的头尾字符位置对齐的真实全局关系矩阵Mg,三元组中e1为头实体,e2为尾实体;
S200.根据BERT模型将文本数据x进行编码得到句子语义表示h,所述句子语义表示h的计算公式为:
h0=SWs+Wp
式中,S为输入句子的独热向量的矩阵表示句子注意力掩码;Ws为词嵌入矩阵;Wp为位置嵌入矩阵;h0为隐藏层第一层的状态向量;hα-1为第α-1层的状态向量;hα为第α层的隐藏层的状态向量;radv为对抗扰动;Trans()表示所采用的Transformer模块,此处采用BERT-base模型训练,则N表示为BERT-base模型的最大隐藏层层数,即N=12,所以句子语义表示h=h12;
S300.根据句子语义表示h计算文本数据x中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵;
S400.根据句子语义表示h和潜在关系集合中的一个关系r计算头尾实体的概率分布矩阵u,经过线性操作将线性映射后的概率分布矩阵分别截取隐层的前一半得到矩阵qα和截取隐层的后一半得到矩阵kα,计算公式为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系r经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵;
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的概率分布矩阵,所述头尾实体的概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q,k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα;
S500.根据句子语义表示h计算全局关联矩阵的概率分布矩阵,所述全局关联矩阵的概率分布矩阵的计算公式为:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵中的状态转移矩阵;bg为全局关联矩阵中的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置都表示一个头尾字符对的置信度;
S600.根据损失函数进行模型权重更新,所述模型权重包括状态矩阵、偏移矩阵和对抗扰动,其中损失值的计算公式为:
Ltotal=Lrel+Lents+Lglobal
式中,Rrel为S100中预处理得到文本数据x对应的真实关系矩阵,Lrel为潜在关系的概率分布经过计算得到损失值;Mg为S100中预处理得到的文本数据x对应的真实全局关联矩阵,经过计算得到损失值Lglobal为全局关联矩阵的概率分布矩阵经过计算得到损失值;Tα为文本数据x中所有类型为α的首尾组合,Cα为文本数据x中所有类型为非α的首尾组合,α取值为头实体或者尾实体,为指数级求和,n为最大句子长度,nr为所有关系集合的大小,经过计算得到损失值Lents,Ltotal为Lrel、Lglobal、Lents之和;
S700.判断是否满足预设的模型训练条件,若是,则根据最新的模型权重生成最终的实体关系抽取模型,若否,则执行S200。
进一步地,所述S100中预处理的过程为:
初始化一个大小为1*num_rels的全0矩阵作为真实样本的关系矩阵,其中num_rels为预定义关系数量,关系矩阵中每个位置对应一种关系;将文本数据x中包含的关系三元组中的所有关系映射到关系矩阵中,得到文本数据x的真实关系矩阵Rrel;
初始化一个大小为n*n的全0三维矩阵作为真实样本对应的全局关联矩阵,n表示最大句子长度,文本数据x中每个关系r对应一个全局关联矩阵,用于表示该关系下对应的所有头尾实体对中第一个字符位置对齐,将对齐的位置标注为1,其余为0,由此得到文本数据x在关系r下的真实全局关联矩阵Mg。
进一步地,判断是否满足预设的模型训练条件,包括:
判断训练轮数是否达到预设的最大训练轮数;或者,
判断是否满足早停机制。
本发明的有益效果是:
(1)本发明采用实体单独标注的方式,并采用二维矩阵简化实体标注形式,更好地利用指针定位实体位置,从而识别实体效果更好;
(2)本发明针对关系抽取识别,采用先找关系,再进行实体识别的方式进行模型构建;针对实体抽取识别,采用全局指针网络的方式,利用全局头尾指针进行实体识别,解决了现有技术中实体关系抽取中存在的关系重叠和实体重叠问题;
(3)本发明引入了对抗学习,利用对抗学习对模型的语义特征进行扰动,从而增强了模型的鲁棒性。
附图说明
图1是本发明的实体关系抽取模型的一种组成框图;
图2是本发明的一种实体关系抽取系统结构图;
图3是本发明的一种实体关系抽取过程示意图。
具体实施方式
下面将结合实施例,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,一种实体关系抽取模型,包括编码模块、潜在关系预测模块、实体识别模块和全局关联矩阵模块。本实施例中编码模块构成编码器,潜在关系预测模块、实体识别模块和全局关联矩阵模块构成解码器。
所述编码模块用于提取待抽取句子的句子语义表示。所述编码模块可以采用基于Transformer的双向编码表征的预训练语言模型BERT。
在一些实施例中,所述句子语义表示的提取方法为:将待抽取句子输入BERT模型中,得到句子的句子语义表示h。即,将训练样本中的待抽取句子转为句子中每个字符的表征向量,所述表征向量包含经由分词器得到的词嵌入、位置嵌入;然后将表征向量输入到BERT模型中,经过编码得到融合上下文信息的句子语义表示h。
具体的,所述句子语义表示h的计算公式为:
h0=SWs+Wp
式中,S为输入句子的独热向量的矩阵表示句子注意力掩码;Ws为词嵌入矩阵;Wp为位置嵌入矩阵;h0为隐藏层第一层的状态向量;hα-1为第α-1层的状态向量;hα为第α层的隐藏层的状态向量;ra d v为对抗扰动;Trans()表示所采用的Transformer模块,此处采用BERT-base模型训练,则N表示为BERT-base模型的最大隐藏层层数,即N=12,所以句子语义表示h=h12。
所述潜在关系预测模块用于根据所述句子语义表示进行关系类型的分类,得到待抽取句子的潜在关系集合。
在一些实施例中,所述潜在关系集合的生成方法为:
将所述句子语义表示进行池化操作得到池化向量;
利用sigmoid激活函数对池化向量进行处理得到句子中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
式中,Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵;
根据所述潜在关系的概率分布矩阵,将概率值大于预设的关系阈值的潜在关系输出形成潜在关系集合,即潜在关系集合的概率分布为句子中所有潜在关系的概率值的集合。
例如,对于一个关系集合(简称,发射日期,属于),关系阈值为0.5,若某个句子经过编码后的关系预测概率值为[0.8,0.12,0.08],在解码时,与关系阈值对比,得到关系预测值[1,0,0]。
所述实体识别模块用于识别所述潜在关系集合中的每个关系下的潜在实体。
在一些实施例中,所述潜在实体的识别方法为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵;
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的位置概率分布矩阵,所述头尾实体的位置概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q和矩阵k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα;
将所述头尾实体的位置概率分布矩阵中概率大于预设的实体阈值的位置对应的片段作为潜在头尾实体输出。
例如,给定实体阈值0.5,对于句子“神舟十号,简称神十。”经过编码器得到的语义表示h和关系预测模块得到潜在关系概率分布[0.8,0.12,0.08]经过向量拼接操作后的一个线性映射得到的概率分布作为实体识别模块的输入,经过截取和矩阵转换得到头实体的概率分布矩阵,在此矩阵中,矩阵的行列均为句子中各个字符的位置表示,其中位置为(0,3)的概率最大,即对应的片段“神州十号”是该句子在“简称”关系概率最大的情况下,最有可能为头实体。而解码时,与预定义的实体阈值对比,将满足S>0.5的片段都是为头实体的输出。
全局关联矩阵模块用于根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体。
在一些实施例中,根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体,包括:
根据句子的句子语义表示得到全局关联矩阵;
对于所述全局关联矩阵的行列为头尾识别得字符位置表示,所述全局矩阵中的概率值为句子中每个字符对的置信度,计算公式如下:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到头尾字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵的状态转移矩阵;bg为全局关联矩阵的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置的值都表示一个头尾字符对的置信度;
将所述全局关联矩阵中每个位置表示的置信度大于预设的关联阈值的都标注为1,否则标注为0;
根据前面在当前句子中识别到的潜在关系和该潜在关系下的潜在实体,利用潜在实体与全局关联矩阵中的序列进行对比,将全局关联矩阵中位置为1的地方,取其坐标值,横纵坐标值在句子中对应的字符表示头尾实体开始字符的位置,由此得到该潜在关系下对应的头尾实体对。
例如,对于句子“神舟十号,简称神十。”,给定关联阈值为0.5,在解码时,经过编码器得到的语义表示,通过拼接和sigmoid操作得到全局关联矩阵,对于该矩阵的行列为头尾识别得token位置表示,矩阵中的概率值为句子中每个token对的置信度,对于矩阵中每个值大于0.5的都标注为1,反之为0。在句子对应的三元组中(神州十号,简称,神十),对头实体“神州十号”的第一个token和尾实体“神十”的第一个token在关联矩阵中位置(0,7)的概率最大。
如附图2中矩阵M,给定句子x,设置句子最大长度为n,若句子长度大于n,则进行句子截断。全局关联矩阵M大小为n×n,矩阵中每个坐标值为句子中token对的置信度,若对于句子x及其存在的一种潜在关系类型下的关系三元组的实体对为真实实体对标签,则该实体对的头实体头部token和尾实体的头部token组成的token对所在矩阵位置的置信度高,计算出的关联分数也高。例如,图中“Tom”和“Jerry”如果在一个正确的三元组如“(Tom,like,Jerry)”,那么“Tom”和“Jerry”在第1行第3列的分数会很高。
实体关系抽取流程图如附图3所示,包括三部分:
(1)潜在关系预测阶段得到输入句子的所有预测关系,如对于输入句子“神舟十号,简称“神十”,是中国载人航天工程发射的第十艘飞船,于2013年6月11日发射升空。”,在该阶段将得到预测的关系集合{简称,属于,发射日期}。
(2)全局关联矩阵模块得到句子中实体对各个头部位置的稀疏01矩阵分布,如附图3的矩阵M将实体“神舟十号”和实体“神十”的第一个字符的位置坐标标注为1。
(3)实体识别部分将预测关系集合中的每个关系与文本向量一起进行实体识别抽取,得到如附图3的矩阵S中实体“神舟十号”的第一个字符和最后一个字符的坐标标注为1。
经过关系预测、实体识别得到的头尾实体矩阵与全局关联矩阵进行解码,得到该输入句子的所预测关系三元组,即(神舟十号,简称,神十),(神舟十号,属于,飞船),(神舟十号,发射日期,2013年6月11日)。
实施例二
一种实体关系抽取模型的构建方法,包括:
S100.将数据集中的每条文本数据x以及文本数据x中包含的关系三元组(e1,r,e2)预处理为第一数据,所述第一数据包括文本数据x包含的真实关系矩阵Rrel和每个关系r对应的实体对的头尾字符位置对齐的真实全局关系矩阵Mg,三元组中e1为头实体,e2为尾实体。
在一些实施例中,所述S100中预处理的过程为:初始化一个大小为1*num_rels的全0矩阵作为真实样本的关系矩阵,其中num_rels为预定义关系数量,关系矩阵中每个位置对应一种关系;将文本数据x中包含的关系三元组中的所有关系映射到关系矩阵中,得到文本数据x的真实关系矩阵Rrel。初始化一个大小为n*n的全0三维矩阵作为真实样本对应的全局关联矩阵,n表示最大句子长度,文本数据x中每个关系r对应一个全局关联矩阵,用于表示该关系下对应的所有头尾实体对中第一个字符位置对齐,将对齐的位置标注为1,其余为0,由此得到文本数据x在关系r下的真实全局关联矩阵Mg。
例如,句子“神舟十号,简称神十。”中的实体对为(神州十号,神十),在全局关联矩阵中,位置(0,7)标注为1,矩阵中其余标注为0。
S200.根据BERT模型将文本数据x进行编码得到句子语义表示h,所述句子语义表示h的计算公式为:
h0=SWs+Wp
式中,S为输入句子的独热向量的矩阵表示句子注意力掩码;Ws为词嵌入矩阵;Wp为位置嵌入矩阵;h0为隐藏层第一层的状态向量;hα-1为第α-1层的状态向量;hα为第α层的隐藏层的状态向量;ra d v为对抗扰动;Trans()表示所采用的Transformer模块,此处采用BERT-base模型训练,则N表示为BERT-base模型的最大隐藏层层数,即N=12,所以句子语义表示h=h12。
S300.根据句子语义表示h计算文本数据x中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵。
S400.根据句子语义表示h和潜在关系集合中的一个关系r计算头尾实体的概率分布矩阵u,经过线性操作将线性映射后的概率分布矩阵分别截取隐层的前一半得到矩阵qα和截取隐层的后一半得到矩阵kα,计算公式为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系r经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵。
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的概率分布矩阵,所述头尾实体的概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q,k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα。
S500.根据句子语义表示h计算全局关联矩阵的概率分布矩阵,所述全局关联矩阵的概率分布矩阵的计算公式为:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵中的状态转移矩阵;bg为全局关联矩阵中的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置都表示一个头尾字符对的置信度。
S600.根据损失函数进行模型权重更新,所述模型权重包括状态矩阵、偏移矩阵和对抗扰动,其中损失值的计算公式为:
Ltotal=Lrel+Lents+Lglobal
式中,Rrel为S100中预处理得到文本数据x对应的真实关系矩阵,Lrel为潜在关系的概率分布经过计算得到损失值;Mg为S100中预处理得到的文本数据x对应的真实全局关联矩阵,经过计算得到损失值Lglobal为全局关联矩阵的概率分布矩阵经过计算得到损失值;Tα为文本数据x中所有类型为α的首尾组合,Cα为文本数据x中所有类型为非α的首尾组合,α取值为头实体或者尾实体,为指数级求和,n为最大句子长度,nr为所有关系集合的大小,经过计算得到损失值Lents,Ltotal为Lrel、Lglobal、Lents之和。
根据训练过程中正向传播得到的损失和梯度,神经网络进行反向传播,进行参数更新,即对S300中各个计算方式中的状态矩阵和偏移矩阵进行更新,同时,对S200中的对抗扰动进行更新,这样一个传播过程为一个模型参数更新过程。每次更新结束,将利用数据集中的验证集对此过程得到的模型进行效果验证。验证模型指标采用精确率P,召回率R,F1值,其计算方式为:
S700.判断是否满足预设的模型训练条件,若是,则根据最新的模型权重生成最终的实体关系抽取模型,若否,则执行S200。
在一些实施例中,判断是否满足预设的模型训练条件,包括:判断训练轮数是否达到预设的最大训练轮数;或者,判断是否满足早停机制。具体方法如下:
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (10)
1.一种实体关系抽取模型,其特征在于,包括:
编码模块,用于提取待抽取句子的句子语义表示;
潜在关系预测模块,用于根据所述句子语义表示进行关系类型的分类,得到待抽取句子的潜在关系集合;
实体识别模块,用于识别所述潜在关系集合中的每个关系下的潜在实体;
全局关联矩阵模块,用于根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体。
2.根据权利要求1所述的一种实体关系抽取模型,其特征在于,所述编码模块为基于Transformer的双向编码表征的预训练语言模型BERT。
3.根据权利要求2所述的一种实体关系抽取模型,其特征在于,所述句子语义表示的提取方法为:将待抽取句子输入BERT模型中,得到句子的句子语义表示h。
5.根据权利要求1所述的一种实体关系抽取模型,其特征在于,所述潜在关系集合的生成方法为:
将所述句子语义表示进行池化操作得到池化向量;
利用sigmoid激活函数对池化向量进行处理得到句子中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
式中,Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵;
根据所述潜在关系的概率分布矩阵,将概率值大于预设的关系阈值的潜在关系输出形成潜在关系集合。
6.根据权利要求1所述的一种实体关系抽取模型,其特征在于,所述潜在实体的识别方法为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵;
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的位置概率分布矩阵,所述头尾实体的位置概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q和矩阵k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα;
将所述头尾实体的位置概率分布矩阵中概率大于预设的实体阈值的位置对应的片段作为潜在头尾实体输出。
7.根据权利要求1所述的一种实体关系抽取模型,其特征在于,根据所述句子语义表示得到全局关联矩阵,并根据全局关联矩阵识别待抽取句子在每个关系下对应的潜在实体中属于该关系下的实体,包括:
根据句子的句子语义表示得到全局关联矩阵;
对于所述全局关联矩阵的行列为头尾识别得字符位置表示,所述全局矩阵中的概率值为句子中每个字符对的置信度,计算公式如下:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到头尾字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵的状态转移矩阵;bg为全局关联矩阵的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置的值都表示一个头尾字符对的置信度;
将所述全局关联矩阵中每个位置表示的置信度大于预设的关联阈值的都标注为1,否则标注为0;
根据潜在关系和该潜在关系下的潜在实体,利用潜在实体与全局关联矩阵中的序列进行对比,将全局关联矩阵中位置为1的地方,取其坐标值,横纵坐标值在句子中对应的字符表示头尾实体开始字符的位置,由此得到该潜在关系下对应的头尾实体对。
8.一种实体关系抽取模型的构建方法,其特征在于,包括:
S100.将数据集中的每条文本数据x以及文本数据x中包含的关系三元组(e1,r,e2)预处理为第一数据,所述第一数据包括文本数据x包含的真实关系矩阵Rrel和每个关系r对应的实体对的头尾字符位置对齐的真实全局关系矩阵Mg,三元组中e1为头实体,e2为尾实体;
S200.根据BERT模型将文本数据x进行编码得到句子语义表示h,所述句子语义表示h的计算公式为:
h0=SWs+Wp
式中,S为输入句子的独热向量的矩阵表示句子注意力掩码;Ws为词嵌入矩阵;Wp为位置嵌入矩阵;h0为隐藏层第一层的状态向量;hα-1为第α-1层的状态向量;hα为第α层的隐藏层的状态向量;radv为对抗扰动;Trans()表示所采用的Transformer模块,此处采用BERT-base模型训练,则N表示为BERT-base模型的最大隐藏层层数,即N=12,所以句子语义表示h=h12;
S300.根据句子语义表示h计算文本数据x中潜在关系的概率分布矩阵,所述句子中潜在关系的概率分布矩阵的计算公式为:
havg=Avgpool(h)
Prel=σ(Wrhavg+br)
Avgpool()为一个池化操作函数,h为经由编码器得到的语义表示;havg为语义表示经过池化得到池化向量,σ为sigmoid激活函数,Wr为潜在关系概率分布矩阵的状态转移矩阵,br为潜在关系概率分布矩阵的偏移量矩阵;Prel为潜在关系的概率分布矩阵;
S400.根据句子语义表示h和潜在关系集合中的一个关系r计算头尾实体的概率分布矩阵u,经过线性操作将线性映射后的概率分布矩阵分别截取隐层的前一半得到矩阵qα和截取隐层的后一半得到矩阵kα,计算公式为:
式中,h为句子编码得到的语义表示;u表示当前句子所包含的关系r经过编码得到的关系表示;为线性激活函数;half()表示截取操作,half0()表示截取经过线性映射得到的矩阵的前一半,half1()表示截取经过线性映射后得到的矩阵的后一半;qα表示为实体类型为α的概率分布矩阵;kα表示为实体类型为α的概率分布矩阵;
将矩阵qα和矩阵kα进行矩阵变换得到头尾实体的概率分布矩阵,所述头尾实体的概率分布矩阵的计算公式为:
式中,Q为位置变换矩阵,相当于对矩阵q,k做一次线性注意力机制得到实体类型为α的位置概率分布矩阵sα;
S500.根据句子语义表示h计算全局关联矩阵的概率分布矩阵,所述全局关联矩阵的概率分布矩阵的计算公式为:
式中,表示实体类型为sub类型,即头实体类型的句子语义表示h中的第i个字符的语义表示,表示实体类型为obj类型,即尾实体类型的句子语义表示h中的第j个字符的语义表示,表示拼接得到字符位置表示;σ为sigmoid激活函数;Wg为全局关联矩阵中的状态转移矩阵;bg为全局关联矩阵中的偏移量矩阵;表示经过计算得到的全局概率矩阵,矩阵中每个位置都表示一个头尾字符对的置信度;
S600.根据损失函数进行模型权重更新,所述模型权重包括状态矩阵、偏移矩阵和对抗扰动,其中损失值的计算公式为:
Ltotal=Lrel+Lents+Lglobal
式中,Rrel为S100中预处理得到文本数据x对应的真实关系矩阵,Lrel为潜在关系的概率分布经过计算得到损失值;Mg为S100中预处理得到的文本数据x对应的真实全局关联矩阵,经过计算得到损失值Lglobal为全局关联矩阵的概率分布矩阵经过计算得到损失值;Tα为文本数据x中所有类型为α的首尾组合,Cα为文本数据x中所有类型为非α的首尾组合,α取值为头实体或者尾实体,为指数级求和,n为最大句子长度,nr为所有关系集合的大小,经过计算得到损失值Lents,Ltotal为Lrel、Lglobal、Lents之和;
S700.判断是否满足预设的模型训练条件,若是,则根据最新的模型权重生成最终的实体关系抽取模型,若否,则执行S200。
9.根据权利要求8所述的一种实体关系抽取模型的构建方法,其特征在于,所述S100中预处理的过程为:
初始化一个大小为1*num_rels的全0矩阵作为真实样本的关系矩阵,其中num_rels为预定义关系数量,关系矩阵中每个位置对应一种关系;将文本数据x中包含的关系三元组中的所有关系映射到关系矩阵中,得到文本数据x的真实关系矩阵Rrel;
初始化一个大小为n*n的全0三维矩阵作为真实样本对应的全局关联矩阵,n表示最大句子长度,文本数据x中每个关系r对应一个全局关联矩阵,用于表示该关系下对应的所有头尾实体对中第一个字符位置对齐,将对齐的位置标注为1,其余为0,由此得到文本数据x在关系r下的真实全局关联矩阵Mg。
10.根据权利要求8所述的一种实体关系抽取模型的构建方法,其特征在于,判断是否满足预设的模型训练条件,包括:
判断训练轮数是否达到预设的最大训练轮数;或者,
判断是否满足早停机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211528737.1A CN115859996A (zh) | 2022-11-30 | 2022-11-30 | 一种实体关系抽取模型及其构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211528737.1A CN115859996A (zh) | 2022-11-30 | 2022-11-30 | 一种实体关系抽取模型及其构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115859996A true CN115859996A (zh) | 2023-03-28 |
Family
ID=85668835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211528737.1A Pending CN115859996A (zh) | 2022-11-30 | 2022-11-30 | 一种实体关系抽取模型及其构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115859996A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116151355A (zh) * | 2023-04-19 | 2023-05-23 | 之江实验室 | 一种模型训练和业务执行的方法、装置、介质及设备 |
CN117218396A (zh) * | 2023-10-08 | 2023-12-12 | 深圳海角兰科技有限公司 | 基于大模型的视觉样本数据自动标注方法及系统 |
-
2022
- 2022-11-30 CN CN202211528737.1A patent/CN115859996A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116151355A (zh) * | 2023-04-19 | 2023-05-23 | 之江实验室 | 一种模型训练和业务执行的方法、装置、介质及设备 |
CN117218396A (zh) * | 2023-10-08 | 2023-12-12 | 深圳海角兰科技有限公司 | 基于大模型的视觉样本数据自动标注方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933795B (zh) | 基于上下文-情感词向量的文本情感分析系统 | |
CN111985239B (zh) | 实体识别方法、装置、电子设备及存储介质 | |
WO2022022163A1 (zh) | 文本分类模型的训练方法、装置、设备及存储介质 | |
CN113656570B (zh) | 基于深度学习模型的视觉问答方法及装置、介质、设备 | |
CN115859996A (zh) | 一种实体关系抽取模型及其构建方法 | |
CN114298158A (zh) | 一种基于图文线性组合的多模态预训练方法 | |
CN108647191B (zh) | 一种基于有监督情感文本和词向量的情感词典构建方法 | |
CN108268643A (zh) | 一种基于多粒度lstm网络的深层语义匹配实体链接方法 | |
CN111966812B (zh) | 一种基于动态词向量的自动问答方法和存储介质 | |
CN111695052A (zh) | 标签分类方法、数据处理设备、可读存储介质 | |
CN111400455A (zh) | 基于知识图谱的问答系统的关系检测方法 | |
CN112560478A (zh) | 一种使用语义标注的中文地址RoBERTa-BiLSTM-CRF耦合解析方法 | |
CN113657098B (zh) | 文本纠错方法、装置、设备及存储介质 | |
CN111695053A (zh) | 序列标注方法、数据处理设备、可读存储介质 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN110276396B (zh) | 基于物体显著性和跨模态融合特征的图片描述生成方法 | |
CN117236335B (zh) | 基于提示学习的两阶段命名实体识别方法 | |
CN117036778A (zh) | 一种基于图文转换模型的安全隐患识别标注方法 | |
CN113486645A (zh) | 一种基于深度学习的文本相似度检测方法 | |
CN114239612A (zh) | 一种多模态神经机器翻译方法、计算机设备及存储介质 | |
CN110852066A (zh) | 一种基于对抗训练机制的多语言实体关系抽取方法及系统 | |
CN116757218A (zh) | 一种基于上下句关系预测的短文本事件共指消解方法 | |
CN114330328A (zh) | 基于Transformer-CRF的藏文分词方法 | |
CN112599129A (zh) | 语音识别方法、装置、设备和存储介质 | |
CN112597299A (zh) | 文本的实体分类方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |