一种面向逻辑多态性的事理图谱表示学习方法及系统

文档序号:32000715发布日期:2022-11-02 11:08阅读:36来源:国知局
一种面向逻辑多态性的事理图谱表示学习方法及系统

1.本发明涉及知识图谱技术领域,尤其涉及一种面向逻辑多态性的事理图谱表示学习方法及系统。


背景技术:

2.知识图谱的表示学习是一种将一组实体及实体之间的关系嵌入到低维稠密的向量空间中,使得机器可以此为依据快速进行推理或预测的技术手段,知识图谱的表示学习在阅读理解、推荐系统和qa等下游任务中得到了广泛应用。
3.但是,目前由于传统知识图谱缺乏事件粒度上的表示,导致其很难进行事件的预测和推理,所以使用事理图谱对以事件作为基本单位的事实进行建模,以更好地适应这种场景。由于事件之间存在大量的事理逻辑,如因果关系、共存关系和矛盾关系等,事件之间通过这些事理逻辑进行联系和组合。在不同的先验知识下,事件的状态会通过事理逻辑组合链进行传播,所构建的事理图谱也相应的会存在不同的状态,称之为事理图谱的多态性。
4.多态性的事理图谱在嵌入过程中会产生一个问题,即在以非凸函数作为得分函数的训练模型中,事件的嵌入在多种逻辑规则的约束下,在向量空间中的位置会随着训练过程而不断发生变化。由于有的事件与其他事件之间会存在很多种逻辑约束,这些逻辑规则又有很多种组合方式,这会导致事件嵌入变化常常不能兼顾所有约束,最后难以获得良好的模型训练效果。


技术实现要素:

5.为了克服上述现有技术的不足,本发明提供了一种面向逻辑多态性的事理图谱表示学习方法及系统,通过使用树状结构对事件组合进行建模,并采用周期函数作为事件得分的方式,既保证了训练模型对于复杂事件的表达能力,又保证了每个事件的嵌入质量,以适用于不同场景下的下游任务。
6.为解决上述问题,本发明的第一目的在于提供一种面向逻辑多态性的事理图谱表示学习方法,所述事理图谱表示学习方法包括:
7.s
100
:对事理图谱中的节点进行向量化,以得到初步的向量表示;
8.s
200
:采用树状结构构建由事件组成的复合事件;
9.s
300
:考虑事件之间的逻辑关系,使用周期函数作为事件对置信度映射函数,对所述复合事件的事理逻辑进行建模;
10.s
400
:选择负采样策略对所述复合事件进行负采样;
11.s
500
:使用margin loss作为损失函数训练事件嵌入。
12.可选的,在步骤s
100
中,所述对事理图谱中的节点进行向量化具体包括:
13.s
110
:获取三元组的嵌入表示;
14.所述获取三元组的嵌入表示具体包括:选择transe模型对事理图谱进行表示学习,以得到训练后的三元组嵌入模型;
15.所述三元组嵌入模型包括头实体嵌入、关系嵌入和尾实体嵌入,所述三元组嵌入模型的距离公式表示为:
[0016][0017]
其中:(head,rel,tail)表示一个三元组,head代表实体嵌入,rel代表实体嵌入,tail代表实体嵌入;
[0018]s120
:获取基础事件的嵌入;
[0019]
所述基础事件的嵌入公式如下:δ=f(h,r,t)
[0020]
其中:

表示事件嵌入,h、r、t分别表示三元组中头实体、关系、尾实体的嵌入表示,f()表示融合操作。
[0021]
可选的,在步骤s
110
中,所述获取三元组的嵌入表示的嵌入方法包括融合事实信息的方法和融合附加信息的方法。
[0022]
可选的,在步骤s
110
中,所述三元组的嵌入表示的损失函数为:
[0023][0024]
其中:e表示事理图谱中的实体集合,r表示关系集合,(h

,r,t

)表示进行随机负采样后的三元组。
[0025]
可选的,在步骤s
200
中,所述复合事件的嵌入表示为:
[0026]
δ1=f(h1,r1,t1)
[0027]
δ2=f(h2,r2,t2)
[0028]
δ
12
=g(δ1,δ2)
[0029]
其中:δ1和δ2分别表示两个事件的嵌入,f()表示融合操作,δ
12
表示由δ1和δ2组成的复合事件,g()表示取均值操作。
[0030]
可选的,在步骤s
400
中,所述选择负采样策略对所述复合事件进行负采样具体包括:
[0031]s410
:在负采样时,考虑事件是否是复合事件;
[0032]s420
:定义由单一三元组组成的事件为一阶事件,以此类推,并表示如下:
[0033]
δ1=f(h1,r1,t1),
[0034]
δ
12
=g(δ1,δ2),
[0035]
δ
123
=g(g(δ1,δ2),δ3),
[0036]
δ
1234
=g(g(δ1,δ2),g(δ3,δ4))
[0037]
其中:δ1是一阶事件,δ
12
是二阶事件,δ
123
和δ
1234
都是三阶事件;
[0038]s430
:对事件对进行动态采样。
[0039]
可选的,在步骤s
500
中,所述损失函数margin loss的计算表达式如下:
[0040][0041]
其中:(δ1,δ
′2)表示负采样之后的三元组,γ是分隔系数。
[0042]
本发明的第二目的在于提供一种面向逻辑多态性的事理图谱表示学习系统,所述系统包括:
[0043]
事件节点向量化模块,用于对事理图谱中的节点进行向量化;
[0044]
复合事件表示模块,用于采用树状结构对复合事件进行表示;
[0045]
事理逻辑建模器,用于分析事件之间的逻辑关系,并使用周期函数作为事件对置信度映射函数,将事件对拟合到合适的波峰;
[0046]
负采样模块,用于对对事件对中的事件进行随机替换,对事件对进行在线动态采样;
[0047]
事件嵌入模块,用于训练事件嵌入。
[0048]
本发明的第三目的在于提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器用于存储支持所述处理器执行权利要求1至7任一项所述方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
[0049]
本发明的第四目的在于提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上述所述的面向逻辑多态性的事理图谱表示学习方法。
[0050]
本发明与现有技术相比具有显著的优点和有益效果,具体体现在以下方面:
[0051]
本发明使用树状结构对事件组合进行建模,并以周期函数作为得分函数,为每一个事件对设置一个合适的值,以保证在多种逻辑规则的牵拉作用下,还可以辅助将所有事件嵌入放到向量空间中合适的位置,为各种下游任务打下基础。
附图说明
[0052]
图1为本发明实施例中面向逻辑多态性的事理图谱表示学习方法的流程图;
[0053]
图2为本发明实施例中面向逻辑多态性的事理图谱表示学习系统的总体流程图示意图;
[0054]
图3为本发明实施例中复合事件树状结构的表示图;
[0055]
图4为本发明实施例中sigmoid函数曲线图;
[0056]
图5为本发明实施例中sin2(x)函数曲线图。
具体实施方式
[0057]
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
[0058]
目前,事理图谱的构建和表示学习技术对于事件的建模方式比较单一,例如事件对或事件链,这会导致训练模型对场景或条件的表现能力不足。除此之外,对于整张事理图谱来讲,不同的先验知识会导致图谱存在不同的状态,现有方案无法对这种具有多态性的事理图谱进行表示,这其中主要存在如下原因:
[0059]
其一:传统事理图谱未考虑先验知识通过事理逻辑不断地进行传播对其他事件产生的影响;
[0060]
其二:现有知识图谱表示学习模型普遍采用非凸函数优化,采用sigmoid等函数作为代价函数,其优势非常明显,即模型能够较好地收敛,且正负例之间会有明显分隔。
[0061]
但在具有多态性的事理图谱中,复杂事件往往包含多种事理逻辑,涉及很多基本事件,这些基本事件也会参与很多复杂事件的构成,若采用非凸函数作为得分函数,则这些
事件的嵌入很难满足所有事理约束。
[0062]
为解决以上技术问题,请参阅图1所示,在本发明的实施例当中提供了一种面向逻辑多态性的事理图谱表示学习方法,所述事理图谱表示学习方法包括如下步骤:
[0063]s100
:对事理图谱中的节点进行向量化,以得到初步的向量表示;
[0064]
在传统的知识图谱中,节点表示概念或者实体,节点之间的连线表示概念或者实体之间的关系。其主要应用于刻画、存储通用或者特定领域的知识体系,用于知识的查询。知识图谱的应用用于表达有时间联系的实体较为局限。
[0065]
而随着社会的发展,在事理图谱中,节点则表示事件,节点与节点即事件与事件的连线表示事件之间的关系,例如因果关系、承接关系等。这种事理图谱多应用于金融等行业,用于分析金融事件发生的原因或者导致的结果。
[0066]
具体地,在步骤s
100
中,所述对事理图谱中的节点进行向量化具体包括:
[0067]s110
:获取三元组嵌入表示;
[0068]
需要进一步解释说明的是,事件是由三元组或其他事件组成的,即基础事件需要有三元组构成,这时事理图谱即基于此知识图谱的高阶超图。所以要获取事件的嵌入表示,首先要获得三元组的嵌入表示。
[0069]
具体地,在步骤s
110
中,所述获取三元组的嵌入表示的嵌入方法包括融合事实信息的方法和融合附加信息的方法。
[0070]
当然,对三元组进行嵌入的方法有很多种,此步所获得的嵌入并不是最终的事件表示,无需使用附加信息如文本信息、关联路径等对其进行精确描述。
[0071]
具体地,在步骤s
110
中,所述获取三元组的嵌入表示具体包括:
[0072]
选择transe模型对事理图谱进行表示学习,以得到训练后的三元组嵌入模型;
[0073]
所述三元组嵌入模型包括头实体嵌入、关系嵌入和尾实体嵌入,所述三元组嵌入模型的距离公式表示为:
[0074][0075]
其中:(head,rel,tail)表示一个三元组,head代表实体嵌入,rel代表实体嵌入,tail代表实体嵌入。
[0076]
具体地,在步骤s
110
中,所述三元组的嵌入表示的损失函数为:
[0077][0078]
其中:e表示事理图谱中的实体集合,r表示关系集合,(h

,r,t

)表示进行随机负采样后的三元组。
[0079]s120
:获取获取基础事件嵌入;
[0080]
所谓基础事件,即仅由三元组组成的事件。基础事件的表达公式如下:
[0081]
δ=f(h,r,t)
[0082]
其中:

表示事件嵌入,h、r、t分别表示三元组中头实体、关系、尾实体的嵌入表示,f()表示融合操作。
[0083]
融合方式可以有取h、r、t均值,或者拼接h、r、t等,但在本实施例当中采用拼接作为融合的方式,因为这种方式可以保留三元组更多的特征。
[0084]
若头实体、尾实体和关系的嵌入都是50维,采用拼接操作后事件表示

的维度为150维。
[0085]s200
:采用树状结构构建由事件组成的复合事件。
[0086]
不同于一般事理图谱,本发明实施例中并不局限于使用单个三元组表示的事件,还会额外考虑由事件组成的复合事件,这更加符合实际生活中的情况,也较为符合多态性事理图谱的特点。
[0087]
例如:在网上购物场景中,用户验证支付密码和用户账户中余额大于商品金额这个事件对,可以被描述为一个复合事件,即用户满足支付条件。
[0088]
然而用户满足支付条件不意味着可以成功购得商品,从商家端讲,还要判断商品库存是否足够,以及是否已经过了发售时间,这个事件对可以视为商家端满足出售条件这个复合事件。这两个复合事件又可以组成一个新的事件,即用户可以成功下单购得商品。在这个场景中,每一个事件都需要进行表示。
[0089]
为了适应这种场景,本发明实施例当中采用树状结构对复杂事件进行表示。即每个复合事件都具有二叉树结构,树的叶子节点是其他事件。
[0090]
在步骤s
200
中,从嵌入角度讲,将复合事件的嵌入表示为对两个事件的嵌入取均值,所述复合事件的嵌入表示如下为:
[0091]
δ1=f(h1,r1,t1)
[0092]
δ2=f(h2,r2,t2)
[0093]
δ
12
=g(δ1,δ2)
[0094]
其中:δ1和δ2分别表示两个事件的嵌入,f()表示融合操作,δ
12
表示由δ1和δ2组成的复合事件,g()表示取均值操作。
[0095]
由此,既保证所有事件嵌入的维度一致,使无论是基础事件还是复合事件都可以互相约束,描述出更复杂的场景;又使得复合事件与组成它的基础事件建立联系,保留了一部分基础事件的特征。
[0096]s300
:考虑事件之间的逻辑关系,使用周期函数作为事件对置信度映射函数,对所述复合事件的事理逻辑进行建模;
[0097]
事理逻辑指的就是事件之间的逻辑关系,如因果、矛盾等。考虑到有些事件本身就是表示否定的,且事理图谱的多态性是需要通过事理逻辑传播的,所以这里主要考虑事件之间矛盾的关系。
[0098]
实际生活中,事件大多是复合事件,即其是由很多基础事件组合而成的。这就会导致基础事件的嵌入会随着不同的复合事件的约束而改变,可能满足了复合事件δ
12
的约束后难以满足δ
13
的约束,同时满足很多复合事件可能会导致基础事件的嵌入在向量空间中不断受到事理约束的牵拉作用。
[0099]
请参阅图4所示,当采用sigmoid作为得分函数时,即如下:
[0100]s12
=sigmoid(g(δ1,δ2))
[0101][0102]
其中g()表示求点积操作,s
12
表示δ1和δ2之间具有矛盾关系的置信度,这个得分越高,即意味着这两个事件之间越有可能具有矛盾关系。
[0103]
但sigmoid是一个单调函数,若事件嵌入受到很多事件约束的影响而被牵拉,就会很难找到最合适的位置,影响表示学习的质量。
[0104]
所以,本发明实施例当中提出使用周期函数作为事件对置信度映射函数。
[0105]
请参阅图5所示,以正弦函数为例,即:
[0106]s12
=sin(g(δ1,δ2))
[0107]
若两个事件之间具有矛盾关系成立,则得分越趋近于1,体现在正弦函数曲线上即更趋近于波峰,反之则越趋近于0。
[0108]
此时理想情况下,具有矛盾关系的事件可以表示为:
[0109]
1-sin2(g(δ1,δ2))≤δ
[0110]
δ是一个无限趋于0的数。采用sin2作为得分函数可以在相同区间内,事件嵌入可以调整的范围变大,可以拟合的波峰会更多。
[0111]
上述约束还可以转化为:
[0112][0113]
其中k
12
是一个整数,每个事件对都会对应不同的k,目的是将事件对拟合到合适的波峰,期望其尽可能满足更多的约束。
[0114]s400
:选择负采样策略对所述复合事件进行负采样。
[0115]
具体地,在步骤s
400
中,所述选择负采样策略对所述复合事件进行负采样具体包括:
[0116]s410
:在负采样时,考虑事件是否是复合事件;
[0117]
由于事件对可以是由单一三元组组成的基础事件构成,也可能是由复合事件构成。所以在负采样时,要考虑事件是否是复合事件。
[0118]s420
:定义由单一三元组组成的事件为一阶事件,以此类推,并表示如下:
[0119]
δ1=f(h1,r1,t1),
[0120]
δ
12
=g(δ1,δ2),
[0121]
δ
123
=g(g(δ1,δ2),δ3),
[0122]
δ
1234
=g(g(δ1,δ2),g(δ3,δ4))
[0123]
其中:δ1是一阶事件,δ
12
是二阶事件,δ
123
和δ
1234
都是三阶事件;
[0124]
复合事件比构成它的基础事件中最高阶的事件高一阶,在负采样的时候,随机替换的事件要与之前未被替换的事件处于同一阶,保证负采样后的事件对与之前的事件对形成对立,不破坏原始的数据分布,提高嵌入效果。
[0125]s430
:对事件对进行在线动态采样。
[0126]
考虑到本模型都是以事件对作为约束对象的,所以负采样也会对事件对中的事件进行随机替换。
[0127]
本方法采用在线事件采样,即在训练每一个batch中,都对事件对进行动态采样,使用这种方式可以获得更好的嵌入表现。
[0128]s500
:使用margin loss作为损失函数训练事件嵌入。
[0129]
对复合事件进行建模和负采样之后,下一步就需要训练事件嵌入。
[0130]
本方法使用了margin loss作为损失函数,
[0131][0132]
其中:(δ1,δ
′2)即负采样之后的三元组,γ是分隔系数。
[0133]
请参阅图2所示,图2为本技术实施例提供的面向逻辑多态性的事理图谱表示学习系统,所述系统包括:
[0134]
事件节点向量化模块,用于对事理图谱中的节点进行向量化;
[0135]
复合事件表示模块,用于采用树状结构对复合事件进行表示;
[0136]
事理逻辑建模器,用于分析事件之间的逻辑关系,并使用周期函数作为事件对置信度映射函数,将事件对拟合到合适的波峰;
[0137]
负采样模块,用于对对事件对中的事件进行随机替换,对事件对进行在线动态采样;
[0138]
事件嵌入模块,用于训练事件嵌入。
[0139]
本发明实施例还提供了一种电子设备,包括:处理器、显示器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序指令,所述处理器执行所述计算机程序指令时用于实现上述所述的面向逻辑多态性的事理图谱表示学习方法。
[0140]
本技术实施例提供的电子设备,可用于执行上述任一方法实施例提供的面向逻辑多态性的事理图谱表示学习方法,其实现原理和技术效果类似,在此不再赘述。
[0141]
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当计算机执行指令在在计算机上运行时,使得计算机执行上述所述的面向逻辑多态性的事理图谱表示学习方法。
[0142]
需要说明的是,上述的计算机可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0143]
可选的,将可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
[0144]
虽然本发明公开披露如上,但本发明公开的保护范围并非仅限于此。本领域技术人员在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1