关系抽取方法、装置、系统及计算机可读存储介质与流程

文档序号:26587104发布日期:2021-09-10 19:40阅读:102来源:国知局

1.本发明涉及关系抽取技术领域,尤其涉及一种关系抽取方法、装置、系统及计算机可读存储介质。


背景技术:

2.关系抽取的目的是识别句子中的实体之间的关系。例如,给定句子“艾伦为ibm工作”,一个关系分类器的任务在于识别出实体“艾伦”和实体“ibm”之间的“work_for”的关系。
3.关系抽取任务是很多自然语言处理应用的关键组件之一。大多数现有的关系抽取模型是使用命名实体识别任务的输出和这些命名实体对象的上下文信息来进行关系类别分类。其中,预定义的关系类别标签实际上是一个像[“work_for”,“live_in”,“located_in”,

]之类的词汇集合。
[0004]
但是,大多数关系抽取模型没有充分利用这些关系类别标签,从而导致了现有的关系抽取的结果不太准确。


技术实现要素:

[0005]
本发明实施例提供一种关系抽取方法、装置、系统及计算机可读存储介质,以提高获得的关系抽取结果的准确性。
[0006]
第一方面,本发明实施例提供了一种关系抽取方法,包括:
[0007]
获取待识别语句,其中,所述待识别语句包含待处理实体的实体标记;
[0008]
利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配;
[0009]
将匹配结果符合预设要求的目标关系类型嵌入表示对应的关系类型,作为所述待处理实体之间的实体关系;
[0010]
其中,所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的。
[0011]
其中,所述利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配,包括:
[0012]
利用预训练语言模型,生成所述待识别语句的嵌入表示;
[0013]
将所述嵌入表示和所述目标关系类型嵌入表示作为所述关系抽取模型的输入,并将所述关系抽取模型的输出作为匹配结果。
[0014]
其中,在所述获取待识别语句之前,所述方法还包括:
[0015]
训练所述关系抽取模型。
[0016]
其中,所述训练所述关系抽取模型,包括:
[0017]
获取所述预设关系类型的嵌入表示;
[0018]
利用全连接层,将所述训练语句中的第一训练语句和所述预设关系类型的嵌入表示中每一关系类型的嵌入表示进行匹配,得到每一关系类型的嵌入表示对应的匹配分数,
其中,所述第一训练语句包含实体标记;
[0019]
基于获得的匹配分数,计算交叉熵损失;
[0020]
在所述交叉熵损失满足预设条件的情况下,停止训练所述关系抽取模型。
[0021]
其中,所述获取所述预设关系类型的嵌入表示,包括:
[0022]
获取所述训练语句的第二训练语句包括的至少一个关系实例,其中,每个预设关系类型对应至少一个关系实例,所述关系实例的形式为:(第一实体,第一实体和第二实体之间的关系标签,第二实体);
[0023]
利用预训练语言模型,分别生成所述至少一个关系实例的嵌入表示;
[0024]
根据所述预设关系类型以及所述至少一个关系实例的嵌入表示,获得每一关系类型的嵌入表示。
[0025]
其中,所述利用预训练语言模型,分别生成所述至少一个关系实例的嵌入表示,包括:
[0026]
利用所述至少一个关系实例,生成所述至少一个关系实例对应的字符串;
[0027]
根据bert(bidirectional encoder representations from transformers,转换器双向编码表示)模型,分别将所述至少一个关系实例对应的字符串进行预处理;
[0028]
将预处理后的字符串输入到所述bert模型中,得到输出序列;
[0029]
根据所述输出序列,得到所述至少一个关系实例的嵌入表示。
[0030]
其中,所述输出序列包括以下位置的输出:
[0031]
关系实例中第一实体在所述字符串中的开始位置,所述关系实例中关系标签在所述字符串中的开始位置,关系实例中第二实体在所述字符串中的开始位置。
[0032]
其中,所述根据所述预设关系类型以及所述至少一个关系实例的嵌入表示,获得每一关系类型的嵌入表示,包括:
[0033]
根据所述预设的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示。
[0034]
其中,在所述根据所述预设的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示之后,所述方法还包括:
[0035]
基于所述每一关系类型的嵌入表示,计算每一关系类型的嵌入表示的平均值,并将所述平均值作为每一关系类型的最终的嵌入表示。
[0036]
第二方面,本发明实施例还提供了一种关系抽取装置,包括:
[0037]
第一获取模块,用于获取待识别语句,其中,所述待识别语句包含待处理实体的实体标记;
[0038]
第一匹配模块,用于利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配;
[0039]
第一处理模块,用于将匹配结果符合预设要求的目标关系类型嵌入表示对应的关系类型,作为所述待处理实体之间的实体关系;
[0040]
其中,所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的。
[0041]
第三方面,本发明实施例还提供一种关系抽取系统,包括:
[0042]
关系实例嵌入表示生成模块,用于为训练数据中的每个关系实例生成关系实例嵌
入表示;
[0043]
关系类型嵌入表示构建模块,用于根据所述关系实例嵌入表示,为每种关系类型构建关系类型嵌入表示;
[0044]
关系匹配模块,用于将输入语句与所述关系嵌入表示进行匹配,得到实体关系抽取结果。
[0045]
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的第一方面的方法中的步骤。
[0046]
在本发明实施例中,对于包含实体标记的待识别语句,将其利用关系抽取模型和目标关系类型嵌入表示进行匹配,并将匹配结果符合预设要求的目标关系类型嵌入表示,作为所述待识别语句包括的实体关系。由于所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的,而关系实例中除了包括实体还包括关系标签,因此,利用本发明实施例的方案,充分考虑了实体以及关系标签所包括的信息,从而使得利用本发明实施例的方案获得的实体关系更为准确,提高了获得的关系抽取结果的准确性。
附图说明
[0047]
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0048]
图1是本发明实施例提供的关系抽取方法的流程图之一;
[0049]
图2是本法实施例中训练关系抽取模型的流程图;
[0050]
图3是本发明实施例中步骤201的过程示意图;
[0051]
图4是本发明实施例中对关系实例进行预处理的过程示意图;
[0052]
图5是本发明实施例中获得每一关系类型的嵌入表示的过程示意图;
[0053]
图6是本发明实施例中获得关系抽取模型的过程示意图;
[0054]
图7是本发明实施例关系抽取系统的示意图;
[0055]
图8是本发明实施例关系抽取系统的的硬件结构示意图;
[0056]
图9是本发明实施例提供的关系抽取方法的流程图之二;
[0057]
图10是本发明实施例关系抽取装置的结构示意图之一;
[0058]
图11是本发明实施例关系抽取装置中第一匹配模块的结构示意图;
[0059]
图12是本发明实施例关系抽取装置的结构示意图之二;
[0060]
图13是本发明实施例关系抽取装置中训练模块的结构示意图;
[0061]
图14是本发明实施例关系抽取装置中第一获取子模块的结构示意图;
[0062]
图15是本发明实施例关系抽取装置中第一生成单元的结构示意图;
[0063]
图16是本发明实施例关系抽取装置的结构示意图。
具体实施方式
[0064]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0065]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
[0066]
在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0067]
参见图1,图1是本发明实施例提供的关系抽取方法的流程图,如图1所示,包括以下步骤:
[0068]
步骤101、获取待识别语句,其中,所述待识别语句包含待处理实体的实体标记。
[0069]
其中,所述待识别语句可以是任意的语句,在所述待识别语句中包含待处理实体的实体标记。可以理解为,所述待识别语句中的实体被标记了出来。待处理实体指的是待进行关系抽取的实体。
[0070]
步骤102、利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配。
[0071]
在本发明实施例中,所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的。
[0072]
具体的,利用预训练语言模型,生成所述待识别语句的嵌入表示,然后,将所述嵌入表示和所述目标关系类型嵌入表示作为所述关系抽取模型的输入,并将所述关系抽取模型的输出作为匹配结果。其中,所述预训练语言模型可以是bert(bidirectional encoder representations from transformers,转换器双向编码表示)。
[0073]
其中,所述目标关系类型嵌入表示可以是预设关系类型的嵌入表示中的任意一个或者多个嵌入表示。
[0074]
步骤103、将匹配结果符合预设要求的目标关系类型嵌入表示对应的关系类型,作为所述待处理实体之间的实体关系。
[0075]
其中,匹配结果符合预设要求可以根据实际应用的需要设置,例如可以是匹配分数大于某个预设值等。
[0076]
在本发明实施例中,对于包含实体标记的待识别语句,将其利用关系抽取模型和目标关系类型嵌入表示进行匹配,并将匹配结果符合预设要求的目标关系类型嵌入表示,作为所述待识别语句包括的实体关系。由于所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的,而关系实例中除了包括实体还包括关系标签,因此,利用本发明实施例的方案,充分考虑了实体以及关系标签所包括的信息,从而使得利用本发明实施例的方案获得的实体关系更为准确,提高了获得的关系抽取结果的准确性。
[0077]
为提高处理效率,可选的,在本发明实施例中,在步骤101之前,还可包括训练所述关系抽取模型。
[0078]
如图2所示,训练所述关系抽取模型的步骤可包括:
[0079]
步骤201、获取预设关系类型的嵌入表示。
[0080]
其中,预设关系类型可以是根据实际应用场景设置的。例如,所述预设关系类型可以是:“work_for”,“live_in”,“located_in”等等。
[0081]
参见图3,此步骤可包括如下内容:
[0082]
步骤301、获取训练语句的第二训练语句包括的至少一个关系实例。
[0083]
在本发明实施例中,可以认为将训练语句分为两部分,第一部分用于训练模型,第二部分用于预处理以获得预设关系类型的嵌入表示。其中,所述第二训练语句可以理解为是第二部分中的一个或者多个。可以任意选择在此的第二训练语句。此外,第一部分和第二部分中的训练语句可以有一个或多个是重复的,当然,两部分中的训练语句也可完全不同。
[0084]
对于第二训练语句,其中可以包括一个或者多个关系实例,每个预设关系类型对应至少一个关系实例。对于每个关系实例的处理方式相同,具体如下:
[0085]
关系抽取的任务是识别语句中的实体之间的关系。因此,在训练数据中,实体和关系标签都是已知数据。在大多数情况下,关系实例是一个三元组,可以表示成:(实体1,关系标签,实体2)。
[0086]
步骤302、利用预训练语言模型,分别生成所述至少一个关系实例的嵌入表示。
[0087]
以预训练语言模型为bert为例,在此步骤中,利用所述至少一个关系实例,生成所述至少一个关系实例对应的字符串。然后,根据bert模型,分别将所述至少一个关系实例对应的字符串进行预处理。之后,将预处理后的字符串输入到所述bert模型中,得到输出序列。最后,根据所述输出序列,得到所述至少一个关系实例的嵌入表示。其中,所述输出序列包括以下位置的输出:关系实例中第一实体在所述字符串中的开始位置,所述关系实例中关系标签在所述字符串中的开始位置,关系实例中第二实体在所述字符串中的开始位置。
[0088]
具体的,对于训练数据中的每一个关系实例三元组,将每个关系实例三元组串联成一个字符串输入嵌入编码器(如bert)中。如图4所示,在本发明实施例中,可以按照如下方式构造输入句子:在句子的开头和结尾位置分别添加“[cls]”和“[sep]”,并用“[e]”和“[r]”包围实体(entity)和关系标签(relation label)。经过预处理的句子为如下形式的句子:“[cls][e1]entity1[e1][r]relation label[r][e2]entity2[e2][sep]”。
[0089]
当使用bert作为嵌入编码器时,对于每个关系实例,将bert在以下三个位置的输出连接在一起作为这个关系实例的嵌入表示:(实体1在字符串中的开始位置,关系标签在字符串中的开始位置,实体2在字符串中的开始位置)。按照上述方式,可生成固定长度的嵌入表示。
[0090]
步骤303、根据所述预设关系类型以及所述至少一个关系实例的嵌入表示,获得每一关系类型的嵌入表示。
[0091]
具体的,在此步骤中,根据所述预设的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示。
[0092]
在实际应用中,由于可获得多个关系实例的嵌入表示,而获得的多个嵌入表示中有可能具有相同的关系类型。因此,为提高处理效率,在本发明实施例中,将根据所述预设
的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示。
[0093]
如图5所示,为提高结果的准确性以及提高模型的适用性,基于所述每一关系类型的嵌入表示,计算每一关系类型的嵌入表示的平均值,并将所述平均值作为每一关系类型的最终的嵌入表示。当然,在本发明实施例中,还可通过其他方式确定每一关系类型的嵌入表示,比如,任意选择一个关系类型的嵌入表示作为该关系类型的嵌入表示等等。
[0094]
步骤202、利用全连接层,将训练语句中的第一训练语句和所述预设关系类型的嵌入表示中每一关系类型的嵌入表示进行匹配,得到每一关系类型的嵌入表示对应的匹配分数,其中,所述第一训练语句包含实体标记。
[0095]
步骤203、基于获得的匹配分数,计算交叉熵损失。
[0096]
步骤204、在所述交叉熵损失满足预设条件的情况下,停止训练所述关系抽取模型。
[0097]
其中,所述预设条件可以根据需要设置。
[0098]
结合图6所示,将第一训练语句输入到编码器中,得到固定长度的嵌入表示。具体的,将两个实体的输出嵌入表示和其上下文的输出嵌入表示连接在一起。然后将编码器生成的嵌入表示与每个目标关系嵌入表示连接在一起,通过一个作为匹配器的全连接层,生成匹配分数。其中,目标关系嵌入表示可以是预设关系类型的嵌入表示中的任一嵌入表示。
[0099]
在计算出与每个目标关系嵌入表示的匹配分数后,可使用交叉熵计算损失。当损失降低到满足预设条件时,即可停止训练过程。其中,该预设条件可根据需要设置。
[0100]
参见图7,图7为本发明实施例关系抽取系统的示意图。该系统将句子和句子中标记的命名实体作为输入,识别命名实体之间的关系。如图7所示,所述系统700可包括:
[0101]
关系实例嵌入表示生成模块701,用于为训练数据中的每个关系实例生成关系实例嵌入表示;关系类型嵌入表示构建模块702,用于根据所述关系实例嵌入表示,为每种关系类型构建关系类型嵌入表示;关系匹配模块703,用于将输入语句与所述关系嵌入表示进行匹配,得到实体关系抽取结果,具体的,将输入语句与所述关系嵌入表示进行匹配,得到实体关系抽取结果通过将输入的句子和实体与所有关系嵌入表示进行匹配,来将关系嵌入表示应用于关系抽取工作,得到关系抽取结果。
[0102]
参见图8,图8为本发明实施例关系抽取系统的的硬件结构示意图。如图8所示,包括:网络接口810,用来连接到互联网或其他形式的通信网络;输入设备820,用来收集系统使用者的输入信号;硬盘830,用来保存目标关系类型嵌入表示的信息;中央处理器(cpu)840,用来运行程序;存储单元850,用来保存程序执行时的临时变量;显示器860,用来向系统使用者显示相关的信息。
[0103]
参见图9,图9是本发明实施例的关系抽取方法的流程图。如图9所示,本发明实施例所述的方法可包括:
[0104]
步骤901、生成训练数据中每一个关系实例的嵌入表示。
[0105]
对于训练集中的训练语句,实体和关系标签都是已知数据。在大多数情况下,关系实例是一个三元组(实体1,关系标签,实体2)。
[0106]
对于训练数据中的每一个关系实例三元组,将这个三元组串联成一个字符串输入嵌入编码器(比如bert)中。例如,可按照图4所示,按照如下方式构造输入句子:在句子的开
头和结尾位置添加“[cls]”和“[sep]”,并用“[e]”和“[r]”包围实体和关系。
[0107]
经过预处理的句子类似于:“[cls][e1]entity1[e1][r]relation label[r][e2]entity2[e2][sep]”。
[0108]
当使用bert作为嵌入编码器时,可以将bert在这三个位置的输出连接在一起作为这个关系实例的嵌入表示:(实体1开始位置,关系标签开始位置,实体2开始位置)。按照上述方式,可生成关系实例的固定长度的嵌入表示。
[0109]
步骤902、构造每种关系类型的关系嵌入表示。
[0110]
将步骤901得到的所有关系实例的嵌入表示按其关系类型分组。对于每种关系类型,将属于该类型的所有关系实例的嵌入表示求平均值,从而获得此关系类型的关系嵌入表示。
[0111]
步骤903、利用获得的关系嵌入表示进行关系抽取。
[0112]
关系抽取模型可如图6所示。在进行训练时,将带有实体标记的句子输入到编码器中以生成固定长度的嵌入表示。一种可能的方法是将两个实体的输出嵌入表示和其上下文的输出嵌入表示连接在一起。然后将编码器生成的嵌入表示与每个目标关系嵌入表示连接在一起,通过一个作为匹配器的全连接层,生成匹配分数。在计算出与每个目标关系嵌入的匹配分数后,即可使用交叉熵计算损失。当损失降低到满足截止条件时,即可停止训练过程。
[0113]
进行预测时,首先将带有实体标记的句子输入到模型中以生成嵌入表示。然后再将利用获得的关系嵌入表示进行关系抽取与每个目标关系嵌入表示分别连接在一起,通过训练得到的模型并给出匹配分数。最后,选择最匹配的目标关系作为预测的结果。例如,选择匹配分数最高的目标关系作为关系抽取的结果。
[0114]
通过以上描述可以看出,在本发明实施例中,构造关系嵌入表示的时候使用了一个关系的所有参与部分(实体和关系标签),因此,与仅使用实体或仅使用关系标签的方法相比,本发明实施例的方法提供了更好的关系嵌入表示构造方法,可以利用更多更完整的信息。此外,又由于关系嵌入表示可以表示一种关系类型,因此,可以将本方面实施例中生成的关系嵌入表示重用在其他使用相似关系类型但缺少标注数据的任务中,扩大了本发明实施例的使用范围。
[0115]
参见图10,图10是本发明实施例关系抽取装置的结构示意图。如图10所示,所述装置可包括:
[0116]
第一获取模块1001,用于获取待识别语句,其中,所述待识别语句包含待处理实体的实体标记;第一匹配模块1002,用于利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配;第一处理模块1003,用于将匹配结果符合预设要求的目标关系类型嵌入表示对应的关系类型,作为所述待处理实体之间的实体关系;其中,所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的。
[0117]
可选的,参见图11,所述第一匹配模块1002可包括:生成子模块10021,用于利用预训练语言模型,生成所述待识别语句的嵌入表示;匹配子模块10022,用于将所述嵌入表示和所述目标关系类型嵌入表示作为所述关系抽取模型的输入,并将所述关系抽取模型的输出作为匹配结果。
[0118]
参见图12,所述装置还可包括:训练模块1004,用于训练所述关系抽取模型。
[0119]
可选的,如图13所示,所述训练模块1004可包括:
[0120]
第一获取子模块10041,用于获取所述预设关系类型的嵌入表示;第一匹配子模块10042,用于利用全连接层,将所述训练语句中的第一训练语句和所述预设关系类型的嵌入表示中每一关系类型的嵌入表示进行匹配,得到每一关系类型的嵌入表示对应的匹配分数,其中,所述第一训练语句包含实体标记;第一计算子模块10043,用于基于获得的匹配分数,计算交叉熵损失;第一处理子模块10044,用于在所述交叉熵损失满足预设条件的情况下,停止训练所述关系抽取模型。
[0121]
可选的,如图14所示,所述第一获取子模块10041可包括:
[0122]
第一获取单元1041a,用于获取所述训练语句的第二训练语句包括的至少一个关系实例,其中,每个预设关系类型对应至少一个关系实例,所述关系实例的形式为:(第一实体,第一实体和第二实体之间的关系标签,第二实体);第一生成单元1041b,利用预训练语言模型,分别生成所述至少一个关系实例的嵌入表示;第二获取单元1041c,用于根据所述预设关系类型以及所述至少一个关系实例的嵌入表示,获得每一关系类型的嵌入表示。
[0123]
可选的,如图15所示,所述第一生成单元1041b可包括:
[0124]
第一生成子单元1041b1,用于利用所述至少一个关系实例,生成所述至少一个关系实例对应的字符串;预处理子单元1041b2,用于根据bert模型,分别将所述至少一个关系实例对应的字符串进行预处理;第一获取子单元1041b3,用于将预处理后的字符串输入到所述bert模型中,得到输出序列;第二获取子单元1041b4,用于根据所述输出序列,得到所述至少一个关系实例的嵌入表示。
[0125]
可选的,所述输出序列包括以下位置的输出:
[0126]
关系实例中第一实体在所述字符串中的开始位置,所述关系实例中关系标签在所述字符串中的开始位置,关系实例中第二实体在所述字符串中的开始位置。
[0127]
可选的,所述第二获取单元1041c具体用于,根据所述预设的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示。
[0128]
可选的,所述第二获取单元1041c还用于,基于所述每一关系类型的嵌入表示,计算每一关系类型的嵌入表示的平均值,并将所述平均值作为每一关系类型的最终的嵌入表示。
[0129]
本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
[0130]
参见图16,本发明实施例还提供了一种关系抽取装置的硬件结构。如图16所示,该关系抽取装置1600包括:
[0131]
处理器1602;和
[0132]
存储器1604,在所述存储器1604中存储有计算机程序指令,其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器1602执行以下步骤:
[0133]
获取待识别语句,其中,所述待识别语句包含待处理实体的实体标记;
[0134]
利用关系抽取模型,将所述待识别语句和目标关系类型嵌入表示进行匹配;
[0135]
将匹配结果符合预设要求的目标关系类型嵌入表示对应的关系类型,作为所述待处理实体之间的实体关系;
[0136]
其中,所述关系抽取模型是利用训练语句中的关系实例对应的嵌入表示以及预设关系类型的嵌入表示进行训练得到的。
[0137]
进一步地,如图16所示,该关系抽取装置1600还可以包括网络接口1601、输入设备1603、硬盘1605、和显示设备1606。
[0138]
上述各个接口和设备之间可以通过总线架构互连。总线架构可以是包括任意数量的互联的总线和桥。具体由处理器1602代表的一个或者多个中央处理器(cpu),以及由存储器1604代表的一个或者多个存储器的各种电路连接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其它电路连接在一起。可以理解,总线架构用于实现这些组件之间的连接通信。总线架构除包括数据总线之外,还包括电源总线、控制总线和状态信号总线,这些都是本领域所公知的,因此本文不再对其进行详细描述。
[0139]
所述网络接口1601,可以连接至网络(如因特网、局域网等),从网络中接收数据,并可以将接收到的数据保存在硬盘1605中。
[0140]
所述输入设备1603,可以接收操作人员输入的各种指令,并发送给处理器1602以供执行。所述输入设备1603可以包括键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等)。
[0141]
所述显示设备1606,可以将处理器1602执行指令获得的结果进行显示。
[0142]
所述存储器1604,用于存储操作系统运行所必须的程序和数据,以及处理器1602计算过程中的中间结果等数据。
[0143]
可以理解,本发明实施例中的存储器1604可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)或闪存。易失性存储器可以是随机存取存储器(ram),其用作外部高速缓存。本文描述的装置和方法的存储器1604旨在包括但不限于这些和任意其它适合类型的存储器。
[0144]
在一些实施方式中,存储器1604存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统16041和应用程序16042。
[0145]
其中,操作系统16041,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序16042,包含各种应用程序,例如浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序16042中。
[0146]
本发明上述实施例揭示的关系抽取方法可以应用于处理器1602中,或者由处理器1602实现。处理器1602可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述关系抽取方法的各步骤可以通过处理器1602中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1602可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读
存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1604,处理器1602读取存储器1604中的信息,结合其硬件完成上述方法的步骤。
[0147]
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑设备(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术所述功能的其它电子单元或其组合中。
[0148]
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
[0149]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0150]
利用预训练语言模型,生成所述待识别语句的嵌入表示;
[0151]
将所述嵌入表示和所述目标关系类型嵌入表示作为所述关系抽取模型的输入,并将所述关系抽取模型的输出作为匹配结果。
[0152]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0153]
训练所述关系抽取模型。
[0154]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0155]
获取所述预设关系类型的嵌入表示;
[0156]
利用全连接层,将所述训练语句中的第一训练语句和所述预设关系类型的嵌入表示中每一关系类型的嵌入表示进行匹配,得到每一关系类型的嵌入表示对应的匹配分数,其中,所述第一训练语句包含实体标记;
[0157]
基于获得的匹配分数,计算交叉熵损失;
[0158]
在所述交叉熵损失满足预设条件的情况下,停止训练所述关系抽取模型。
[0159]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0160]
获取所述训练语句的第二训练语句包括的至少一个关系实例,其中,每个预设关系类型对应至少一个关系实例,所述关系实例的形式为:(第一实体,第一实体和第二实体之间的关系标签,第二实体);
[0161]
利用预训练语言模型,分别生成所述至少一个关系实例的嵌入表示;
[0162]
根据所述预设关系类型以及所述至少一个关系实例的嵌入表示,获得每一关系类型的嵌入表示。
[0163]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0164]
利用所述至少一个关系实例,生成所述至少一个关系实例对应的字符串;
[0165]
根据bert模型,分别将所述至少一个关系实例对应的字符串进行预处理;
[0166]
将预处理后的字符串输入到所述bert模型中,得到输出序列;
[0167]
根据所述输出序列,得到所述至少一个关系实例的嵌入表示。
[0168]
具体地,所述输出序列包括以下位置的输出:
[0169]
关系实例中第一实体在所述字符串中的开始位置,所述关系实例中关系标签在所述字符串中的开始位置,关系实例中第二实体在所述字符串中的开始位置。
[0170]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0171]
根据所述预设的关系类型,将所述至少一个关系实例的嵌入表示进行分组,得到每一关系类型的嵌入表示。
[0172]
具体地,所述计算机程序被处理器1602执行时还可实现如下步骤:
[0173]
基于所述每一关系类型的嵌入表示,计算每一关系类型的嵌入表示的平均值,并将所述平均值作为每一关系类型的最终的嵌入表示。
[0174]
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述关系抽取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁盘或者光盘等。
[0175]
在本技术所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0176]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0177]
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁盘或者光盘等各种可以存储程序代码的介质。
[0178]
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!