车联网中支持可信机器学习的双层区块链架构的建立方法
未命名
09-15
阅读:150
评论:0
1.本发明涉及车联网技术领域,特别是一种车联网中支持可信机器学习的双层区块链架构的建立方法。
背景技术:
2.车联网技术将车辆、路边单元、基础设施等交通实体进行连接,提升了交通的效率与安全性。在车联网系统中,交通实体收集并共享如车速、方位、路况等交通数据,从而实现安全、智能的驾驶。同时,通过引入机器学习技术,可以有效地利用车联网中海量的数据。车联网系统针对不同的场景与需求,利用交通数据训练特定的机器学习模型,实现路况预测、路线规划、车辆调度等功能,从而使车联网更加智能、便利。
3.然而,机器学习作为数据驱动的方法,训练过程中易受恶意数据影响,导致学习模型不准确,影响实际效果。同时,车联网中的车辆数据共享具有一定的自主性,一旦上传了错误、恶意的数据用于模型训练,将会对结果造成巨大的影响,严重地影响交通的安全性。尽管区块链技术因其防篡改、分布式存储等特性可以保障车联网中数据的安全性与可信性,但是同样存在效率低下、与机器学习欠耦合等问题。因此,研究车联网中支持可信机器学习的高效双层区块链架构对于车联网的智能化具有重要意义。
技术实现要素:
4.为解决上述问题,本发明要提出一种车联网中支持可信机器学习的双层区块链架构的建立方法,有效提升数据的安全性以及机器学习模型输出的可信性。
5.为了实现上述目的,本发明的技术方案如下:车联网中支持可信机器学习的双层区块链架构的建立方法,包括以下步骤:
6.a、动态分片内共识:
7.a1、所述分片依据交通区域的地理位置进行划分,每一个分片包括若干个路侧单元rsu与其覆盖范围内的车辆。共识方案以纪元为单位来运行,纪元为固定的片内交易共识轮次或者固定长度的时间。
8.a2、在每个纪元之初,确认分片内活跃节点图gi=(vi,ei)满足以下公式:
[0009][0010]
s.t.|vi|=max{|v1|,
…
,|vn|},
[0011][0012][0013]
其中,g=(v,e)={g1,
…
,gi,
…
,gn}为分片内节点图,gi为g的子图,v为分片内所有节点的集合,e∈[0,1]n×n为节点间边的集合,vi是v的一个子集,ei是e的一个子集。如果节点vi和vj之间有通信,e
ij
=1,e
ij
∈e,否则为0,|vi|表示集合中节点的数量,vj→
vk表示节点vj到vk的路径,n表示角标中的最大值,j∈[1,n],k∈[1,n],m∈[1,n]分别表示三个处于
区间[1,n]的整数。vi为活跃节点集合。
[0014]
a3、计算活跃节点集合vi中节点的信誉权重ω,如公式(2)所示:
[0015][0016]
其中,ω(n)为节点vn∈vi的信誉权重,d(i)为计数器,统计节点vn在区块i中的诚实行为,k=|vi|表示集合vi中元素的个数。l为主节点因子,如果节点vn在区块i中担任主节点则l=1,否则l=0。p∈{-1,1}为惩罚因子,若节点vn在区块i中展现拜占庭行为则p=-1,否则p=1。
[0017]
a4、在活跃节点集vi中选出部分节点组成共识组c={c1,c2,
…
,cj},使其满足公式(3):
[0018][0019]
其中,ω(i)为节点ci的信誉权重,|c|表示集合c中元素的个数,p(x|y)为条件概率,表示在条件y下、事件x发生的概率。
[0020]
a5、将共识组c中各节点的权重进行归一化,按权重占比划分(0,1]区间,得到节点ci的权重区间计算如公式(4)所示:
[0021][0022]
其中,αi为区间αi的下界,为区间αi的上界。
[0023]
a6、确定主节点l,使满足公式(5):
[0024][0025]
其中,vrf(
·
)为可验证随机函数,x为种子。
[0026]
a7、主节点l在共识组c内发起实用拜占庭容错即pbft共识并验证交易,如公式(6)所示:
[0027][0028]
其中,hd=sha(《m》)表示交易数据的哈希值,《m》为交易中包含的详细数据,sha(
·
)为安全哈希函数,ti代表时间戳,表示车辆ni的签名。
[0029]
b、建立双层区块链架构
[0030]
b1、车辆利用收集的数据进行本地训练,其中损失函数为l(f
x
),因此车辆ni的本地模型如公式(7)所示:
[0031][0032]
其中,l(f
x
)=f(《m》,ε)是具有参数ε的模型对数据集《m》中的实例产生的损失函数。
[0033]
b2、车辆ni将训练结果以交易的形式发送给附近的路侧单元。交易格式如公式(8)所示:
[0034][0035]
其中,hv为交易哈希,表示交易数据的哈希值,二元组为车辆交易中的详细数据,表示本地模型参数,表示本地训练损失,ti为当前交易发布的时间戳看,表示车辆ni的签名。
[0036]
b3、路侧单元收到交易tv后,将交易发送给动态分片内共识算法选出的主节点l,并采用实用拜占庭容错共识算法对tv进行验证并打包成区块si存储在分片链中,如公式(9)所示:
[0037][0038]
其中r∈{0,1}为共识结果,如果交易tv通过了验证则r=1,否则r=0,三元组《h
i-1
,hm,ti》为区块si的区块头,h
i-1
代表上一个区块的哈希值,hm代表区块体merkle根的哈希值,ti代表时间戳,多元组表示区块体,其中记录着区块si打包的所有交易。
[0039]
b4、路侧单元利用收集到的模型参数与自身收集的数据进行二次训练获得模型参数而后将参数以交易tr的形式发送给基站,如公式(10)所示:
[0040][0041]
其中,为二次训练的损失函数。hr为交易哈希,表示交易数据的哈希值,二元组为rsu交易的详细数据,表示二次训练的模型参数,表示二次训练损失。
[0042]
b5、当基站接收到tr后,发起委托权益证明即dpos共识对进行验证并广播共识结果,如公式(11)所示:
[0043]
(0,1)
←
dpos(tr),
ꢀꢀꢀꢀꢀꢀꢀ
(11)
[0044]
b6、基站将共识成功的打包成区块bi,并记录在全局链上。区块bi如公式(12)所示:
[0045][0046]
其中,三元组《h
i-1
,hm,ti》为区块bi的区块头,多元组表示区块体,其中记录着区块bi中打包的所有交易。
[0047]
与现有技术相比,本发明具有以下有益效果:
[0048]
1、本发明提出动态分片内共识机制,采用步骤a在各个分片中选举稳定性与可靠
性较高的节点组成共识组,并依据节点的可靠性权重选取不可预测的主节点,并发起共识。经过验证的数据会打包成区块存储在各个分片中,从而实现数据的可信与不可篡改性。本发明在状态分片的基础上,采用实用拜占庭容错算法,通过选择可靠性更高的节点组成共识组,有效地提高共识的成功率,弱化拜占庭节点的影响,从而保障链上数据的准确性与可信性。在8个分片的情况下,本发明的吞吐量相较于pbft提升167%,共识失败概率在分片内拜占庭节点比例为30%时小于2
‰
。
[0049]
2、本发明将双层区块链架构与机器学习进行耦合,构建支持可信机器学习的区块链系统。分片中的车辆利用采集到的数据进行本地训练,并将训练参数发送到路侧单元,由路侧单元生成区块存储在分片链上。同时,路侧单元将接收到的参数以及自身收集的数据进行二次训练,并将训练结果以交易的形式发送给基站。基站将最终训练结果存储在全局链上。通过二阶段训练以及共识,本发明保障了机器学习结果的可信性。在训练集和测试集分别为80%和20%的情况下,以预测15分钟内的路况为例,接入本发明机器学习模型如图卷积神经网络、门控循环单元、时间图卷积神经网络输出的准确率分别为0.867、0.911、0.913。
附图说明
[0050]
本发明共有附图4张,其中:
[0051]
图1是本发明的流程图。
[0052]
图2是本发明内容的整体架构图。
[0053]
图3是吞吐量对比图。
[0054]
图4是共识失效概率对比图。
具体实施方式
[0055]
下面结合附图对本发明进行进一步描述。按照图1所示流程对交通数据进行收集和训练。首先按照车辆与路侧单元的地理位置划分分片,如图2所示,车辆收集数据并对数据进行本地训练,而后将训练结果以交易的形式发送给附近的路侧单元。各分片的路侧单元按照本发明的步骤a,构建共识组,并选出主节点。然后由主节点发起共识对收集到的交易进行验证,而后将共识结果广播同步至其他节点,并将该区块添加到分片链中。随后,按照本发明的步骤b,路侧单元利用收集到的模型参数以及自身收集的数据对模型进行二次训练,而后将训练结果发送至基站,由基站发起委托权益证明机制对收集到的模型参数进行验证,并广播共识结果。最后将共识成功的交易打包成区块存储在全局链上。
[0056]
图3是采用本发明与实用拜占庭容错算法(pbft)的车联网系统的吞吐量对比图。为验证本发明在吞吐量上的优势,分别将本发明中分片的个数设置为4个、6个、8个,并将每秒交易生成量设置为500交易/秒至1000交易/秒递增。从图4可以看出,随着每秒交易生成量的提升,采用pbft共识算法的车联网系统(图中标记为pbft)的吞吐量始终处于较低的水平,而本发明的吞吐量会随着每秒交易生成量的增加而增加,且最终在8个分片的情况下(图中标记为8分片),本发明的吞吐量相较于使用pbft共识的车联网系统提升了1.69倍。
[0057]
图4是采用本发明与其他分片方式的车联网系统的共识失效概率对比图。为验证本发明在面对拜占庭节点时在可信性上的优势,在模拟验证中将拜占庭节点比例设置为
10%到30%递增,分片内的节点设置为60个与90个两种情况。在采用随机分片的车联网中(图中标记为随机分配),分片失效概率随着拜占庭节点的比例增加而增加。当拜占庭节点比例为30%时,随机分片的共识失效概率高达0.23。而本发明在面对高拜占庭节点比例的情况下,仍能维持低于2
‰
的共识失败概率,并且共识失败的概率随着分片内节点的增加而降低。
[0058]
本发明不局限于本实施例,任何在本发明披露的技术范围内的等同构思或者改变,均列为本发明的保护范围。
技术特征:
1.车联网中支持可信机器学习的双层区块链架构的建立方法,其特征在于:包括以下步骤:a、动态分片内共识:a1、所述分片依据交通区域的地理位置进行划分,每一个分片包括若干个路侧单元rsu与其覆盖范围内的车辆;共识方案以纪元为单位来运行,纪元为固定的片内交易共识轮次或者固定长度的时间;a2、在每个纪元之初,确认分片内活跃节点图g
i
=(v
i
,e
i
)满足以下公式:s.t.|v
i
|=max{|v1|,
…
,|v
n
|},|},其中,g=(v,e)={g1,
…
,g
i
,
…
,g
n
}为分片内节点图,g
i
为g的子图,v为分片内所有节点的集合,e∈[0,1]
n
×
n
为节点间边的集合,v
i
是v的一个子集,e
i
是e的一个子集;如果节点v
i
和v
j
之间有通信,e
ij
=1,e
ij
∈e,否则为0,|v
i
|表示集合中节点的数量,v
j
→
v
k
表示节点v
j
到v
k
的路径,n表示角标中的最大值,j∈[1,n],k∈[1,n],m∈[1,n]分别表示三个处于区间[1,n]的整数;v
i
为活跃节点集合;a3、计算活跃节点集合v
i
中节点的信誉权重ω,如公式(2)所示:其中,ω(n)为节点v
n
∈v
i
的信誉权重,d(i)为计数器,统计节点v
n
在区块i中的诚实行为,k=|v
i
|表示集合v
i
中元素的个数;l为主节点因子,如果节点v
n
在区块i中担任主节点则l=1,否则l=0;p∈{-1,1}为惩罚因子,若节点v
n
在区块i中展现拜占庭行为则p=-1,否则p=1;a4、在活跃节点集v
i
中选出部分节点组成共识组c={c1,c2,
…
,c
j
},使其满足公式(3):其中,ω(i)为节点c
i
的信誉权重,|c|表示集合c中元素的个数,p(x|y)为条件概率,表示在条件y下、事件x发生的概率;a5、将共识组c中各节点的权重进行归一化,按权重占比划分(0,1]区间,得到节点c
i
的权重区间计算如公式(4)所示:其中,α
i
为区间α
i
的下界,为区间α
i
的上界;a6、确定主节点l,使满足公式(5):
其中,vrf(
·
)为可验证随机函数,x为种子;a7、主节点l在共识组c内发起实用拜占庭容错即pbft共识并验证交易,如公式(6)所示:其中,h
d
=sha(<m>)表示交易数据的哈希值,<m>为交易中包含的详细数据,sha(
·
)为安全哈希函数,t
i
代表时间戳,表示车辆n
i
的签名;b、建立双层区块链架构b1、车辆利用收集的数据进行本地训练,其中损失函数为l(f
x
),因此车辆n
i
的本地模型如公式(7)所示:其中,l(f
x
)=f(<m>,ε)是具有参数ε的模型对数据集<m>中的实例产生的损失函数;b2、车辆n
i
将训练结果以交易的形式发送给附近的路侧单元;交易格式如公式(8)所示:其中,hv为交易哈希,表示交易数据的哈希值,二元组为车辆交易中的详细数据,表示本地模型参数,表示本地训练损失,t
i
为当前交易发布的时间戳看,表示车辆n
i
的签名;b3、路侧单元收到交易tv后,将交易发送给动态分片内共识算法选出的主节点l,并采用实用拜占庭容错共识算法对tv进行验证并打包成区块s
i
存储在分片链中,如公式(9)所示:其中r∈{0,1}为共识结果,如果交易tv通过了验证则r=1,否则r=0,三元组<h
i-1
,h
m
,t
i
>为区块s
i
的区块头,h
i-1
代表上一个区块的哈希值,h
m
代表区块体merkle根的哈希值,t
i
代表时间戳,多元组表示区块体,其中记录着区块s
i
打包的所有交易;b4、路侧单元利用收集到的模型参数与自身收集的数据进行二次训练获得模型参数而后将参数以交易t
r
的形式发送给基站,如公式(10)所示:其中,为二次训练的损失函数;h
r
为交易哈希,表示交易数据的哈希值,二元组为rsu交易的详细数据,表示二次训练的模型参数,表示二次训练损失;b5、当基站接收到t
r
后,发起委托权益证明即dpos共识对进行验证并广播共识结果,如公式(11)所示:(0,1)
←
dpos(t
r
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11)b6、基站将共识成功的打包成区块b
i
,并记录在全局链上;区块b
i
如公式(12)所示:
其中,三元组<h
i-1
,h
m
,t
i
>为区块b
i
的区块头,多元组表示区块体,其中记录着区块b
i
中打包的所有交易。
技术总结
本发明公开了一种车联网中支持可信机器学习的双层区块链架构的建立方法,包括以下步骤:动态分片内共识和建立双层区块链架构。本发明在各个分片中选举稳定性与可靠性较高的节点组成共识组,并依据节点的可靠性权重选取不可预测的主节点,并发起共识。经过验证的数据会打包成区块存储在各个分片中,从而实现数据的可信与不可篡改性。本发明在状态分片的基础上,采用实用拜占庭容错算法,通过选择可靠性更高的节点组成共识组,有效地提高共识的成功率,弱化拜占庭节点的影响,从而保障链上数据的准确性与可信性。本发明将双层区块链架构与机器学习进行耦合,构建支持可信机器学习的区块链系统,保障了机器学习结果的可信性。保障了机器学习结果的可信性。保障了机器学习结果的可信性。
技术研发人员:刘洪波 马平川 刘晗月 李文祺 王野 林正奎
受保护的技术使用者:大连海事大学
技术研发日:2023.06.15
技术公布日:2023/9/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
