一种基于多图神经网络推理的文档级关系抽取方法

未命名 10-09 阅读:162 评论:0


1.本发明属于自然语言处理技术领域,特别是涉及一种基于多图神经网络推理的文档级关系抽取方法。


背景技术:

2.目前基于深度学习的文档级关系抽取方法主要有两大方向:(1)基于文档序列编码的方法;(2)基于文档图推理的方法,目前大多数方法都是基于文档图模型实现的,这主要是由于文档图充分地考虑了实体间的相互信息,用图结构把分散在不同句子中的实体联系起来,因而一定程度上避免了直接使用文档序列编码存在的长依赖问题。
3.虽然文档图在许多方法上都展现了优良的性能,但是仍存在以下不足:(1)现有方法在对文档图进行推理时通常只使用单一的图神经网络,然而文档图的节点关系是非常复杂的,特别是在构建文档图的过程中许多方法会使用多元路径关系,这导致使用单一结构的图神经网络难以充分地推理文档图信息,从而影响最终性能。(2)许多基于文档图的方法并没有考虑使用文档序列特征,导致得到的特征只能反映图信息,从而忽略文档原来的序列信息,使得性能难以提高。(3)训练过程中由于标注样本不足,大多数方法通常会使用自定义的负样本辅助训练,然而使用这些负样本也会带来一定程度的噪音问题。
4.如一种基于关联句选择和关系图推理的文档级关系抽取方法(公开号:cn113468325a,公开日:2021-10-01),抽取方法包括如下步骤:获取文档中包含头实体的第一句子集合和包含尾实体的第二句子集合,选择第一句子集合和第二句子集合中在文档内位置相近的若干个句子作为关联句;对关联句中的每个字符进行文本编码,将所有关联句中的实体编码融合,作为关系图模型的实体节点输入,获取实体相关的最短语义依存字符,作为关系图模型的依存节点输入。
5.该抽取方法能够通过关联句选择仅保留有助于实体关系判断的句子,然后使用基于图卷积神经网络的关系图推理提高了准确率,但该抽取方法现只使用单一的图神经网络,难以充分的推理文档图信息,从而影响最终性能,同时没有考虑使用文档序列特征,导致得到的特征只能反映图信息,从而忽略文档原来的序列信息,使得性能难以提高。


技术实现要素:

