CN110751284B - 一种异构信息网络嵌入方法、装置、电子设备及存储介质 - Google Patents
一种异构信息网络嵌入方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110751284B CN110751284B CN201910493418.3A CN201910493418A CN110751284B CN 110751284 B CN110751284 B CN 110751284B CN 201910493418 A CN201910493418 A CN 201910493418A CN 110751284 B CN110751284 B CN 110751284B
- Authority
- CN
- China
- Prior art keywords
- relation
- relation chain
- heterogeneous information
- information network
- target
- 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.)
- Active
Links
Images
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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种异构信息网络嵌入方法、装置、电子设备及存储介质,其中,该方法包括:获取异构信息网络的关系链集合,所述关系链集合包括至少一条关系链,各所述关系链包括多个有序的结点以及连接相邻结点的结点关系,在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型,对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,所述目标嵌入矩阵包括所述关系链集合中各结点的目标结点向量。本申请实施例通过对关系链对应的目标动态计算模型进行训练,能够全面获取异构信息网络中结点之间的关联。
Description
技术领域
本申请涉及异构信息网络技术领域,具体而言,涉及一种异构信息网络嵌入方法、装置、电子设备及存储介质。
背景技术
异构信息网络(或称异质信息网络)由于其可以包括多种对象和关系,能够从丰富的对象以及关联之间挖掘潜在价值,从而被广泛应用于数据挖掘、信息融合等多个领域。
现有的异构信息网络嵌入方法中,可以由相关技术人员,根据相邻两个结点以及该两个结点之间的关系,构造元路径(meta-path),从而得到异构信息网络的嵌入矩阵,该嵌入矩阵包括各结点的结点向量。
但由于现有技术中需要通过人工构造元路径,一方面耗费大量的人力资源,成本较高,另一方面,也只关注了相邻结点之间的关系,结点关系比较单一。
发明内容
有鉴于此,本申请实施例的目的在于提供一种异构信息网络嵌入方法、装置、电子设备及存储介质,能够全面参考异构信息网络中结点之间的关联。
根据本申请的一个方面,提供一种异构信息网络嵌入方法,包括:
获取异构信息网络的关系链集合,所述关系链集合包括至少一条关系链,各所述关系链包括多个有序的结点以及连接相邻结点的结点关系;
在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型;
对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,所述目标嵌入矩阵包括所述关系链集合中各结点的目标结点向量。
可选地,所述在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型,包括:
在所述关系链集合中选择所述待训练关系链;
从预设动态计算模型中,获取所述待训练关系链的类型所对应的所述目标动态计算模型,所述目标动态计算模型中包括多个有序的神经网络结构,且多个所述神经网络结构以及多个所述神经网络结构的次序,分别与所述待训练关系链中多个所述结点关系在所述待训练关系链中的次序对应。
可选地,在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型之前,还包括:
基于所述异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成所述预设动态计算模型。
可选地,所述对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,包括:
通过基于各所述关系链中结点关系,对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵。
可选地,所述通过基于各所述关系链中结点关系,对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,包括:
当通过损失函数确定与所述目标嵌入矩阵收敛时,确定训练完成;或,
当确定迭代次数大于预设阈值时,确定训练完成。
可选地,所述获取异构信息网络的关系链集合,包括:
对所述异构信息网络进行初始化,得到初始化后的异构信息网络,所述初始化后的异构信息网络中包括各结点的初始结点向量;
获取所述初始化后的异构信息网络中的所述关系链集合。
根据本申请的另一个方面,提供一种异构信息网络嵌入装置,包括:
第一获取模块,用于获取异构信息网络的关系链集合,所述关系链集合包括至少一条关系链,各所述关系链包括多个有序的结点以及连接相邻结点的结点关系;
第二获取模块,用于在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型;
第一生成模块,用于对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,所述目标嵌入矩阵包括所述关系链集合中各结点的目标结点向量。
可选地,所述第二获取模块具体用于:
在所述关系链集合中选择所述待训练关系链;
从预设动态计算模型中,获取所述待训练关系链的类型所对应的所述目标动态计算模型,所述目标动态计算模型中包括多个有序的神经网络结构,且多个所述神经网络结构以及多个所述神经网络结构的次序,分别与所述待训练关系链中多个所述结点关系在所述待训练关系链中的次序对应。
可选地,还包括:
第二生成模块,基于所述异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成所述预设动态计算模型。
可选地,所述第一生成模块具体用于:
通过基于各所述关系链中结点关系,对所述关系链对应的目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵。
可选地,所述第一生成模块还用于:
当通过损失函数确定与所述目标嵌入矩阵收敛时,确定训练完成;或,
当确定迭代次数大于预设阈值时,确定训练完成。
可选地,所述第一获取模块具体用于:
对所述异构信息网络进行初始化,得到初始化后的异构信息网络,所述初始化后的异构信息网络中包括各结点的初始结点向量;
获取所述初始化后的异构信息网络中的所述关系链集合。
根据本申请的另一个方面,提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如前述的异构信息网络嵌入装方法的步骤。
根据本申请的另一个方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如前述的异构信息网络嵌入装方法的步骤。
在本申请实施例中,由于不同的关系链所包括的结点、结点关系、结点次序和结点关系次序都可能不同,即不同的关系链具有不同的结构,因此可以获取异构信息网络中的关系链集合,并从该关系链集合中选择带训练关系链以及与该待训练关系链的关系类型对应的目标动态计算模型,对该目标动态计算模型训练,即能够动态地根据不同结构的关系链结构捕捉结点之间的关联。对关系链集合中的待训练关系链所对应的目标动态计算模型训练,即能够全面参考各关系链中相邻结点之间的关联以及间接关联的结点之间的关联,相应的,所得到的目标嵌入矩阵中的各目标结点向量即能够体现各结点之间的关联。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种异构信息网络嵌入方法的流程示意图;
图2示出了本申请实施例所提供的另一种异构信息网络嵌入方法的流程示意图;
图3示出了本申请实施例所提供的一种异构信息网络的嵌入矩阵的结构示意图;
图4示出了本申请实施例所提供的一种异构信息网络嵌入装置的示意图;
图5示出了本申请实施例所提供的另一种异构信息网络嵌入装置的示意图;
图6示出了本申请实施例所提供的一种电子设备的框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合特定应用场景“网约车服务”,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕“网约车服务”进行描述,但是应该理解,这仅是一个示例性实施例。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
在对本申请进行详细的解释说明之前,先对本申请的应用场景予以介绍。
信息网络可以用一个有向图G=(V,E)来表示,其中V为网络中的结点,可以表示对象,E为连接相邻结点的边,可以表示对象之间的关系。若该信息网络中对象的对象类型种类大于1或者对象之间的关系类型大于1,该信息网络可以为异构信息网络。比如,以网约车服务场景中的异构信息网络为例,该异构信息网络中可以包括乘客、网约车和司机等三种类型的对象,其中,乘客乘坐网约车,司机驾驶网约车,司机向乘客提供驾驶服务。
需要说明的是,初始状态下,对象类型和关系类型可以由相关技术人员事先设置,在此不具体限制。
在本申请提出申请之前,现有的技术方案为:由相关技术人员分别根据相邻两个结点以及该两个结点之间的关系构造元路径,从而得到异构信息网络的嵌入矩阵,该嵌入矩阵中包括各结点的结点向量。
其所导致的技术问题为:由于需要通过人工构造元路径,一方面耗费大量的人力资源,成本较高,另一方面,由于只关注了相邻结点之间的关系。且当异构信息网络的结构越复杂,上述问题所导致的弊端也会更加严重。
为了解决上述技术问题,本发明实施例提供了一种异构信息网络嵌入方法,其核心改进点在于在本申请实施例中,所得到的嵌入矩阵能够充分体现各关系链中相邻结点之间的关联以及间接关联的结点之间的关联。下面通过可能的实现方式对本发明的技术方案进行说明。
以下将结合前述中的应用场景,对本申请进行详细的说明。
参照图1所示,为本申请实施例提供的一种异构信息网络嵌入方法的流程示意图,具体执行过程为:
步骤101,获取异构信息网络的关系链集合,该关系链集合包括至少一条关系链,各关系链包括多个有序的结点以及连接相邻结点的结点关系。
异构信息网络中包含了大量的关系链,为了便于后续基于异构信息网络的各关系链确定结点的结点向量,从而全面说明异构信息网络中结点之间的可能存在的关联,包括相邻结点之间的关联以及间接关联的结点之间的关联,可以获取异构信息网络中的关系链集合。
关系链为由多个结点以及结点关系有序排列而构成的路径,表示以首结点开始,经第一个结点关系可以得到第二个结点,第二结点再经第二个结点关系可以得到第三个结点,依次类推,直至末结点。
例如,一条关系链可以包括v1-e1-v2-....-em-vm+1,其中,v为结点,v1为首结点,vm+1为末结点,e为结点关系,m为整数,该关系链可以描述v1至vm+1之间的关系。
关系链集合中可以包括至少一个关系链。
需要说明的是,该关系链集合用于训练目标嵌入矩阵,由于异构信息网络中的结点之间的关联可能比较复杂,从异构信息网络中获取上述关系链结合时,可以通过随机游走的方式抽取得到上述关系链集合,例如可以在异构信息网络中确定首结点,然后采用深度优先或者广度优先的方式随机采样它的邻居结点,得到以某个结点为首的关系链集合;或者,也可以按照预设规定获取异构信息网络中相关的关系链构成上述关系链集合,以网约车为例,上述关系链集合可以包括同一服务请求方的相邻两个订单的路径链路。
还需要说明的是,可以基于相邻结点之间的结点关系,在异构信息网络中查找一个结点的另一相邻结点。
另外,在本申请的另一可选实施例中,可以只从首结点开始对异构信息网络中的结点进行遍历,依次查找相邻的结点,直至查找到的结点为末结点;或者,只从末结点开始对异构信息网络中的结点进行遍历,依次查找相邻的结点,直至查找到的结点为首结点;或者,分别从异构信息网络中至少一个结点开始,依次查找该结点的相邻结点,直至查找到首结点和末结点。
步骤102,在上述关系链集合中选择待训练关系链,并获取与该待训练关系链的关系类型所对应的目标动态计算模型。
由于各关系链中所包括的结点、结点关系、结点次序和结点关系次序都可能不同,即不同的关系链具有不同的结构,对应的关系类型也不同,需要对其中哪条关系链进行训练时,先获取该待训练关系链的关系类型所对应的目标动态计算模型。
目标动态计算模型可以适应性地按照该关系链的结构,捕捉结点之间的关联。
需要说明的是,动态计算模型可以包括基于机器学习的模型,比如该动态计算模型可以包括神经网络模型。可选地,该动态计算模型可以是动态计算图的形式。
对于各关系链,可以基于该关系链中所包括的各结点关系以及结点关系的次序,生成对应目标动态计算模型;或者,可以事先对该多个结点关系进行排列组合,并分别针对不同排列组合的该多个结点关系,生成动态计算模型,并将所生成的动态计算模型与该多个结点关系的排列组合对应存储,从而可以基于该关系链中的多个结点关系的排列组合,选择相应的动态计算模型作为目标动态计算模型。
步骤103,对上述目标动态计算模型进行训练,生成异构信息网络的目标嵌入矩阵,该目标嵌入矩阵包括该关系链集合中各结点的目标结点向量。
对于关系链集合的各关系链,可以每次收取一个关系链作为训练数据来训练,依次循环,直到获取到异构信息网络的目标嵌入矩阵。
目标嵌入矩阵包括该关系链集合中各结点的目标结点向量。该目标嵌入矩阵能够说明结点与其它结点之间的关联。
在本申请实施例中,由于不同的关系链所包括的结点、结点关系、结点次序和结点关系次序都可能不同,即不同的关系链具有不同的结构,因此可以获取异构信息网络中的关系链集合,并从该关系链集合中选择带训练关系链以及与该待训练关系链的关系类型对应的目标动态计算模型,对该目标动态计算模型训练,即能够动态地根据不同结构的关系链结构捕捉结点之间的关联。对关系链集合中的待训练关系链所对应的目标动态计算模型训练,即能够全面参考各关系链中相邻结点之间的关联以及间接关联的结点之间的关联,相应的,所得到的目标嵌入矩阵中的各目标结点向量即能够体现各结点之间的关联。
可选地,该获取异构信息网络的关系链集合的步骤,可以包括:对异构信息网络进行初始化,得到初始化后的异构信息网络,初始化后的异构信息网络中包括各结点的初始结点向量,获取初始化后的异构信息网络中的关系链集合。
其中,可以按照预设的初始化算法,生成各结点的初始结点向量,从而得到初始嵌入矩阵。
本申请实施例中的初始化可以理解为对异构信息网络中的结点赋值,即赋予初始值,但不以此为限。
可选地,该在关系链集合中选择待训练关系链,并获取待训练关系链的关系类型所对应的目标动态计算模型的步骤,可以包括:在该关系链集合中选择待训练关系链,从预设动态计算模型中,获取该待训练关系链的类型所对应的目标动态计算模型,该目标动态计算模型中包括多个有序的神经网络结构,且多个神经网络结构以及多个神经网络结构的次序,分别与待训练关系链中多个结点关系在待训练关系链中的次序对应。
由于不同的关系链可能包括不同的结点关系和/或不同的结点关系次序,如果直接针对各关联链生成对应的目标动态计算模型的处理流程可能会过于繁琐,因此,为了提高获取与各关系链对应的动态计算模型的效率和准确性,动态计算模型中可以包括多个有序的神经网络结构,每个神经网络结构可以对应一种结点关系,从而可以根据各关系链中的多个有序的结点关系,从多个预设动态计算模型中,确定与该多个有序的结点关系对应的多个有序的神经网络结构,进而获取到对应的目标动态计算模型。
神经网络结构可以包括DNN(Deep Neural Networks,深度神经网络),当然,在实际应用中,神经网络结构也是其它类型,比如可以包括CNN(Convolutional NeuralNetworks,卷积神经网络)或者RNN(Recurrent Neural Network,循环神经网络)。
需要说明的是,此处的神经网络结构可以是任意变换,只要能够将一个向量经过某种线性或者非线性的变换,变成另外一个向量的函数都可以替代此处的神经网络结构。
其中,上述预设动态计算模型可以通过事先设置得到。
例如,关系链1包括结点1-结点关系1-结点2-结点关系2-结点3-结点关系3-结点4,关系链2包括结点5-结点关系4-结点3-结点关系3-结点4,其中,结点关系1对应关系类型1,结点关系2对应关系类型2,结点关系3对应关系类型3,结点关系4对应关系类型4。多个预设动态计算模型包括模型1、模型2和模型3,其中,模型1包括依次排列的神经网络结构1、神经网络结构2和神经网络结构3,模型2包括依次排列的神经网络结构1、神经网络结构4和神经网络结构2,模型3包括依次排列的神经网络结构4和神经网络结构3,且神经网络结构1对于关系类型1、神经网络结构2对应关系类型2,神经网络结构3对应关系类型3,神经网络结构4对应关系类型4。因此,对于关系链1,关系链1中结点关系的关系类型依次为关系类型1、关系类型2和关系类型3,所以从多个预设动态计算模型中选择包括依次排列的神经网络结构1、神经网络结构2和神经网络结构3的模型1,模型1即为关系链1对应的目标动态计算模型,对于关系链2,关系链2中结点关系的关系类型依次为,关系类型4和关系类型3,所以从多个预设动态计算模型中选择包括依次排列的神经网络结构4和神经网络结构3的模型3,模型3即为与关系链2对应的目标动态计算模型。
可选地,可以在该关系链集合中选择待训练关系链,并获取待训练关系链的关系类型所对应的目标动态计算模型之前,基于异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成预设动态计算模型。
由于不同的异构信息网络可能包括不同的关系类型,因此,为了提高生成预设动态计算模型的效率和准确性,可以针对当前的异构信息网络,生成多个预设动态计算模型,从而确保可以快速根据该异构信息网络中的关系链,获取对应的目标动态计算模型。
预设最大关系链长度为异构信息网络中最长关系链中所包括结点关系的数目。
其中,可以对异构信息网络所包括的各关系链进行比较,确定最长关系链,进而确定最长关系链长度。当然,在实际应用中,也可以接收用户针对异构信息网络提交的最大关系链长度,从而只考虑那些长度小于用户提交的最大关系链长度的关系链。
另外,可以事先基于异构信息网络中的各关系类型,生成与该关系类型对应的神经网络结构。
需要说明的是,对应不同关系类型的神经网络结构可以相同,当然也可以不同,本申请对此不做具体限定。
还需要说明的是,不同神经网络结构之间的网络参数可以不共享,不同神经网络结构的输入与输出的维度相同。
假设异构信息网络中包括结点类型数目为L,最长关系链长度为c,则分别针对各结点类型生成对应的神经网络结构,得到L种神经网络结构,从最短关系链长度(即1)开始,对L种神经网络结构进行排列组合,直至排最长关系链长度c。以关系链长度为N为例,则对L中神经网络结构进行排列组合,可以得到LN个预设动态计算模型,因此,包括结点类型数目为L,最长关系链长度为c的对于异构信息网络,可以得到L1+L2+…+Lc个预设动态计算模型。
需要说明的是,对于预设最长关系链长度为c的异构信息网络,预设动态计算模型中所包括的神经网络结构的最大数目也为c。
另外,在本申请的另一可选实施例中,也可以事先根据异构信息网络中的多个关系类型,生成分别与各关系类型对应的神经网络结构,从而在从预设动态计算模型中,获取待训练关系链的类型所对应的目标动态计算模型的步骤中,可以根据基于各关系链中的多个结点关系以及多个结点关系在关系链中的次序,依次获取与各结点关系对应的神经网络结构,生成与该关系链对应的目标动态计算模型。
可选地,该对目标动态计算模型进行训练,生成异构信息网络的目标嵌入矩阵,可以包括:通过基于各关系链中结点关系,对关系链对应的目标动态计算模型进行训练,生成该异构信息网络的目标嵌入矩阵。
可以获取异构信息网络的初始嵌入矩阵,该初始嵌入矩阵中包括该关系链集合中各结点的初始结点向量。对于各目标动态计算模型,可以获取与该目标动态计算模型对应的关系链中各结点的初始结点向量,作为首次训练的数据输入,对通过该目标动态计算模型以该关系链中的首结点,按照该关系链,生成该关系链中的末结点的过程进行训练,并对该目标动态计算模型中的网络参数进行迭代更新,直至训练结束。当训练结束时,各结点的结点向量即为目标结点向量,包括各结点的目标结点向量的矩阵即为目标嵌入矩阵。
其中,可以通过对异构信息网络进行初始化,得到该异构信息网络的初始嵌入矩阵,该初始嵌入矩阵中包括该关系链集合中各结点的初始结点向量。
可选地,该通过基于各关系链中结点关系,对目标动态计算模型进行训练,生成异构信息网络的目标嵌入矩阵的步骤,可以包括下述任一种方式:
方式一,当通过损失函数确定与目标嵌入矩阵收敛时,确定训练完成。
其中,损失函数可以包括softmax函数,当然,在实际应用中,该损失函数也可以包括其它类型的函数,比如交叉熵损失,合页损失等,本申请对损失函数的类型不做具体限定。
需要说明的是,softmax函数,或称归一化指数函数,是逻辑函数的一种推广,能将一个含任意实数的K维向量“压缩”到另一个K维实向量中,使得每一个元素的范围都在0至1之间,并且所有元素的和为1。
方式二,当确定迭代次数大于预设阈值时,确定训练完成。
迭代次数可以通过训练过程中对该目标动态计算模型中的网络参数进行迭代更新的次数进行累计得到。
预设阈值可以通过事先设置得到。比如,可以通过接收用户提交的迭代次数作为预设阈值。
参照图2所示,为本申请实施例提供的一种异构信息网络嵌入方法的流程示意图,具体执行过程为:
步骤201,接收输入的异构信息网络以及异构信息网络相关信息。
其中,异构信息网络可以为G=(V,E),异构信息网络相关信息包括最大迭代次数MaxIteration(针对迭代次数的预设阈值)、关系类型类表(其中包括L种的关系类型)、预设最长关系链长度c。
步骤202,对异构信息网络进行初始化。
其中,对异构信息网络进行初始化的方式,可以参见前述中的相关描述,此处不再一一赘述。
步骤203,生成多个预设动态计算模型。
其中,生成多个预设动态计算模型的方式,可以参见前述中的相关描述,此处不再一一赘述。
步骤204,从异构信息网络中获取关系链集合。
其中,关系链集合可以包括S=(vi-e1-....-em-vj),其中i和j为结点的编号,且i和j可以为整数;m可以为正整数,且m≤c。
需要说明的是,从异构信息网络中获取关系链集合的方式,可以参见前述中的相关描述,此处不再一一赘述。
步骤205,从关系链集合中获取各关系链,并选择对应的目标动态计算模型进行训练,对网络参数进行迭代更新,直至训练完成。
其中,该目标动态计算模型的输入为vi,目标动态计算模型的输出为vj。
需要说明的是,迭代次数可以通过Iteration表示,且在目标动态计算模型的训练过程中,每当迭代更新一次网络参数,Iteration的值自增1,当Iteration大于MaxIteration时确定训练完成;或者,可以在目标嵌入矩阵收敛时确定训练完成。
还需要说明是,对从关系链集合中获取各关系链,并选择对应的目标动态计算模型进行训练,对网络参数进行迭代更新的方式,可以参见前述中的相关描述,此处不再一一赘述。
步骤206,输出目标嵌入矩阵。
例如,一种异构信息网络的嵌入矩阵的结构示意图可以如图3所示。其中,图3左侧为初始嵌入矩阵,右侧为目标嵌入矩阵,初始嵌入矩阵和目标嵌入矩阵均包括v0至vn共n+1个结点向量。初始嵌入矩阵和目标嵌入矩阵之间包括多个DNN,分别对应从v0至vn之间的m(m为正整数)个结点关系,其中各DNN的网络参数相同,且输入和输出的维度相同。
本实施例所提供的方法,其实现原理和技术效果与前述实施例所提供方法的实现原理和技术效果类似,在此不再赘述。
基于同一发明构思,本申请实施例中还提供了与异构信息网络嵌入方法对应的异构信息网络嵌入装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述异构信息网络嵌入方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图4所示,为本申请实施例提供的一种异构信息网络嵌入装置的示意图,所述装置包括:第一获取模块401、第二获取模块402、第一生成模块403;其中,
第一获取模块401,用于获取异构信息网络的关系链集合,该关系链集合包括至少一条关系链,各该关系链包括多个有序的结点以及连接相邻结点的结点关系;
第二获取模块402,用于在该关系链集合中选择待训练关系链,并获取该待训练关系链的关系类型所对应的目标动态计算模型;
第一生成模块403,用于对该目标动态计算模型进行训练,生成该异构信息网络的目标嵌入矩阵,该目标嵌入矩阵包括该关系链集合中各结点的目标结点向量。
可选地,该第二获取模块402具体用于:
在该关系链集合中选择待训练关系链;
从预设动态计算模型中,获取该待训练关系链的类型所对应的该目标动态计算模型,该目标动态计算模型中包括多个有序的神经网络结构,且多个该神经网络结构以及多个该神经网络结构的次序,分别与该待训练关系链中多个该结点关系在该待训练关系链中的次序对应。
可选地,请参照图5还包括:
第二生成模块404,基于该异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成该预设动态计算模型。
可选地,该第一生成模块403具体用于:
通过基于各该关系链中结点关系,对该关系链对应的目标动态计算模型进行训练,生成该异构信息网络的目标嵌入矩阵。
可选地,该第一生成模块403还用于:
当通过损失函数确定与该目标嵌入矩阵收敛时,确定训练完成;或,
当确定迭代次数大于预设阈值时,确定训练完成。
可选地,该第一获取模块401具体用于:
对该异构信息网络进行初始化,得到初始化后的异构信息网络,该初始化后的异构信息网络中包括各结点的初始结点向量;
获取该初始化后的异构信息网络中的该关系链集合。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
参照图6,为本申请所提供的一种电子设备的功能模块示意图。该电子设备可以包括处理器61、存储器62、和总线63。所述存储器62存储有所述处理器61可执行的机器可读指令(比如,图4或5的装置包括的一个或多个模块中对应的执行指令等),当计算机设备60运行时,所述处理器61与所述存储器62之间通过总线63通信,所述机器可读指令被所述处理器61执行上述异构信息网络嵌入方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述异构信息网络嵌入方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述异构信息网络嵌入方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种异构信息网络嵌入方法,其特征在于,包括:
获取异构信息网络的关系链集合,所述关系链集合包括至少一条关系链,各所述关系链包括多个有序的结点以及连接相邻结点的结点关系;
在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型;
对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,所述目标嵌入矩阵包括所述关系链集合中各结点的目标结点向量;
所述在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型,包括:
在所述关系链集合中选择所述待训练关系链;
从预设动态计算模型中,获取所述待训练关系链的类型所对应的所述目标动态计算模型,所述目标动态计算模型中包括多个有序的神经网络结构,且多个所述神经网络结构的次序,与所述待训练关系链中多个所述结点关系在所述待训练关系链中的次序对应。
2.根据权利要求1所述的方法,其特征在于,在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型之前,还包括:
基于所述异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成所述预设动态计算模型。
3.根据权利要求1所述的方法,其特征在于,所述对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,包括:
通过基于各所述关系链中结点关系,对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵。
4.一种异构信息网络嵌入装置,其特征在于,包括:
第一获取模块,用于获取异构信息网络的关系链集合,所述关系链集合包括至少一条关系链,各所述关系链包括多个有序的结点以及连接相邻结点的结点关系;
第二获取模块,用于在所述关系链集合中选择待训练关系链,并获取所述待训练关系链的关系类型所对应的目标动态计算模型;
第一生成模块,用于对所述目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵,所述目标嵌入矩阵包括所述关系链集合中各结点的目标结点向量;
所述第二获取模块具体用于:
在所述关系链集合中选择所述待训练关系链;
从预设动态计算模型中,获取所述待训练关系链的类型所对应的所述目标动态计算模型,所述目标动态计算模型中包括多个有序的神经网络结构,且多个所述神经网络结构的次序,与所述待训练关系链中多个所述结点关系在所述待训练关系链中的次序对应。
5.根据权利要求4所述的装置,其特征在于,还包括:
第二生成模块,基于所述异构信息网络中的预设最大关系链长度以及多种关系类型对应的神经网络结构,生成所述预设动态计算模型。
6.根据权利要求4所述的装置,其特征在于,所述第一生成模块具体用于:
通过基于各所述关系链中结点关系,对所述关系链对应的目标动态计算模型进行训练,生成所述异构信息网络的目标嵌入矩阵。
7.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储介质之间通过所述总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至3任一所述的异构信息网络嵌入方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至3任一所述的异构信息网络嵌入方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910493418.3A CN110751284B (zh) | 2019-06-06 | 2019-06-06 | 一种异构信息网络嵌入方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910493418.3A CN110751284B (zh) | 2019-06-06 | 2019-06-06 | 一种异构信息网络嵌入方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110751284A CN110751284A (zh) | 2020-02-04 |
CN110751284B true CN110751284B (zh) | 2020-12-25 |
Family
ID=69275772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910493418.3A Active CN110751284B (zh) | 2019-06-06 | 2019-06-06 | 一种异构信息网络嵌入方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110751284B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111861178B (zh) * | 2020-07-13 | 2024-06-07 | 北京嘀嘀无限科技发展有限公司 | 服务匹配模型的训练方法、服务匹配方法、设备及介质 |
CN112380434B (zh) * | 2020-11-16 | 2022-09-16 | 吉林大学 | 一种融合异质信息网络的可解释推荐方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615608B (zh) * | 2014-04-28 | 2018-05-15 | 腾讯科技(深圳)有限公司 | 一种数据挖掘处理系统及方法 |
CN107895038B (zh) * | 2017-11-29 | 2020-05-12 | 四川无声信息技术有限公司 | 一种链路预测关系推荐方法及装置 |
-
2019
- 2019-06-06 CN CN201910493418.3A patent/CN110751284B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110751284A (zh) | 2020-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110674869B (zh) | 分类处理、图卷积神经网络模型的训练方法和装置 | |
JP6488009B2 (ja) | 特徴的なサブトレースマイニングを使用する、経時的グラフにおける挙動クエリ構築のための方法及びシステム | |
CN112307214A (zh) | 一种基于深度强化学习的推荐方法及推荐装置 | |
Wiering et al. | Model-based multi-objective reinforcement learning | |
CN111967972B (zh) | 理财产品推荐方法及装置 | |
CN111814921B (zh) | 对象特征信息获取、对象分类、信息推送方法及装置 | |
CN110751284B (zh) | 一种异构信息网络嵌入方法、装置、电子设备及存储介质 | |
CN110689110B (zh) | 处理交互事件的方法及装置 | |
CN110490274B (zh) | 评估交互事件的方法及装置 | |
CN112085293B (zh) | 训练交互预测模型、预测交互对象的方法及装置 | |
US20100063953A1 (en) | Converting unordered graphs to oblivious read once ordered graph representation | |
CN114072809A (zh) | 经由神经架构搜索的小且快速的视频处理网络 | |
CN111626489A (zh) | 基于时序差分学习算法的最短路径规划方法和装置 | |
CN111242283A (zh) | 评估交互事件的自编码器的训练方法及装置 | |
CN110674181B (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
CN109324901A (zh) | 基于区块链的深度学习分布式计算方法、系统和节点 | |
US20230289618A1 (en) | Performing knowledge graph embedding using a prediction model | |
CN113965313B (zh) | 基于同态加密的模型训练方法、装置、设备以及存储介质 | |
CN106257507A (zh) | 用户行为的风险评估方法及装置 | |
CN109214692B (zh) | 基于用户时序行为的电子书评分方法及电子设备 | |
CN109155004A (zh) | 用于强化学习代理的无模型控制 | |
CN110532528B (zh) | 基于随机游走的书籍相似度计算方法及电子设备 | |
US10956357B2 (en) | Method for flexible, fast all-reduce on arbitrary tree topology | |
CN104317892B (zh) | 可移植可执行文件的时序特征处理方法及装置 | |
EP2916215B1 (en) | Method of cryptographic processing of data on elliptic curves, corresponding electronic device and computer program product |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |