一种基于图神经网络的数据同步方法、装置及存储介质与流程
未命名
08-13
阅读:86
评论:0

1.本发明涉及人工智能及数据处理技术领域,具体涉及一种基于图神经网络的数据同步方法、装置及存储介质。
背景技术:
2.服务间数据同步,是软件开发中很常见的问题。在实现的过程中,数据提供方(服务端)、数据接收方(客户端)都面临很多问题。现有技术中一般采用一致性协议、定时等策略进行客户端与服务器之间的数据同步,从而数据同步方式难以定制化。
3.现有技术中,也有一些基于人工智能进行数据同步的技术方案,一般采用神经网络进行数据的同步,但该方法难以确定服务端要把数据传给哪个客户端、如何快捷的选择数据传输通道、以及在不同客户端的数据同步起点(时间点)不一致时服务端进行个性化的数据同步。
技术实现要素:
4.本发明针对上述现有技术中一个或多个技术缺陷,提出了如下技术方案。
5.一种基于图神经网络的数据同步方法,该方法包括:图构建步骤,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,所述图用于图神经网络;训练步骤,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步步骤,使用训练 后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的数据与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。
6.更进一步地,所述数据版本号snumi、数据版本号cnumj分别为数据最近更新的时间值sti、ctj。
7.更进一步地,在所述图中由服务器作为节点的特征值为:;在所述图中由客户端作为节点的特征值为:ccj=max(st1,s2,
…
,stn)-ctj;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数
目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,、为常数。
8.更进一步地,所述服务器节点之间定时的基于所述数据版本号snumi进行服务器之间的数据同步。
9.更进一步地,所述同步策略为每个客户端进行同步数据的时间、同步数据源自的服务器和同步数据时的传输通道。
10.更进一步地,基于训练样本中的数据版本号优化的损失函数为:;其中,将训练样本集随机划分为两个子训练样本集,第一训练样本子集具有l个训练样本,第二训练样本子集具有q个训练样本,且l不等于q,、分别表示第k、p个训练样本中的服务器的数据版本的时间值,、分别表示第k、p个训练样本中的客户端的数据版本的时间值,、表示第k、p个训练样本,、分别表示图神经网络每次训练的输出值,、分别表示与、对应的标签值。
11.本发明还提出了一种基于图神经网络的数据同步装置,该装置包括:图构建单元,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,所述图用于图神经网络;训练单元,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步单元,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。
12.更进一步地,所述数据版本号snumi、数据版本号cnumj分别为数据最近更新的时间值sti、ctj。
13.更进一步地,在所述图中由服务器作为节点的特征值为:csi=max(st1,s2,
…
,stn)-sti;在所述图中由客户端作为节点的特征值为:ccj=max(st1,s2,
…
,stn)-ctj;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,、为常数。
14.更进一步地,所述服务器节点之间定时的基于所述数据版本号snumi进行服务器之间的数据同步。
15.更进一步地,所述同步策略为每个客户端进行同步数据的时间、同步数据源自的服务器和同步数据时的传输通道。
16.更进一步地,基于训练样本中的数据版本号优化的损失函数为:;其中,将训练样本集随机划分为两个子训练样本集,第一训练样本子集具有l个训练样本,第二训练样本子集具有q个训练样本,且l不等于q,、分别表示第k、p个训练样本中的服务器的数据版本的时间值,、分别表示第k、p个训练样本中的客户端的数据版本的时间值,、表示第k、p个训练样本,、分别表示图神经网络每次训练的输出值,、分别表示与、对应的标签值。
17.本发明还提出了一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述之任一的方法。
18.本发明的技术效果在于:本发明的一种基于图神经网络的数据同步方法、装置及存储介质,该方法包括:图构建步骤s101,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,所述图用于图神经网络;训练步骤s102,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步步骤s103,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步。本发明中,为解决现有技术中的服务端要把数据传给哪个客户端、如何快捷的选择数据传输通道、以及不同客户端的数据同步起点(时间点)不一致,服务端如何保证推送的个性化,本发明基于图神经网络进行数据的同步,首先使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,然后进行图神经网络的训练,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步,从而可以快捷的确定客户端同步数据的来源以及传输通道,由于基于数据的版本进行相应的预测,提高了个性化的同步策略的制定,从而根据每个客户端的情况执行对应的同步策略,提高了数据同步的效率;本发明在构建图神经网络时,基于数据更新的特点,采用客户端、服务器与最近更新服务器的时间差值作为每个节点的特征值,而不是使用现有技术中的节点的计算资源处理后作为特征值,这是因为,目前计算能力下,各节点的计算能力都非常强,使用其作为特征值,生成的同步策略不准确,且图神经网络的运算较大,影响运算效率,边的权重基于传输通道经过的节点数目及传输通过的历史故障率确定,使得边的权重更为客观,本发明提出的节点的特征值、边的权重设置方法是为了提高同步策略生成的准确度,使得同步策略与每个节点的情况更加匹配,提高了数据同步的效率;本发明为了提高神经网络的训练效果,本发明将训练样本划分为两个子集进行同时训练,且损失函数基于作为数据版本号的时间值进行优化,该优化的目的是保证损失函数及时收敛,提高训练速度,且不降低训练后的图神经网络
预测精度。
附图说明
19.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显。
20.图1是根据本发明的实施例的一种基于图神经网络的数据同步方法的流程图。
21.图2是根据本发明的实施例的一种基于图神经网络的数据同步装置的结构图。
具体实施方式
22.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
23.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
24.图1示出了本发明的一种基于图神经网络的数据同步方法,该方法包括:图构建步骤s101,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,所述图用于图神经网络;训练步骤s102,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步步骤s103,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。
25.本发明中,为解决现有技术中的服务端要把数据传给哪个客户端、如何快捷的选择数据传输通道、以及不同客户端的数据同步起点(时间点)不一致,服务端如何保证推送的个性化,本发明基于图神经网络进行数据的同步,首先使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,然后进行图神经网络的训练,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步,从而可以快捷的确定客户端同步数据的来源以及传输通道,由于基于数据的版本进行相应的预测,提高了个性化的同步策略的制定,从而根据每个客户端的情况执行对应的同步策略,提高了数据同步的效率,这是本发明的重要发明构思。
26.在一个实施例中,本发明中的所述数据版本号snumi、数据版本号cnumj分别为数据最近更新的时间值sti、ctj。在所述图中由服务器作为节点的特征值为:csi=max(st1,s2,
…
,stn)-sti;在所述图中由客户端作为节点的特征值为:ccj=max(st1,s2,
…
,stn)-ctj;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为
1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,、为常数,其可以通过经验值设定,也可以基于历史值使用lstm网络进行估计。
27.本发明在构建图神经网络时,基于数据更新的特点,采用客户端、服务器与最近更新服务器的时间差值作为每个节点的特征值,而不是使用现有技术中的节点的计算资源处理后作为特征值,这是因为,目前计算能力下,各节点的计算能力都非常强,使用其作为特征值,生成的同步策略不准确,且图神经网络的运算较大,影响运算效率,边的权重基于传输通道经过的节点数目及传输通过的历史故障率确定,使得边的权重更为客观,本发明提出的节点的特征值、边的权重设置方法是为了提高同步策略生成的准确度,使得同步策略与每个节点的情况更加匹配,提高了数据同步的效率,这是本发明的重要发明构思。
28.在一个实施例中,所述服务器节点之间定时的基于所述数据版本号snumi进行服务器之间的数据同步,由于服务器之间需要及时进行数据备份,因此,服务器之间数据的同步采用定时同步方式,比如,1min、5min等等进行同步一次,保证服务器之间数据的差异不会太大。
29.在一个实施例中,所述同步策略为每个客户端进行同步数据的时间、同步数据源自的服务器和同步数据时的传输通道。即通过同步策略确定每个客户端什么时候开始进行数据同步、从哪个服务器进行同步、以及同步的数据传输链路,从而保证客户端同步策略的定制化,提高了数据同步的适应性,这是本发明的一个发明点。
30.在一个实施例中,基于训练样本中的数据版本号优化的损失函数为:;其中,将训练样本集随机划分为两个子训练样本集,第一训练样本子集具有l个训练样本,第二训练样本子集具有q个训练样本,且l不等于q,、分别表示第k、p个训练样本中的服务器的数据版本的时间值,、分别表示第k、p个训练样本中的客户端的数据版本的时间值,、表示第k、p个训练样本,、分别表示图神经网络每次训练的输出值,、分别表示与、对应的标签值。
31.为了提高神经网络的训练效果,本发明将训练样本划分为两个子集进行同时训练,且损失函数基于作为数据版本号的时间值进行优化,该优化的目的是保证损失函数及时收敛,提高训练速度,且不降低训练后的图神经网络预测精度,这是本技术的一个重要发明点。
32.图2示出了本发明的本发明的一种基于图神经网络的数据同步装置,该装置包括:图构建单元201,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,
每个客户端中的数据具有数据版本号cnumj,所述图用于图神经网络;训练单元202,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步单元203,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。
33.本发明中,为解决现有技术中的服务端要把数据传给哪个客户端、如何快捷的选择数据传输通道、以及不同客户端的数据同步起点(时间点)不一致,服务端如何保证推送的个性化,本发明基于图神经网络进行数据的同步,首先使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snumi,每个客户端中的数据具有数据版本号cnumj,然后进行图神经网络的训练,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步,从而可以快捷的确定客户端同步数据的来源以及传输通道,由于基于数据的版本进行相应的预测,提高了个性化的同步策略的制定,从而根据每个客户端的情况执行对应的同步策略,提高了数据同步的效率,这是本发明的重要发明构思。
34.在一个实施例中,本发明中的所述数据版本号snumi、数据版本号cnumj分别为数据最近更新的时间值sti、ctj。在所述图中由服务器作为节点的特征值为:csi=max(st1,s2,
…
,stn)-sti;在所述图中由客户端作为节点的特征值为:ccj=max(st1,s2,
…
,stn)-ctj;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,为常数,其可以通过经验值设定,也可以基于历史值使用lstm网络进行估计。
35.本发明在构建图神经网络时,基于数据更新的特点,采用客户端、服务器与最近更新服务器的时间差值作为每个节点的特征值,而不是使用现有技术中的节点的计算资源处理后作为特征值,这是因为,目前计算能力下,各节点的计算能力都非常强,使用其作为特征值,生成的同步策略不准确,且图神经网络的运算较大,影响运算效率,边的权重基于传输通道经过的节点数目及传输通过的历史故障率确定,使得边的权重更为客观,本发明提出的节点的特征值、边的权重设置方法是为了提高同步策略生成的准确度,使得同步策略与每个节点的情况更加匹配,提高了数据同步的效率,这是本发明的重要发明构思。
36.在一个实施例中,所述服务器节点之间定时的基于所述数据版本号snumi进行服务器之间的数据同步,由于服务器之间需要及时进行数据备份,因此,服务器之间数据的同步采用定时同步方式,比如,1min、5min等等进行同步一次,保证服务器之间数据的差异不会太大。
37.在一个实施例中,所述同步策略为每个客户端进行同步数据的时间、同步数据源自的服务器和同步数据时的传输通道。即通过同步策略确定每个客户端什么时候开始进行数据同步、从哪个服务器进行同步、以及同步的数据传输链路,从而保证客户端同步策略的定制化,提高了数据同步的适应性,这是本发明的一个发明点。
38.在一个实施例中,基于训练样本中的数据版本号优化的损失函数为:;其中,将训练样本集随机划分为两个子训练样本集,第一训练样本子集具有l个训练样本,第二训练样本子集具有q个训练样本,且l不等于q,、分别表示第k、p个训练样本中的服务器的数据版本的时间值,、分别表示第k、p个训练样本中的客户端的数据版本的时间值,、表示第k、p个训练样本,、分别表示图神经网络每次训练的输出值,、分别表示与、对应的标签值。
39.为了提高神经网络的训练效果,本发明将训练样本划分为两个子集进行同时训练,且损失函数基于作为数据版本号的时间值进行优化,该优化的目的是保证损失函数及时收敛,提高训练速度,且不降低训练后的图神经网络预测精度,这是本技术的一个重要发明点。
40.本发明的为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然, 在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
41.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质 中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的装置。
42.最后所应说明的是:以上实施例仅以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。
技术特征:
1.一种基于图神经网络的数据同步方法,其特征在于,该方法包括:图构建步骤,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snum
i
,每个客户端中的数据具有数据版本号cnum
j
,所述图用于图神经网络;训练步骤,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;同步步骤,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的数据与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。2.根据权利要求1所述的方法,其特征在于,所述数据版本号snum
i
、数据版本号cnum
j
分别为数据最近更新的时间值st
i
、ct
j
。3.根据权利要求2所述的方法,其特征在于,在所述图中由服务器作为节点的特征值为:cs
i
=max(st1,s2,
…
,st
n
)-st
i
;在所述图中由客户端作为节点的特征值为:cc
j
=max(st1,s2,
…
,st
n
)-ct
j
;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,、为常数。4.根据权利要求3所述的方法,其特征在于,所述服务器节点之间定时的基于所述数据版本号snum
i
进行服务器之间的数据同步。5.根据权利要求4所述的方法,其特征在于,所述同步策略为每个客户端进行同步数据的时间、同步数据源自的服务器和同步数据时的传输通道,基于训练样本中的数据版本号优化的损失函数为:;其中,表示第k个训练样本中的服务器的数据版本的时间值,表示第k个训练样本中的客户端的数据版本的时间值,l表示训练样本的总数量,表示第k个训练样本,表示图神经网络每次训练的输出值,表示与对应的标签值。6.一种基于图神经网络的数据同步装置,其特征在于,该装置包括:图构建单元,使用n个服务器和m个客户端作为图中的节点,使用所述n个服务器与m个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号snum
i
,每个客户端中的数据具有数据版本号cnum
j
,所述图用于图神经网络;训练单元,基于训练样本中的数据版本号优化损失函数,使用优化的损失函数对所述图神经网络进行训练得到训练后的图神经网络;
同步单元,使用训练后的图神经网络确定m个客户端中的每个客户端的同步策略,基于所述同步策略将客户端中的所述与服务器中的数据进行同步;其中,n≥2、m≥2,n≥i≥1,m≥j≥1;m、n、i、j均为自然数。7.根据权利要求6所述的装置,其特征在于,所述数据版本号snum
i
、数据版本号cnum
j
分别为数据最近更新的时间值st
i
、ct
j
。8.根据权利要求7所述的装置,其特征在于,在所述图中由服务器作为节点的特征值为:cs
i
=max(st1,s2,
…
,st
n
)-st
i
;在所述图中由客户端作为节点的特征值为:cc
j
=max(st1,s2,
…
,st
n
)-ct
j
;在所述图中,节点之间的边的权重设置为:所述服务器节点之间边的权重设置为1,所述客户端节点之间边的权重设置为0,所述服务器节点与所述客户端节点之间边的权重设置为:;其中,表示服务器节点i与所述客户端节点j之间传输通道经过其他节点的数目,表示服务器节点i与所述客户端节点j之间传输通道的历史故障率,、为常数。9.根据权利要求8所述的装置,其特征在于,所述服务器节点之间定时的基于所述数据版本号snum
i
进行服务器之间的数据同步。10.一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述权利要求1-5之任一的方法。
技术总结
本发明提出了一种基于图神经网络的数据同步方法、装置及存储介质,该方法包括:使用N个服务器和M个客户端作为图中的节点,使用所述N个服务器与M个客户端之间的传输通道作为图的边,每个服务器中的数据具有数据版本号Snum
技术研发人员:洪跃宗
受保护的技术使用者:厦门泛卓信息科技有限公司
技术研发日:2023.07.03
技术公布日:2023/8/9
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/