6.针对背景技术中存在的技术缺陷,本发明提出一种基于多图神经网络推理的文档级关系抽取方法,解决了上述技术问题以及满足了实际需求,具体的技术方案如下所示:
7.本发明涉及一种基于多图神经网络推理的文档级关系抽取方法,包括以下步骤,
8.步骤1:获得文档数据集与给定的对照实体对,所述文档数据集包括训练文档数据集与待测文档数据集,所述对照实体对包括第一对照实体对与第二对照实体对;
9.步骤2:构建基于多图神经网络推理的前文档级关系抽取模型,并将步骤1的训练文档数据集分为若干组训练文档序列与第一对照实体对输入前文档级关系抽取模型内进行训练,输出所述训练文档序列的第一文档实体对关系预测概率,并得到训练好的后文档
级关系抽取模型;
10.步骤3:将待测文档数据集与给定的第二对照实体对,输入步骤2中训练好的所述后文档级关系抽取模型内,得到对应待测文档数据集的第二文档实体对关系预测概率。
11.作为本发明的进一步技术方案,上述步骤1中的训练文档数据集与待测文档数据集分别划分为不同的批次,每个所述批次设有一组文档序列,分别为训练文档序列与待测文档序列,所述训练文档序列设有第一文档实体对,所述待测文档序列设有第二文档实体对。
12.作为本发明的进一步技术方案,上述步骤2包括以下步骤,
13.步骤2.1:输入,输入步骤1中训练文档序列与第一对照实体对;
14.步骤2.2:特征抽取,将步骤2.1的训练文档序列计算推理得到图卷积特征、图注意力特征与全局注意力特征;
15.步骤2.3:根据步骤2.1中第一对照实体对的位置信息,在步骤2.2的图卷积特征、图注意力特征与全局注意力特征中找到对应的向量表示,进行拼接得到最终的关系特征,并在此基础上计算所述训练文档序列的第一文档实体对关系预测值;
16.步骤2.4:基于2.3的基础上引入平衡交叉熵损失函数改善噪音问题,并使用所述平衡交叉熵损失函数训练前文档级关系抽取模型。
17.作为本发明的进一步技术方案,上述步骤2.2包括,
18.步骤2.2.1:编码,所述前文档级关系抽取模型对输入的训练文档序列进行编码,将步骤2.1训练文档序列中的文档输入到编码器中,得到序列编码;
19.步骤2.2.2:构建文档图,对于步骤2.1训练文档序列中任意给定的一个文档,构建一个文档图,所述文档图包含节点集合和路径边合集,所述节点集合包括文档中句子节点的集合、实体节点的集合,所述路径边合集包括句内路径的集合、句间路径的集合以及逻辑路径的集合,并构建所述文档图对应的邻接矩阵;
20.步骤2.2.3:图神经网络推理,将步骤2.1的序列编码与步骤2.2.2的节点集合生成图节点编码,并使用logsumexp函数得到图节点编码矩阵,然后把所述图节点编码矩阵与邻接矩阵输入多图神经网络部件进行推理,所述多图神经网络部件包括图卷积神经网络gcn与图注意力网络gat,分别得到图卷积特征和图注意力特征;
21.步骤2.2.4:生成全局注意力特征,计算步骤2.2.1中序列编码得到多头自注意力特征,并将所述多头自注意力特征进行拼接得到上下文特征,并利用步骤2.2.3的图节点编码矩阵与所述上下文特征计算,得到带图节点编码信息的文档序列全局注意力特征。
22.作为本发明的进一步技术方案,所述句内路径、句间路径以及逻辑路径在两个实体之间出现不同类型的路径会将被保留下来,对于多条同一类型的路径只保留第一条通过的路径,所述句内路径与句间路径为实际路径,所述逻辑路径为虚拟路径。
23.作为本发明的进一步技术方案,所述图卷积神经网络gcn构造一个设有若干层的网络,对所述图节点编码矩阵和邻接矩阵进行分层计算,获得所述文档图的图卷积编码矩阵,所述图卷积编码矩阵为图卷积特征。
24.作为本发明的进一步技术方案,所述图注意力网络gat先计算所述节点集合中两个节点之间的注意力值,然后通过所述注意力值聚合节点,并更新所述节点的节点编码,将所述节点集合中每个节点的多头注意力编码都计算出来,拼接为一个多头注意力矩阵,所
述多头注意力矩阵为图注意力特征。
25.作为本发明的进一步技术方案,所述注意力值的计算方向是单向的。
26.本发明具有的有益效果在于:
27.区别于此前大多数方法只使用单一的图神经网络结构,本发明构建了一个多图神经网络推理部件,该部件使得本发明的模型可从多角度来推理文档图特征,提升了关系预测的性能。
28.除了使用文档图特征之外,本发明也为文档序列构建了一个全局特征,该全局特征将文档图的节点信息融入至文档序列中,这让模型在保留图特征的同时又加入了序列特征辅助关系预测。
29.针对训练过程中使用负样本引入的噪音问题,本发明使用了一个正负样本平衡损失函数以降低负样本在训练过程中带来的噪音问题。
30.本发明在多个公开数据集上进行了实验,结果表明,本发明在这两个基准数据集上的关系抽取性能优于目前主流的模型。
附图说明
31.图1为本发明的总体架构图。
32.图2为本发明的具体的总框架图。
33.图3为本发明文档图的构建图。
34.图4为本发明的文档图。
35.图5为本发明基于文档序列的全局特征构造部件图。
36.图6为本发明训练的伪代码。
37.图7为本发明与现有12个主流方法基于bilstm编码器的性能比较数据图。
38.图8为本发明与现有12个主流方法基于bert编码器的性能比较数据图。
39.图9为本发明与主流文档图方法在不同实体距离下的性能对比结果图。
40.图10为本发明与主流文档图方法性能比较数据图。
41.图11为本发明及其变种方法性能比较数据图。
42.图12为本发明及其2个图结构变种方法的性能比较数据图。
43.图13为本发明实验的docred数据集上不同bert编码器的性能比较数据图。
44.图14为本发明实验超参数α和β值对关系预测性能的影响数据图。
45.图15为本发明通过t-sne降维技术在二维空间上的特征表示图。
具体实施方式
46.下面结合附图1~15与相关实施例对本发明的实施方式进行说明,本发明的实施方式不局限于如下的实施例中,并且本发明涉及本技术领域的相关必要部件,应当视为本技术领域内的公知技术,是本技术领域所属的技术人员所能知道并掌握的。
47.随着互联网的快速发展与深入应用,文本数据呈指数级增长,信息抽取技术在文本信息处理中愈发重要,其中关系抽取是信息抽取的一个重要任务,旨在从文本中自动识别给定实体之间的关系,并以三元组(主体,关系,客体)的形式存储下来,为知识图谱、自动问答等下游任务提供实体关系。
48.目前基于深度学习的文档级关系抽取方法主要有两大方向:1、基于文档序列编码的方法;2、基于文档图推理的方法,而大多数方法都是基于文档图模型实现的,这主要是由于文档图充分地考虑了实体间的相互信息,用图结构把分散在不同句子中的实体联系起来,因而一定程度上避免了直接使用文档序列编码存在的长依赖问题。
49.虽然文档图在许多方法上都展现了优良的性能,但是仍存在以下不足:
50.1)现有方法在对文档图进行推理时通常只使用单一的图神经网络,然而文档图的节点关系是非常复杂的,特别是在构建文档图的过程中许多方法会使用多元路径关系,这导致使用单一结构的图神经网络难以充分的推理文档图信息,从而影响最终性能。
51.2)许多基于文档图的方法并没有考虑使用文档序列特征,导致得到的特征只能反映图信息,从而忽略文档原来的序列信息,使得性能难以提高。
52.3)训练过程中由于标注样本不足,大多数方法通常会使用自定义的负样本辅助训练,然而使用这些负样本也会带来一定程度的噪音问题。
53.针对以上问题,本发明提供了一种基于多图神经网络推理的文档级关系抽取方法mgr(multi-graph neural network reasoning),如图1和图2所示,包括以下步骤,
54.步骤1:获得文档数据集与给定的对照实体对,文档数据集包括训练文档数据集与待测文档数据集,对照实体对包括第一对照实体对与第二对照实体对;
55.步骤2:构建基于多图神经网络推理的前文档级关系抽取模型,并将步骤1的训练文档数据集分为若干组训练文档序列与第一对照实体对输入前文档级关系抽取模型内进行训练,输出训练文档序列的第一文档实体对关系预测概率,并得到训练好的后文档级关系抽取模型;
56.步骤3:将待测文档数据集与给定的第二对照实体对,输入步骤2中训练好的后文档级关系抽取模型内,得到对应待测文档数据集的第二文档实体对关系预测概率。
57.为方便区分给定的实体对与文档序列的实体对,将给定实体对写为“对照实体对”,将文档序列的实体对写为“文档实体对”;同时,为了区分训练前后的文档与模型,上文增添了“前”“后”“第一”“第二”等词语。
58.以上是本发明的大致步骤过程,以下会结合数据和公式对本发明作进一步的详细阐述。
59.数据来源于文档数据集和给定实体对信息,其中文档数据集分为若干组文档序列,每一组文档序列包括若干个文档,文档中包含文档实体对,也说明训练文档数据集包含训练文档序列,训练文档序列包含训练文档,训练文档包含训练实体对,待测文档数据集同理。
60.假设给定的待测文档中总共有t个句子和n个实体,那么两者构成的集合分别表示为d={s1,s2,...,s
t
}和(文档实体对),其中第i个句子定义为xj表示该句子的单词,而表示该句子的长度。此时,给定实体集合中的两个实体es和eo(对照实体对),以及预先定义好的关系集合r={r1,...,rs}∪{na},其中,na表示不在集合r中的实体关系。
61.那么,文档级关系抽取的任务是根据给定的文档d,预测实体对(es,eo)
s≠o
(对照实体对)在给定关系集合r中的每一类关系标签的概率值:p(r
s,o
|(es,eo),d),r
s,o
∈r,并选取
出所有p值大于0.5的关系标签r
s,o
作为实体对(es,eo)(对照实体对)的关系预测,以下为更详细的本发明步骤流程。
62.为了方便描述,以下出现的“文档序列”“训练文档序列”指的是“训练文档序列”;“文档”“训练文档”指的“训练文档”;“对照实体对”“第一对照实体对”指的是“第一对照实体对”;“文档实体对”“第一文档实体对”指的是“第一文档实体对”。
63.步骤1:获得文档数据集与给定的对照实体对,文档数据集包括训练文档数据集与待测文档数据集,对照实体对包括第一对照实体对与第二对照实体对。
64.步骤2:构建基于多图神经网络推理的前文档级关系抽取模型,并将步骤1的训练文档数据集分为若干组训练文档序列与第一对照实体对输入前文档级关系抽取模型内进行训练,输出训练文档序列的第一文档实体对关系预测概率,并得到训练好的后文档级关系抽取模型。
65.步骤2.1:输入,输入步骤1中训练文档序列与第一对照实体对。
66.步骤2.2:特征抽取,将步骤2.1的训练文档序列计算推理得到图卷积特征、图注意力特征与全局注意力特征。
67.步骤2.2.1:编码,将步骤2.1训练文档序列中的文档输入到编码器中,得到序列编码。
68.在训练阶段,将整个训练数据集的文档划分为不同的批次,每个批次使用一组文档序列进行训练,接下来将通过单个文档来展示训练过程。由前面的文档级关系抽取定义可知,每个文档可表示为d={s1,s2,...,s
t
},而每个句子又可表示为那么对文档在编码阶段为了方便处理,将文档中的句子合并成一个长序列进行编码,即令此处xj表示该长序列中的单词,而m表示文档中句子合并后的长度,其中最大值设定为512。
69.随后,将合并成长序列的文档输入到编码器encoder中:
70.h=[h1,h2,...,hm]=encoder([x1,x2,...,xm])。
ꢀꢀꢀꢀ
(1)
[0071]
其中,当前文档的序列编码表示h,表示文档中单词xm的d维特征向量,表示序列矩阵。
[0072]
步骤2.2.2:对于步骤2.1训练文档序列中任意给定的一个文档构建一个异构图g=(v,e)即文档图,并构建文档图对应的邻接矩阵。
[0073]
如图4所示,其中包含节点集合v和路径边合集e,v=ve∪vs,而ve={e1,e2,...,en}和vs={s1,s2,...,s
t
}分别表示文档中句子和文档实体构成的节点集合;e=e1∪e2∪e3分别表示由句内路径的集合e1、句间路径的集合e2以及逻辑路径的集合e3构成的边集合。接下来以为例,根据以下公式构建其所对应文档图g的邻接矩阵
[0074][0075]
其中,vi,vj为节点集合v中任意两个节点,merge函数的作用是根据给定的规则为输入的节点对(vi,vj)选择相应路径,并在u中做对应的更新。
[0076]
如图3所示,路径的构建规则如下:
[0077]
1)句内路径:若两个文档实体在文档中位于同一个句子中,那么为这两个文档实体节点和句子节点构建句内路径,假设是文档实体es和eo在文档图g中节点表示,那么此时公式(2)中输入的节点对(vi,vj)即为和由于这两个文档实体位于同一个句子中,因此可以直接关联这两个文档实体,merge操作完成后,在邻接矩阵中可以构成一条句内推理路径将其添加到e1中。
[0078]
2)句间路径:若两个文档实体分散在不同句子中且经过中间文档实体或句子(中间文档实体可以有多个,通常是文档实体es和eo所在句子都提到的文档实体)能构成一条单向推理路径,则为文档实体节点和句子节点构建句间路径。
[0079]
具体地,在构建路径的过程中先找出两个文档实体所在句子节点,然后从其中一个节点出发(通过图的搜索算法),如果能顺利到达另一个节点,则该路径是通的,把经过的中间节点保存下来,即句间路径。
[0080]
假设和是文档图g节点集合ve中的文档实体节点,表示中间文档实体节点,而是文档实体es和eo所在的句子ss和so对应的句子节点,那么此时公式(2)中输入的节点对(vi,vj)可根据以及和在文档中的位置情况,通过图搜索算法,进行merge操作。此时,merge操作完成后,在邻接矩阵中可以构建一条单向的跨句推理路径并添加到e2中。
[0081]
3)逻辑路径:若两个文档实体不属于上述两种路径关系,那么它们之间不存在实际路径,为这两个文档实体节点构建一条虚拟的逻辑路径,假设是文档实体es和eo在文档图g中的节点表示。那么此时公式(2)中输入的节点对(vi,vj)由和组成,此时,可以通过merge操作为这两个节点构建一条逻辑路径并添加到e3中。
[0082]
由于文档实体(entity)通常对应多个指称(mention),因此可能会出现两个文档实体之间既存在“句内路径”,也存在“句间路径”的情况,对于不同类型的路径,都会将其保留下来,而对于同一类型的路径存在多条的情况,只保留第一条通过的路径。
[0083]
同时,节点之间的方向是随机的,在选择的时候倾向于保留不同类型的路径以确保节点之间路径的多样性,这会使下游的推理任务受益,至此,完成了文档图g=(v,e)的构建工作,并得到文档图g的邻接矩阵u。
[0084]
步骤2.2.3:图神经网络部件以文档图g的节点集合v和邻接矩阵u以及文档的序列编码表示h作为输入来推理文档图特征。
[0085]
在进行推理之前,需要先为v中的每个节点生成图节点编码表示,利用前面得到的文档序列表示h=[h1,h2,...,hm]来生成图节点编码,具体如下,先从文档给定的信息中获取单个节点vj∈v的位置向量其中是一个只包含0和1的指示向量,它的维度是文档序列的长度m,用来表示vj在文档序列中的位置,接着把每个节点的位置向量合并成一个位置矩阵:
[0086]
p=concat([p1,

,pn]),
ꢀꢀꢀꢀ
(3)
[0087]
其中,n表示节点的个数,m为序列长度,concat(
·
)表示拼接函,由于
每个图节点在文档序列中可能对应多个文档实体指称,因此在构建图节点编码的过程中需要考虑不同文档实体指称对节点编码的影响,为了得到更好的节点表示,使用logsumexp函数来计算节点编码:
[0088][0089]
c=concat([c1,...,cn]),
ꢀꢀꢀꢀ
(5)
[0090]
其中,为单个节点编码表示,表示当前节点对应的文档实体指称的数量,为图节点编码矩阵,n为节点数量。
[0091]
多图神经网络部件包含两个不同的图神经网络架构,即图卷积神经网络gcn和图注意力网络gat,在gcn中,构造一个层深为k的网络,对于给定的节点vi,其第l+1层的图节点表示可由以下公式计算:
[0092][0093]
其中,为第l层的图节点编码,b
(l)
为第l层的偏置项,为第l层的可学习参数,σ(
·
)函数表示非线性激活函数relu,ne表示边的种类,这里ne=3对应此前构建的3种路径,每种路径使用不同的权重矩阵映射,表示向量相加操作。得到第l+1层的图节点表示之后,将与第0层的相加,得到节点vi第l+1层的输出向量表示
[0094]
接着,把每一层的图节点向量聚合起来得到vi的图卷积表示向量
[0095][0096][0097]
其中,w0是第0层的可学习参数。基于此,可以获得文档图g的图卷积编码矩阵,即将节点集合v中的每个向量拼接起来:
[0098][0099]
2)在gat中,需要先计算两个节点之间的注意力值,然后通过注意力值聚合节点,对于给定的节点vi和vj,它们的注意力值计算公式如下:
[0100][0101][0102]
其中,和分别为节点vi和vj的图节点编码,w1、w2和w3是共享的可学习参数,e
ij
表示vi对vj的注意力值,ni代表节点vi在文档图g中所有邻接节点的数量,“||”为单个向量拼接操作符,exp(
·
)为指数函数,而leakyrelu(
·
)为非线性激活函数,值得一提的是,
该注意力计算是单向的,即vi对vj的注意力值不等于vj对vi的注意力值。
[0103]
接着,使用带多头参数的公式来更新节点vi的节点编码
[0104][0105]
其中,k表示多头的个数,ni为节点vi在图中所有邻接节点的数量,cj表示某个与节点vi相邻的节点vj的图表示编码,是第k个头的可学习参数矩阵,将节点集合v中每个节点的多头注意力编码都计算出来,拼接为一个多头注意力矩阵
[0106]agat
=concat([α1,...,αn])。
ꢀꢀꢀꢀ
(13)
[0107]
至此,通过多图神经网络部件分别计算得到两个文档图特征g
gcn
和a
gat
,即图卷积特征和图注意力特征。
[0108]
步骤2.2.4:构建一个全局注意力特征。
[0109]
在本发明中,如图5所示,利用文档的序列编码h=[h1,h2,...,hm]构建一个全局注意力特征,它除了使用序列编码之外,也融入了文档图的节点编码来增强特征表示,如图2中的(b)所示。具体地,以第i个序列表示hi为例,首先计算hi的自注意力分数然后归一化得到权重在此基础上,用权重乘以hi可以得到hi多头自注意力特征
[0110][0111][0112][0113]
其中,w4和w5表示可学习参数矩阵,k表示多头的个数,di表示hi的维度。
[0114]
随后,将序列编码h中每个向量的多头自注意力特征计算出来,并进行拼接,即得到整个序列编码h的上下文特征
[0115][0116]
其中,w6为可学习参数矩阵。
[0117]
在此基础上,考虑图节点编码矩阵和基于序列得到的上下文特征的相互关系。同样地,首先计算第i个上下文特征zi对矩阵c的多头注意力得分ωi,然后归一化得到权重接着将注意力得分乘以zi得到zi对图节点编码矩阵c的多头注意力特征qi:
[0118][0119][0120]
[0121]
其中,w7和w8表示可学习参数,d
′i为zi的维度。然后,通过公式(21)可以得到一个带图节点编码信息的文档序列全局注意力特征
[0122][0123]
其中,w9为可学习参数矩阵。
[0124]
步骤2.3:根据步骤2.1中第一对照实体对的位置信息,在步骤2.2的图卷积特征、图注意力特征与全局注意力特征中找到对应的向量表示,进行拼接得到最终的关系特征,并在此基础上计算所述训练文档序列的第一文档实体对关系预测值。
[0125]
具体地,假设输入对照实体对为(es,eo),首先根据对照实体对的位置信息在特征g
gcn
、a
gat
和q
seq
中找到对应的向量表示,并进行拼接得到最终的关系特征
[0126][0127]
其中,由此可以推出在此基础上计算该对照实体对的关系预测值具体如下,特征经过全连接层计算得出每一类关系的概率向量,然后使用sigmoid(
·
)函数将概率映射到[0,1]。
[0128]
对于每一个概率向量,从中选出最大值来代表这一类关系的概率值,公式如下:
[0129][0130]
其中,wr为可学习参数,br为偏置项。
[0131]
步骤2.4:基于2.3的基础上引入平衡交叉熵损失函数改善噪音问题,并使用所述平衡交叉熵损失函数训练前文档级关系抽取模型。
[0132]
使用以下损失函数来训练和学习本发明:
[0133][0134][0135]
在(24)和(25)中,pi和分别表示对照实体对(es,eo)关系的真实值(one-hot编码)和预测概率值,r
s,o
=1表示正样本标签,而r
s,o
=0表示负样本标签。特别地,受平衡交叉熵损失函数的启发,对二元交叉熵损失函数进行改进,并构造损失函数即在中添加正负样本平衡因子β,使其更适合正负样本不平衡的情况。
[0136]
对于数据集真实存在的文档实体对关系,β会降低其损失值,对于人为构建的负样本,则放大其损失值,这将引导基于多图神经网络推理的前文档级关系抽取模型更关注真实存在的文档实体对关系。
[0137]
以下是本发明训练前模型的训练以及其中优选算法,以下所提及的“步骤”均为下面图6中算法所指,与上文中的“步骤”无直接关系。
[0138]
如图6所示,给出本发明训练的伪代码(算法1)及其时间、空间复杂度分析,令算法1的时间和空间复杂度分析如下。
[0139]
1)时间复杂度:步骤1的时间开销为步骤2的时间开销为步骤3-8
的时间开销为步骤9的时间开销为步骤10-23的时间开销为步骤24的时间开销为因此,本发明的时间复杂度为
[0140]
2)空间复杂度:步骤1的空间开销为步骤2以及步骤5-6的空间开销为o(|v|2);步骤9和步骤12的空间开销为o(d),其中d为特征维度;步骤13的空间开销为o(|v|);步骤14的空间开销为o(d|v|);步骤15和16的空间开销均为其中n为最小批中最大的文档图的节点数;步骤17和18的空间开销均为其中m为序列长度;步骤19的空间开销等于通常,d2远远大于n以及|v|2,故本发明的空间复杂度为o(d2)。
[0141]
步骤3:将待测文档数据集与给定的第二对照实体对,输入步骤2中训练好的后文档级关系抽取模型内,得到对应待测文档数据集的第二文档实体对关系预测概率。
[0142]
以下是本发明的实验数据,其结果能表明本发明在这两个基准数据集上的关系抽取性能优于目前主流的模型。
[0143]
1)数据来源:实验主要使用两个流行的公开数据集:第一个是docred,它是一个基于维基百科大规模标注的文档级关系抽取数据集,docred包含3053个训练集文档,1000个开发集文档以及1000个测试集文档,总共有96种关系类型,平均每个文档包含19.5个文档实体。第二个为cdr,它是一个生物医学领域的关系抽取数据集,主要用于医学文档中疾病和药物的关系抽取,cdr中的训练集、开发集和测试集均为500个文档,而平均每个文档包含6.8个文档实体。
[0144]
2)比较方法:为了更好的进行比较,实验分别以bilstm和bert-base作为编码器来实现本发明,同时,实验评估了目前12个主流文档级关系抽取方法的性能(现有方法的超参设置与原文保持一致):
[0145]

eog:提出了一个面向边而非节点推理的图神经网络来进行文档级实体关系抽取。
[0146]

lsr:构建了一个不依赖于共指关系的文档图,并使用图神经网络进行多跳推理实体关系。
[0147]

glre:在使用图神经网络推理的基础上构建实体全局特征、实体局部特征以及文本特征来预测实体关系。
[0148]

gain:分别以实体指称(entity mention)和实体为粒度构建了两个文档图结构来预测文档中的实体关系。
[0149]

hetergsan:使用启发式规则将输入的文档转为异构图,并使用一个图注意力网络来预测实体关系。
[0150]

sire:分别使用两种不同粒度的编码层来处理文档图的句内路径和句间路径。
[0151]

drn:以句内路径、逻辑路径和共指路径构建文档图,并为这三种路径构建了单独的推理任务来预测实体关系。
[0152]

altop:不使用文档图而使用一种局部文本池化方法来处理实体表示,同时提出了一个自适应阈值损失函数。
[0153]

docunet:将文档级级关系抽取任务建模成语义分割任务,并改进u-net来进行
文档级关系抽取。
[0154]

kd-docre:提出一种多轴注意力来捕获实体之间的逻辑依赖,并提出一种自适应focal loss来解决关系标签不平衡问题。
[0155]
11 eider:首次把evidence标签加入docre任务中,通过使用evidence标签训练出新的特征来强化re任务。
[0156]
12 sais:在使用evidence标签辅助训练的基础上,把evidence特征分为pooled evidence和fine-grained evidence,对数据进一步扩充。同时通过对三元组的子集进行集成学习节约计算成本。
[0157]
上述12个对比方法中,前7个方法(eog、lsr、glre、gain、hetergsan、sire、drn)均基于文档图,这也是目前文档级关系抽取的主流方法,而中间3个方法(altop、docunet、kd-docre)则是非文档图方法,它们主要基于transformer架构进行序列建模,通过构建实体之间注意力矩阵的方式来预测实体关系,最后2个方法(eider、sais)通过引入evidence标签训练新的特征,扩充了数据,进一步提高了文档级关系抽取的性能。
[0158]
在实验工作中,主要考虑的是relation抽取任务,而不涉及evidence抽取,因此在eider、sais的对比中,会去掉evidence特征进行比较。
[0159]
3)评估指标和超参设置:所有实验均在如下环境中完成:python3.7,pytorch1.6.0,geforce rtx3080ti gpu,为了保持与现有工作相同的评估设置,实验将同时给出开发集和测试集上的实验结果。
[0160]
另外,采用与现有工作一致的两个评估指标:f1和ignf1。
[0161][0162]
其中,precision为关系预测的准确性,recall为真实标注关系预测的次数。为了避免训练前的模型过度记住训练集中的文档实体对关系而出现评估偏差,ignf1在计算时会去掉开发集/测试集中和训练集重叠的文档实体对关系:
[0163][0164]
其中,e
t
表示开发集/测试集的文档实体对,e
overlap
表示训练集与开发集/测试集重合的文档实体对,因此|e
t
|-|e
overlap
|表示去掉重合的文档实体对再进行f1值的计算,ignf1和f1指标越高,说明文档实体关系预测越准确。
[0165]
本发明的超参设置如下:
[0166]

使用基于最小批的adamw优化器优化模型参数,最小批大小为12(bilstm)、8(bert)。
[0167]

文档序列编码维度为128(bilstm)、768(bert)。
[0168]

全局学习率在1e-3。
[0169]

在{5e-5,4e-5,...,1e-5}中设置bert学习率。
[0170]

学习率衰减系数在{1e-3,1e-4,1e-5}中选择。
[0171]

负样本比例α在{2,3,4,5,6}中取值,即使用正样本数α倍的负样本训练。
[0172]

在模型训练中的最大epoch设为200。
[0173]
4)实验以及实验结果:
[0174]

对比实验
[0175]
为了减少词嵌入,编码器等部件对整个实验的影响,在实验中分别基于bilstm和bert实现了本发明,在docred数据集上,选择了bert-base模型,在cdr数据集上,选择了scibert。对基于bilstm的方法,在cdr上使用pubmed词嵌入,在docred上使用glove词嵌入。
[0176]
图7和图8分别给出了它们的性能比较,从中可以看出:
[0177]
a)在使用相同编码器的情况下,本发明的性能在绝大多数情况下均高于主流的文档级关系抽取方法。例如图7中,在docred测试集上,本发明的ignf1和f1值分别为54.86%和57.05%,均高于其它主流方法,而在cdr数据集上,ignf1和f1值分别为73.4%和73.7%,同样也均获得了最优性能。
[0178]
这主要是因为:a)相较于使用单个图神经网络,本发明使用了两个不同结构的图神经网络来推理文档图,这有利于提高图特征推理的准确性;b)本发明同时也构建了基于文档序列的全局注意力特征并引入了图节点信息,这同样能使特征表达更为丰富;c)本发明在训练时通过改变损失函数中负样本的权重,使得模型更关注真实的样本数据。
[0179]
b)当使用bilstm编码器时,基于文档图的方法在现有12个主流方法中性能表现优异。例如,图7中drn、gain等基于文档图的模型在docred数据集上的f1分数分别达到56.33%和55.08%,而在cdr数据集上,两者的f1分数也分别达到了71.9%和68.3%。同时,在将bilstm网络换成bert预训练编码后,大部分基于文档图的方法也都有一定程度的提升。由于文档图能够捕捉到文档中不同实体间的联系,受编码器影响较小,因此文档图模型能在不同编码器的结构中表现出色稳定并保持性能上的相对优势。
[0180]
c)altop、docunet和kd-docre等非文档图方法在使用bert编码时性能表现出色,优于大部分文档图方法,这是由于它们都使用了实体之间的自注意力计算,而注意力机制在功能上可以代替一部分文档图的功能,非文档图方法在计算每个实体表示之间的注意力分数时,类似于文档图为实体构建路径关联。例如图8中,在docred数据集上,kd-docre的f1分数达到62.08%,而docunet的f1也达到了61.86%,然而,在使用bilstm编码的情况下,这些方法的性能要差于基于文档图的方法。例如图7中,在docred数据集上,docunet的f1分数只有52.77%,而kd-docre的f1分数也只有53.87%。这是由于非文档图的方法主要通过注意力机制来学习实体之间的联系,对bert模型的依赖性较高,因此在替换成bilstm编码器之后性能下降幅度较大。
[0181]
d)显然,基于bert编码器的方法普遍优于使用bilstm编码器的方法,这是由于bert编码器在预训练阶段使用了大量基于维基百科的语料,且在下游的任务中可以根据任务微调词嵌入的权重,因此相对于glove和pubmed等固定词嵌入具备更强的表达能力,能够从文档编码中提取到更好的实体表示,而在同样使用bert编码器的情况下,非文档图方法的性能要优于大部分文档图方法,这说明预训练模型对非图结构的性能增益较大,改进预训练模型可能是另一种提高文档级关系抽取性能的思路
[0182]
e)在docred测试集上,本发明在使用bert编码器时,ignf1分数为59.60%,低于sire方法的60.18%。这可能与bert编码器过度拟合训练集中的文档实体对有关,特别是在图神经网络推理中,一个节点表示通常由其他节点聚合而成,尽管在计算ignf1时会去掉测试集中与训练集重合的文档实体对,但是剩下的文档实体对在训练过程中仍可能会受到重合文档实体对的影响,从而影响最终的ignf1分数。
[0183]
为了进一步验证本发明的性能,将文档中的所有实体划分为句内实体和跨句实
体,并分别计算它们的f1分数,其中句内实体在表中由实体距离d=0表示,跨句实体由实体距离d>=1来表示。在实验中,主要选取了lsr、gain和sire这几个主流的文档图模型作为本发明的比对方法。对比结果如图10所示。
[0184]
从中可以看出,无论是基于bilstm编码器还是基于bert编码器,本发明都优于其他方法,从结构上看,这几个主流的文档图方法均使用单个图神经网络,而本发明使用两个不同的图神经网络,这表明使用多个图神经网络可以提高关系抽取的性能。为了使结果更为直观,将实验结果用柱状图来展示,如图9结果所示。同样,从中可以看到本发明(图中黑色)在bilstm编码器和bert编码器的情况下均优于比较中的其他主流文档图方法。
[0185]

消融实验
[0186]
以下通过消融实验来检验本发明主要组成部分的有效性。
[0187]
由于数据集docred是通过提交分数来获取test集数据的分数,并不提供test集,本实验的消融实验主要在docred的dev集和cdr的test集上进行。本实验主要构造如下4个变种方法(variant):
[0188]
a)mgr-m1:在本发明中,在图神经网络推理部分只保留gcn网络;
[0189]
b)mgr-m2:在本发明中,在图神经网络推理部分只保留gat网络;
[0190]
c)mgr-m3:在本发明中,把多图神经网络推理部件去掉,保留上下文特征;
[0191]
d)mgr-m4:在本发明中,只使用图特征预测文档实体对关系,不使用文档序列全局特征。
[0192]
图11给出了本发明与4个变种方法的性能对比。
[0193]
从图11可以看出,在docred数据集上,基于bilstm编码器时,mgr-m1和mgr-m2分别比本发明的f1指标低2.22%和1.67%,ignf1指标分别低2.36%和1.65%。这是由于mgr-m1和mgr-m2变种方法只使用单一的图神经网络结构推理文档图,因此难以从多角度推理文档图信息从而影响关系预测结果。
[0194]
而mgr-m3在去掉图神经网络部件之后,性能下降比较明显,这是因为图神经网络是本发明的核心,去掉该部件后,结构上和bilstm方法类似,只是多了一个上下文特征部件,因此在性能上也和bilstm方法相仿。
[0195]
此外,mgr-m4保留了多图神经网络的部分,由于去掉了全局注意力特征,ignf1和f1指标略低于本发明,这说明使用文档全局注意力特征对最后的关系预测有增强的效果。
[0196]
尽管使用较好的编码模型和图网络学到的模型可以获得较好的关系抽取效果,但是从消融实验(图11中mgr-m4)可以看出,仅使用编码器和图神经网络难以进一步提高性能,不使用序列特征,f1分别只有55.95和61.14,和最终的结果分别相差了1.28和1.21。基于bert编码器的性能变化情况和bilstm基本一致。
[0197]
由于本发明中使用了两个不同结构的图神经网络,为了验证该结构的性能,在实验中还构造了以下两个本发明的变种:
[0198]
e)mgr-g1:在本发明中,在图神经网络推理部分使用2个gcn网络;
[0199]
f)mgr-g2:在本发明中,在图神经网络推理部分使用2个gat网络。
[0200]
图12给出了本发明与2个图结构变种方法的性能对比。
[0201]
从整体上看,大部分情况下本发明要优于其变种方法,这表明使用两个不同图神经网络的结构在数据规模大、实体间有一定区分度的情况下能够获得较好的性能。
[0202]

超参数性能实验
[0203]
本实验讨论bert编码器以及其变种roberta和deberta的性能影响。
[0204]
基于roberta
base
和deberta
base
在docred数据集上实现了本发明,实验结果如图13所示,从图13可以看出,使用roberta和deberta作为编码器的本发明在docred数据集上的效果要优于原生的bert,不过roberta和deberta之间的性能差别不大,这说明改良后的bert编码器对本发明有一定的提升效果,但是这种提升的幅度在缩小。
[0205]
本实验主要检验本发明中两个重要超参数对关系预测性能的影响,即负样本比例α和正负样本平衡因子β。其中负样本比例α主要用于控制本发明在实验所使用的负样本数量,如α=2表示使用正样本数量2倍的负样本进行训练,α的取值范围是{2,3,4,5,6}。正负样本平衡因子β主要用来调整正负样本的损失值,使交叉熵损失更关注正样本,由于β>0.5将使损失函数更关注负样本,因此,β的取值范围是{0.1,0.2,0.3,0.4,0.5}。当β=0.5时,此时损失函数即为传统的交叉熵损失函数。
[0206]
实验结果如图14所示。
[0207]
从实验结果可以看出,在docred数据集上,当α<4时,β的作用并不明显,这是由于使用的负样本数量过少,导致模型的拟合能力不足,从而导致性能较差。当α>=4时,本发明的整体性能回升,并保持在一个相对稳定的区间。尤其是β=0.2时,本发明获得了该区间上的最优性能。而在cdr数据集上,当α=3时,本发明的性能表现比较优异,其中当β=0.2或0.3时,本发明的性能获得实验区间上的最优值,然而随着负样本比例α的增大,本发明的性能在cdr数据集上并没有同步提升,反而出现了下降。
[0208]
这可能是由于cdr数据集的规模太小,正样本数据过少,引入过多的负样本会导致模型的学习能力变差,而且由于使用的正负样本数量少,这也使得正负样本平衡因子β的作用在cdr数据集上并不明显。
[0209]

t-sne可视化
[0210]
本实验将通过t-sne降维技术来可视化显示本发明的特征表示的有效性。
[0211]
为了简单而不失一般性,本实验分别选择drn和altop作为对比方法,其中drn是基于文档图的方法,altop是基于文档序列编码的方法。统计了docred的开发集中最常出现的5类关系标签,每类关系标签选取100个实体对样本(不包含多标签样本)的最后一层输出特征,通过t-sne降维技术(归一化到区间[-1,1])可视化这些样本点,如图15所示。
[0212]
从图15可以看出,这三种方法都能有效地对这5类关系样本进行区分,但是在区域密度上有所区别,altop方法仅对其中1类样本做到明确区分,但是对剩余4类关系样本的边界划分不够明显,具体地,见图15(a)中底部的4类关系样本聚拢在一起,且有少部分样本存在漂移现象。drn方法对其中2类样本的划分较为明确,但是对剩余3类关系样本的分类效果要稍差一点,可以看到图15(b)中顶部的3类关系样本聚拢在一起。如图15(c)所示,本发明对全部5类样本的边界划分都比较明确。
[0213]
通过上述实验比较可以表明本发明具备较强的关系分类能力。
[0214]
以上数据结果表明本发明在这两个基准数据集上的关系抽取性能优于目前主流的模型。
[0215]
需要特别说明的,图7和图8分别在docred的开发集和cdr上通过设置5组不同的随机种子进行训练,最后给出本发明的ignf1和f1指标的均值和标准差,带*号的结果为重新
在该数据集上复现所得;带号的结果为重新实现了这些方法源码中的编码器部分,并在数据集上复现;带号的指标表示对比方法没有进行此项实验,该指标下的所有数据由本实验的工作重新完成,其余结果沿用这些方法中提供的数据。
[0216]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

技术特征:
1.一种基于多图神经网络推理的文档级关系抽取方法,其特征在于,包括以下步骤,步骤1:获得文档数据集与给定的对照实体对,所述文档数据集包括训练文档数据集与待测文档数据集,所述对照实体对包括第一对照实体对与第二对照实体对;步骤2:构建基于多图神经网络推理的前文档级关系抽取模型,并将步骤1的训练文档数据集分为若干组训练文档序列与第一对照实体对输入前文档级关系抽取模型内进行训练,输出所述训练文档序列的第一文档实体对关系预测概率,并得到训练好的后文档级关系抽取模型;步骤3:将待测文档数据集与给定的第二对照实体对,输入步骤2中训练好的所述后文档级关系抽取模型内,得到对应待测文档数据集的第二文档实体对关系预测概率。2.根据权利要求1所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,上述步骤1中的训练文档数据集与待测文档数据集分别划分为不同的批次,每个所述批次设有一组文档序列,分别为训练文档序列与待测文档序列,所述训练文档序列设有第一文档实体对,所述待测文档序列设有第二文档实体对。3.根据权利要求1所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,上述步骤2包括以下步骤,步骤2.1:输入,输入步骤1中训练文档序列与第一对照实体对;步骤2.2:特征抽取,将步骤2.1的训练文档序列计算推理得到图卷积特征、图注意力特征与全局注意力特征;步骤2.3:根据步骤2.1中第一对照实体对的位置信息,在步骤2.2的图卷积特征、图注意力特征与全局注意力特征中找到对应的向量表示,进行拼接得到最终的关系特征,并在此基础上计算所述训练文档序列的第一文档实体对关系预测值;步骤2.4:基于2.3的基础上引入平衡交叉熵损失函数改善噪音问题,并使用所述平衡交叉熵损失函数训练前文档级关系抽取模型。4.根据权利要求3所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,上述步骤2.2包括,步骤2.2.1:编码,所述前文档级关系抽取模型对输入的训练文档序列进行编码,将步骤2.1训练文档序列中的文档输入到编码器中,得到序列编码;步骤2.2.2:构建文档图,对于步骤2.1训练文档序列中任意给定的一个文档,构建一个文档图,所述文档图包含节点集合和路径边合集,所述节点集合包括文档中句子节点的集合、实体节点的集合,所述路径边合集包括句内路径的集合、句间路径的集合以及逻辑路径的集合,并构建所述文档图对应的邻接矩阵;步骤2.2.3:图神经网络推理,将步骤2.1的序列编码与步骤2.2.2的节点集合生成图节点编码,并使用logsumexp函数得到图节点编码矩阵,然后把所述图节点编码矩阵与邻接矩阵输入多图神经网络部件进行推理,所述多图神经网络部件包括图卷积神经网络gcn与图注意力网络gat,分别得到图卷积特征和图注意力特征;步骤2.2.4:生成全局注意力特征,计算步骤2.2.1中序列编码得到多头自注意力特征,并将所述多头自注意力特征进行拼接得到上下文特征,并利用步骤2.2.3的图节点编码矩阵与所述上下文特征计算,得到带图节点编码信息的文档序列全局注意力特征。5.根据权利要求4所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,
所述句内路径、句间路径以及逻辑路径在文档出现不同类型的路径会将被保留下来,对于多条同一类型的路径只保留第一条通过的路径,所述句内路径与句间路径为实际路径,所述逻辑路径为虚拟路径。6.根据权利要求4所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,所述图卷积神经网络gcn构造一个设有若干层的网络,对所述图节点编码矩阵和邻接矩阵进行分层计算,获得所述文档图的图卷积编码矩阵,所述图卷积编码矩阵为图卷积特征。7.根据权利要求4所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,所述图注意力网络gat先计算所述节点集合中两个节点之间的注意力值,然后通过所述注意力值聚合节点,并更新所述节点的节点编码,将所述节点集合中每个节点的多头注意力编码都计算出来,拼接为一个多头注意力矩阵,所述多头注意力矩阵为图注意力特征。8.根据权利要求7所述的基于多图神经网络推理的文档级关系抽取方法,其特征在于,所述注意力值的计算方向是单向的。

技术总结
本发明涉及一种基于多图神经网络推理的文档级关系抽取方法,包括以下步骤,步骤1:获得文档数据集与给定的对照实体对;步骤2:构建基于多图神经网络推理的前文档级关系抽取模型,将步骤1的数据输入前文档级关系抽取模型内进行训练,并得到训练好的后文档级关系抽取模型;步骤3:将步骤1的数据输入步骤2中训练好的所述后文档级关系抽取模型内,得到对应的实体对关系预测概率。本发明构建了一个多图神经网络推理部件,该部件使得本发明的模型可从多角度来推理文档图特征,提升了关系预测的性能,并为文档序列构建了一个全局特征,让模型在保留图特征的同时又加入了序列特征辅助关系预测。系预测。系预测。


技术研发人员:王燕玲 黄震华 刘博宁 薛云
受保护的技术使用者:华南师范大学
技术研发日:2023.06.12
技术公布日:2023/10/8
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