CN117350356A - 对象知识图谱的训练方法、对象推荐方法及装置 - Google Patents
对象知识图谱的训练方法、对象推荐方法及装置 Download PDFInfo
- Publication number
- CN117350356A CN117350356A CN202311321724.1A CN202311321724A CN117350356A CN 117350356 A CN117350356 A CN 117350356A CN 202311321724 A CN202311321724 A CN 202311321724A CN 117350356 A CN117350356 A CN 117350356A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- knowledge graph
- candidate
- vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 238000012549 training Methods 0.000 title claims abstract description 64
- 239000013598 vector Substances 0.000 claims abstract description 221
- 230000006870 function Effects 0.000 claims abstract description 107
- 238000012545 processing Methods 0.000 claims description 63
- 238000010276 construction Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 25
- 238000005295 random walk Methods 0.000 claims description 20
- 230000003993 interaction Effects 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 11
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 13
- 238000013473 artificial intelligence Methods 0.000 abstract description 6
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013503 de-identification Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种对象知识图谱的训练方法、对象推荐方法及装置,可以应用于人工智能技术、知识图谱技术和深度学习技术领域。该对象知识图谱的训练方法包括:获取预先构建的初始对象知识图谱,其中,初始对象知识图谱包括M个对象节点和N个对象关联边,对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量;根据与M个对象节点各自对应的对象向量,构建损失函数;利用损失函数,训练初始对象知识图谱,得到对象知识图谱。
Description
技术领域
本公开涉及人工智能技术、知识图谱技术和深度学习技术领域,更具体地,涉及一种对象知识图谱的训练方法、对象推荐方法及装置、电子设备、计算机可读存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,人工智能技术也得以发展。人工智能技术在各种领域均得到了广泛应用,例如,可以利用人工智能技术构建知识图谱。
工业领域存在着某些特定行业问题,例如,如何进行工业商品的类目识别、如何进行工业商品的同品识别等。如何将知识图谱应用于工业领域以便解决该些特定行业问题是亟待解决的问题。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:由于工业领域较为依赖专家知识,导致难以有效地构建工业领域的知识图谱,进而无法保障工业领域下游任务处理的效率和准确性。
发明内容
有鉴于此,本公开提供了一种对象知识图谱的训练方法、对象推荐方法及装置、电子设备、计算机可读存储介质和计算机程序产品。
根据本公开的一个方面,提供了一种对象知识图谱的训练方法,包括:获取预先构建的初始对象知识图谱,其中,上述初始对象知识图谱包括M个对象节点和N个对象关联边,上述对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;根据上述初始对象知识图谱,生成与上述M个对象节点各自对应的对象向量;根据与上述M个对象节点各自对应的对象向量,构建损失函数;利用上述损失函数,训练上述初始对象知识图谱,得到上述对象知识图谱。
根据本公开的实施例,上述根据与上述M个对象节点各自对应的对象向量,构建损失函数包括:对与上述M个对象节点各自对应的对象向量进行处理,得到与上述M个对象节点各自对应的节点相似度,其中,上述节点相似度用于表征所述M个对象节点彼此之间的特征相关性;根据与上述M个对象节点各自对应的节点相似度,构建上述损失函数。
根据本公开的实施例,上述对与上述M个对象节点各自对应的对象向量进行处理,得到与上述M个对象节点各自对应的节点相似度包括:在上述M个对象节点中确定起始节点;根据上述起始节点,在上述M个对象节点中依次确定与上述起始节点相关联的第P层级的Q个候选对象节点和与上述Q个候选对象节点各自对应的候选对象关联边,其中,P和Q均为正整数;基于上述起始节点,根据与上述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列;根据上述对象节点序列,确定与上述起始节点对应的节点相似度。
根据本公开的实施例,在p=1的情况下,上述根据上述起始节点,在上述M个对象节点中依次确定与上述起始节点相关联的第P层级的Q个候选对象节点和与上述Q个候选对象节点各自对应的候选对象关联边包括:确定与上述起始节点相关联的第一数目个第一层级候选对象节点和与上述第一数目个第一层级候选对象节点各自对应的第一候选对象关联边。
根据本公开的实施例,上述基于上述起始节点,根据与上述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列包括:根据第一数目个上述第一候选对象关联边,在上述第一层级候选对象节点中确定第一层级目标对象节点。
根据本公开的实施例,上述根据上述对象节点序列,确定与上述起始节点对应的节点相似度包括:根据上述起始节点和上述第一层级目标对象节点,确定第一子概率乘积值。
根据本公开的实施例,在1<p≤P的情况下,每个第p-1层级各自对应有第p-1数目个第p-1层级候选对象节点。上述根据上述起始节点,在上述M个对象节点中依次确定与上述起始节点相关联的第P层级的Q个候选对象节点和与上述Q个候选对象节点各自对应的候选对象关联边包括:确定与上述第p-1层级候选对象节点相关联的第p数目个第p层级候选对象节点和与上述第p数目个第p层级候选对象节点各自对应的第p候选对象关联边。
根据本公开的实施例,上述基于上述起始节点,根据与上述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列包括:根据第p数目个上述第p层级候选对象关联边,在上述第p层级候选对象节点中确定第p层级目标对象节点;根据上述起始节点和与上述第P层级各自对应的目标对象节点,确定上述对象节点序列。
根据本公开的实施例,上述根据上述对象节点序列,确定与上述起始节点对应的节点相似度包括:根据上述第p-1层级目标对象节点和上述第p层级目标对象节点,确定第p子概率乘积值;根据上述第一子概率乘积值和与上述第P层级各自对应的上述第p子概率乘积值,确定上述节点相似度。
根据本公开的实施例,上述根据与上述M个对象节点各自对应的节点相似度,构建上述损失函数包括:在上述M个对象向量中确定起始对象向量、第一目标对象向量和第p目标对象向量;根据上述起始对象向量、上述第一目标对象向量和上述第p目标对象向量,构建至少一个子损失函数;根据上述至少一个子损失函数,构建上述损失函数。
根据本公开的实施例,上述节点相似度包括与第一层级目标对象节点对应的第一子概率乘积值和与第p层级目标对象节点对应的第p子概率乘积值。
根据本公开的实施例,上述根据上述起始对象向量、上述第一目标对象向量和上述第p目标对象向量,构建至少一个子损失函数包括:根据上述起始对象向量和上述第一目标对象向量,确定第一向量乘积结果;根据上述第一向量乘积结果和上述第一子概率乘积值,构建第一子损失函数;根据上述起始对象向量和上述第p目标对象向量,确定第p向量乘积结果;根据上述第p向量乘积结果和上述第p子概率乘积值,构建第p子损失函数。
根据本公开的实施例,上述根据上述初始对象知识图谱,生成与上述M个对象节点各自对应的对象向量包括:针对上述M个对象节点中的每个对象节点,根据上述初始对象知识图谱,对上述对象节点进行编码处理,得到与上述对象节点标识对应的编码向量;对上述编码向量进行特征提取处理,得到上述对象向量。
根据本公开的实施例,上述方法还包括,在上述获取预先构建的初始对象知识图谱之前:响应于接收到对象知识图谱构建指令,获取历史样本信息,其中,上述历史样本信息包括与上述M个对象标识各自对应的样本对象信息和上述M个对象标识彼此之间的交互关系信息;针对上述M个对象标识中的每个对象标识,根据与上述对象标识对应的样本对象信息,构建与上述对象标识对应的对象节点;根据上述交互关系信息,构建与上述对象标识对应的对象关联边;根据与上述M个对象标识各自对应的上述对象节点和上述对象关联边,生成上述初始对象知识图谱。
根据本公开的一个方面,提供了一种对象推荐方法,包括:响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理上述对象推荐请求中的待处理对象信息,得到推荐对象信息;以及向上述目标用户推荐上述推荐对象信息;上述对象知识图谱是根据上述对象知识图谱的训练方法训练得到的。
根据本公开的实施例,上述利用对象知识图谱处理上述对象推荐请求中的待处理对象信息,得到推荐对象信息包括:对上述待处理对象信息进行处理,得到待处理对象向量;基于上述对象知识图谱,确定上述待处理对象向量和M个对象向量之间的相似程度,其中,上述对象知识图谱包括M个对象节点,上述M个对象节点各自对应有上述对象向量,M为正整数;根据与上述M个对象向量各自对应的相似程度,对上述M个对象节点进行排序,得到对象排序结果;根据上述对象排序结果,确定上述推荐对象信息。
根据本公开的另一个方面,提供了一种对象知识图谱的训练装置,包括:第一获取模块,用于获取预先构建的初始对象知识图谱,其中,上述初始对象知识图谱包括M个对象节点和N个对象关联边,上述对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;第一生成模块,用于根据上述初始对象知识图谱,生成与上述M个对象节点各自对应的对象向量;第一构建模块,用于根据与上述M个对象节点各自对应的对象向量,构建损失函数;训练模块,用于利用上述损失函数,训练上述初始对象知识图谱,得到上述对象知识图谱。
根据本公开的另一个方面,提供了一种对象推荐装置,包括:处理模块,用于响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理上述对象推荐请求中的待处理对象信息,得到推荐对象信息;推荐模块,用于向上述目标用户推荐上述推荐对象信息;上述对象知识图谱是根据对象知识图谱的训练装置训练得到的。
根据本公开的另一个方面,提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个指令,其中,当上述一个或多个指令被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如本公开所述的方法。
根据本公开的另一个方面,提供了一种计算机可读存储介质,其上存储有可执行指令,上述可执行指令被处理器执行时使处理器实现如本公开所述的方法。
根据本公开的另一个方面,提供了一种计算机程序产品,上述计算机程序产品包括计算机可执行指令,上述计算机可执行指令在被执行时用于实现如本公开所述的方法。
根据本公开的实施例,通过根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量,由于初始对象知识图谱包含了一定的领域知识和对象之间的关联关系信息,因而对象向量能够将节点转换为数值表示,从而能够将对象的特征和属性映射至向量空间。在此基础上,根据与M个对象节点各自对应的对象向量来构建损失函数,并利用该损失函数对初始对象知识图谱进行训练,通过最小化损失函数,优化对象向量的表示,并进一步调整初始知识图谱中对象关联边的权重和连接方式,能够获得更为完善的对象知识图谱。通过上述技术手段,至少部分地克服了相关技术中由于工业领域较为依赖专家知识,导致难以有效地构建工业领域的知识图谱的技术问题,由于对象知识图谱能够更为准确地表征对象特征、属性和对象之间的关系,因而提高了对象特征和关系的理解能力,有利于提高后续工业领域下游任务处理的效率和准确性。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的可以应用对象知识图谱的训练方法、对象推荐方法的系统架构;
图2示意性示出了根据本公开实施例的对象知识图谱的训练方法的流程图;
图3示意性示出了根据本公开实施例的初始对象知识图谱生成过程的示例示意图;
图4示意性示出了根据本公开实施例的根据与M个对象节点各自对应的对象向量,构建损失函数过程的流程图;
图5示意性示出了根据本公开实施例的对与M个对象节点各自对应的对象向量进行处理,得到与M个对象节点各自对应的节点相似度过程的示例示意图;
图6A示意性示出了根据本公开实施例的在p=1的情况下,得到与M个对象节点各自对应的节点相似度过程的示例示意图;
图6B示意性示出了根据本公开实施例的在1<p≤P的情况下,得到与M个对象节点各自对应的节点相似度过程的示例示意图;
图7示意性示出了根据本公开实施例的根据与M个对象节点各自对应的节点相似度,构建损失函数过程的示例示意图;
图8示意性示出了根据本公开实施例的对象推荐方法的流程图;
图9示意性示出了根据本公开实施例的利用对象知识图谱处理对象推荐请求中的待处理对象信息,得到推荐对象信息过程的示例示意图;
图10示意性示出了根据本公开实施例的对象知识图谱的训练装置的框图;
图11示意性示出了根据本公开实施例的对象推荐装置的框图;以及
图12示意性示出了根据本公开实施例的适于实现对象知识图谱的训练方法、对象推荐方法的电子设备的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
在本公开的实施例中,所涉及的数据(例如,包括但不限于用户个人信息)的收集、更新、分析、处理、使用、传输、提供、公开、存储等方面,均符合相关法律法规的规定,被用于合法的用途,且不违背公序良俗。特别地,对用户个人信息采取了必要措施,防止对用户个人信息数据的非法访问,维护用户个人信息安全、网络安全和国家安全。
在本公开的实施例中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
例如,在收集历史样本信息和/或待处理对象信息之后,可以采用包括去标识化或者匿名化处理方式对您的信息进行脱敏,以保护您的信息安全。
知识图谱能够以符号形式结构化地描述物理世界中的概念及其相互关系。知识图谱的基本组成形式为<实体,关系,实体>的三元组,不同的实体之间通过关系进行相互联结,以此构成复杂的网状知识结构。
但是,由于工业领域存在着某些特定的行业问题,例如,如何进行工业商品的类目识别、如何进行用于比价和商品池治理的商品的同品识别等,导致工业领域较为依赖专家知识,难以有效地构建工业领域的知识图谱,进而难以保障工业领域下游任务处理的效率和准确性。
为了至少部分地解决相关技术中存在的技术问题,本公开提供了一种对象知识图谱的训练方法、对象推荐方法及装置,可以应用于人工智能技术、知识图谱技术和深度学习技术领域。该对象知识图谱的训练方法包括:获取预先构建的初始对象知识图谱,其中,初始对象知识图谱包括M个对象节点和N个对象关联边,对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量;根据与M个对象节点各自对应的对象向量,构建损失函数;利用损失函数,训练初始对象知识图谱,得到对象知识图谱。
图1示意性示出了根据本公开实施例的可以应用对象知识图谱的训练方法、对象推荐方法的系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括第一终端设备101、第二终端设备102、第三终端设备103,网络104和服务器105。网络104用以在第一终端设备101、第二终端设备102、第三终端设备103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用第一终端设备101、第二终端设备102、第三终端设备103中的至少一个通过网络104与服务器105交互,以接收或发送消息等。第一终端设备101、第二终端设备102、第三终端设备103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
第一终端设备101、第二终端设备102、第三终端设备103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用第一终端设备101、第二终端设备102、第三终端设备103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的对象知识图谱的训练方法一般可以由服务器105执行。相应地,本公开实施例所提供的对象知识图谱的训练装置一般可以设置于服务器105中。本公开实施例所提供的对象知识图谱的训练方法也可以由不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的对象知识图谱的训练装置也可以设置于不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群中。
备选地,本公开实施例所提供的对象知识图谱的训练方法也可以由第一终端设备101、第二终端设备102或第三终端设备103执行,或者也可以由不同于第一终端设备101、第二终端设备102或第三终端设备103的其他终端设备执行。相应地,本公开实施例所提供的对象知识图谱的训练装置也可以设置于第一终端设备101、第二终端设备102或第三终端设备103中,或设置于不同于第一终端设备101、第二终端设备102或第三终端设备103的其他终端设备中。
需要说明的是,本公开实施例所提供的对象推荐方法一般可以由服务器105执行。相应地,本公开实施例所提供的对象推荐装置一般可以设置于服务器105中。本公开实施例所提供的对象推荐方法也可以由不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的对象推荐装置也可以设置于不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群中。
备选地,本公开实施例所提供的对象推荐方法也可以由第一终端设备101、第二终端设备102或第三终端设备103执行,或者也可以由不同于第一终端设备101、第二终端设备102或第三终端设备103的其他终端设备执行。相应地,本公开实施例所提供的对象推荐装置也可以设置于第一终端设备101、第二终端设备102或第三终端设备103中,或设置于不同于第一终端设备101、第二终端设备102或第三终端设备103的其他终端设备中。
应该理解,图1中的第一终端设备、第二终端设备或第三终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的第一终端设备、第二终端设备或第三终端设备、网络和服务器。
应注意,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。
图2示意性示出了根据本公开实施例的对象知识图谱的训练方法的流程图。
如图2所示,该对象知识图谱的训练方法200包括操作S210~S240。
在操作S210,获取预先构建的初始对象知识图谱,其中,初始对象知识图谱包括M个对象节点和N个对象关联边,对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数。
在操作S220,根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量。
在操作S230,根据与M个对象节点各自对应的对象向量,构建损失函数。
在操作S240,利用损失函数,训练初始对象知识图谱,得到对象知识图谱。
根据本公开的实施例,可以预先构建初始对象知识图谱。初始对象知识图谱的具体生成方式可以根据实际业务需求进行设置,在此不作限定。例如,可以获取历史样本信息,根据历史样本信息中与对象标识对应的样本对象信息构建对象节点,并根据交互关系信息构建对象关联边,在此基础上,可以根据对象节点和对象关联边,生成初始对象知识图谱。在生成初始对象知识图谱之后,可以将该初始对象知识图谱存储至数据源。
根据本公开的实施例,在执行本公开提供的对象知识图谱的训练方法之前,可以从数据源中获取初始对象知识图谱。数据源可以包括以下至少之一:本地数据库、云数据库和网络资源。例如,可以调用数据接口,利用数据接口从数据源中获取初始对象知识图谱。
根据本公开的实施例,在获得初始对象知识图谱之后,可以对初始对象知识图谱中M个对象节点中的每个对象节点分别进行编码处理,得到与每个对象节点各自对应的编码向量。在此基础上,可以对与每个对象节点各自对应的编码向量分别进行特征提取处理,得到与每个对象节点各自对应的对象向量。
根据本公开的实施例,在获得与M个对象节点各自对应的对象向量之后,可以在M个对象节点中确定起始节点。根据起始节点,在M个对象节点中确定与起始节点相关联的不同层级的候选对象节点,并确定与不同层级的各个候选对象节点各自对应的候选对象关联边。
例如,可以根据起始节点,在M个对象节点中确定第1层级的至少一个第一候选对象节点。在此基础上,可以针对至少一个第一候选对象节点中的每个第一候选对象节点,确定与该第一候选对象节点对应的第2层级的至少一个第二候选对象节点和与至少一个第二候选对象节点各自对应的第二候选对象关联边。以此类推,可以针对第p-1层级的至少一个第p-1候选对象节点,确定与该第p-1候选对象节点对应的第p层级的至少一个第p候选对象节点和与至少一个第p候选对象节点各自对应的第p候选对象关联边。
根据本公开的实施例,在获得与起始节点相关联的不同层级的候选对象节点和与各个候选对象节点各自对应的候选对象关联边之后,可以针对不同层级,依次根据与各个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列。
例如,可以根据起始节点,对与该起始节点相关联的至少一个第一候选对象节点进行随机游走,以便于确定第一层级目标对象节点。在此基础上,可以根据该第一层级目标对象节点,对与该第一层级目标对象节点相关联的至少一个第二候选对象节点进行随机游走,以便于确定第二层级目标对象节点。以此类推,可以根据第p-1层级目标对象节点,对与该第p-1层级目标对象节点相关联的至少一个第p候选对象节点进行随机游走,以便于确定第p目标对象节点。可以根据第一层级目标对象节点、第二层级目标对象节点、…、第p-1层级目标对象节点和第p层级目标对象节点,确定对象节点序列。
根据本公开的实施例,在获得对象节点序列之后,可以确定与对象节点序列中的不同层级的目标对象节点各自对应的对象向量。根据与不同层级的目标对象节点各自对应的对象向量,确定与不同层级各自对应的子损失函数。在此基础上,可以根据与不同层级各自对应的子损失函数,构建损失函数。
例如,可以根据与起始对象节点对应的对象向量和与第一目标对象节点对应的对象向量,确定第一子损失函数。根据与第二目标对象节点对应的对象向量,确定第二子损失函数。以此类推,可以根据与第p-1目标对象节点对应的对象向量和与第p目标对象节点对应的对象向量,确定第p子损失函数。在此基础上,可以根据第一子损失函数、第二子损失函数、…、第p子损失函数,构建损失函数。
根据本公开的实施例,在获得损失函数之后,可以基于损失函数,确定与每个对象节点各自对应的损失函数值。在此基础上,可以根据损失函数值调整初始对象知识图谱的模型参数,直至满足预定条件。例如,可以根据反向传播算法或随机梯度下降算法,调整初始对象知识图谱的模型参数,直至满足预定条件。将在满足预定条件的情况下得到的初始对象知识图谱确定为对象知识图谱。预定条件可以包括损失函数值收敛和训练轮次达到最大训练轮次中的至少一项。初始对象知识图谱的训练方式可以根据实际业务需求进行配置,在此不作限定。例如,训练方式可以包括以下至少之一:无监督训练、有监督训练和半监督训练。
根据本公开的实施例,通过根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量,由于初始对象知识图谱包含了一定的领域知识和对象之间的关联关系信息,因而对象向量能够将节点转换为数值表示,从而能够将对象的特征和属性映射至向量空间。在此基础上,根据与M个对象节点各自对应的对象向量来构建损失函数,并利用该损失函数对初始对象知识图谱进行训练,通过最小化损失函数,优化对象向量的表示,并进一步调整初始知识图谱中对象关联边的权重和连接方式,能够获得更为完善的对象知识图谱。通过上述技术手段,至少部分地克服了相关技术中由于工业领域较为依赖专家知识,导致难以有效地构建工业领域的知识图谱的技术问题,由于对象知识图谱能够更为准确地表征对象特征、属性和对象之间的关系,因而提高了对象特征和关系的理解能力,有利于提高后续工业领域下游任务处理的效率和准确性。
下面参考图3、图4、图5、图6A、图6B和图7,对根据本发明实施例的对象知识图谱的训练方法200做进一步说明。
根据本公开的实施例,对象知识图谱的训练方法200还可以包括如下操作。
响应于接收到对象知识图谱构建指令,获取历史样本信息,其中,历史样本信息包括与M个对象标识各自对应的样本对象信息和M个对象标识彼此之间的交互关系信息。针对M个对象标识中的每个对象标识,根据与对象标识对应的样本对象信息,构建与对象标识对应的对象节点。根据交互关系信息,构建与对象标识对应的对象关联边。根据与M个对象标识各自对应的对象节点和对象关联边,生成初始对象知识图谱。
根据本公开的实施例,可以将生成对象知识图谱构建指令的代码预先写入第一脚本中,响应于检测到用户发起的对象知识图谱构建操作,服务器可以运行该第一脚本,根据用户输入的样本信息标识,生成知识图谱构建指令。服务器可以将该知识图谱构建指令发送至客户端,以便于客户端根据该知识图谱构建指令指示的样本信息标识,获取用于构建对象知识图谱的历史样本信息。
根据本公开的实施例,在获得历史样本信息之后,可以根据历史样本信息中与M个对象标识各自对应的样本对象信息,分别确定与M个对象标识各自对应的对象节点。在此基础上,可以根据交互关系信息,在某两个对象标识之间存在交互关系的情况下,可以将与该两个对象标识各自对应的对象节点之间通过对象关联边进行连接。以此类推,构建初始对象知识图谱。
根据本公开的实施例,初始对象知识图谱可以包括M个对象节点和N个对象关联边。对象关联边连接的两个对象节点之间可以具有关联关系,关联关系可以包括等价关系、包含关系和相关关系中的至少之一。对象关联边可以是有向边或无向边。例如,在对象关联边连接的两个对象节点之间具有等价关系或相关关系的情况下,对象关联边可以为无向边。备选地,在对象关联边连接的两个对象节点之间具有包含关系的情况下,对象关联边可以为有向边,在此情况下,对象关联边的箭头所指向的对象节点可以为子对象节点,对象关联边所连接的另一对象节点可以为父对象节点。
根据本公开的实施例,初始对象知识图谱可以是利用历史样本信息训练图神经网络模型(Graph Neural Network,GNN)得到的。图神经网络模型的模型结构可以根据实际业务需求进行配置,在此不作限定。图神经网络模型可以包括以下至少之一:图卷积网络(Graph Convolutional Network,GCN)、图自编码器(Graph Auto-encoder,GAE)、图生成网络(Graph Generative Network,GGN)、图循环网络(Graph Recurrent Network,GRN)和图注意力网络(Graph Attention Network,GAT)。
根据本公开的实施例,通过根据样本对象信息构建与对象标识对应的对象节点,使得对象节点能够包含与该对象标识对应的对象的属性和特征。通过根据交互关系信息构建与对象标识对应的对象关联边,使得对象关联边能够用于表示对象之间的交互或关联关系。在此基础上,通过根据与每个对象标识各自对应的对象节点和对象关联边来构建初始对象知识图谱,能够将历史样本信息转换有效地转换为初始对象知识图谱,从而有利于后续初始对象知识图谱的进一步优化和下游任务的嵌入处理。
图3示意性示出了根据本公开实施例的初始对象知识图谱生成过程的示例示意图。
如图3所示,在300中,响应于接收到对象知识图谱构建指令301,可以获取历史样本信息302,历史样本信息302包括与M个对象标识各自对应的样本对象信息302_1和M个对象标识彼此之间的交互关系信息302_2。
针对M个对象标识中的每个对象标识,可以根据与对象标识对应的样本对象信息302_1,构建与对象标识对应的对象节点303。根据交互关系信息302_2,构建与对象标识对应的对象关联边304。在此基础上,可以根据与M个对象标识各自对应的对象节点303和对象关联边304,生成初始对象知识图谱305。
根据本公开的实施例,操作S220可以包括如下操作。
针对M个对象节点中的每个对象节点,根据初始对象知识图谱,对对象节点进行编码处理,得到与对象节点标识对应的编码向量。对编码向量进行特征提取处理,得到对象向量。
根据本公开的实施例,在获得初始对象知识图谱之后,可以针对该初始对象知识图谱的M个对象节点中的每个对象节点,分别进行节点嵌入处理,以便于生成与每个对象节点各自对应的对象向量。对象向量的生成方式可以根据实际业务需求进行设置,在此不作限定。例如,如下式(1)所示。
encoder(v)=zv (1)
其中,v表示与对象节点对应的编码向量,Z表示嵌入矩阵,encoder(v)表示对象向量。
根据本公开的实施例,通过对对象节点进行编码处理,并对得到的与对象节点标识对应的编码向量进一步进行特征提取处理,由于得到的对象向量是与对象节点对应的对象在编码空间中的数值标识,因而能够通过图嵌入将图数据转换为机器学习算法能够处理的向量数据,从而为后续对初始知识图谱进行进一步优化提供基础。
图4示意性示出了根据本公开实施例的根据与M个对象节点各自对应的对象向量,构建损失函数过程的流程图。
如图4所示,操作S230可以包括操作S431~S432。
在操作S431,对与M个对象节点各自对应的对象向量进行处理,得到与M个对象节点各自对应的节点相似度,其中,节点相似度用于表征M个对象节点彼此之间的特征相关性。
在操作S432,根据与M个对象节点各自对应的节点相似度,构建损失函数。
根据本公开的实施例,在获得与M个对象节点各自对应的对象向量之后,期望初始对象知识图谱中具有关联关系的对象节点能够更好地聚集在一起,即期望与M个对象节点各自对应的对象向量之间的点乘值能够更为接近初始对象知识图谱中的对象节点相似度。对象节点相似度可以通过对象节点之间是否存在对象关联边、对象节点之间是否具有相同的邻居节点等方式来定义。
根据本公开的实施例,在获得与M个对象节点各自对应的节点相似度之后,可以对M个对象节点进行随机游走,以便于构建用于计算对象节点相似度的初始损失函数。在此基础上,可以对对象向量中的参数进行优化,使得对象向量之间的点乘值更为接近初始对象知识图谱中的对象节点相似度,以便于构建损失函数。
根据本公开的实施例,通过对与M个对象节点各自对应的对象向量进行处理,使得得到的与M个对象节点各自对应的节点相似度能够用于表示对象在特征空间中的相似程度。在此基础上,通过根据得到的与M个对象节点各自对应的节点相似度来构建损失函数,有利于后续利用损失函数来进一步优化初始对象知识图谱,从而获得更为准确的节点相似度度量,从而能够提高下游任务处理的准确性。
根据本公开的实施例,操作S431可以包括如下操作。
在M个对象节点中确定起始节点。根据起始节点,在M个对象节点中依次确定与起始节点相关联的第P层级的Q个候选对象节点和与Q个候选对象节点各自对应的候选对象关联边,其中,P和Q均为正整数。基于起始节点,根据与Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列。根据对象节点序列,确定与起始节点对应的节点相似度。
根据本公开的实施例,在确定起始节点之后,可以根据起始节点,在初始对象知识图谱中确定与该起始节点相关联的第1层级的至少一个第一候选邻居节点和与每个第一候选邻居节点各自对应的第一候选对象关联边。针对每个第一候选邻居节点,可以根据该第一候选邻居节点,在初始对象知识图谱中确定与该第一候选邻居节点相关联的第2层级的至少一个第二候选邻居节点和与每个第二候选邻居节点各自对应的第二候选对象关联边。以此类推,针对每个第p-1候选邻居节点,可以根据该第p-1候选邻居节点,在初始对象知识图谱中确定与该第p-1候选邻居节点相关联的第p层级的至少一个第p候选邻居节点和与每个第p候选邻居节点各自对应的第p候选对象关联边。
根据本公开的实施例,随机游走(即Random Walk)可以指针对第p-1候选邻居节点,在至少一个第p候选邻居节点中随机选择与该第p-1候选邻居节点相关联的第p目标邻居节点,在此情况下,从第p-1候选邻居节点至该第p目标邻居节点的概率值可以用于表示第p-1候选邻居节点与该第p目标邻居节点之间的对象节点相似程度,即如下式(2)所示。
其中,u表示第p-1候选邻居节点,zu表示与第p-1候选邻居节点对应的对象向量,v表示第p目标邻居节点,zv表示与第p目标邻居节点对应的对象向量,P(v|u)表示从第p-1候选邻居节点至第p目标邻居节点的概率值,即从第p-1候选邻居节点至第p目标邻居节点的概率值正比于与起始节点对应的对象向量和与第一目标邻居节点对应的对象向量之间的点乘结果。
根据本公开的实施例,通过根据起始节点在M个对象节点中依次确定与该起始节点相关联的第P层级的Q个候选对象节点和与Q个候选对象节点各自对应的候选对象关联边,使得候选对象节点能够具有与起始节点相关联的层级关系,有利于后续基于层级关系进一步根据候选对象关联边对对象节点进行随机游走来确定对象节点序列。在此基础上,由于对象节点序列能够用于确定起始节点和各个层级的其它候选对象节点之间的相似程度,因而提高了节点相似度确定的准确性,有利于提高后续对象知识图谱优化的效果。
图5示意性示出了根据本公开实施例的对与M个对象节点各自对应的对象向量进行处理,得到与M个对象节点各自对应的节点相似度过程的示例示意图。
如图5所示,在500中,可以在M个对象节点501中确定起始节点502。根据起始节点502,在M个对象节点501中依次确定与起始节点502相关联的第P层级的Q个候选对象节点503和与Q个候选对象节点503各自对应的候选对象关联边504。
在此基础上,可以基于起始节点502,根据与Q个候选对象节点503各自对应的候选对象关联边504进行随机游走,得到对象节点序列505。根据对象节点序列505,确定与起始节点502对应的节点相似度506。
根据本公开的实施例,在p=1的情况下,上述操作S431可以进一步包括如下操作。
确定与起始节点相关联的第一数目个第一层级候选对象节点和与第一数目个第一层级候选对象节点各自对应的第一候选对象关联边。根据第一数目个第一候选对象关联边,在第一层级候选对象节点中确定第一层级目标对象节点。根据起始节点和第一层级目标对象节点,确定第一子概率乘积值。
根据本公开的实施例,在p=1的情况下,可以根据起始节点,在初始对象知识图谱中确定与该起始节点相关联的第1层级的第一数目个第一层级候选对象节点和与每个第一层级候选对象节点各自对应的第一候选对象关联边。
根据本公开的实施例,可以从起始节点开始,针对第一数目个第一层级候选对象节点中的任意第一层级目标对象节点进行随机游走。在此基础上,从起始节点至第一层级目标对象节点的第一子概率乘积值可以用于表示起始节点与该第一层级目标对象节点之间的对象相似程度。
图6A示意性示出了根据本公开实施例的在p=1的情况下,得到与M个对象节点各自对应的节点相似度过程的示例示意图。
如图6A所示,在600A中,在p=1,即第一层级的情况下,可以在M个对象节点中确定起始节点n_601。可以根据起始节点n_601,确定与起始节点n_601相关联的第一数目个第一层级候选对象节点。例如,第一数目可以为3,第一层级候选对象节点可以包括节点n_602、节点n_603和节点n_604。在此基础上,可以确定与节点n_602对应的第一候选对象关联边e_601、与节点n_603对应的第一候选对象关联边e_602、与节点n_604对应的第一候选对象关联边e_603。
可以根据第一候选对象关联边e_601、第一候选对象关联边e_602和第一候选对象关联边e_603,对节点n_602、节点n_603和节点n_604进行随机游走,以便于在节点n_602、节点n_603和节点n_604中确定第一层级目标对象节点。例如,可以确定第一层级目标对象节点为节点n_602。在此基础上,可以根据第一数目3,确定第一子概率乘积值为1/3。第一子概率乘积值即可用于表征起始节点n_601和节点n_602之间的节点相似度。
根据本公开的实施例,在1<p≤P的情况下,上述操作S431可以进一步包括如下操作。
确定与第p-1层级候选对象节点相关联的第p数目个第p层级候选对象节点和与第p数目个第p层级候选对象节点各自对应的第p候选对象关联边。根据第p数目个第p层级候选对象关联边,在第p层级候选对象节点中确定第p层级目标对象节点。根据起始节点和与第P层级各自对应的目标对象节点,确定对象节点序列。根据第p-1层级目标对象节点和第p层级目标对象节点,确定第p子概率乘积值。根据第一子概率乘积值和与第P层级各自对应的第p子概率乘积值,确定节点相似度。
根据本公开的实施例,在1<p≤P的情况下,每个第p-1层级各自对应有第p-1数目个第p-1层级候选对象节点。可以根据第p-1层级候选对象节点,在初始对象知识图谱中确定与该第p-1层级候选对象节点相关联的第p层级的第p数目个第p层级候选对象节点和与每个第p层级候选对象节点各自对应的第p候选对象关联边。
根据本公开的实施例,可以从第p-1层级候选对象节点开始,针对第p数目个第p层级候选对象节点中的任意第p层级目标对象节点进行随机游走。在此基础上,从第p-1层级候选对象节点至第p层级目标对象节点的第p子概率乘积值可以用于表示第p-1层级候选对象节点至第p层级目标对象节点之间的节点相似程度。
图6B示意性示出了根据本公开实施例的在1<p≤P的情况下,得到与M个对象节点各自对应的节点相似度过程的示例示意图。
如图6B所示,在600B中,在1<p≤P,即第p层级的情况下,可以在M个对象节点中确定起始节点n_601和第一层级目标对象节点n_602,并进一步根据起始节点n_601和第一层级目标对象节点n_602,确定第一子概率乘积值为1/3。
针对第二层级,可以根据第一层级目标对象节点n_602,确定与第一层级目标对象节点n_602相关联的第二数目个第二层级候选对象节点。例如,第二数目可以为2,第二层级候选对象节点可以包括节点n_601和节点n_603。进一步的,可以确定与节点n_601对应的第二候选对象关联边e_601、与节点n_603对应的第二候选对象关联边e_604。
在此基础上,根据第二候选对象关联边e_601和第二候选对象关联边e_604,对节点n_601和节点n_603进行随机游走,以便于在节点n_601和节点n_603中确定第二层级目标对象节点。例如,可以确定第二层级目标对象节点为节点n_603。可以根据第二数目2,确定第二子概率乘积值为1/2。在获得第二子概率乘积值之后,可以根据第一子概率乘积值(即1/3)和第二子概率乘积值(即1/2),确定第一目标概率乘积值为(1/3)*(1/2),即为1/6。第一目标概率乘积值即可用于表征起始节点n_601和节点n_603的节点相似度。
针对第三层级,可以根据节点n_603(即第二层级目标对象节点),确定与节点n_603相关联的第三数目个第三层级候选对象节点。例如,第三数目可以为2,第三层级候选对象节点可以包括节点n_601和节点n_605。进一步的,可以确定与节点n_601对应的第三候选对象关联边e_603、与节点n_605对应的第三候选对象关联边e_603。
在此基础上,可以根据第三候选对象关联边e_603和第三候选对象关联边e_603,对节点n_601和节点n_605进行随机游走,以便于在节点n_601和节点n_605中确定第三层级目标对象节点。例如,可以确定第三层级目标对象节点为节点n_605。在此基础上,可以根据第三数目2,确定第三子概率乘积值为1/2。在获得第三子概率乘积值之后,可以根据第一子概率乘积值(即1/3)、第二子概率乘积值(即1/2)和第三子概率乘积值(即1/2),确定第二目标概率乘积值为(1/3)*(1/2)*(1/2),即为1/12。第二目标概率乘积值即可用于表征起始节点n_601和节点n_605之间的节点相似度。
针对第四层级,可以根据节点n_605(即第三层级目标对象节点),确定与节点n_605相关联的第四数目个第四层级候选对象节点。例如,第四数目可以为4,第四层级候选对象节点可以包括节点n_603、节点n_604、节点n_606和节点n_607。进一步的,可以确定与节点n_603对应的第四候选对象关联边e_605、与节点n_604对应的第四候选对象关联边e_606、与节点n_607对应的第四候选对象关联边e_607、与节点n_606对应的第四候选对象关联边e_608。
在此基础上,可以根据第四候选对象关联边e_605、第四候选对象关联边e_606、第四候选对象关联边e_608和第四候选对象关联边e_607,对节点n_603、节点n_604、节点n_606和节点n_607进行随机游走,以便于在节点n_603、节点n_604、节点n_606和节点n_607中确定第四层级目标对象节点。例如,可以确定第四层级目标对象节点为节点n_606。在此基础上,可以根据第四数目4,确定第四子概率乘积值为1/4。在获得第四子概率乘积值之后,可以根据第一子概率乘积值(即1/3)、第二子概率乘积值(即1/2)、第三子概率乘积值(即1/2)和第四子概率乘积值(即1/4),确定第三目标概率乘积值(1/3)*(1/2)*(1/2)*(1/4),即为1/48。第三目标概率乘积值即可用于表征起始节点n_601和节点n_606之间的节点相似度。
进一步的,可以确定初始对象知识图谱中除起始节点n_601、第一层级目标对象节点n_602、节点n_603、节点n_605和节点n_606之外的其他节点之间的相似度为0。
根据本公开的实施例,操作S432可以包括如下操作。
在M个对象向量中确定起始对象向量、第一目标对象向量和第p目标对象向量。根据起始对象向量、第一目标对象向量和第p目标对象向量,构建至少一个子损失函数。根据至少一个子损失函数,构建损失函数。
根据本公开的实施例,目标即为学习映射关系如下式(3)所示。
ENC(u):u→Rd (3)
其中,R表示随机游走选取连通路径的策略,NR(u)表示采用策略R得到的邻居节点。
根据本公开的实施例,节点相似度包括与第一层级目标对象节点对应的第一子概率乘积值和与第p层级目标对象节点对应的第p子概率乘积值。
根据本公开的实施例,根据起始对象向量、第一目标对象向量和第p目标对象向量,构建至少一个子损失函数可以包括如下操作。
根据起始对象向量和第一目标对象向量,确定第一向量乘积结果。根据第一向量乘积结果和第一子概率乘积值,构建第一子损失函数。根据起始对象向量和第p目标对象向量,确定第p向量乘积结果。根据第p向量乘积结果和第p子概率乘积值,构建第p子损失函数。
根据本公开的实施例,第一子损失函数可以如下式(4)所示。
Loss1=ENC(u)*ENo(v)T-P1 (4)
其中,Loss1表示第一子损失函数,ENC(u)表示起始对象向量,ENC(v)表示第一目标对象向量,ENC(u)*ENC(v)T表示第一向量乘积结果,P1表示第一子概率乘积值,例如,第一子概率乘积值可以为1/3。
根据本公开的实施例,第二子损失函数可以如下式(5)所示。
Loss2=ENC(u)*ENC(d)T-P2 (5)
其中,Loss2表示第二子损失函数,ENC(u)表示起始对象向量,ENC(d)表示第二目标对象向量,ENC(d)T表示第二向量乘积结果,P2表示第二子概率乘积值,例如,第二子概率乘积值可以为1/6。
根据本公开的实施例,以此类推,第p子损失函数可以如下式(6)所示。
Lossp=ENC(u)*ENC(p)T-Pp (6)
其中,Lossp表示第p子损失函数,ENC(u)表示起始对象向量,ENC(p)表示第p目标对象向量,ENC(u)*ENC(p)T表示第p向量乘积结果,Pp表示第p子概率乘积值,例如,第p子概率乘积值可以为=1/48。
根据本公开的实施例,在获得至少一个子损失函数之后,可以根据至少一个子损失函数,构建损失函数,损失函数可以如下式(7)所示。
其中,Loss表示损失函数。
根据本公开的实施例,在获得损失函数之后,可以通过最小化该损失函数,来训练得到对象知识图谱的节点知识表示。
根据本公开的实施例,由于第一向量乘积结果是根据起始对象向量和第一目标对象向量确定的,第p向量乘积结果是根据起始对象向量和第p目标对象向量确定的,因而第一向量乘积结果能够用于表征起始对象向量和第一目标对象向量之间的相关程度,第p向量乘积结果能够用于表征起始对象向量和第p目标对象向量之间的相关程度。在此基础上,由于第一子损失函数是根据第一向量乘积结果和第一子概率乘积值构建的,第p子损失函数是根据第p向量乘积结果和第p子概率乘积值构建的,因而第一子损失函数能够用于衡量第一向量乘积结果与第一子概率乘积值之间的差异,第p子损失函数能够用于衡量第p向量乘积结果与第p子概率乘积值之间的差异。在此基础上,通过根据至少一个子损失函数来构建损失函数,有利于后续通过最小化损失函数来优化初始对象知识图谱,从而提高了对象知识图谱的知识表示能力。
图7示意性示出了根据本公开实施例的根据与M个对象节点各自对应的节点相似度,构建损失函数过程的示例示意图。
如图7所示,在700中,可以在M个对象向量701中确定起始对象向量702、第一目标对象向量703和第p目标对象向量704。
根据起始对象向量702和第一目标对象向量703,确定第一向量乘积结果705。根据第一向量乘积结果705和第一子概率乘积值706,构建第一子损失函数707。
根据起始对象向量702和第p目标对象向量704,确定第p向量乘积结果708。根据第p向量乘积结果708和第p子概率乘积值709,构建第p子损失函数710。
在此基础上,可以根据第一子损失函数707和第p子损失函数710,构建损失函数711。
以上仅是示例性实施例,但不限于此,还可以包括本领域已知的其他对象知识图谱的训练方法,只要能够提高对象特征和关系的理解能力,以及提高后续工业领域下游任务处理的效率和准确性即可。
图8示意性示出了根据本公开实施例的对象推荐方法的流程图。
如图8所示,该对象推荐方法800包括操作S810~S820。
在操作S810,响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理对象推荐请求中的待处理对象信息,得到推荐对象信息。
在操作S820,向目标用户推荐推荐对象信息。
根据本公开的实施例,对象知识图谱是根据对象知识图谱的训练方法训练得到的。可以将对象知识图谱中的M个对象节点表示为高维语义向量,以便于进行下游任务的知识嵌入。
根据本公开的实施例,可以将生成对象推荐请求的代码预先写入第二脚本中,响应于检测到目标用户发起的对象推荐操作,服务器可以运行该第二脚本,根据用户输入的待处理对象信息,生成对象推荐请求。服务器可以将该对象推荐请求发送至客户端,以便于客户端根据该对象推荐请求中的待处理对象信息,利用对象知识图谱对该待处理对象信息进行处理,得到推荐对象信息。在获得推荐对象信息之后,可以将该推荐对象信息推荐给目标用户。
根据本公开的实施例,通过利用对象知识图谱处理对象推荐请求中的待处理对象信息得到推荐对象信息,由于对象知识图谱是通过最小化损失函数对初始对象知识图谱进行优化后得到的,通过利用对象知识图谱来对待处理对象信息进行分析和特征提取,能够使得得到的推荐对象信息更为符合目标用户的需求。在此基础上,通过将推荐对象信息推荐给目标用户,实现了基于对象知识图谱的下游任务知识嵌入,提高了推荐对象信息的效率和准确性。
下面参考图9,对根据本发明实施例的对象推荐方法800做进一步说明。
根据本公开的实施例,操作S810可以包括如下操作。
对待处理对象信息进行处理,得到待处理对象向量。基于对象知识图谱,确定待处理对象向量和M个对象向量之间的相似程度,其中,对象知识图谱包括M个对象节点,M个对象节点各自对应有对象向量,M为正整数。根据与M个对象向量各自对应的相似程度,对M个对象节点进行排序,得到对象排序结果。根据对象排序结果,确定推荐对象信息。
根据本公开的实施例,在接收到对象推荐请求之后,可以对对象推荐请求中的待处理对象信息进行处理,得到待处理对象向量。可以该待处理对象向量与对象知识图谱中每个对象向量之间的相似度。相似度可以用于表征待处理对象向量和对象向量之间的相似程度。相似度计算方法可以根据实际业务需求进行设置,在此不作限定。
例如,可以包括以下至少之一:基于字面相似度的方法、基于文本相似度的方法和基于实体相似度的方法等。基于字面相似度的方法可以包括以下至少之一:编辑距离、Dice系数和Jaccard相似度等。基于文本相似度的方法可以包括以下至少之一:余弦相似度、相对熵、KL(Kullback-Leibler,KL)散度和概率模型相似度等。
根据本公开的实施例,在获得与M个对象向量各自对应的相似度之后,可以根据与每个对象向量各自对应的相似度,对M个对象节点进行排序,得到对象排序结果。例如,可以根据与每个对象向量各自对应的相似度大小,对M个对象节点进行排序。在此基础上,可以选取对象排序结果中前预定位次个的对象节点,将与该预定位次个的对象节点各自对应的对象信息,确定为推荐对象信息。
根据本公开的实施例,还可以将每个相似度分别与预定相似度阈值进行比较,得到与每个相似度各自对应的比较结果。在比较结果表征相似度大于预定相似度阈值的情况下,可以将与该相似度对应的对象向量相关的对象信息,确定为推荐对象信息。
图9示意性示出了根据本公开实施例的利用对象知识图谱处理对象推荐请求中的待处理对象信息,得到推荐对象信息过程的示例示意图。
如图9所示,在900中,可以对待处理对象信息901进行处理,得到待处理对象向量902。
对象知识图谱903可以包括M个对象节点,M个对象节点各自对应有对象向量903_1。可以确定待处理对象向量902和M个对象向量903_1之间的相似程度,得到与M个对象向量各自对应的相似程度904。
在此基础上,可以根据与M个对象向量各自对应的相似程度904,对M个对象节点进行排序,得到对象排序结果905。根据对象排序结果905,确定推荐对象信息906。
以上仅是示例性实施例,但不限于此,还可以包括本领域已知的其他对象推荐方法,只要能够提高推荐对象信息的效率和准确性即可。
图10示意性示出了根据本公开实施例的对象知识图谱的训练装置的框图。
如图10所示,对象知识图谱的训练装置1000可以包括第一获取模块1010、第一生成模块1020、第一构建模块1030和训练模块1040。
第一获取模块1010,用于获取预先构建的初始对象知识图谱,其中,初始对象知识图谱包括M个对象节点和N个对象关联边,对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数。
第一生成模块1020,用于根据初始对象知识图谱,生成与M个对象节点各自对应的对象向量。
第一构建模块1030,用于根据与M个对象节点各自对应的对象向量,构建损失函数。
训练模块1040,用于利用损失函数,训练初始对象知识图谱,得到对象知识图谱。
根据本公开的实施例,构建模块1030可以包括第一处理子模块和构建子模块。
第一处理子模块,用于对与M个对象节点各自对应的对象向量进行处理,得到与M个对象节点各自对应的节点相似度,其中,节点相似度用于表征M个对象节点彼此之间的特征相关性。
构建子模块,用于根据与M个对象节点各自对应的节点相似度,构建损失函数。
根据本公开的实施例,第一处理子模块可以包括第一确定单元、第二确定单元、随机游走单元和第三确定单元。
第一确定单元,用于在M个对象节点中确定起始节点。
第二确定单元,用于根据起始节点,在M个对象节点中依次确定与起始节点相关联的第P层级的Q个候选对象节点和与Q个候选对象节点各自对应的候选对象关联边,其中,P和Q均为正整数。
随机游走单元,用于基于起始节点,根据与Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列。
第三确定单元,用于根据对象节点序列,确定与起始节点对应的节点相似度。
根据本公开的实施例,在p=1的情况下,第二确定单元可以包括第一确定子单元。
第一确定子单元,用于确定与起始节点相关联的第一数目个第一层级候选对象节点和与第一数目个第一层级候选对象节点各自对应的第一候选对象关联边。
根据本公开的实施例,随机游走单元可以包括第二确定子单元。
第二确定子单元,用于根据第一数目个第一候选对象关联边,在第一层级候选对象节点中确定第一层级目标对象节点。
根据本公开的实施例,第三确定单元可以包括第三确定子单元。
第三确定子单元,用于根据起始节点和第一层级目标对象节点,确定第一子概率乘积值。
根据本公开的实施例,在1<p≤P的情况下,每个第p-1层级各自对应有第p-1数目个第p-1层级候选对象节点,第二确定单元可以包括第四确定子单元。
第四确定子单元,用于确定与第p-1层级候选对象节点相关联的第p数目个第p层级候选对象节点和与第p数目个第p层级候选对象节点各自对应的第p候选对象关联边。
根据本公开的实施例,随机游走单元可以包括第五确定子单元和第六确定子单元。
第五确定子单元,用于根据第p数目个第p层级候选对象关联边,在第p层级候选对象节点中确定第p层级目标对象节点。
第六确定子单元,用于根据起始节点和与第P层级各自对应的目标对象节点,确定对象节点序列。
根据本公开的实施例,第三确定单元可以包括第七确定子单元和第八确定子单元。
第七确定子单元,用于根据第p-1层级目标对象节点和第p层级目标对象节点,确定第p子概率乘积值。
第八确定子单元,用于根据第一子概率乘积值和与第P层级各自对应的第p子概率乘积值,确定节点相似度。
根据本公开的实施例,构建子模块可以包括第四确定单元、第一构建单元和第二构建单元。
第四确定单元,用于在M个对象向量中确定起始对象向量、第一目标对象向量和第p目标对象向量。
第一构建单元,用于根据起始对象向量、第一目标对象向量和第p目标对象向量,构建至少一个子损失函数。
第二构建单元,用于根据至少一个子损失函数,构建损失函数。
根据本公开的实施例,节点相似度包括与第一层级目标对象节点对应的第一子概率乘积值和与第p层级目标对象节点对应的第p子概率乘积值。
根据本公开的实施例,第一构建单元可以包括第九确定子单元、第一构建子单元、第十确定子单元和第二构建子单元。
第九确定子单元,用于根据起始对象向量和第一目标对象向量,确定第一向量乘积结果。
第一构建子单元,用于根据第一向量乘积结果和第一子概率乘积值,构建第一子损失函数。
第十确定子单元,用于根据起始对象向量和第p目标对象向量,确定第p向量乘积结果。
第二构建子单元,用于根据第p向量乘积结果和第p子概率乘积值,构建第p子损失函数。
根据本公开的实施例,生成模块1020可以包括第二处理子模块和第三处理子模块。
第二处理子模块,用于针对M个对象节点中的每个对象节点,根据初始对象知识图谱,对对象节点进行编码处理,得到与对象节点标识对应的编码向量。
第三处理子模块,用于对编码向量进行特征提取处理,得到对象向量。
根据本公开的实施例,对象知识图谱的训练装置1000还可以包括第二获取模块、第二构建模块、第三构建模块和第二生成模块。
第二获取模块,用于响应于接收到对象知识图谱构建指令,获取历史样本信息,其中,历史样本信息包括与M个对象标识各自对应的样本对象信息和M个对象标识彼此之间的交互关系信息。
第二构建模块,用于针对M个对象标识中的每个对象标识,根据与对象标识对应的样本对象信息,构建与对象标识对应的对象节点。
第三构建模块,用于根据交互关系信息,构建与对象标识对应的对象关联边。
第二生成模块,用于根据与M个对象标识各自对应的对象节点和对象关联边,生成初始对象知识图谱。
图11示意性示出了根据本公开实施例的对象推荐装置的框图。
如图11所示,对象推荐装置1100可以包括处理模块1110和推荐模块1120。
处理模块1110,用于响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理对象推荐请求中的待处理对象信息,得到推荐对象信息。
推荐模块1120,用于向目标用户推荐推荐对象信息。
根据本公开的实施例,对象知识图谱是根据权利要求12的装置训练得到的。
根据本公开的实施例,处理模块1110可以包括第四处理子模块、第一确定子模块、排序子模块和第二确定子模块。
第四处理子模块,用于对待处理对象信息进行处理,得到待处理对象向量。
第一确定子模块,用于基于对象知识图谱,确定待处理对象向量和M个对象向量之间的相似程度,其中,对象知识图谱包括M个对象节点,M个对象节点各自对应有对象向量,M为正整数。
排序子模块,用于根据与M个对象向量各自对应的相似程度,对M个对象节点进行排序,得到对象排序结果。
第二确定子模块,用于根据对象排序结果,确定推荐对象信息。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块1010、第一生成模块1020、第一构建模块1030和训练模块1040中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,第一获取模块1010、第一生成模块1020、第一构建模块1030和训练模块1040中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块1010、第一生成模块1020、第一构建模块1030和训练模块1040中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中对象知识图谱的训练装置部分与本公开的实施例中对象知识图谱的训练方法部分是相对应的,对象知识图谱的训练装置部分的描述具体参考对象知识图谱的训练方法部分,在此不再赘述。
例如,处理模块1110和推荐模块1120中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,处理模块1110和推荐模块1120中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,处理模块1110和推荐模块1120中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中对象推荐装置部分与本公开的实施例中对象推荐方法部分是相对应的,对象推荐装置部分的描述具体参考对象推荐方法部分,在此不再赘述。
图12示意性示出了根据本公开实施例的适于实现对象知识图谱的训练方法、对象推荐方法的电子设备的框图。图12示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图12所示,根据本公开实施例的计算机电子设备1200包括处理器1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1209加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。处理器1201例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1201还可以包括用于缓存用途的板载存储器。处理器1201可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1203中,存储有电子设备1200操作所需的各种程序和数据。处理器1201、ROM 1202以及RAM 1203通过总线1204彼此相连。处理器1201通过执行ROM 1202和/或RAM1203中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1202和RAM 1203以外的一个或多个存储器中。处理器1201也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1200还可以包括输入/输出(I/O)接口1205,输入/输出(I/O)接口1205也连接至总线1204。电子设备1200还可以包括连接至输入/输出(I/O)接口1205的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至输入/输出(I/O)接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被处理器1201执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1202和/或RAM 1203和/或ROM 1202和RAM 1203以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行本公开实施例所提供的方法的程序代码,当计算机程序产品在电子设备上运行时,该程序代码用于使电子设备实现本公开实施例所提供的对象知识图谱的训练方法、对象推荐方法。
在该计算机程序被处理器1201执行时,执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1209被下载和安装,和/或从可拆卸介质1211被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (16)
1.一种对象知识图谱的训练方法,包括:
获取预先构建的初始对象知识图谱,其中,所述初始对象知识图谱包括M个对象节点和N个对象关联边,所述对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;
根据所述初始对象知识图谱,生成与所述M个对象节点各自对应的对象向量;
根据与所述M个对象节点各自对应的对象向量,构建损失函数;以及
利用所述损失函数,训练所述初始对象知识图谱,得到所述对象知识图谱。
2.根据权利要求1所述的方法,其中,所述根据与所述M个对象节点各自对应的对象向量,构建损失函数包括:
对与所述M个对象节点各自对应的对象向量进行处理,得到与所述M个对象节点各自对应的节点相似度,其中,所述节点相似度用于表征所述M个对象节点彼此之间的特征相关性;以及
根据与所述M个对象节点各自对应的节点相似度,构建所述损失函数。
3.根据权利要求2所述的方法,其中,所述对与所述M个对象节点各自对应的对象向量进行处理,得到与所述M个对象节点各自对应的节点相似度包括:
在所述M个对象节点中确定起始节点;
根据所述起始节点,在所述M个对象节点中依次确定与所述起始节点相关联的第P层级的Q个候选对象节点和与所述Q个候选对象节点各自对应的候选对象关联边,其中,P和Q均为正整数;
基于所述起始节点,根据与所述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列;以及
根据所述对象节点序列,确定与所述起始节点对应的节点相似度。
4.根据权利要求3所述的方法,其中,在p=1的情况下,
所述根据所述起始节点,在所述M个对象节点中依次确定与所述起始节点相关联的第P层级的Q个候选对象节点和与所述Q个候选对象节点各自对应的候选对象关联边包括:
确定与所述起始节点相关联的第一数目个第一层级候选对象节点和与所述第一数目个第一层级候选对象节点各自对应的第一候选对象关联边;
所述基于所述起始节点,根据与所述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列包括:
根据第一数目个所述第一候选对象关联边,在所述第一层级候选对象节点中确定第一层级目标对象节点;以及
所述根据所述对象节点序列,确定与所述起始节点对应的节点相似度包括:
根据所述起始节点和所述第一层级目标对象节点,确定第一子概率乘积值。
5.根据权利要求3所述的方法,其中,在1<p≤P的情况下,每个第p-1层级各自对应有第p-1数目个第p-1层级候选对象节点;
所述根据所述起始节点,在所述M个对象节点中依次确定与所述起始节点相关联的第P层级的Q个候选对象节点和与所述Q个候选对象节点各自对应的候选对象关联边包括:
确定与所述第p-1层级候选对象节点相关联的第p数目个第p层级候选对象节点和与所述第p数目个第p层级候选对象节点各自对应的第p候选对象关联边;
所述基于所述起始节点,根据与所述Q个候选对象节点各自对应的候选对象关联边进行随机游走,得到对象节点序列包括:
根据第p数目个所述第p层级候选对象关联边,在所述第p层级候选对象节点中确定第p层级目标对象节点;
根据所述起始节点和与所述第P层级各自对应的目标对象节点,确定所述对象节点序列;
所述根据所述对象节点序列,确定与所述起始节点对应的节点相似度包括:
根据所述第p-1层级目标对象节点和所述第p层级目标对象节点,确定第p子概率乘积值;以及
根据所述第一子概率乘积值和与所述第P层级各自对应的所述第p子概率乘积值,确定所述节点相似度。
6.根据权利要求2所述的方法,其中,所述根据与所述M个对象节点各自对应的节点相似度,构建所述损失函数包括:
在所述M个对象向量中确定起始对象向量、第一目标对象向量和第p目标对象向量;
根据所述起始对象向量、所述第一目标对象向量和所述第p目标对象向量,构建至少一个子损失函数;以及
根据所述至少一个子损失函数,构建所述损失函数。
7.根据权利要求6所述的方法,其中,所述节点相似度包括与第一层级目标对象节点对应的第一子概率乘积值和与第p层级目标对象节点对应的第p子概率乘积值;
所述根据所述起始对象向量、所述第一目标对象向量和所述第p目标对象向量,构建至少一个子损失函数包括:
根据所述起始对象向量和所述第一目标对象向量,确定第一向量乘积结果;
根据所述第一向量乘积结果和所述第一子概率乘积值,构建第一子损失函数;
根据所述起始对象向量和所述第p目标对象向量,确定第p向量乘积结果;以及
根据所述第p向量乘积结果和所述第p子概率乘积值,构建第p子损失函数。
8.根据权利要求1至7中任一项所述的方法,其中,所述根据所述初始对象知识图谱,生成与所述M个对象节点各自对应的对象向量包括:
针对所述M个对象节点中的每个对象节点,
根据所述初始对象知识图谱,对所述对象节点进行编码处理,得到与所述对象节点标识对应的编码向量;以及
对所述编码向量进行特征提取处理,得到所述对象向量。
9.根据权利要求1至7中任一项所述的方法,还包括,在所述获取预先构建的初始对象知识图谱之前:
响应于接收到对象知识图谱构建指令,获取历史样本信息,其中,所述历史样本信息包括与所述M个对象标识各自对应的样本对象信息和所述M个对象标识彼此之间的交互关系信息;
针对所述M个对象标识中的每个对象标识,
根据与所述对象标识对应的样本对象信息,构建与所述对象标识对应的对象节点;
根据所述交互关系信息,构建与所述对象标识对应的对象关联边;以及
根据与所述M个对象标识各自对应的所述对象节点和所述对象关联边,生成所述初始对象知识图谱。
10.一种对象推荐方法,包括:
响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理所述对象推荐请求中的待处理对象信息,得到推荐对象信息;以及
向所述目标用户推荐所述推荐对象信息;
其中,所述对象知识图谱是根据权利要求1~9中任一项所述的方法训练得到的。
11.根据权利要求10所述的方法,其中,所述利用对象知识图谱处理所述对象推荐请求中的待处理对象信息,得到推荐对象信息包括:
对所述待处理对象信息进行处理,得到待处理对象向量;
基于所述对象知识图谱,确定所述待处理对象向量和M个对象向量之间的相似程度,其中,所述对象知识图谱包括M个对象节点,所述M个对象节点各自对应有所述对象向量,M为正整数;
根据与所述M个对象向量各自对应的相似程度,对所述M个对象节点进行排序,得到对象排序结果;以及
根据所述对象排序结果,确定所述推荐对象信息。
12.一种对象知识图谱的训练装置,包括:
第一获取模块,用于获取预先构建的初始对象知识图谱,其中,所述初始对象知识图谱包括M个对象节点和N个对象关联边,所述对象关联边用于表征相邻两个对象节点之间具有关联关系,M和N均为正整数;
第一生成模块,用于根据所述初始对象知识图谱,生成与所述M个对象节点各自对应的对象向量;
第一构建模块,用于根据与所述M个对象节点各自对应的对象向量,构建损失函数;以及
训练模块,用于利用所述损失函数,训练所述初始对象知识图谱,得到所述对象知识图谱。
13.一种对象推荐装置,包括:
处理模块,用于响应于接收到来自于目标用户的对象推荐请求,利用对象知识图谱处理所述对象推荐请求中的待处理对象信息,得到推荐对象信息;以及
推荐模块,用于向所述目标用户推荐所述推荐对象信息;
其中,所述对象知识图谱是根据权利要求12所述的装置训练得到的。
14.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个指令,
其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至9中任一项或权利要求10至11中任一项所述的方法。
15.一种计算机可读存储介质,其上存储有可执行指令,所述可执行指令被处理器执行时使处理器实现权利要求1至9中任一项或权利要求10至11中任一项所述的方法。
16.一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述计算机可执行指令在被执行时用于实现权利要求1至9中任一项或权利要求10至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311321724.1A CN117350356A (zh) | 2023-10-12 | 2023-10-12 | 对象知识图谱的训练方法、对象推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311321724.1A CN117350356A (zh) | 2023-10-12 | 2023-10-12 | 对象知识图谱的训练方法、对象推荐方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117350356A true CN117350356A (zh) | 2024-01-05 |
Family
ID=89366241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311321724.1A Pending CN117350356A (zh) | 2023-10-12 | 2023-10-12 | 对象知识图谱的训练方法、对象推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117350356A (zh) |
-
2023
- 2023-10-12 CN CN202311321724.1A patent/CN117350356A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108418825B (zh) | 风险模型训练、垃圾账号检测方法、装置以及设备 | |
EP3819790A2 (en) | Method and apparatus for visual question answering, computer device and medium | |
CN104462156B (zh) | 一种基于用户行为的特征提取、个性化推荐方法和系统 | |
CN114298417A (zh) | 反欺诈风险评估方法、训练方法、装置及可读存储介质 | |
US20170277756A1 (en) | Approach to Recommending Mashups | |
US20210279279A1 (en) | Automated graph embedding recommendations based on extracted graph features | |
CN111241298B (zh) | 信息处理方法、装置和计算机可读存储介质 | |
CN110362663A (zh) | 自适应多感知相似度检测和解析 | |
CN115210722A (zh) | 使用混合推理进行图计算的方法和系统 | |
CN115188067A (zh) | 一种视频行为识别方法、装置、电子设备及存储介质 | |
CN115062779A (zh) | 基于动态知识图谱的事件预测方法及装置 | |
CN114579878A (zh) | 虚假新闻判别模型的训练方法、虚假新闻判别方法及装置 | |
CN116155628B (zh) | 网络安全检测方法、训练方法、装置、电子设备和介质 | |
CN117726905A (zh) | 多任务模型的训练方法、多任务处理方法及装置、设备 | |
CN117668244A (zh) | 威胁情报数据的处理方法和计算机可读存储介质 | |
CN115204436A (zh) | 检测业务指标异常原因的方法、装置、设备及介质 | |
CN111209403A (zh) | 数据处理方法、装置、介质及电子设备 | |
CN115525781A (zh) | 多模态虚假信息检测方法、装置和设备 | |
US11074486B2 (en) | Query analysis using deep neural net classification | |
CN116308704A (zh) | 产品推荐方法、装置、电子设备、介质和计算机程序产品 | |
CN116401372A (zh) | 知识图谱表示学习方法、装置、电子设备及可读存储介质 | |
CN113869904B (zh) | 可疑数据识别方法、装置、电子设备、介质和计算机程序 | |
CN117350356A (zh) | 对象知识图谱的训练方法、对象推荐方法及装置 | |
CN112417260B (zh) | 本地化推荐方法、装置及存储介质 | |
CN113052509A (zh) | 模型评估方法、模型评估装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |