掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及无线通信领域,具体涉及一种适用于区块链工作量证明的协作式分流与储存方法。

背景技术

随着区块链技术的快速发展,区块链技术建立分布式信任的能力已被广泛应用于各个领域。然而,由于传统移动设备的计算资源和存储资源有限,无法支撑区块链在挖矿过程中工作量证明计算任务所需的庞大算力和存储空间。因此,利用边缘计算技术实现移动设备计算资源和存储资源合理的分配减小系统整体开销,增加系统整体收益是很有必要的。

发明内容

为了解决上述问题,本发明提供了一种适用于区块链工作量证明的协作式分流与储存方法,采用深度学习算法,决定每位用户的工作量证明是在本地用户终端计算还是分流到边缘服务器计算以及边缘服务器是否储存相应的哈希表,实现高效智能计算分流与储存优化。

本发明的技术方案如下所示:

一种适用于区块链工作量证明的协作式分流与储存方法,包括以下步骤:

S1:获取用于训练神经网络的数据集,所述数据集包括区块链系统中用户工作量证明需求的不同组合,以i,(i∈{1,2,…,I})代表不同组合;

S2:以步骤S1中获取的数据集为标签,训练通用神经网络模型和局部神经网络模型,使用训练的神经网络模型遍历训练的数据集,更新网络参数;

S3:在步骤S2中的已训练完成神经网络模型基础上,进行进一步的训练优化,获得新神经网络模型;

步骤S1中所述的获取数据集的具体步骤为:

S1.1:预先设置I个计算任务组合,并对每个组合i(i∈I),采集F组信道增益;

S1.2:对每组信道增益,生成N个用户对应的4

S1.3:给定某个组合i和某一组信道增益f,针对分流与存储优化决策,求解优化问题PI,得到该决策对应的最大的代币收益值;

S1.4:给定某个组合i和某一组信道增益f,基于步骤S1.3中优化问题PI计算所得代币收益值,遍历4

