一种实体关系抽取方法及系统与流程

文档序号:31804875发布日期:2022-10-14 20:00阅读:94来源:国知局
一种实体关系抽取方法及系统与流程

1.本发明涉及数据处理技术领域,具体涉及一种实体关系抽取方法及系统。


背景技术:

2.关系抽取任务是指提取文本中实体与实体之间的关系,是信息提取中的一项重要子任务。关系抽取可以从复杂的非结构化文本中提取出机器能够理解的结构化数据。非结构化的文本在进行关系抽取之后,可以得到结构化的图数据,进行实体与实体之间的跨文本关联。具体的关系为一系列的主谓宾三元组:主语,谓语,宾语。关系抽取任务一般分为两个部分,一部分是识别文本中的实体,另一部分是分析实体之间的关系。
3.对于shanchan wu和yifan he于2019年11月cikm’19:第28届acm信息与知识管理国际会议论文集中发表的《enriching pre-trained language model with entity information for relation classification》,该文章公开了一种采用级联法抽取关系的具体方式,该级联法是目前关系抽取的主流方法之一,所谓级联法是训练两个bert模型,第一个模型负责抽取主语实体,第二个模型负责抽取关系;其中,第二个模型抽取关系的过程为:将所有的主语实体按照两两组合的方式进行全排列,然后在原文中对每个实体添加独立的标签进行编码,输入到模型中,判断这两个实体之间的关系。该方法的缺点是,对于a个实体的文本,模型需要计算的次数为a(a-1)+1次,计算复杂度为o(a2),计算量大,模型预测的速度慢。


技术实现要素:

4.为了解决上述技术问题,本发明的目的在于提供一种实体关系抽取方法及系统,所采用的技术方案具体如下:第一方面,本发明一个实施例提供了一种实体关系抽取方法,所述方法包括:s100,将待提取文本r输入经训练的第一机器学习模型预测得到n个实体标签 w={w1,w2,

,wn},所述实体包括主语实体和宾语实体,其中n≥0;s200,获取r中每个字符的特征向量,将r、w和所有字符的特征向量输入经训练的第二机器学习模型预测得到m个主语实体标签src={src1,src2,

,srcm},其中m≥0;s300,分别在r中第i个主语实体标签srci对应的主语实体两侧增加第一标记符号和第二标记符号,得到调整后的文本数据ru,其中i的取值范围为1到m;s400,根据ru更新每个字符的特征向量得到更新后的特征向量,将ru、src和所有字符更新后的特征向量输入到经训练的第二机器学习模型中预测宾语实体的关系标签,所述宾语实体的关系标签为主语实体与宾语实体之间的关系。
5.第二方面,本发明另一个实施例提供了一种实体关系抽取系统,其特征在于,所述系统包括处理器和非瞬时性计算机可读存储介质,所述非瞬时性计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现上述抽取方法。
6.本发明具有如下有益效果:通过经训练的第一机器学习模型预测实体,并将带有实体标签的文本输入经训练的第二机器学习模型预测主语,然后在主语的两侧增加标记符号之后得到调整后的文本,将调整后的文本、主语和所有字符更新后的特征向量输入到经训练的第二机器学习模型中预测宾语实体的关系标签,解决了级联法中bert模型计算量大的问题,相对于级联法提高了模型的预测速度。
附图说明
7.为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
8.图1为本发明一个实施例所提供的一种实体关系抽取方法;图2为第二机器学习模型的训练过程示意图。
具体实施方式
9.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种实体关系抽取方法及系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一个或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。
10.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
11.下面结合附图具体的说明本发明所提供的一种实体关系抽取方法及系统的具体方案。
12.请参阅图1,其示出了本发明一个实施例提供的一种实体关系抽取方法流程图,所述方法包括以下步骤:s100,将待提取文本r输入经训练的第一机器学习模型预测得到n个实体标签w={w1,w2,

,wn},所述实体包括主语实体和宾语实体,其中n≥0。
13.可选的,第一机器学习模型为第一bert模型。通过训练第一bert模型执行实体识别的任务。
14.可选的,实体为人名。
15.其中,bert模型的训练过程为:获取由j个文本样本构成的训练集{g1,g2,

,gj},其中l为正整数,并对训练集中所有文本样本中的实体和非实体进行标注。可选的,按照预先定义的标注规则进行标注,其中标注规则可以是:将文本样本中每个字符进行标注,将实体中首个字符标注为“b-姓名”,实体中其他字符标注为“i-姓名”,将非实体字符均标注为“o”。例如,对文本样本为“张三的父亲是李四”进行标注,按照文本标注的规则,将实体“张三”中首个字符“张”标注为“b-姓名”,其他实体字符“三”标注为“i-姓名”;将“李四”中“李”标注为“b-姓名”,“四”标注为“i-姓名”,将非实体字符“的母亲是”标注为“oooo”。在所有样
本完成标注之后,将标注后的训练集输入bert模型,bert模型预测实体,bert模型的损失函数为交叉熵损失函数,直至模型收敛,训练完成。
16.s200,获取r中每个字符的特征向量,将r、w和所有字符的特征向量输入经训练的第二机器学习模型预测得到m个主语实体标签src={src1,src2,

,srcm},其中m≥0。
17.可选的,第二机器学习模型为第二bert模型,bert模型包括12层transformer层,输出层为linear层。通过训练第二bert模型执行两个任务,分别为提取主语的任务和提取关系的任务。
18.其中,每个字符的特征向量包括第一字向量e、第一段向量s和第一位置向量p。对于第f个字符rf,rf的第一字向量ef为字符rf在r中的语义信息,为一个768维的向量;rf的第一段向量sf为字符rf在r的第几个子句;rf的第一位置向量pf为字符rf在r中的第几个位置。
19.在得到所有字符的特征向量之后,将r、w和所有字符的特征向量输入bert模型,输出主语实体的标签。
20.s300,分别在r中第i个主语实体标签srci对应的主语实体两侧增加第一标记符号和第二标记符号,得到调整后的文本数据ru,其中i的取值范围为1到m。
21.其中,第一标记符号和第二标记符号不同,所述第一标记符号位于主语实体的起始字符之前,用于标记主语实体的起始字符的位置;所述第二标记符号位于主语实体的结束字符之后,用于标记主语实体的结束字符的位置。
22.优选的,所述第一标记符号和所述第二标记符号均包括成对字符和标识字符,且所述标识字符位于成对字符之间;所述第一标记符号和所述第二标记符号的成对字符相同、标识字符不同。可选的,成对字符为“[”和“]”,“(”和“)”,“《”和“》”,“{”和“}”,“#”和“#”等。标识字符为单个字符,可以是单个英文字母、数字或者其他符号;标识字符为至少两个字符,可以是至少两个字母组合、至少两个数字组合、数字和字母的组合、字母与其他符号的组合或者数字与其他符号的组合等。
[0023]
优选的,成对字符为“《”和“》”,第一标记符号和所述第二标记符号的标识字符分别为s和t,则第一标记符号为《s》,第二标记符号为《t》。例如,对“张三的父亲是李四”这句话中的主语实体两侧增加标记符号,则调整后的文本数据为“《s》张三《t》的父亲是李四”。
[0024]
优选的,更新后的特征向量包括一个第一标记符号的字向量和一个第二标记符号的字向量,其中所述第一标记符号和第二标记符号分别对应一个字向量。也即将“《s》”编码为一个字向量,将“《t》”编码为一个字向量。例如,“《s》张三《t》的父亲是李四”对应的字向量序列分别为{e
x
,e
x+1
,e
x+2
,e
x+3
,

,e
x+10
},其中,e
x
为《s》对应的一个字向量,e
x+3
为《t》对应的一个字向量。
[0025]
将第一标记字符与第二标记字符分别设置在主语的两侧对主语进行标记,能够使模型更加简单地学习到与这个主语关联的宾语以及关系。
[0026]
s400,根据ru更新每个字符的特征向量得到更新后的特征向量,将ru、src和所有字符更新后的特征向量输入到第二机器学习模型中预测宾语实体的关系标签,所述宾语实体的关系标签为主语实体与宾语实体之间的关系。
[0027]
其中,更新后的特征向量与更新前的特征向量之间的区别在于,由于增加的标记符号改变了文本中某些字符的位置向量,且第一标记符号和第二标记符号分别作为一个字向量进行编码,输入的字向量序列也发生了改变,同理段向量序列也发生了变化。
[0028]
请参阅图2,其中,第二bert模型的训练过程包括以下步骤:s210,获取由h个文本样本构成的训练集d={d1,d2,

,dh},其中h为正整数,训练集d中的每个样本中的实体均携带有实体标签。
[0029]
其中,文本样本中的所有实体均有实体标签,非实体字符的标签均为非实体标签“o”,例如,例如“张三的父亲是李四”,其中实体“张三”中首个字符“张”的标签为“b-姓名”,实体中其他字符“三”的标签为“i-姓名”,同理实体“李四”的标签为“b-姓名,i-姓名”,非实体字符“的父亲是”的标签为“oooo”。
[0030]
s220,将训练集d中的主语实体标注为主语实体标签,形成主语实体训练集;在主语两侧增加了第一标记符号和第二标记符号,得到调整后的训练样本d
´
,并将宾语实体标注为关系标签,得到关系训练集。
[0031]
其中,对于将主语实体标签和关系标签的标注步骤为:将主语实体标注为主语实体标签,宾语实体标注为主语与宾语之间的关系标签,其他非实体标注为非实体标签“o”,例如,将主语实体的首个字符标注为“b-人”,主语中其他实体字符标注为“i-人”;对于宾语实体,将宾语实体的首个字符标注为“b-关系”,宾语中其他字符标注为“i-关系”,需要说明的是,宾语实体的标签为谓语,例如“张三的父亲是李四”,对于宾语“李四”,则关系为“父亲”,则“李四”的标签为“b-父亲”“i-父亲”;非实体标签为“o”,将非实体的字符统一标注为“o”。
[0032]
需要说明的是,第一标记符号和第二标记符号的标签均为“o”。
[0033]
s230,获取主语训练集中第h个文本样本dh中每个字符的特征向量和关系训练集中调整后的d
´h中每个字符的特征向量,其中h的取值范围为1到h。
[0034]
其中,每个字符的特征向量包括第一字向量e、第一段向量s和第一位置向量p,dh对应一个第一字向量序列、第一段向量序列和第一位置向量序列。也即在训练集中每个训练样本都对应三个向量序列。
[0035]
例如,请参阅图2,样本“张三的父亲是李四”中“张”的特征向量为{e1,p1,s1},e1为“张”的字向量,p1为“张”的位置向量,s1为“张”的段向量。“张三的父亲是李四”对应的第一字向量序列为{e1,e2,

,e8},第一段向量序列为{s1,s2,

,s8},第一位置向量序列为{p1,p2,

,p8}。图2中的t1为“张”字对应的标签。
[0036]
s240,将主语训练集中的文本样本及其所有字符的标签和特征向量,以及关系训练集中的文本样本及其所有字符的标签和特征向量都输入到经训练的第二机器学习模型中预测主语实体的主语实体标签和宾语实体的关系标签。
[0037]
具体的,将标注后的训练集和相应的特征向量输入第二bert模型预测关系,12层transformer层充分提取每个字符和每个字符特征之间的关联,得到每个字符的高维特征表示,最后利用linear层计算每个字符属于每类标签的分数,第二bert模型的损失函数为交叉熵损失函数,直至模型收敛,训练完成。
[0038]
其中,模型训练时的损失函数loss使用了交叉熵损失函数,loss满足:loss=(1/a)
×

a∈a,b∈b
(y
b,a
×
logp
b,a
)其中,a为第a个字符,a为该文本中字符的数量,b为第b个分类,b为分类器的种类数,y
b,a
为第a个字符为第b个分类的标签值,p
b,a
为第a个字符为第b个分类的预测值。
[0039]
对于文本中每一个实体,每种关系,在进行循环遍历预测的过程中,第二机器学习
模型计算一次训练数据就可以输出所有主语,再根据每个主语计算宾语与对应关系的关系标签信息,计算复杂度由原来的o(a2)降为o(a)。
[0040]
优选的,所述第一机器学习模型在利用训练集进行训练时预测得到k个实体,随机丢弃第一比例pro的实体得到q个实体,其中q=k
×
pro,pro满足以下条件:pro=1-2
×
pre
×
rec/(pre+rec),其中,pre为第一机器学习模型的精准率,rec为第一机器学习模型的召回率;通过带有q个实体的所述训练集训练第二机器学习模型。随机丢弃一定比例的实体能够增强第二机器学习模型在第一机器学习模型漏识别实体的情况下的准确性。通常情况下,第一机器学习模型在执行实体预测任务时会出现漏识别实体的情况,因此为了消除实体错误召回以及实体漏召回的影响,通过随机丢弃一部分实体来模拟第一机器学习模型漏召回的情况,同时也可以有一定的概率将错误召回的实体丢弃掉,增强第二机器学习模型的准确性。
[0041]
综上所述,本发明实施例提供了一种实体关系抽取方法,通过第一机器学习模型预测待提取文本r中的实体,并将带有实体标签的r输入第二机器学习模型预测主语,并在主语的两侧增加第一标记符号和第二标记符号之后得到调整后的ru,获取ru更新后的特征向量,将ru、src和所有字符更新后的特征向量输入到第二机器学习模型中预测宾语实体的关系标签,所述宾语实体的关系标签为主语实体与宾语实体之间的关系;通过先预测实体在预测实体的基础上再预测主语并通过标记主语预测关系的方式,相对于级联法进一步降低了模型的计算量,提高了模型的预测速度,并且第二机器学习模型在第一机器学习模型预测的实体标签的基础上预测主语和关系,能够进一步的提高模型预测的准确率。
[0042]
一种实体关系抽取系统,所述系统包括处理器和非瞬时性计算机可读存储介质,所述非瞬时性计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现上述任意一个实施例所公开的实体关系抽取方法,其中实体关系抽取方法已经在上述实施例中详细说明,不再赘述。
[0043]
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0044]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
[0045]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1