1.本公开的实施例属于知识
图谱表示学习领域,具体涉及一种多
视图知识图谱表示学习方法、系统、设备及存储介质。
背景技术:
2.知识图谱表示学习是计算机科技工作者广泛研究的问题。许多大规模知识图谱都具备
本体视图、实例视图和跨视图三个视图下的知识,其中本体视图由概念及概念间关系组成,实例视图由实体与实体间关系组成,跨视图的主要形式则是(实体,概念)关系对,描述了一个实体所属的类别。
3.由于实例层的规模和数据分布往往与本体层存在差异,例如前者的规模往往要大于后者,数据分布也更为复杂,所以当前的知识图谱表示学习方法大多只对本体层或中实例层的其中一个进行了设计。
技术实现要素:
4.本公开的实施例旨在至少解决现有技术中存在的技术问题之一,提供一种多视图知识图谱表示学习方法、系统、设备及存储介质。
5.本公开的一个方面提供一种多视图知识图谱表示学习方法,包括:
6.获取知识图谱的数据集
7.将
所述数据集划分为本体视图、实例视图和跨视图;
8.使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;
9.使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示;
10.使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。
11.可选的,所述将所述数据集划分为本体视图、实例视图和跨视图,包括:
12.确定数据集中的本体层数据;
13.根据所述本体层数据,将所述数据集划分为本体视图、实例视图和跨视图。
14.可选的,所述使用本体视图表示学习模型对所述本体视图进行预训练,得到初始化本体表示,包括:
15.使用第一表示学习模型建模所述本体视图的数据,得到本体视图数据模型;
16.根据所述本体视图的数据选取训练方法和损失函数;
17.使用所述训练方法和所述损失函数,训练所述本体视图数据模型,得到初始化本体表示。
18.可选的,所述使用实例视图表示学习模型对所述实例视图进行预训练,得到初始化实例表示,包括:
19.使用第二表示学习模型建模所述实例视图的数据,得到实例视图数据模型;
20.根据所述实例视图的数据选取训练方法和损失函数;
21.使用所述训练方法和所述损失函数,训练所述实例视图数据模型,得到初始化实例表示。
22.可选的,所述使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示,包括:
23.使用第三表示学习模型建模所述跨视图的数据,得到跨视图数据模型;
24.使用所述初始化本体表示和所述初始化实例表示,初始化所述跨视图数据模型,得到多视图知识图谱表示。
25.可选的,所述训练所述跨视图数据模型,得到多视图知识图谱表示,包括:
26.根据所述多视图的数据选取训练方法和损失函数;
27.使用所述训练方法和所述损失函数,训练所述跨视图数据模型,得到多视图知识图谱表示。
28.本公开的另一个方面提供一种多视图知识图谱表示学习系统,包括:
29.获取模块:用于获取知识图谱的数据集;
30.划分模块:用于将所述数据集划分为本体视图、实例视图和跨视图;
31.预训练模块:用于使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;和
32.使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示;
33.联合训练模块:用于使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。
34.可选的,所述联合训练模块具体用于:
35.使用第三表示学习模型建模所述跨视图的数据,得到跨视图数据模型;
36.使用所述初始化本体表示和所述初始化实例表示,初始化所述跨视图数据模型;
37.训练所述跨视图数据模型,得到多视图知识图谱表示。
38.本公开的另一方面提供一种电子设备,包括:
39.至少一个处理器;以及,
40.与所述至少一个处理器通信连接的存储器,用于存储一个或多个程序,当所述一个或多个程序被所述至少一个处理器执行时,能使得所述至少一个处理器实现如上所述的多视图知识图谱表示学习方法。
41.本公开的最后一方面提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的多视图知识图谱表示学习方法。
42.本公开的实施例充分利用知识图谱中的各类数据,针对三个视图的数据使用不同的模型建模,并且采用预训练的方法,解决了不同视图数据之间存在的差异对训练造成的困难,提升了模型的收敛速度,使知识图谱表示学习的效果更好、效率更高。
附图说明
43.图1为本公开一实施例的一种多视图知识图谱表示学习方法的流程图;
44.图2为本公开另一实施例的一种多视图知识图谱表示学习系统的结构示意图;
45.图3为本公开另一实施例的一种电子设备的结构示意图。
具体实施方式
46.为使本领域技术人员更好地理解本公开的技术方案,下面结合附图和具体实施方式对本公开作进一步详细描述。
47.如图1所示,本公开的实施例提供一种多视图知识图谱表示学习方法,该方法包括以下步骤:
48.s11、获取知识图谱的数据集。
49.s12、将所述数据集划分为本体视图、实例视图和跨视图。
50.具体地,步骤s11中获取的知识图谱的数据集中首先包含本体视图的数据,即概念之间的关系。在不同的数据集中,关系的描述可能不同,本实施例考虑本体视图中的关系为subclassof关系,而跨视图中的关系为typepof关系。
51.根据上述不同的关系,即可将数据集划分为本体视图、实例视图和跨视图三类数据,得到多视图的知识图谱。
52.s13、使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示。
53.具体地,针对本体视图的数据特点选择合适的表示学习模型,对其进行建模。考虑到本体视图中的subclassof关系是一个传递关系,可选用能够建模传递关系的rot-pro模型对本体视图的数据进行建模,将得到的模型称为本体数据模型。随后再针对本体视图的数据选择合适的训练方法和损失函数,对本体数据模型进行训练至其收敛,完成在本体视图上的预训练。将预训练完成的本体数据模型称为初始化本体表示。
54.需要说明的是,本公开的实施例使用rot-pro模型建模本体视图的数据以获得较好效果,但并不对各个视图需要使用的模型做具体的限制,可以与各种前沿的知识图谱表示学习模型结合,提升本公开的多视图知识图谱表示学习方法的普遍适用性。
55.s14、使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示。
56.具体地,与步骤s13同理,针对实例视图的数据特点选择合适的表示学习模型,对其进行建模,将得到的模型称为实例数据模型。随后再针对实例视图的数据选择合适的训练方法和损失函数,对实例数据模型进行训练至其收敛,完成在实例视图上的预训练。将预训练完成的实例数据模型称为初始化实例表示。
57.需要说明的是,由于本体视图与实例视图的规模和数据分布往往存在差异,如实例视图的规模通常较本体视图更大,其数据分布也通常较本体视图更为复杂,所以上述s13及s14中针对本体视图和实例视图所选取的表示学习模型以及训练方法和损失函数也不尽相同。
58.本公开的实施例通过对本体视图和实例视图进行预训练,作为后续知识图谱表示学习的准备,提升了整体的学习效率,同时能够更好地解决不同视图数据分布等差异对模型性能的影响,提升模型的收敛速度,缓解了不同视图数据规模和分布差异给训练带来的困难。
59.s15、使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。
60.具体地,首先针对跨视图的数据特点选择合适的表示学习模型,对其进行建模,将得到的模型称为跨视图数据模型。随后使用上述步骤s13和s14中得到的初始化本体表示和初始化实例表示(二者可统称为表示初始化模型),在限制本体视图数据、实例视图数据和
关系数据均只能进行整体变换的情况下,对跨视图数据模型进行训练,直至其收敛,完成对跨视图数据模型的初始化。训练完成的跨视图数据模型即为多视图知识图谱表示。至此步骤便完成了本公开实施例的多视图知识图谱表示学习方法。
61.在跨视图的数据上进行模型训练时,除了跨视图数据的损失之外,还需要考虑实例视图的损失和本体视图的损失两个损失。最终的模型损失结构如下:
[0062][0063]
另外,在使用不同的数据集时,对于三个视图的损失也应该有不同的侧重点,使用对三个视图的损失分别加权的形式能够获得更好的效果。相应的最终模型损失结构如下:
[0064][0065]
本公开的实施例对知识图谱中不同视图的数据使用不同的知识图谱表示学习模型进行建模,可更好地建模图谱中的各类关系,解决了因不同视图之间的数据分布和数据量存在差异,而对整体造成负面影响的问题。
[0066]
本公开的另一实施例提供一种多视图知识图谱表示学习系统,如图2所示,其包括:
[0067]
获取模块201:用于获取知识图谱的数据集。
[0068]
划分模块202:用于将所述数据集划分为本体视图、实例视图和跨视图。
[0069]
预训练模块203:用于使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;和
[0070]
使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示。
[0071]
联合训练模块204:用于使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。
[0072]
具体地,获取模块201获取的知识图谱的数据集中首先包含本体视图的数据,即概念之间的关系。在不同的数据集中,关系的描述可能不同,本实施例考虑本体视图中的关系为subclassof关系,而跨视图中的关系为typepof关系。
[0073]
划分模块202根据上述不同的关系,将数据集划分为本体视图、实例视图和跨视图三类数据,得到多视图的知识图谱。
[0074]
预训练模块203针对本体视图的数据特点选择合适的表示学习模型,对其进行建模。考虑到本体视图中的subclassof关系是一个传递关系,可选用能够建模传递关系的rot-pro模型对本体视图的数据进行建模,将得到的模型称为本体数据模型。随后再针对本体视图的数据选择合适的训练方法和损失函数,对本体数据模型进行训练至其收敛,完成在本体视图上的预训练。将预训练完成的本体数据模型称为初始化本体表示。
[0075]
需要说明的是,本公开的实施例使用rot-pro模型建模本体视图的数据以获得较好效果,但并不对各个视图需要使用的模型做具体的限制,可以与各种前沿的知识图谱表示学习模型结合,提升本公开的多视图知识图谱表示学习方法的普遍适用性。
[0076]
预训练模块203继续针对实例视图的数据特点选择合适的表示学习模型,对其进行建模,将得到的模型称为实例数据模型。随后再针对实例视图的数据选择合适的训练方法和损失函数,对实例数据模型进行训练至其收敛,完成在实例视图上的预训练。将预训练完成的实例数据模型称为初始化实例表示。
[0077]
需要说明的是,由于本体视图与实例视图的规模和数据分布往往存在差异,如实例视图的规模通常较本体视图更大,其数据分布也通常较本体视图更为复杂,所以上述针对本体视图和实例视图所选取的表示学习模型以及训练方法和损失函数也不尽相同。
[0078]
联合训练模块204首先针对跨视图的数据特点选择合适的表示学习模型,对其进行建模,将得到的模型称为跨视图数据模型。随后使用上文中得到的初始化本体表示和初始化实例表示(二者可统称为表示初始化模型),在限制本体视图数据、实例视图数据和关系数据均只能进行整体变换的情况下,对跨视图数据模型进行训练,直至其收敛,完成对跨视图数据模型的初始化。训练完成的跨视图数据模型即为多视图知识图谱表示。
[0079]
本公开的实施例的一种多视图知识图谱表示学习系统充分利用知识图谱中的各类数据,针对三个视图的数据使用不同的模型建模,并且采用预训练的方法,解决了不同视图数据之间存在的差异对训练造成的困难,提升了模型的收敛速度,使知识图谱表示学习的效果更好、效率更高。
[0080]
如图3所示,本公开的另一实施例提供一种电子设备,包括:
[0081]
至少一个处理器301;以及与所述至少一个处理器301通信连接的存储器302,用于存储一个或多个程序,当所述一个或多个程序被所述至少一个处理器301执行时,能使得所述至少一个处理器301实现如上所述的多视图知识图谱表示学习方法。
[0082]
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
[0083]
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
[0084]
本实施例的一种电子设备,通过实现如上所述的多视图知识图谱表示学习方法,可充分利用知识图谱中的各类数据,针对三个视图的数据使用不同的模型建模,并且采用预训练的方法,解决了不同视图数据之间存在的差异对训练造成的困难,提升了模型的收敛速度,使知识图谱表示学习的效果更好、效率更高。
[0085]
本公开另一实施例提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的多视图知识图谱表示学习方法。
[0086]
其中,计算机可读介质可以是本公开的系统、电子设备中所包含的,也可以单独存在。
[0087]
计算机可读存储介质可是任何包含或存储程序的有形介质,其可以是电、磁、光、电磁、红外线、半导体的系统、装置、设备,更具体的例子包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、光纤、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件,或它们任意合适的组合。
[0088]
计算机可读存储介质也可包括在基带中或作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码,其具体的例子包括但不限于电磁信号、光信号,或它们任意合适的组合。
[0089]
可以理解的是,以上实施方式仅仅是为了说明本公开的原理而采用的示例性实施方式,然而本公开并不局限于此。对于本领域内的普通技术人员而言,在不脱离本公开的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本公开的保护范围。
技术特征:
1.一种多视图知识图谱表示学习方法,其特征在于,所述方法包括:获取知识图谱的数据集;将所述数据集划分为本体视图、实例视图和跨视图;使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示;使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。2.根据权利要求1所述的方法,其特征在于,所述将所述数据集划分为本体视图、实例视图和跨视图,包括:确定数据集中的本体层数据;根据所述本体层数据,将所述数据集划分为本体视图、实例视图和跨视图。3.根据权利要求1所述的方法,其特征在于,所述使用本体视图表示学习模型对所述本体视图进行预训练,得到初始化本体表示,包括:使用第一表示学习模型建模所述本体视图的数据,得到本体视图数据模型;根据所述本体视图的数据选取训练方法和损失函数;使用所述训练方法和所述损失函数,训练所述本体视图数据模型,得到初始化本体表示。4.根据权利要求1所述的方法,其特征在于,所述使用实例视图表示学习模型对所述实例视图进行预训练,得到初始化实例表示,包括:使用第二表示学习模型建模所述实例视图的数据,得到实例视图数据模型;根据所述实例视图的数据选取训练方法和损失函数;使用所述训练方法和所述损失函数,训练所述实例视图数据模型,得到初始化实例表示。5.根据权利要求1所述的方法,其特征在于,所述使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示,包括:使用第三表示学习模型建模所述跨视图的数据,得到跨视图数据模型;使用所述初始化本体表示和所述初始化实例表示,初始化所述跨视图数据模型,得到多视图知识图谱表示。6.根据权利要求5所述的方法,其特征在于,所述训练所述跨视图数据模型,得到多视图知识图谱表示,包括:根据所述多视图的数据选取训练方法和损失函数;使用所述训练方法和所述损失函数,训练所述跨视图数据模型,得到多视图知识图谱表示。7.一种多视图知识图谱表示学习方法系统,其特征在于,所述系统包括:获取模块:用于获取知识图谱的数据集;划分模块:用于将所述数据集划分为本体视图、实例视图和跨视图;预训练模块:用于使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;和使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示;
联合训练模块:用于使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。8.根据权利要求7所述的系统,其特征在于,所述联合训练模块具体用于:使用第三表示学习模型建模所述跨视图的数据,得到跨视图数据模型;使用所述初始化本体表示和所述初始化实例表示,初始化所述跨视图数据模型;训练所述跨视图数据模型,得到多视图知识图谱表示。9.一种电子设备,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器,用于存储一个或多个程序,当所述一个或多个程序被所述至少一个处理器执行时,能使得所述至少一个处理器实现权利要求1至6中任一项所述的多视图知识图谱表示学习方法。10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的多视图知识图谱表示学习方法。
技术总结
本公开的实施例提供一种多视图知识图谱表示学习方法、系统、设备及存储介质,包括:获取知识图谱的数据集;将所述数据集划分为本体视图、实例视图和跨视图;使用第一表示学习模型对所述本体视图进行预训练,得到初始化本体表示;使用第二表示学习模型对所述实例视图进行预训练,得到初始化实例表示;使用所述跨视图、所述初始化本体表示和所述初始化实例表示进行联合训练,得到多视图知识图谱表示。本公开的实施例充分利用知识图谱中的各类数据,针对三个视图的数据使用不同的模型建模,并且采用预训练的方法,解决了不同视图数据之间存在的差异对训练造成的困难,提升了模型的收敛速度,使知识图谱表示学习的效果更好、效率更高。效率更高。效率更高。
技术研发人员:
关永胜 葛建军 罗杰 宋腾炜 殷龙
受保护的技术使用者:
北京航空航天大学
技术研发日:
2022.12.30
技术公布日:
2023/3/24