S1.5:给定某个组合i,对所有F组信道增益,重复步骤S1.4,保存组合i下的F组的数据(h

S1.6对于所有I个组合,重复步骤S1.5,生成每个组合的F组的数据(h

所述步骤S1.3中所述的最大的代币收益值的计算公式为:

优选的,步骤S1.4中所述信道增益(h

优选的,所述最大的代币收益值的计算过程中的约束条件为:

优选的,步骤S2中所述的神经网络模型的训练方法为:

S2.1:建立结构相同的通用神经网络模型和局部神经网络模型,初始的网络参数分别设置为θ

S2.2:从训练数据集Data

S2.3:从通用神经网络模型复制网络模型的网络参数到局部神经网络模型,即θ

S2.4:以均方误差为损失函数,计算计算任务组合j下的误差值L

S2.5:从计算任务组合j中再重新选取K条数据,计算局部神经网络在网络参数

S2.6:累加所有的损失值

S2.7:利用数据集batch完成更新后,判断Data

优选的,步骤S2.4中所述的更新后的局部神经网络参数的计算公式为:

优选的,步骤S2.6中所述的更新后的通用神经网络模型的网络参数计算公式为:

优选的,步骤S3中所述的优化训练生成新的神经网络模芯的具体步骤为:

S3.1:建立一个与通用神经网络模型的架构相同的新神经网络模型,记其网络参数为θ

S3.2:将训练好的通用神经网络模型的网络参数复制到步骤S3.1中新的神经网络模型,即令θ

S3.3:在新神经网络模型的计算任务组合下采集G组信道增益;

S3.4:从S3.3中获的训练数据中随机选取K条数据,将信道增益输入新神经网络模型,以对应的最优决策为标签,进行梯度下降,微调网络参数;

S3.5:将微调后的神经网络模型预测出来的分流与储存决策与遍历法获得的最优决策进行对比;若误差值在1%以内,则执行步骤S3.6;否则返回步骤S3.4,重新抽取K条数据,进一步微调网络参数;

S3.6:针对新计算任务组合的优化过程结束,获得新神经网络模型。

优选的,其特征在于,所述参数θ

本发明还提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述适用于区块链工作量证明的协作式分流与储存方法的步骤。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述适用于区块链工作量证明的协作式分流与储存方法的步骤。

本发明的有益效果为:

1、针对区块链系统,将工作量证明从用户终端分流到边缘服务器链路,降低延迟和能量损耗,提高服务质量和系统收益。

2、用户终端和边缘服务器链路的分流与储存优化方法,能满足用户终端更多的需求,也能将不同计算量要求的工作量证明任务分配得更加合理,做到响应更快,效率更高。

3、对于变化的无线网络信道增益,利用训练好的模型快速预测分流与储存决策,实现任务的在线分流。

4、适用于用户终端工作量证明计算任务变化的情况,使分流与储存模型更具鲁棒性,避免每次为特定组合训练深度模型,提高了工作效率。

附图说明

图1为无线区块链网络中用户终端和边缘服务器的分流的场景示意图。

具体实施方式

下面将结合说明书附图对本发明的实施例进行详细说明。

本发明提供了一种适用于区块链工作量证明的协作式分流与储存算法,实行该方法能在时变的无线信道增益下,获得最优分流与储存决策。且当区块链系统中用户的工作量证明计算任务组合发生变化时,能以极少的训练步数和训练数据作到快速适应。本发明与移动边缘计算技术相结合可以应用于区块链系统,如图1所示。为了获得该情况下的区块链系统的最大代币收益,具体执行以下步骤:

1、在区块链与移动边缘计算结合的智能系统中,采用深度学习算法,决定每位用户的工作量证明是在本地用户终端计算还是分流到边缘服务器计算以及边缘服务器是否储存相应的哈希表,实现高效智能计算分流与储存优化。首先,获取用于训练神经网络的数据集,包含区块链系统中用户工作量证明需求的不同组合,以i(i∈{1,2,…,I})代表不同组合。本发明针对含N个用户和M个边缘服务器的区块链系统,且在边缘服务器之间存在协作和用户工作量证明需求组合可变的情况下,研究快速适应新需求组合的深度学习算法,实现计算任务的高效智能计算分流及边缘服务器储存优化。获取训练数据的具体步骤如下:

步骤1.1:预先设置I种不同的工作量证明需求组合,每种组合包含N个区块链移动终端用户以及用户对应的工作量证明需求。

步骤1.2:对于每种i(i∈I)计算任务的组合,采集F组信道增益。

步骤1.3:对于每组不同的信道增益,生成N个用户对应的共4

步骤1.4:给定某个组合i和某一组信道增益f,对于一个分流与存储优化决策,求解优化问题(P1),得到该决策对应的最大化代币收益值。其中,优化问题(P1)如下:

P1:

约束条件:

变量:δ={δ(n

其中:E

E

下面将问题中的各个参数做一个说明,如下:

δ(n

s(n

N

L:AP

ρ(m,l):AP

E

E

Z:决策成本;

γ

C:边缘服务器链路的总存储能力;

B:用户终端与边缘服务器链路之间的信道带宽;

P

α:路径损耗系数;

σ

κ

f

T

T

T

D

X

步骤1.5:给定某个组合i和某一组信道增益f,基于步骤1.4中优化问题(P1)计算所得代币收益值,遍历所有4

步骤1.6:给定某个组合i,对所有F组信道增益,重复步骤1.5,保存组合i下的F组数据(h

步骤1.7:对于所有I个组合,重复步骤1.6,生成每个组合的F组数据(h

2、以步骤1中采集的最优决策d为标签,以信道增益h为输入,训练一个神经网络模型。在训练阶段,让神经网络模型遍历不同计算任务组合下的训练数据以更新网络模型的参数。具体的训练步骤如下:

步骤2.1:建立一个通用神经网络模型和局部神经网络网络模型,两个模型结构相同并且初始化其参数分别为θ

步骤2.2:从训练数据集Data

步骤2.3:从通用神经网络模型复制网络模型的参数到局部神经网络模型,即θ

步骤2.4:以均方误差为损失函数,计算计算任务组合j下的误差值L

式中,各参数定义如下:

θ

lr

步骤2.5:从计算任务组合j中再重新选取K条数据。计算局部神经网络在参数

步骤2.6:将所有的损失值

式中,各参数定义如下:

θ

lr

步骤2.7:利用数据集batch完成更新后,判断Data

3、针对一个新的区块链工作量证明计算任务组合,在训练好的神经网络模型基础上,进一步训练优化,可以快速适应新的计算任务组合,实现用户终端智能计算分流和边缘服务器链路智能储存决策。具体的执行过程如下:

步骤3.1:新建立一个神经网络模型,与通用神经网络模型的架构相同,记其参数为θ

步骤3.2:复制步骤(2)中训练好的通用神经网络参数给新模型,即θ

步骤3.3:在该新计算任务组合下,根据步骤(1)采集G组数据构成微调通用神经网络模型训练集。

步骤3.4:从步骤3.3中获的训练数据中随机选取K条数据。将信道增益输入新建立的神经网络模型,以对应的最优决策为标签,进行梯度下降,微调网络参数。参数调整公式如下:

式中,各参数定义如下:

θ

lr

K:用于梯度下降的数据的数量;

L(θ

步骤3.6:将微调后的神经网络模型预测出来的分流与储存决策与遍历法获得的最优决策进行对比。若误差值在1%以内,则执行步骤3.7;否则返回步骤3.5,重新抽取K条数据,进一步微调神经网络参数。

步骤3.7:针对新计算任务组合的优化过程结束,获得新神经网络模型。在该组合下,当信道条件变化时,该模型能实时预测出多用户区块链系统的最佳分流策略,实现智能计算分流与储存决策。

本发明还提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述适用于区块链工作量证明的协作式分流与储存方法的步骤。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述适用于区块链工作量证明的协作式分流与储存方法的步骤。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 一种适用于区块链工作量证明的协作式分流与储存方法
  • 一种适用于区块链工作量证明的协作式智能计算分流方法
技术分类

06120112278619