一种更新供应链网络图中实体向量表示的方法及装置与流程

未命名 09-14 阅读:185 评论:0


1.本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种更新供应链网络图中实体向量表示的方法及装置。


背景技术:

2.供应链网络图是一种特殊的有向图结构,由节点和连接边组成。节点代表企业实体,如:供应商、制造商、分销商、销售商等;连接边代表企业实体之间的关系。例如,在起点为供应商、终点为销售商的情况下,该关系可以为供销关系。在供应链业务场景下,生产商、供应商、客户、银行、仓库、物流及保险等众多供应链环节业务流程信息互通,供应链网络图中的节点和连接边信息处于实时更新的状态,是一种动态的图结构。因此,如何将动态更新的供应链网络图进行向量化表示,对于提升供应链运营效率和管理水平具有重要价值。
3.现有的图向量化表示技术多为静态图的向量化表示,采用静态图上随机游走形成的语料库,通过node2vec的方法获得静态图的向量化表示。在供应链业务场景下,图的结构将发生改变,如插入新的节点,或删除已有的连接边等,需要在整个图上重复上述过程,计算成本和时间成本高昂,不能实现对供应链网络图向量表示的实时更新。而且,图结构改变前后全图的向量表示将产生较大的变化,将会影响供应链业务中以图向量化表示作为输入的机器学习模型的表现。


技术实现要素:

4.本说明书一个或多个实施例描述了一种更新供应链网络图中实体向量表示的方法,在供应链网络图发生动态变化时,可以快速高效地更新供应链网络图中的实体向量表示。
5.第一方面,提供了一种更新供应链网络图中实体向量表示的方法,包括:
6.获取在初始供应链网络图中新增节点及其连接边后的目标网络图,其中包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,所述有向连接边对应有关系权重;所述多个企业实体包括,供应商、制造商、分销商以及销售商;所述关系包括,供销关系、生产关系或者制造关系;
7.基于所述目标网络图中的新增节点及其连接边,确定节点对;
8.对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算所述各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合;
9.获取对应于所述初始供应链网络图的初始神经网络模型的初始参数矩阵,其中的各矩阵行分别为所述初始供应链网络图中各个节点的初始向量表示;
10.对所述影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于所述新增节点的矩阵行添加到所述初始参数矩阵中,得到初始的更新参数矩阵;
11.在基于所述影响节点集合确定的影响子图中通过随机游走,采集若干第一节点序
列;
12.根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列上滑动,并根据滑动过程中所述滑动窗口内的子序列,构建多组第一节点对;其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点;
13.至少根据所述多组第一节点对,训练所述初始神经网络模型,以调整所述更新参数矩阵中对应于所述影响子图中各个节点的各矩阵行,得到所述影响子图中各个节点的更新向量表示。
14.第二方面,提供了一种更新供应链网络图中实体向量表示的装置,包括:
15.获取单元,用于获取在初始供应链网络图中新增节点及其连接边后的目标网络图,其中包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,所述有向连接边对应有关系权重;所述多个企业实体包括,供应商、制造商、分销商以及销售商;所述关系包括,供销关系、生产关系或者制造关系;
16.确定单元,用于基于所述目标网络图中的新增节点及其连接边,确定节点对;
17.计算单元,用于对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算所述各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合;
18.所述获取单元,还用于获取对应于所述初始供应链网络图的初始神经网络模型的初始参数矩阵,其中的各矩阵行分别为所述初始供应链网络图中各个节点的初始向量表示;
19.所述计算单元,还用于对所述影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于所述新增节点的矩阵行添加到所述初始参数矩阵中,得到初始的更新参数矩阵;
20.采集单元,用于在基于所述影响节点集合确定的影响子图中通过随机游走,采集若干第一节点序列;
21.构建单元,用于根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列上滑动,并根据滑动过程中所述滑动窗口内的子序列,构建多组第一节点对;其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点;
22.训练单元,用于至少根据所述多组第一节点对,训练所述初始神经网络模型,以调整所述更新参数矩阵中对应于所述影响子图中各个节点的各矩阵行,得到所述影响子图中各个节点的更新向量表示。
23.本说明书一个或多个实施例提供的更新供应链网络图中实体向量表示的方法,在供应链网络图中新增节点及其连接边后,先基于该新增节点及其连接边确定节点对。之后,针对节点对中的起点,根据其邻居节点的关系权重,确定对应的影响节点集合,并通过对其中的各个节点的向量表示求平均,得到该起点的初始向量表示,以及将该初始向量表示添加到用于表征供应链网络图的神经网络模型的参数矩阵中。接着,通过在基于影响节点集合确定的影响子图中采集节点对,并利用采集的节点对来训练神经网络模型,确定新增节点及其连接边后的受影响子图中各个节点的更新向量表示。需要说明,本方案中,在供应链网络图发生动态变化时,确定受此次动态变化影响的子图,并更新该子图中节点的向量表示,大大缩小了供应链网络图向量表示的更新范围,由此降低了计算成本和时间成本。
附图说明
24.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
25.图1示出在一个例子中确定供应链网络图中实体向量表示的方法流程图;
26.图2a示出在一个例子中的初始供应链网络图;
27.图2b示出初始供应链网络图在二维平面的投影;
28.图3示出根据一个实施例的一种更新供应链网络图中实体向量表示的方法流程图;
29.图4a示出在一个例子中的目标网络图;
30.图4b示出目标网络图在二维平面的投影;
31.图5示出根据一个实施例的一种更新供应链网络图中实体向量表示的装置示意图。
具体实施方式
32.下面结合附图,对本说明书提供的方案进行描述。
33.图1示出在一个例子中确定供应链网络图中实体向量表示的方法流程图。该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。如图1所示,该方法可以包括如下步骤:
34.步骤s102,在初始供应链网络图中通过随机游走,采集若干第二节点序列。
35.上述初始供应链网络图包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,该有向连接边对应有关系权重。该多个企业实体包括,供应商、制造商、分销商以及销售商等,上述关系例如可以为供销关系、生产关系或者制造关系等。
36.在一个例子中,可以将初始供应链网络图表示为图g
t
,且假设其中包括n个节点,那么图g
t
对应的邻接矩阵可以表示为a
t
∈rn×n,即该邻接矩阵包括n行n列,其中的每一行对应于一个节点,每一列对应于一个节点。
37.对于上述的图g
t
,通过对其进行随机游走,可以得到矩阵w
t
=[w
1t
,w
2t
,

, w
st
]
t
,其中,w
t
∈rs×
l
,s为随机游走的次数,l为节点序列的长度,wi为第i次随机游走得到的节点序列,其中,i为正整数,且1≤i≤s。
[0038]
对于矩阵w
t
中的每个节点,可以根据其在矩阵w
t
中的出现次数,计算对应的采样概率。
[0039]
在一个例子中,对于任意的节点,可以根据如下公式1,计算对应的采样概率:
[0040]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式1)
[0041]
其中,为节点的采样概率,为节点的出现次数,m为矩阵w
t
中的节点数目,为矩阵w
t
中的任一节点,为节点的出现次数。
[0042]
步骤s104,根据预定义的步长,将第二宽度的滑动窗口在各第二节点序列上滑动,并根据滑动过程中滑动窗口内的子序列,构建多组第二节点对,其中各组第二节点对包括不同的第二特征节点和相同的第二标签节点。
[0043]
在一个实施例中,构建多组第二节点对包括:将滑动窗口内的子序列中位于中间位置的节点作为第二标签节点,将子序列中除中间位置的节点外的各剩余节点作为各第二特征节点,并基于各第二特征节点和第二标签节点,形成多组第二节点对。
[0044]
以滑动窗口的宽度为2
×
b+1为例来说,假设当前所获得的子序列为:[v1, v2,

,v
b+1
,

,v2×
b+1
],那么可以将节点v
b+1
作为第二标签节点,将节点v1,

,vb,v
b+2
,

,v2×
b+1
作为各第二特征节点,形成如下的2
×
b组第二节点对:(v1,v
b+1
),

,(vb,v
b+1
), (v
b+2
,v
b+1
) ,

, (v2×
b+1
,v
b+1
)。
[0045]
应理解,在实际应用中,针对上述各第二节点序列,可以执行多次滑动,从而基于每次滑动过程中滑动窗口内的子序列,均可以得到多组第二节点对。由于针对各次滑动过程中分别获得的多组第二节点对的使用方法相类似,因此,以下以在一次滑动过程中获得的多组第二节点对的使用过程为例进行说明。
[0046]
步骤s106,至少根据多组第二节点对,训练用于表征初始供应链网络图的单层神经网络模型,得到初始参数矩阵。
[0047]
这里的单层神经网络模型可以为基于注意力机制的神经网络模型。
[0048]
在一个例子中,可以将单层神经网络模型表示为m
t
,与其对应的参数矩阵可以表示为e
t
∈rn×k,其中,n为初始供应链网络图中的节点数目,k为向量表示的维数。
[0049]
具体地,上述训练过程可以包括:基于各第二节点序列中各个节点的采样概率,进行节点采样,得到若干第二采样节点。基于若干第二采样节点和第二标签节点,形成多组第一采样节点对。将多组第二节点对作为正样本,将多组第一采样节点对作为负样本,并基于正样本和负样本,训练用于表征初始供应链网络图的单层神经网络模型。
[0050]
在一个实施例中,可以是从图g
t
中,针对位于矩阵w
t
中且位于滑动窗口之外的节点进行采样。比如,在前述例子中,可以是针对位于矩阵w
t
中的除节点v1, v2,

,v
b+1
,

,v2×
b+1
之外的节点进行采样,且其采样概率可以根据公式1确定。
[0051]
假设在图g
t
中进行g次节点采样后,得到的g个第二采样节点分别为:v
j1
,v
j2
,

, v
jg
,那么可以形成如下的多组第一采样节点对:(v
j1
,v
b+1
),(v
j2
,v
b+1
),

,(v
jg
,v
b+1
)。之后,可以将(v1,v
b+1
),

,(vb,v
b+1
), (v
b+2
,v
b+1
) ,

, (v2×
b+1
,v
b+1
)作为正样本,以及将(v
j1
,v
b+1
),(v
j2
,v
b+1
),

,(v
jg
,v
b+1
)作为负样本,训练m
t

[0052]
在一个更具体的实施例中,上述基于正样本和负样本,训练用于表征初始供应链网络图的单层神经网络模型可以包括:将正样本中的各第二特征节点输入单层神经网络模型,得到对应的各第二预测节点,以及将负样本中的各第二采样节点输入单层神经网络模型,得到对应的各采样预测节点。以最小化各第二预测节点与第二标签节点的向量表示间的距离,最大化各采样预测节点与第二标签节点的向量表示间的距离为目标,调整单层神经网络模型的参数矩阵。
[0053]
在此说明,本说明书所述的节点的向量表示均为在高维空间的向量表示,比如,该向量表示的维数大于100。
[0054]
具体而言,可以是将各第二特征节点各自的节点标识的独热(one-hot)编码向量
输入单层神经网络模型;同理,可以是将各第二采样节点各自的节点标识的独热编码向量输入单层神经网络模型。
[0055]
如前述例子,可以将节点标识1,

,b,b+2,

,2
×
b+1各自的独热编码向量输入m
t
,得到模型针对多个第二特征节点分别输出的多个第二预测节点:e1, e2,

,e
b+1
,

,e2×
b+1
,其中,ei为任一第二预测节点的向量表示,1≤i≤2
×
b+1。此外,还可以将节点标识j1,j2,

,jg各自的独热编码向量输入m
t
,得到模型针对多个第二采样节点分别输出的多个采样预测节点:e
j1
,e
j2
,

, e
jg
,其中,e
jk
为任一采样预测节点的向量表示,1≤k≤g。
[0056]
之后,可以根据如下的公式计算正采样损失:logsigmoid(ei,e
b+1
),其中,e
b+1
为第二标签节点v
b+1
的向量表示。在一个例子中,可以采用node2vec方法,确定节点v
b+1
的向量表示。(ei,e
b+1
)表示任一第二预测节点的向量表示与第二标签节点的向量表示之间的距离。以及可以根据如下的公式计算负采样损失:-logsigmoid(e
jk
,e
b+1
),(e
jk
,e
b+1
)表示任一采样预测节点的向量表示与第二标签节点的向量表示之间的距离。
[0057]
在计算得到上述正采样损失和负采样损失后,可以对该两个损失求和,并将求和结果作为最终的预测损失。应理解,该最终的预测损失正相关于第二预测节点与第二标签节点的向量表示间的距离,负相关于采样预测节点与第二标签节点的向量表示间的距离。
[0058]
之后,可以根据最终的预测损失,针对单层神经网络模型的参数矩阵(即e
t
)中的各个矩阵行计算对应的参数梯度,并根据该参数梯度,调整参数矩阵中的各个矩阵行。
[0059]
应理解,在基于在各次滑动过程中获得的多组第二节点对,调整参数矩阵中的各矩阵行之后,就可以得到上述初始参数矩阵。该初始参数矩阵中的各矩阵行分别为初始供应链网络图中各个节点的初始向量表示。也就是说,至此,就得到了初始供应链网络图中各个节点的初始向量表示。
[0060]
当然,在实际应用中,上述基于在各次滑动过程中获得的多组第二节点对,调整参数矩阵中的各矩阵行的步骤可以是重复多次执行的,也即重复多次对单层神经网络模型进行训练,由此可以获得质量较好且表现稳定的实体向量表示。
[0061]
在一个例子中,初始供应链网络图可以如图2a所示,以及初始供应链网络图在二维平面的投影可以如图2b所示。
[0062]
如前所述,供应链网络图通常是动态变化的,且在其发生动态变化时,需更新供应链网络图中的实体向量表示(也即节点的向量表示),以下对初始供应链网络图发生变化时,其中的实体向量表示的更新过程进行说明。
[0063]
图3示出根据一个实施例的一种更新供应链网络图中实体向量表示的方法流程图。该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。如图3所示,该方法可以包括如下步骤:
[0064]
步骤s302,获取在初始供应链网络图中新增节点及其连接边后的目标网络图。
[0065]
需要说明,这里的目标网络图相对于初始供应链网络图只是在结构上发生了变化,即新增了节点及其连接边,其中的实体向量表示还未被更新。
[0066]
在供应链业务场景下,可能会有新的企业实体被加入到初始供应链网络图中,比如,会在图g
t
中新增节点v
n+1
,且该新加入的企业实体将与初始供应链网络图中的多个企业实体建立关系,比如,节点v
n+1
将与图g
t
中的m个节点建立有向连接边,也即会在图g
t
中新增m条有向连接边,得到目标网络图g
t+1
。应理解,在图g
t+1
中,节点数变为n+1,相应的邻接矩阵
可以表示为a
t+1
。应理解,在该邻接矩阵中新增了对应于节点v
n+1
的行和列。
[0067]
针对上述新增的m条有向连接边,可以依次基于每条有向连接边,对图g
t+1
中的实体向量表示进行更新。
[0068]
步骤s304,基于目标网络图中的新增节点及其连接边,确定节点对。
[0069]
应理解,当在初始供应链网络图中新增m条连接边得到目标网络图时,这里可以确定出m个节点对。
[0070]
步骤s306,对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合。
[0071]
在一个实施例中,可以根据如下公式2确定任一邻居节点u受起点v影响的目标概率。
[0072]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式2)
[0073]
其中,为在图g
t+1
中邻居节点u受起点v影响的目标概率,为图g
t+1
中所有以邻居节点u为终点的有向连接边的起点的集合,w为该集合中的节点与邻居节点u之间的有向连接边的关系权重,为以邻居节点u为终点的各有向连接边的各关系权重的求和结果。
[0074]
类似地,可以计算得到各邻居节点受起点v影响的目标概率。
[0075]
之后,对于各邻居节点中任意的第一邻居节点,按照该第一邻居节点的第一目标概率,在伯努利分布中采样二元随机值r,若r为1,则将第一邻居节点作为起点v的一个影响节点。
[0076]
应理解,在针对各邻居节点进行如上的伯努利采样后,可以得到起点v的影响节点集合。类似地,可以得到每个节点对中的起点的影响节点集合。
[0077]
需要说明,基于起点v的影响节点集合中的各个节点和各个节点在图g
t+1
中原有的拓扑关系,可以唯一地确定出一个影响子图j。这个影响子图j既可以看作时受起点v影响的子图,也可以看作是受当前节点对中的两个节点之间的连接边影响的子图。
[0078]
步骤s308,获取对应于初始供应链网络图的初始神经网络模型的初始参数矩阵。
[0079]
应理解,该初始参数矩阵只包含初始供应链网络图(即图g
t
)中n个节点的初始向量表示,因此,需要针对新增节点v
n+1
,添加对应的初始向量表示。
[0080]
步骤s310,对影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于新增节点的矩阵行添加到初始参数矩阵中,得到初始的更新参数矩阵。
[0081]
这里的初始的更新参数矩阵可以表示为e
t+1
∈r
(n+1)
×k,即初始的更新参数矩阵e
t+1
相比于初始参数矩阵e
t
多了第n+1行。如果将初始的更新参数矩阵中的第n+1行表示为e
n+1
,那么。其中,为新增节点v
n+1
的影响节点集合中的节点数目,ei为影响节点集合中任一节点的初始向量表示。
[0082]
步骤s312,在基于影响节点集合确定的影响子图中通过随机游走,采集若干第一节点序列。
[0083]
对于上述的影响子图j,通过对其进行随机游走,可以得到矩阵,其中,w
t+1
∈rs×
l
,s为随机游走的次数,l为节点序列的长度,为第i次随机游走得到的节点序列,其中,i为正整数,且1≤i≤s。
[0084]
对于矩阵w
t+1
中的每个节点,可以根据其在矩阵w
t+1
中的出现次数,计算对应的采样概率,具体的计算方法可以参照公式1。
[0085]
步骤s314,根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列上滑动,并根据滑动过程中滑动窗口内的子序列,构建多组第一节点对,其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点。
[0086]
在一个实施例中,构建多组第一节点对包括:将滑动窗口内的子序列中位于中间位置的节点作为第一标签节点,将子序列中除中间位置的节点外的各剩余节点作为各第一特征节点,并基于各第一特征节点和第一标签节点,形成多组第一节点对。
[0087]
以滑动窗口的宽度为2
×
q+1为例来说,假设当前所获得的子序列为:[v1, v2,

,v
q+1
,

,v2×
q+1
],那么可以将节点v
q+1
作为第一标签节点,将节点v1,

,vq,v
q+2
,

,v2×
q+1
作为各第一特征节点,形成如下的2
×
q组第一节点对:(v1,v
q+1
),

,(vq,v
q+1
), (v
q+2
,v
q+1
) ,

, (v2×
q+1
,v
q+1
)。
[0088]
应理解,在实际应用中,针对上述各第一节点序列,可以执行多次滑动,从而基于每次滑动过程中滑动窗口内的子序列,均可以得到多组第一节点对。由于针对各次滑动过程中分别获得的多组第一节点对的使用方法相类似,因此,以下以在一次滑动过程中获得的多组第一节点对的使用过程为例进行说明。
[0089]
步骤s316,至少根据多组第一节点对,训练初始神经网络模型,以调整初始的更新参数矩阵中对应于影响子图中各个节点的各矩阵行,得到影响子图中各个节点的更新向量表示。
[0090]
应理解,这里的初始神经网络模型即为在对单层神经网络模型m
t
进行训练后得到的m
t+1

[0091]
具体地,上述训练过程可以包括:基于各第一节点序列中各个节点的采样概率,进行节点采样,得到若干第一采样节点。基于若干第一采样节点和第一标签节点,形成多组第一采样节点对。将多组第一节点对作为正样本,将多组第一采样节点对作为负样本,并基于正样本和负样本,训练初始神经网络模型。
[0092]
在一个实施例中,可以是从图g
t+1
中,针对位于矩阵w
t+1
中且位于滑动窗口之外的节点进行采样。比如,在前述例子中,可以是针对位于矩阵w
t+1
中的除节点v1, v2,

,v
q+1
,

,v2×
q+1
之外的节点进行采样,且其采样概率可以根据公式1确定。
[0093]
假设在图g
t+1
中进行h次节点采样后,得到的h个第一采样节点分别为:v
j1
,v
j2
,

, v
jh
,那么可以形成如下的多组第一采样节点对:(v
j1
,v
q+1
),(v
j2
,v
q+1
),

,(v
jh
,v
q+1
)。之后,可以将(v1,v
q+1
),

,(vq,v
q+1
), (v
q+2
,v
q+1
) ,

, (v2×
q+1
,v
q+1
)作为正样本,以及将(v
j1
,v
q+1
),(v
j2
,v
q+1
),

,(v
jh
,v
q+1
)作为负样本,训练m
t+1

[0094]
在一个更具体的实施例中,上述训练初始神经网络模型可以包括:将正样本中的各第一特征节点输入初始神经网络模型,得到对应的各第一预测节点,以及将负样本中的各第一采样节点输入初始神经网络模型,得到对应的各采样预测节点。以最小化各第一预
测节点与第一标签节点的向量表示间的距离,最大化各采样预测节点与第一标签节点的向量表示间的距离为目标,调整初始的更新参数矩阵中对应于影响子图中各个节点的各矩阵行。
[0095]
具体而言,可以是将各第一特征节点各自的节点标识的独热(one-hot)编码向量输入初始神经网络模型;同理,可以是将各第一采样节点各自的节点标识的独热编码向量输入初始神经网络模型。
[0096]
如前述例子,可以将节点标识1,

,q,q+2,

,2
×
q+1各自的独热编码向量输入m
t+1
,得到模型针对多个第一特征节点分别输出的多个第一预测节点:e1, e2,

,e
q+1
,

,e2×
q+1
,其中,ei为任一第一预测节点的向量表示,1≤i≤2
×
q+1。此外,还可以将节点标识j1,j2,

,jh各自的独热编码向量输入m
t+1
,得到模型针对多个第一采样节点分别输出的多个采样预测节点:e
j1
,e
j2
,

