本技术涉及智能交通,特别涉及一种面向集群车辆合作学习的训练方法。
背景技术:
1、随着vfl(车辆网联邦学习)技术的出现,可以在有效降低通信延迟的同时,保护车辆客户端的隐私。然而,vfl在带来诸多好处的同时,也面临着许多挑战。对于cvfl(面向集群车辆合作学习),由于cvfl服务器不知道车辆客户端的本地数据信息,很难根据数据分布准确地将车辆客户端聚类。如果没有适当的激励,车辆客户主动参与学习过程是不现实的,因为车辆客户在培训过程中消耗了大量的私人资源。因此,cvfl服务器有必要设计激励机制,激励车载客户参与培训过程,鼓励诚实行为,以提高培训效率。
2、近年来,为了解决cvfl中的聚类问题,研究人员进行了许多工作。然而,这些工作在聚类过程中没有考虑到车辆客户端的移动性,在动态车联网场景下,车辆客户端的连接可能会频繁中断。
3、同时,现有技术已经对fl(联邦学习)激励机制的设计进行了一系列的研究。然而,并没有考虑到在cvfl的场景下,如何进行双层的激励机制设计,即cvfl服务器如何对各个簇头进行激励,以及簇头如何对簇内客户端进行激励。此外,上述工作还未考虑到,当簇头不只承担通信与聚合的工作,同样进行模型训练任务时,激励机制的设计方案。因此,现有cvfl中,聚类方法和激励机制有一定的局限性。
技术实现思路
1、本发明所要解决的问题是:提供一种面向集群车辆合作学习的训练方法,用于对车辆客户端进行精准聚类,同时激励多个簇并行训练多个联邦学习任务。
2、本发明采用如下技术方案:一种面向集群车辆合作学习的训练方法,应用于智能交通系统,包括以下步骤:
3、步骤1、服务器将fl联邦学习全局模型广播给其覆盖范围的每个车辆客户端,接收每个车辆客户端上传的本地模型,使用迭代k-means算法对车辆客户端本地模型进行分组聚合,得到簇内全局模型;
4、步骤2、车辆客户端对本地模型进行精准聚类,包括:簇头选择、簇头匹配模型、车辆客户端匹配簇头;
5、步骤3、使用双层激励机制,在上层,服务器采用主从博弈机制对各个簇头进行激励,在下层,簇头则采用多维合同理论机制对簇内车辆客户端进行激励,得到簇头与车辆客户端的最优合同;
6、步骤4、簇头将最优合同和簇内全局模型信息下发至各个车辆客户端,每个车辆客户端在本地展开训练,车辆客户端将训练好的本地模型上传给簇头,簇头收到车辆客户端上传的本地模型后,进行模型聚合,并将聚合好的簇内全局模型上传至服务器;
7、步骤5、服务器接收到训练好的簇内全局模型后,将相应的奖励分配给各个簇头,同时,在每个集群内,簇头将奖励了下发至各个车辆客户端,完成本轮训练过程;
8、步骤6、重复步骤2至步骤5,直到各个车辆客户端本地模型均收敛,将收敛后的本地模型应用于智能交通系统,实现车辆间的数据共享和协同决策,从而优化交通行为。
9、进一步地,步骤1中基于迭代k-means算法的模型划分方法,分为以下步骤:
10、步骤a:服务器将fl联邦学习全局模型广播给其覆盖范围的每个车辆客户端,收到模型的车辆客户端在本地进行模型训练,并将训练好的本地模型传回服务器。
11、使用本地模型与全局模型的差值来表示车辆客户端m的本地损失函数的梯度方向:
12、
13、其中,w为客户端本地模型梯度的余弦,wm为全局模型梯度的余弦。
14、然后,通过以下模型划分算法,对于每个分类ck,得出ck的集合中心
15、步骤1.2.1、初始化参数k、l和车辆客户端模型集合其中,参数l表示门限值;
16、
17、步骤1.2.2、随机选择并且
18、步骤1.2.3、当时,执行k-means方法的分类目标设置中的限制条件,更新τ=τ+1;
19、步骤1.2.4、对于时,计算集合ck的集合中心公式如下:
20、
21、步骤1.2.5、当时,k←k+1,重复执行步骤1.2.2至步骤1.2.4。
22、步骤b:服务器根据每个车辆客户端上传的本地模型的局部损失函数梯度之间的余弦相似性,采用k-means分类方法对车辆客户端上传的局部模型进行划分,并将k-means方法的分类目标设置为:
23、
24、其中,m为车辆客户端数目,k为训练的簇联邦学习模型数目(任务数);为二元变量,表示车辆客户端m上传的本地模型属于集合ck,表示车辆客户端m上传的本地模型不属于集合ck,c={ck|1≤k≤k},为集合ck的集合中心;
25、为车辆客户端m与集合中心的局部损失函数的梯度之间的余弦相似度。
26、同时,对模型集合的数目给出限制,其表达式为:
27、
28、其中,是阈值,函数α用于计算两个参数之间的余弦相似度,a、b为ck中的车辆客户端a和车辆客户端b,表示限制本地模型集合的数目的函数。
29、步骤c:将每个集合内的模型按照以下公式进行聚合,得到k个用于训练的全局模型。
30、
31、进一步地,通过簇头选择、簇头匹配模型,簇头匹配车辆客户端三个步骤,实现了每个簇内车辆客户端的数据分布近似为独立同分布,并且确保了参与聚类的各车辆客户端均包含高质量数据,包括:
32、步骤a:服务器广播得到的k个车辆客户端本地模型,每个车辆客户端在其本地数据上评估模型,得到分别对k个模型的偏好度ρ={ρm,k|1≤k≤k,1≤m≤m}(即为模型在本地数据集上的测试精确度),并和自身的位置、速度等信息一起发送回cvfl服务器。
33、步骤b:服务器根据接收到的信息,在考虑车辆移动性的情况下,以最大化系统整体的数据质量为目标选择个簇头:
34、
35、其中,lm为车辆客户端m的图像质量hm为车辆客户端m是否被选取为簇头,hm=0表示客户端m被选取为簇头,hm=1表示客户端m未被选取为簇头;
36、μ、ε、φ、q是机载摄像机的参数,vm为车辆客户端的瞬时速度,λ为展开训练前,簇头与车辆客户端、cvfl服务器进行信息交互需要的时间,δ为簇头需要的等待时间。
37、为预估的车辆客户端m的训练时间,为车辆客户端m的估计聚合时间,为车辆客户端m将最终模型上传到cvfl服务器所需的时间,β为cvfl服务器能保持通信的最多客户端个数,令选取出的簇头集合为
38、步骤c:cvfl服务器将簇头与其最适合的模型进行匹配,匹配目标为:
39、
40、其中,τn,k表示簇头n是否与本地模型k匹配,匹配τn,k=1,不匹配τn,k=0。
41、步骤d:服务器将剩余的车辆客户端(集合)匹配到簇头(集合)。
42、在考虑车辆与簇头间链路连接稳定性的情况下,降低每个簇内数据的异质性,提高参与训练的数据质量。
43、聚类目标如下:
44、
45、其中,b1,b2为常数,且b1+b2=1,用来调整数据异质性与数据质量的权重,fm,n表示车辆客户端m是否匹配到簇头n为中心的集合中,匹配fm,n=1,不匹配fm,n=0,为车辆客户端m将最终模型上传到簇头n所需的时间,βn为簇头n能保持通信的最多客户端个数,ρm,n为车辆客户端m对簇头n的偏好度,其值等于车辆客户端m对簇头n所训练的模型的偏好度。
46、最终,簇n中除簇头外包含车辆客户端的数目为
47、进一步地,采用双层激励机制的设计方案。
48、在上层,cvfl服务器采用stackelberg博弈机制对各个簇头进行激励,为所有簇头发放总奖励值;在下层,簇头则采用多维合同理论机制对簇内车辆客户端进行激励,包括:
49、步骤a:计算最优奖励其表达式为:
50、
51、其中,为簇n中所有车辆客户端中上传模型参数所产生花销的最大值,作为合同的固定奖励条款,为簇n中车辆客户端i参与训练的本地数据集的大小,in簇n中不包含簇头的车辆客户端数目;
52、为车辆客户端类型,表示如下:
53、
54、其中,χ是车辆客户端计算芯片组的有效电容参数为簇n中车辆客户端i对隐私的偏好程度,κ是对应于能量的花费,fi为车辆客户端i为本地模型训练贡献的计算资源,即cpu计算频率,b为车辆客户端的一个局部迭代所训练的局部数据集的大小,e表示车辆客户端的本地迭代次数。
55、簇n的簇头在类型的车辆客户端处获得的效益,其表达式为:
56、
57、其中,ξ,γ是由采用训练模型的特定结构所决定的系数,a为cvfl服务器给所有簇的总奖励值,表示簇n中所有车辆客户端的基于机载摄像机获取的图像质量的平均值,ηk表示任务k在本轮cvfl训练展开之前的模型精确度,hk为训练模型k的簇的集合。
58、最佳数据训练范围为其表达式为:
59、
60、得到一组最优合同的表达式:
61、
62、步骤b:将求解得到的最优合同表达式带入到cvfl的效益函数中可得:
63、
64、其中,表示如下:
65、
66、均衡解为a*,表达式为:
67、
68、步骤c:将a*带入π*(a)中,即得到了最终的最优合同π*。
69、本发明技术方案还提供了:一种电子设备,包括:
70、一个或多个处理器;
71、存储装置,其上存储有一个或多个程序;
72、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的面向集群车辆合作学习的训练方法。
73、本发明技术方案还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现上述任一项面向集群车辆合作学习的训练方法中的步骤。
74、本发明采用以上技术方案与现有技术相比,具有以下技术效果:
75、1、本发明面向集群车辆合作学习的训练方法,基于迭代k-means算法来实现无需预先设定划分模型个数的模型划分,并对划分后的模型进行分组聚合。
76、2、本发明面向集群车辆合作学习的训练方法,在考虑场景中车辆移动性的情况下,提出了基于客户端本地数据质量与相似度的匹配聚类方法。
77、3、本发明面向集群车辆合作学习的训练方法,提出了双层激励机制方案,实现cvfl服务器对簇头,簇头对车辆客户端的逐层激励。
78、4、本发明面向集群车辆合作学习的训练方法,实现了对车辆客户端的精准聚类,聚类结果能够有效克服数据异质性并提升训练数据质量,还激励了多个簇并行训练多个联邦学习任务,从而有效地提高了cvfl的整体效率。
1.一种面向集群车辆合作学习的训练方法,包括以下步骤:
2.根据权利要求1所述的面向集群车辆合作学习的训练方法,其特征在于,步骤1中基于迭代k-means算法的模型划分方法,分为以下步骤:
3.根据权利要求2所述的面向集群车辆合作学习的训练方法,其特征在于,步骤1中通过模型划分算法,将车辆客户端的模型划分为具有给定集合中心的分类,对于每个分类ck,得出集合中心方法如下:
4.根据权利要求1所述的面向集群车辆合作学习的训练方法,其特征在于,步骤2中,车辆客户端对本地模型精准聚类,实现每个簇内车辆客户端的数据独立同分布,提高参与聚类的各车辆客户端数据质量,方法如下:
5.根据权利要求4所述的面向集群车辆合作学习的训练方法,其特征在于,步骤3中,采用双层激励机制,在上层服务器采用stackelberg博弈机制对各个簇头进行激励,为所有簇头发放总奖励值,在下层簇头采用多维合同理论机制对簇内车辆客户端进行激励,方法如下:
6.根据权利要求5所述的面向集群车辆合作学习的训练方法,其特征在于,步骤3中,求解最优合同,方法如下:
7.一种电子设备,其特征在于,包括:
8.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时,实现权利要求1至6中任一项所述的面向集群车辆合作学习的训练方法中的步骤。