, e
jh
,其中,e
jk
为任一采样预测节点的向量表示,1≤k≤h。
[0097]
之后,可以根据如下的公式计算正采样损失:logsigmoid(ei,e
q+1
),其中,e
q+1
为第一标签节点v
q+1
在初始的更新参数矩阵中的初始向量表示。(ei,e
q+1
)表示任一第一预测节点的向量表示与第一标签节点的向量表示之间的距离。以及可以根据如下的公式计算负采样损失:-logsigmoid(e
jk
,e
q+1
),(e
jk
,e
q+1
)表示任一采样预测节点的向量表示与第一标签节点的向量表示之间的距离。
[0098]
在计算得到上述正采样损失和负采样损失后,可以对该两个损失求和,并将求和结果作为最终的预测损失。应理解,该最终的预测损失正相关于第一预测节点与第一标签节点的向量表示间的距离,负相关于采样预测节点与第一标签节点的向量表示间的距离。
[0099]
之后,可以根据最终的预测损失,针对初始神经网络模型的初始的更新参数矩阵(即e
t+1
)中,对应于影响子图中各个节点的矩阵行,计算对应的参数梯度,并根据该参数梯度,调整初始的更新参数矩阵中的对应于影响子图中各个节点的矩阵行。
[0100]
应理解,在基于在各次滑动过程中获得的多组第一节点对,调整初始的更新参数矩阵中对应于影响子图中各个节点的矩阵行之后,就可以得到影响子图中各个节点的更新向量表示。
[0101]
当然,在实际应用中,基于在各次滑动过程中获得的多组第一节点对,调整初始的更新参数矩阵的步骤可以是重复多次执行的,也即重复多次对初始神经网络模型进行训练,本说明书对此不作限定。
[0102]
至此,就完成了基于一条有向连接边对初始供应链网络图中的实体向量表示进行更新的过程。
[0103]
应理解,在针对初始供应链网络图新增m条有向连接边的情况下,通过重复执行上述步骤s304-步骤s316m次,就可以完成针对初始供应链网络图的实体向量表示的最终更新。
[0104]
当然,基于m条有向边的更新也可以同时进行,之后取各次更新结果的并集,本说明对此不作限定。
[0105]
可见,在本说明书实施例中,在供应链网络图发生动态变化时,只更新影响子图中各个节点的向量表示,由此,可以大大提升更新效率。
[0106]
应理解,以上是对在供应链网络图中新增节点及其连接边的情况下,对供应链网络图中的实体向量表示的更新过程的说明。在实际应用中,也可能会存在只新增连接边、删
除节点和删除连接边的情况。
[0107]
其中,在只新增连接边时,除了不用在初始参数矩阵中新增矩阵行,其它的方法步骤可以同上所述,也即先确定受该新增连接边影响的子图,再针对该子图中的节点进行采样,并根据采样结果,训练基于注意力机制的神经网络模型,进而确定子图中各个节点的更新向量表示。
[0108]
此外,关于删除节点,在删除节点后一般会删除其连接边。因此,可以在初始参数矩阵中删除对应的矩阵行,之后再确定受删除连接边影响的子图,进而基于该子图,确定子图中各个节点的更新向量表示。
[0109]
关于删除连接边,则不需要执行删除矩阵行的操作,而直接基于受删除连接边影响的子图,确定子图中各个节点的更新向量表示。
[0110]
图4a示出在图2a中新增节点及4条连接边后的目标网络图示意图,其中,新增节点通过实心圆圈表示,新增连接边加粗显示。图4b示出图4a中的目标网络图在二维平面的投影。
[0111]
综合以上,本说明书实施例提供的一种更新供应链网络图中实体向量表示的方法,根据最小化相似节点(即同一滑动窗口内的节点)在高维空间的向量表示间的距离,且最大化非相似节点在高维空间的向量表示间的距离这一优化策略,对初始供应链网络图进行向量化表示。当初始供应链网络图中有新节点加入时,通过层序遍历各阶邻居节点,并基于节点间的关系权重计算对应的影响概率,以查找受新节点加入所影响的节点集合。之后,在基于节点集合中的各影响节点所形成的子图中进行随机游走采样,并根据采样结果训练基于注意力机制的神经网络模型,得到各影响节点的更新向量表示。由此,缩小了采样和更新的范围,降低了计算成本和时间成本。
[0112]
与上述一种更新供应链网络图中实体向量表示的方法对应地,本说明书一个实施例还提供的一种更新供应链网络图中实体向量表示的装置,如图5所示,该装置可以包括:
[0113]
获取单元502,用于获取在初始供应链网络图中新增节点及其连接边后的目标网络图,其中包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,该有向连接边对应有关系权重。该多个企业实体包括,供应商、制造商、分销商以及销售商等,上述关系包括,供销关系、生产关系或者制造关系等。
[0114]
确定单元504,用于基于目标网络图中的新增节点及其连接边,确定节点对。
[0115]
计算单元506,用于对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合。
[0116]
获取单元502,还用于获取对应于初始供应链网络图的初始神经网络模型的初始参数矩阵,其中的各矩阵行分别为初始供应链网络图中各个节点的初始向量表示。
[0117]
计算单元506,还用于对影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于新增节点的矩阵行添加到初始参数矩阵中,得到初始的更新参数矩阵。
[0118]
采集单元508,用于在基于影响节点集合确定的影响子图中通过随机游走,采集若干第一节点序列。
[0119]
构建单元510,用于根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列
上滑动,并根据滑动过程中滑动窗口内的子序列,构建多组第一节点对。其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点。
[0120]
训练单元512,用于至少根据多组第一节点对,训练初始神经网络模型,以调整初始的更新参数矩阵中对应于影响子图中各个节点的各矩阵行,得到影响子图中各个节点的更新向量表示。
[0121]
在一个实施例中,采集单元508,还用于在初始供应链网络图中通过随机游走,采集若干第二节点序列;
[0122]
构建单元510,还用于根据预定义的步长,将第二宽度的滑动窗口在各第二节点序列上滑动,并根据滑动过程中滑动窗口内的子序列,构建多组第二节点对,其中各组第二节点对包括不同的第二特征节点和相同的第二标签节点;
[0123]
训练单元512,还用于至少根据多组第二节点对,训练用于表征初始供应链网络图的单层神经网络模型,得到初始参数矩阵。
[0124]
在一个实施例中,训练单元512具体用于:
[0125]
基于各第一节点序列中各个节点的采样概率,进行节点采样,得到若干第一采样节点;
[0126]
基于若干第一采样节点和第一标签节点,形成多组采样节点对;
[0127]
将多组第一节点对作为正样本,将多组采样节点对作为负样本,并基于正样本和负样本,训练初始神经网络模型。
[0128]
其中,各第一节点序列中各个节点的采样概率正相关于其在各第一节点序列中的出现次数。
[0129]
在一个实施例中,训练单元512还具体用于:
[0130]
将正样本中的各第一特征节点输入初始神经网络模型,得到对应的各第一预测节点,以及将负样本中的各第一采样节点输入所述初始神经网络模型,得到对应的各采样预测节点;
[0131]
以最小化各第一预测节点与第一标签节点的向量表示间的距离,最大化各采样预测节点与第一标签节点之间的向量表示间的距离为目标,调整初始神经网络模型的参数矩阵。
[0132]
在一个实施例中,训练单元512还具体用于:
[0133]
将各第一特征节点各自的节点标识的独热编码向量输入初始神经网络模型;
[0134]
将各第一采样节点各自的节点标识的独热编码向量输入初始神经网络模型。
[0135]
在一个实施例中,计算单元506具体用于:
[0136]
对于各邻居节点中任意的第一邻居节点,将以该第一邻居节点为终点的各有向连接边的各关系权重求和,并将求和结果的倒数确定为该第一邻居节点受起点v影响的目标概率。
[0137]
在一个实施例中,计算单元506还具体用于:
[0138]
对于各邻居节点中任意的第一邻居节点,按照该第一邻居节点的第一目标概率,在伯努利分布中进行采样,若采样结果为1,则将第一邻居节点作为起点v的一个影响节点。
[0139]
在一个实施例中,上述第一宽度为奇数;构建单元510具体用于:
[0140]
将滑动窗口内的子序列中位于中间位置的节点作为第一标签节点,将子序列中除
中间位置的节点外的各剩余节点作为各第一特征节点,并基于各第一特征节点和第一标签节点,形成多组第一节点对。
[0141]
本说明书上述实施例装置的各功能单元的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
[0142]
本说明书一个实施例提供的一种更新供应链网络图中实体向量表示的装置,在供应链网络图发生动态变化时,可以快速高效地更新供应链网络图中的实体向量表示。
[0143]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0144]
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0145]
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

技术特征:
1.一种更新供应链网络图中实体向量表示的方法,包括:获取在初始供应链网络图中新增节点及其连接边后的目标网络图,其中包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,所述有向连接边对应有关系权重;所述多个企业实体包括,供应商、制造商、分销商以及销售商;所述关系包括,供销关系、生产关系或者制造关系;基于所述目标网络图中的新增节点及其连接边,确定节点对;对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算所述各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合;获取对应于所述初始供应链网络图的初始神经网络模型的初始参数矩阵,其中的各矩阵行分别为所述初始供应链网络图中各个节点的初始向量表示;对所述影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于所述新增节点的矩阵行添加到所述初始参数矩阵中,得到初始的更新参数矩阵;在基于所述影响节点集合确定的影响子图中通过随机游走,采集若干第一节点序列;根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列上滑动,并根据滑动过程中所述滑动窗口内的子序列,构建多组第一节点对;其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点;至少根据所述多组第一节点对,训练所述初始神经网络模型,以调整所述更新参数矩阵中对应于所述影响子图中各个节点的各矩阵行,得到所述影响子图中各个节点的更新向量表示。2.根据权利要求1所述的方法,其中,所述初始参数矩阵通过以下步骤获得:在所述初始供应链网络图中通过随机游走,采集若干第二节点序列;根据预定义的步长,将第二宽度的滑动窗口在各第二节点序列上滑动,并根据滑动过程中所述滑动窗口内的子序列,构建多组第二节点对;其中各组第二节点对包括不同的第二特征节点和相同的第二标签节点;至少根据所述多组第二节点对,训练用于表征所述初始供应链网络图的单层神经网络模型,得到所述初始参数矩阵。3.根据权利要求1所述的方法,其中,所述训练所述初始神经网络模型,包括:基于所述各第一节点序列中各个节点的采样概率,进行节点采样,得到若干第一采样节点;基于所述若干第一采样节点和所述第一标签节点,形成多组采样节点对;将所述多组第一节点对作为正样本,将所述多组采样节点对作为负样本,并基于所述正样本和所述负样本,训练所述初始神经网络模型。4.根据权利要求3所述的方法,其中,所述基于所述正样本和所述负样本,训练所述初始神经网络模型,包括:将所述正样本中的各第一特征节点输入所述初始神经网络模型,得到对应的各第一预测节点,以及将所述负样本中的各第一采样节点输入所述初始神经网络模型,得到对应的各采样预测节点;以最小化所述各第一预测节点与所述第一标签节点的向量表示间的距离,最大化所述
各采样预测节点与所述第一标签节点的向量表示间的距离为目标,调整所述更新参数矩阵中对应于所述影响子图中各个节点的各矩阵行。5.根据权利要求4所述的方法,其中,所述将所述正样本中的各第一特征节点输入所述初始神经网络模型,包括:将所述各第一特征节点各自的节点标识的独热编码向量输入所述初始神经网络模型;将所述负样本中的各第一采样节点输入所述初始神经网络模型,包括:将所述各第一采样节点各自的节点标识的独热编码向量输入所述初始神经网络模型。6.根据权利要求3所述的方法,其中,所述各第一节点序列中各个节点的采样概率正相关于其在所述各第一节点序列中的出现次数。7.根据权利要求1所述的方法,其中,所述计算所述各邻居节点受起点v影响的目标概率,包括:对于所述各邻居节点中任意的第一邻居节点,将以该第一邻居节点为终点的各有向连接边的各关系权重求和,并将求和结果的倒数确定为该第一邻居节点受起点v影响的目标概率。8.根据权利要求1所述的方法,其中,所述按照该目标概率,确定起点v的影响节点集合,包括:对于所述各邻居节点中任意的第一邻居节点,按照该第一邻居节点的第一目标概率,在伯努利分布中进行采样,若采样结果为1,则将所述第一邻居节点作为起点v的一个影响节点。9.根据权利要求1所述的方法,其中,所述第一宽度为奇数;所述构建多组第一节点对,包括:将所述滑动窗口内的子序列中位于中间位置的节点作为第一标签节点,将所述子序列中除所述中间位置的节点外的各剩余节点作为各第一特征节点,并基于所述各第一特征节点和第一标签节点,形成所述多组第一节点对。10.一种更新供应链网络图中实体向量表示的装置,包括:获取单元,用于获取在初始供应链网络图中新增节点及其连接边后的目标网络图,其中包括对应于多个企业实体的多个节点,以及代表企业实体之间关系的有向连接边,所述有向连接边对应有关系权重;所述多个企业实体包括,供应商、制造商、分销商以及销售商;所述关系包括,供销关系、生产关系或者制造关系;确定单元,用于基于所述目标网络图中的新增节点及其连接边,确定节点对;计算单元,用于对于该节点对中的起点v,根据其预定阶数内的各邻居节点及其有向连接边的关系权重,计算所述各邻居节点受起点v影响的目标概率,并按照该目标概率,确定起点v的影响节点集合;所述获取单元,还用于获取对应于所述初始供应链网络图的初始神经网络模型的初始参数矩阵,其中的各矩阵行分别为所述初始供应链网络图中各个节点的初始向量表示;所述计算单元,还用于对所述影响节点集合中的各个节点的初始向量表示求平均,并将求平均结果作为对应于所述新增节点的矩阵行添加到所述初始参数矩阵中,得到初始的更新参数矩阵;采集单元,用于在基于所述影响节点集合确定的影响子图中通过随机游走,采集若干
第一节点序列;构建单元,用于根据预定义的步长,将第一宽度的滑动窗口在各第一节点序列上滑动,并根据滑动过程中所述滑动窗口内的子序列,构建多组第一节点对;其中各组第一节点对包括不同的第一特征节点和相同的第一标签节点;训练单元,用于至少根据所述多组第一节点对,训练所述初始神经网络模型,以调整所述更新参数矩阵中对应于所述影响子图中各个节点的各矩阵行,得到所述影响子图中各个节点的更新向量表示。

技术总结
本说明书实施例提供一种更新供应链网络图中实体向量表示的方法,根据最小化相似节点在高维空间的向量表示间的距离,且最大化非相似节点在高维空间的向量表示间的距离这一优化策略,对初始供应链网络图进行向量化表示。当初始供应链网络图中有新节点加入时,通过层序遍历各阶邻居节点,并基于节点间的关系权重计算对应的影响概率,以查找受新节点加入所影响的节点集合。之后,在基于节点集合中的各影响节点所形成的子图中进行随机游走采样,并根据采样结果训练基于注意力机制的神经网络模型,得到各影响节点的更新向量表示。由此,缩小了采样和更新的范围,降低了计算成本和时间成本。本。本。


技术研发人员:何州 刘勤献 朱海洋 黄彦成 林高雄 罗国建 何利力
受保护的技术使用者:杭州州力数据科技有限公司
技术研发日:2023.08.16
技术公布日:2023/9/13
版权声明

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

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

分享:

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

相关推荐