一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

无人集群智能模型训练方法、装置和电子设备

2022-11-13 13:04:18 来源:中国专利 TAG:
1.本发明涉及通信的
技术领域
:,尤其是涉及一种无人集群智能模型训练方法、装置和电子设备。
背景技术
::2.无人集群即通过一组无人设备的协同工作来完成任务,人工智能技术的发展进一步提高了无人集群的智能能力,使无人集群能够以协调的方式运行。智能无人集群能够减少劳动力、减少工时和减少其他相关的操作费用。然而,考虑到无人设备的计算和存储能力有限,如何在无人集群中进行人工智能训练过程是一个难题。3.目前无人集群中的联邦学习结构可分为两类,分别是集中式联邦学习和分布式联邦学习。在集中式联邦学习中,选择一个无人设备节点作为中心节点,协调分布式无人设备的训练过程,但是由于中心节点和所有无人设备节点进行参数传输,容易造成通信拥塞,中心节点进行模型聚合也会导致计算瓶颈;在分布式联邦学习中,无人节点需要将其局部模型更新广播给邻居节点,以实现全局模型的一致性,但是所有邻居无人节点之间进行参数传递的机制会影响联邦学习的性能,并产生巨大的通信能耗。技术实现要素:4.本发明的目的在于提供一种无人集群智能模型训练方法、装置和电子设备,以缓解了传统的集中式联邦学习方式存在的通信能耗大、通信拥塞和计算瓶颈的技术问题。5.第一方面,本发明提供一种无人集群智能模型训练方法,包括以下步骤:(a)获取待训练的无人集群,并从所述无人集群中选择第一数量个无人节点作为簇头;(b)基于所述簇头对剩余无人节点进行分簇处理,得到第一数量个无人簇;其中,所述剩余无人节点表示所述无人集群中除簇头之外的无人节点;重复执行下述步骤(c)-(e),直至达到预设结束条件,得到训练后的无人集群;(c)对目标无人簇进行集中式联邦学习训练,并在无人节点完成局部模型训练之后,构建所述目标无人簇的簇模型参数;其中,所述目标无人簇表示所述第一数量个无人簇中的任一无人簇;每个所述无人簇的簇模型参数存储于相应的簇头中;(d)基于所述第一数量个无人簇的簇模型参数对所述第一数量个无人簇进行簇间分布式联邦学习训练,得到所述无人集群的全局模型参数;(e)将所述全局模型参数通过每个所述簇头发送至相应簇内的所有无人节点,以使每个所述无人节点更新局部模型参数。6.在可选的实施方式中,基于所述簇头对剩余无人节点进行分簇处理,包括:将所述剩余无人节点划分为第二数量个无人种群;对目标种群中的每个无人节点的簇头选择进行初始化,得到目标种群的种群状态;其中,所述目标种群表示所述第二数量个无人种群中的任一种群;所述种群状态用于表征所述目标种群中的无人节点选择每个簇头的参与者比例;控制所述目标种群进行种群进化操作,直至所述目标种群中所有无人节点的平均效用函数值等于进行簇头选择的任一无人节点在所述目标种群中的效用函数值;基于第二数量个进化后的无人种群确定第一数量个无人簇。7.在可选的实施方式中,控制所述目标种群进行种群进化操作,包括:获取目标无人节点所采集数据的数据质量和数据量;其中,所述目标无人节点表示所述目标无人簇中的任一无人节点;基于所述数据质量和所述数据量计算所述目标无人节点进行簇头选择之后,所述目标无人节点在所述目标种群中获得的收益;计算所述目标无人节点进行簇头选择之后,所述目标无人节点的训练成本;其中,所述训练成本包括:通信成本和计算成本;基于所述收益和所述训练成本计算所述目标无人节点进行簇头选择之后,所述目标无人节点在所述目标种群中的效用函数值;基于所述目标种群的种群状态和所述效用函数值,计算所述目标种群的种群增长率;基于所述种群增长率对所述目标种群进行种群进化。8.在可选的实施方式中,构建所述目标无人簇的簇模型参数之前,还包括:判断目标无人节点与其原始簇头之间的链路是否损坏;若是,则获取目标无人节点与目标簇头之间的链路状态;其中,所述目标无人节点表示所述目标无人簇中的任一无人节点;所述目标簇头表示第一数量个簇头中的任一簇头;计算所述目标无人节点选择转移簇头之后,所述目标无人节点的奖励值;其中,所述转移簇头表示与所述目标无人节点之间的链路通畅的任一簇头;将最大奖励值对应的目标转移簇头作为所述目标无人节点的簇头;更新所述目标无人簇中的无人节点,得到更新后的目标无人簇。9.在可选的实施方式中,计算所述目标无人节点选择转移簇头之后,所述目标无人节点的奖励值,包括:计算所述目标无人节点未加入所述转移簇头所在的无人簇之前,所述转移簇头的无人簇内所有无人节点进行聚合后的第一模型质量;计算所述目标无人节点加入所述转移簇头所在的无人簇之后,更新后的转移簇头的无人簇内所有无人节点进行聚合后的第二模型质量;将所述第二模型质量与所述第一模型质量的差值作为所述目标无人节点选择转移簇头之后的奖励值。10.在可选的实施方式中,对所述第一数量个无人簇进行簇间分布式联邦学习训练过程中,每一轮迭代时,目标簇头的簇模型参数通过算式进行更新;其中,表示第t 1轮迭代时目标簇头k的簇模型参数,wi,k表示所述目标簇头k的邻居簇头i的簇模型参数在迭代中的权重,表示第t轮迭代时所述邻居簇头i的簇模型参数,α表示学习率,表示第t 1轮迭代时目标簇头k的损耗函数的梯度;nk表示所述目标簇头k的邻居簇头集合。11.在可选的实施方式中,所述预设结束条件包括:目标算式的取值小于预设阈值;所述目标算式为:其中,表示所述目标簇头k的簇内无人节点j的局部模型参数,nk表示所述目标簇头k的簇内无人节点总数,表示所述目标簇头k的簇内无人节点j的损失函数,(hj,yj)表示所述无人节点j的样例输入,hj表示所述无人节点j所采集数据的特征向量,yj表示所述无人节点j所采集数据的标签向量。12.第二方面,本发明提供一种无人集群智能模型训练装置,包括:第一获取模块,用于获取待训练的无人集群,并从所述无人集群中选择第一数量个无人节点作为簇头;分簇模块,用于基于所述簇头对剩余无人节点进行分簇处理,得到第一数量个无人簇;其中,所述剩余无人节点表示所述无人集群中除簇头之外的无人节点;重复执行模块,用于重复执行下述步骤(c)-(e),直至达到预设结束条件,得到训练后的无人集群;(c)对目标无人簇进行集中式联邦学习训练,并在无人节点完成局部模型训练之后,构建所述目标无人簇的簇模型参数;其中,所述目标无人簇表示所述第一数量个无人簇中的任一无人簇;每个所述无人簇的簇模型参数存储于相应的簇头中;(d)基于所述第一数量个无人簇的簇模型参数对所述第一数量个无人簇进行簇间分布式联邦学习训练,得到所述无人集群的全局模型参数;(e)将所述全局模型参数通过每个所述簇头发送至相应簇内的所有无人节点,以使每个所述无人节点更新局部模型参数。13.第三方面,本发明提供一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述实施方式中任一项所述的无人集群智能模型训练方法的步骤。14.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现前述实施方式中任一项所述的无人集群智能模型训练方法。15.本发明提供的无人集群智能模型训练方法,将无人集群的训练划分为簇内集中式联邦学习和簇间分布式联邦学习两个阶段,簇内集中式学习时,簇头作为模型所有者来和簇内节点进行参数传递,并进行模型聚合,从而缓解了传统的集中式联邦学习方式存在的通信拥塞和计算瓶颈的技术问题;并且,簇间分布式学习时,由于只有邻居簇头间进行参数传输和模型聚合,所以与传统分布式联邦学习相比,本发明还能有效地减少通信能耗。附图说明16.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。17.图1为本发明实施例提供的一种传统联邦学习架构的示意图;18.图2为本发明实施例提供的一种无人集群智能模型训练方法的流程图;19.图3为本发明实施例提供的一种自适应联邦学习架构的示意图;20.图4为本发明实施例提供的一种自适应联邦学习训练方法的流程图;21.图5为本发明实施例提供的一种无人集群智能模型训练装置的功能模块图;22.图6为本发明实施例提供的一种电子设备的示意图。具体实施方式23.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。24.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。25.下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。26.考虑到无人设备的计算和存储能力有限,如何在无人集群中进行人工智能训练过程是一个难题。集中式的训练架构要求所有无人设备将其本地数据发送到一个中央服务器,对于许多偏远地区的无人集群来说,维持一个可持续服务的集中式云服务器并不容易。同时,在很多情况下,将原始数据发送到第三部分服务器可能会引发数据安全和隐私问题。27.在联邦学习架构中,训练过程可以在每个无人设备上进行训练,通过将数据从中央服务器分散到无人设备上来保护数据隐私。此外,这些过程将计算压力相等地分散到每个无人设备上,消除了无人集群中实现人工智能训练的通信和计算瓶颈。联邦学习是一种协作训练技术,它在具有本地数据样本的设备或服务器上训练人工智能模型。联邦学习训练过程包括以下几个步骤:任务初始化、局部模型训练和全局聚合。重复执行下述三个步骤,直到模型精度达到理想值。28.任务初始化:联邦学习服务器启动一个联邦学习任务,并将任务的信息通知给无人集群。无人集群中的数据所有者将根据其本地策略来决定是否加入此任务。然后,联邦学习的服务器向所有参与的数据所有者广播初始的全局模型参数。29.局部模型训练:在接收到全局模型参数后,数据所有者使用其局部数据开始局部模型训练过程。然后发送更新后的本地参数到联邦学习服务器。30.全局聚合:联邦学习服务器接收并聚合来自所有数据所有者的本地模型。然后,联邦学习服务器计算全局模型并更新全局参数。31.如图1所示,目前无人集群中的联邦学习结构可分为两类,分别是集中式联邦学习和分布式联邦学习,在集中式联邦学习中,选择一个无人设备节点作为中心节点,协调分布式无人设备的训练过程;在分布式联邦学习中,无人节点需要将其局部模型更新广播给邻居节点,以实现全局模型的一致性。但是,在集中式联邦学习架构下,由于中心节点需要和所有无人设备节点进行参数传输,所以容易造成通信拥塞,中心节点进行模型聚合也会导致计算瓶颈,此外,如果中心节点出现故障,将导致整个联邦学习过程的失败;在分布式联邦学习架构下,所有邻居无人节点之间进行参数传递的机制会影响联邦学习的性能,并产生巨大的通信能耗。有鉴于此,本发明实施例提供了一种无人集群智能模型训练方法,用以缓解上文中所提出的技术问题。32.实施例一33.图2为本发明实施例提供的一种无人集群智能模型训练方法的流程图,如图2所示,该方法具体包括以下步骤:34.步骤(a)获取待训练的无人集群,并从无人集群中选择第一数量个无人节点作为簇头。35.本发明实施例提供的训练方法设计了一个分层的联邦学习架构,也是自适应联邦学习架构,如图3所示,该学习架构由无人节点层、骨干层和应用层组成,利用该学习架构对待训练的无人集群进行训练时,需要将无人集群划分为多个无人簇,选定的第一数量个簇头构成骨干层。簇内的参数更新采用集中式联邦学习架构,簇间的参数更新采用分布式架构,这样的训练方法既能在提高学习效率的同时又能保证系统的鲁棒性。本发明实施例不对簇头的数量进行具体限定,用户可以根据实际需求进行选择。36.鉴于簇头在无人集群的训练过程中起到了关键的作用,因此,本发明实施例将待训练无人集群中通信能力和稳定性较高的无人节点作为各个无人簇的簇头,簇头的集合表示为j={1,2,...,k},k表示第一数量。对于簇头的选择,用户可以根据实际情况量化各个无人节点的通信能力和稳定性,通过加权得到每个无人节点的综合能力值,进而选择出前k个综合能力最强的无人节点作为簇头。或者,也可以将无人节点的其他性能参量作为比较基准,从无人集群中挑选出性能最强的k个无人节点作为簇头。37.步骤(b)基于簇头对剩余无人节点进行分簇处理,得到第一数量个无人簇。38.簇头选择完毕之后,根据上文中的方法概述可知,对于无人集群中的剩余无人节点,需要进一步将剩余无人节点进行分簇处理,其中,剩余无人节点表示无人集群中除簇头之外的无人节点。考虑到所有的无人节点都是自私和理性的(即寻求利润),为促进更多的无人节点加入联邦学习任务,本发明实施例采用演化博弈机制,即根据理性个体的适应度来进行策略适应,无人节点可以根据环境调整其策略(也即,选择不同的簇加入),直到进化博弈达到进化稳定策略(evolutionarilystablestrategy,ess),完成将所有无人节点划分为k个簇,簇头作为模型所有者,簇内的无人节点作为数据所有者。39.簇划分完成之后,即可进入簇内集中式联邦学习和簇间分布式联邦学习阶段,具体为:重复执行下述步骤(c)-(e),直至达到预设结束条件,得到训练后的无人集群;40.步骤(c)对目标无人簇进行集中式联邦学习训练,并在无人节点完成局部模型训练之后,构建目标无人簇的簇模型参数。41.其中,目标无人簇表示第一数量个无人簇中的任一无人簇;每个无人簇的簇模型参数存储于相应的簇头中;42.步骤(d)基于第一数量个无人簇的簇模型参数对第一数量个无人簇进行簇间分布式联邦学习训练,得到无人集群的全局模型参数。43.步骤(e)将全局模型参数通过每个簇头发送至相应簇内的所有无人节点,以使每个无人节点更新局部模型参数。44.本发明实施例通过循环进行先簇内集中式后簇间分布式的训练方式对无人群进行训练,每一次循环过程中,每个无人节点使用其最新的局部模型参数开始指定次数的局部模型训练,局部训练达到指定次数之后,再构建目标无人簇的簇模型参数,具体的,簇内各个无人节点将其局部训练后的局部模型参数均发送给其所属的簇头,簇头构建并存储该无人簇的簇模型参数。至此完成一次簇内集中式训练。45.此时,每个簇头均存储了其所在簇的簇模型参数,接下来,控制所有的簇头进行簇间分布式联邦学习训练,进而实现全局模型的一致性,得到无人集群的全局模型参数,最后,通过每个簇头将本次循环训练得到的全局模型参数下发给簇内各个无人节点,以利用其更新无人节点的局部模型参数。依次类推,重复执行上述训练流程,直至达到指定结束条件,得到训练后的无人集群。本发明实施例不对训练结束条件进行具体限定,用户可以根据实际需求进行设置,可以为训练次数,也可以为某个指定的训练指标。46.本发明实施例所提供的无人集群智能模型训练方法,将无人集群的训练划分为簇内集中式联邦学习和簇间分布式联邦学习两个阶段,簇内集中式学习时,簇头作为模型所有者来和簇内节点进行参数传递,并进行模型聚合,从而缓解了传统的集中式联邦学习方式存在的通信拥塞和计算瓶颈的技术问题;并且,簇间分布式学习时,由于只有邻居簇头间进行参数传输和模型聚合,所以与传统分布式联邦学习相比,本发明实施例还能有效地减少通信能耗。47.在一个可选的实施方式中,上述步骤(b),基于簇头对剩余无人节点进行分簇处理,具体包括如下步骤:48.步骤s101,将剩余无人节点划分为第二数量个无人种群。49.步骤s102,对目标种群中的每个无人节点的簇头选择进行初始化,得到目标种群的种群状态。50.本发明实施例采用演化博弈机制来不断调整簇的结构,直到进化博弈达到进化稳定策略,下面将对演化博弈机制进行具体介绍。在演化博弈中,所有的无人节点都被认为是个体理性的。在进行分簇之前,首先将剩余无人节点划分为第二数量个种群,可选地,种群划分原则可以是根据各个无人节点的局部数据质量和大小,将具有相似特征的无人节点划分到一个种群中。种群集合表示为p={1,2,...,p},p表示第二数量。每个种群中的无人节点表示为{m1,m2,…mp,…,mp},其中,mp表示种群p中无人节点的数量。51.演化博弈中,每个无人节点都要选择一个簇来加入,以最大化其效用,不同的策略(也即,无人节点选择加入不同的簇)会获得不同的奖励。种群划分之后,本发明实施例需要为目标种群中的每个无人节点进行簇头选择的初始化操作(也即,每个无人节点选择一个簇进行加入),得到目标种群的种群状态。其中,目标种群表示第二数量个无人种群中的任一种群;种群状态用于表征目标种群中的无人节点选择每个簇头的参与者比例。种群状态表示为:xp=[xp,1,xp,2,…,xp,k,…,xp,k],其中,xp,k表示种群p中选择簇头k的参与者比例。[0052]为了便于理解,下面举例说明,假设,目标种群中有30个无人节点,且上述步骤(a)中选择了5个无人节点作为簇头,那么经过簇头选择初始化之后,目标种群中共有10个无人节点选择簇头1,5个无人节点选择簇头2,3个无人节点选择簇头3,10个无人节点选择簇头4,2个无人节点选择簇头5,那么目标种群中选择簇头1的参与者比例为1/3,选择簇头2的参与者比例为1/6,选择簇头3的参与者比例为1/10,选择簇头4的参与者比例为1/3,选择簇头5的参与者比例为1/15,因此,目标种群的种群状态即为{1/3,1/6,1/10,1/3,1/15}。[0053]步骤s103,控制目标种群进行种群进化操作,直至目标种群中所有无人节点的平均效用函数值等于进行簇头选择的任一无人节点在目标种群中的效用函数值。[0054]步骤s104,基于第二数量个进化后的无人种群确定第一数量个无人簇。[0055]参与联邦学习任务的每个无人节点都有一个非负的效用,为了寻求更高的效用,无人节点通过观察其他无人节点的行动和收益来不断调整其策略(也即,簇头选择发生变化),不断调整的过程即为目标种群进行种群进化的过程,直到无人节点的整体效用达到平衡即停止进化,也即,当目标种群中所有无人节点的平均效用函数值等于进行簇头选择的任一无人节点在目标种群中的效用函数值时,即停止种群进化操作。至此,得到第二数量个进化后的无人种群,且每个无人种群中各个无人节点均确定了所选择的簇头,无人节点选择策略形成了一个簇结构,因此,根据第二数量个进化后的无人种群即可确定出第一数量个无人簇。[0056]在一个可选的实施方式中,上述步骤s103中,控制目标种群进行种群进化操作,具体包括如下步骤:[0057]步骤s1031,获取目标无人节点所采集数据的数据质量和数据量。[0058]其中,目标无人节点表示目标无人簇中的任一无人节点。[0059]步骤s1032,基于数据质量和数据量计算目标无人节点进行簇头选择之后,目标无人节点在目标种群中获得的收益。[0060]具体的,根据上文中的介绍可知,无人节点在选择簇头之后,其在目标种群中的效用对种群进化具有一定影响,在本发明实施例中,要确定目标无人节点的效用函数值,首先应计算目标无人节点在目标种群中获得的收益,其中,收益表示簇头选择的预期结果,当选择簇头k时,目标无人节点u在种群p中获得的收益可以表述为:其中,κ表示预设系统参数,qu表示目标无人节点u所采集到的数据质量,具体的,根据无人机采集到的数据中错误标签的数量,以及数据是否均匀分布来量化数据质量,du表示目标无人节点u所采集到的数据量,mp表示种群p中无人节点的数量,xp,k表示种群p中选择簇头k的参与者比例。[0061]步骤s1033,计算目标无人节点进行簇头选择之后,目标无人节点的训练成本。[0062]其中,训练成本包括:通信成本和计算成本。[0063]步骤s1034,基于收益和训练成本计算目标无人节点进行簇头选择之后,目标无人节点在目标种群中的效用函数值。[0064]在本发明实施例中,目标无人节点的效用函数值等于目标无人节点在目标种群中获得的收益与目标无人节点的训练成本之差。目标无人节点u在选择簇头k的种群p中的效用函数可以表述为:其中,表示当选择簇头k时,目标无人节点u在种群p中获得的收益,表示目标无人节点u在选择簇头k之后进行局部模型训练所需要的训练成本。[0065]训练成本由两部分组成,分别为:通信成本和计算成本和计算成本其中,ilocal表示局部迭代次数,也即,目标无人节点u进行局部训练的次数,iglobal表示全局迭代次数,当目标无人节点进行指定次数的局部迭代后,簇内无人节点将进行一次簇内集中式联邦学习,上述全局迭代次数是指进行簇内集中式联邦学习的次数,表示目标无人节点u在选择簇头k之后进行局部模型训练所需要的计算成本(计算能耗),表示u在选择簇头k之后完成一轮通信所需的通信成本(通信能耗)。[0066]其中,无人节点根据本地数据进行局部模型训练所需要的计算能耗可通过下式进行计算:行计算:表示与所述目标无人节点u的cpu相关的参数,au表示目标无人节点u处理1比特数据所需的计算资源,du表示目标无人节点u所采集到的数据量,fu表示目标无人节点u的计算能力;qu表示目标无人节点u所采集到的数据质量。[0067]无人节点完成一轮通信的通信成本可以通过下式进行计算:l表示目标无人节点u的局部模型参数的比特数,eelec表示无人节点和簇头进行通信时的固定能耗,ξfs表示自由空间能量放大功率,du,k表示目标无人节点u与其簇头之间的距离。[0068]步骤s1035,基于目标种群的种群状态和效用函数值,计算目标种群的种群增长率。[0069]步骤s1036,基于种群增长率对目标种群进行种群进化。[0070]种群进化可以表示为由复制因子动力学控制,在本发明实施例中,种群进化是指:无人节点策略的变化。根据种群的种群增长率调整种群状态,种群进化过程中,种群中无人节点的数量不变,只是该种群中各个无人节点所选择加入的簇会有更新。其中,种群增长率通过下式进行计算:其中,表示种群p的种群增长率,β表示种群进化速率参数,xp,k表示种群p中选择簇头k的参与者比例,up,k(t)表示种群p中无人节点选择簇头k的效用,表示种群p中无人节点的平均效用函数值,[0071]按照上述方式不断计算目标种群的种群增长率,直到目标种群中所有无人节点的平均效用函数值等于进行簇头选择的任一无人节点在目标种群中的效用函数值,也即,时即可停止种群进化。[0072]在一个可选的实施方式中,上述步骤(c)中,构建目标无人簇的簇模型参数之前,还包括如下步骤:[0073]步骤s201,判断目标无人节点与其原始簇头之间的链路是否损坏。[0074]若是,则执行下述步骤s202,若否,则执行构建目标无人簇的簇模型参数的步骤。[0075]步骤s202,获取目标无人节点与目标簇头之间的链路状态。[0076]其中,目标无人节点表示目标无人簇中的任一无人节点;目标簇头表示第一数量个簇头中的任一簇头。[0077]步骤s203,计算目标无人节点选择转移簇头之后,目标无人节点的奖励值。[0078]其中,转移簇头表示与目标无人节点之间的链路通畅的任一簇头。[0079]步骤s204,将最大奖励值对应的目标转移簇头作为目标无人节点的簇头。[0080]步骤s205,更新目标无人簇中的无人节点,得到更新后的目标无人簇。[0081]具体的,考虑到高动态拓扑结构和不稳定的链路,如果目标无人节点与其种群进化完成之后所选的原始簇头之间的链路出现损毁,二者无法建立通信连接,则该簇将无法完成簇模型参数的构建,因此,本发明实施例还提出了一种动态簇头选择机制,以实现在链路损坏情况下的簇头切换。无人节点可以根据环境情况(如链路状态、无人节点位置)动态地重新选择新的簇头。[0082]因此,为了确定是否需要触发动态簇头选择机制,首先要判断目标无人节点与其原始簇头之间的链路是否损坏,如果簇内的所有无人节点均与原始簇头保持连接,则可直接执行构建目标无人簇的簇模型参数的步骤,进而进入簇间分布式联邦学习阶段。但是,如果簇内存在与原始簇头之前断开连接的无人节点,则将触发动态簇头选择机制。本发明实施例将这类需要重新选择簇头的无人节点定义为转移无人节点,也即,转移无人节点是指无人节点和原定簇头之间通信链路损坏,簇头选择需要发生变更的无人节点。[0083]动态簇头选择机制中,首先要获取目标无人节点与目标簇头之间的链路状态,表示为:其中,表示目标无人节点u与簇头k间的链路状态参数,若则表示目标无人节点u与簇头k间的链路异常(无法通信);若则表示目标无人节点u与簇头k间的链路正常(链路通畅,可通信)。[0084]在得到目标无人节点与目标簇头之间的链路状态之后,需要为目标无人节点从与其链路通畅的簇头中重新选择一个新簇头,本发明实施例中,以目标无人节点选择转移簇头之后,目标无人节点的奖励值作为选择的基准,其中,奖励值也可以理解为目标无人节点转移到新簇的边际贡献。[0085]本发明实施例将最大奖励值对应的目标转移簇头作为目标无人节点的新簇头。所有转移无人节点的新簇头选择完毕,即可更新各个无人簇中的无人节点,得到更新后的无人簇。[0086]例如,假设目标无人节点的原始簇头为簇头5,当前与目标无人节点之间链路通畅的簇头为簇头1,簇头2和簇头3,那么此时需要分别计算目标无人节点转移至簇头1,簇头2和簇头3时所能得到的奖励值,若目标无人节点转移至簇头1的奖励值最大,则将簇头1作为目标无人节点的新簇头。[0087]在一个可选的实施方式中,上述步骤s203,计算目标无人节点选择转移簇头之后,目标无人节点的奖励值,具体包括如下步骤:[0088]步骤s2031,计算目标无人节点未加入转移簇头所在的无人簇之前,转移簇头的无人簇内所有无人节点进行聚合后的第一模型质量。[0089]步骤s2032,计算目标无人节点加入转移簇头所在的无人簇之后,更新后的转移簇头的无人簇内所有无人节点进行聚合后的第二模型质量。[0090]步骤s2033,将第二模型质量与第一模型质量的差值作为目标无人节点选择转移簇头之后的奖励值。[0091]在本发明实施例中,当目标无人节点重新选择新的簇头时,其收益与新选择的簇模型精度的提高有关,若由无人簇头k领导的无人簇表示为ck,则簇ck的价值v(ck),也即簇ck现有簇内节点进行聚合后的第一模型质量为:其中,φ表示(动态调整的)第一系统参数,qi表示无人节点i所采集到的数据质量,di表示无人节点i所采集到的数据量,v表示(动态调整的)第二系统参数。参考上述计算方法,可以计算出目标无人节点转移到簇ck之后的第二模型质量v(ck∪u),v(ck∪u)表征目标无人节点u加入簇ck后的整体价值。那么目标无人节点转移到簇的边际贡献(奖励值)即为:[0092]对于一个转移无人节点,当加入一个模型精度较低的簇时,可以获得较高的奖励。该设计可以避免不同簇之间的种群不平衡(即避免不同簇头之间的模型质量不平衡),从而提高了系统的均匀化和学习效率。因此,动态簇头选择机制的步骤大致可描述如下:1)在每个簇内聚合中,部分无人节点无法到达原始簇头(也即,无人节点和原始簇头之间的通信链路损毁)。因此,这些节点可以根据动态簇头机制重新选择。2)传输节点根据链路状态参数i向其可达的簇发送请求。3)簇头接收请求,根据边际贡献的算式计算节点的奖励值,然后通知节点的奖励(边际贡献)消息。4)这些节点重新选择簇头,并最大化其效用,然后向簇头传输局部模型参数。[0093]在一个可选的实施方式中,对第一数量个无人簇进行簇间分布式联邦学习训练过程中,每一轮迭代时,目标簇头的簇模型参数通过算式进行更新;其中,表示第t 1轮迭代时目标簇头k的簇模型参数,wi,k表示目标簇头k的邻居簇头i的簇模型参数在迭代中的权重,表示第t轮迭代时邻居簇头i的簇模型参数,α表示学习率,表示第t 1轮迭代时目标簇头k的损耗函数的梯度;nk表示目标簇头k的邻居簇头集合。[0094]重复执行步骤(c)-(e)的预设结束条件包括:目标算式的取值小于预设阈值;目标算式为:其中,表示目标簇头k的簇内无人节点j的局部模型参数,nk表示目标簇头k的簇内无人节点总数,表示目标簇头k的簇内无人节点j的损失函数,(hj,yj)表示无人节点j的样例输入,hj表示无人节点j所采集数据的特征向量,yj表示无人节点j所采集数据的标签向量。[0095]本发明实施例将簇间分布式联邦学习任务表示为一个随机优化问题:在分散的联邦学习过程中,每个簇头充当一个参数服务器。此外,它还需要在相邻的簇头节点之间不断的模型聚合和更新,直到达到收敛。在第t 1轮迭代时,簇节点的模型更新可以表示为:这种更新过程也称为组合自适应,其中每个簇节点组合其邻居节点的权重,然后执行一个随机梯度下降(sgd)的步骤,从而实现了与相邻簇节点的模型更新。经过t轮迭代更新聚合后,每个无人簇头计算出一个精度最高的全局模型,这表示簇间联邦学习的完成。随后,每个无人簇头将更新后的全局模型参数发送给其簇成员。因此,无人簇成员接收更新后的全局模型参数并更新其局部模型。[0096]图4为本发明实施例提供的自适应联邦学习训练方法的流程图,该流程图将从任务发布开始到任务执行结束作为节点,更全面的介绍了无人集群智能模型的训练过程。[0097]发明人研究了动态簇头选择机制在动态无人集群场景下的性能。实验证明,本发明所提出的联邦学习相对集中式联邦学习可以更快的达到收敛。此外,自适应联邦学习具有较高的模型精度和较好的稳定性。这是因为动态簇头选择机制在链路损坏的情况下实现了簇头切换,从而保证了训练过程的完整性。因此所提出的自适应联邦学习架构在动态无人集群场景下实现了更好的性能。[0098]综上所述,本发明实施例为了提高学习效率和系统的鲁棒性,设计了一种面向无人集群簇结构的自适应层次联邦学习体系结构,在具有动态性的无人集群场景下实现了更好的性能。在此基础上,将簇内模型更新设计为集中式联邦学习;为刺激无人节点加入联邦学习任务,采用演化博弈来作为激励方案;本发明实施例还设计了一种基于边际贡献的动态簇头选择机制,以实现在链路损坏情况下的簇头切换;考虑到系统鲁棒性的实现,将更新后的簇间模型更新设计为分布式联邦学习,通过簇间分布式联邦学习架构来实现分散的模型聚合和更新,从而避免了单点故障导致联邦学习任务失败的技术问题。[0099]实施例二[0100]本发明实施例还提供了一种无人集群智能模型训练装置,该无人集群智能模型训练装置主要用于执行上述实施例一所提供的无人集群智能模型训练无人集群智能模型训练方法,以下对本发明实施例提供的无人集群智能模型训练装置做具体介绍。[0101]图5是本发明实施例提供的一种无人集群智能模型训练装置的功能模块图,如图5所示,该装置主要包括:第一获取模块10,分簇模块20,重复执行模块30,其中:[0102]第一获取模块10,用于获取待训练的无人集群,并从无人集群中选择第一数量个无人节点作为簇头。[0103]分簇模块20,用于基于簇头对剩余无人节点进行分簇处理,得到第一数量个无人簇;其中,剩余无人节点表示无人集群中除簇头之外的无人节点。[0104]重复执行模块30,用于重复执行下述步骤(c)-(e),直至达到预设结束条件,得到训练后的无人集群。[0105](c)对目标无人簇进行集中式联邦学习训练,并在无人节点完成局部模型训练之后,构建目标无人簇的簇模型参数;其中,目标无人簇表示第一数量个无人簇中的任一无人簇;每个无人簇的簇模型参数存储于相应的簇头中。[0106](d)基于第一数量个无人簇的簇模型参数对第一数量个无人簇进行簇间分布式联邦学习训练,得到无人集群的全局模型参数。[0107](e)将全局模型参数通过每个簇头发送至相应簇内的所有无人节点,以使每个无人节点更新局部模型参数。[0108]本发明所提供的无人集群智能模型训练装置所执行的无人集群智能模型训练方法,将无人集群的训练划分为簇内集中式联邦学习和簇间分布式联邦学习两个阶段,簇内集中式学习时,簇头作为模型所有者来和簇内节点进行参数传递,并进行模型聚合,从而缓解了传统的集中式联邦学习方式存在的通信拥塞和计算瓶颈的技术问题;并且,簇间分布式学习时,由于只有邻居簇头间进行参数传输和模型聚合,所以与传统分布式联邦学习相比,本发明实施例所提供的装置还能有效地减少通信能耗。[0109]可选地,分簇模块20包括:[0110]划分单元,用于将剩余无人节点划分为第二数量个无人种群。[0111]初始化单元,用于对目标种群中的每个无人节点的簇头选择进行初始化,得到目标种群的种群状态;其中,目标种群表示第二数量个无人种群中的任一种群;种群状态用于表征目标种群中的无人节点选择每个簇头的参与者比例。[0112]进化单元,用于控制目标种群进行种群进化操作,直至目标种群中所有无人节点的平均效用函数值等于进行簇头选择的任一无人节点在目标种群中的效用函数值。[0113]确定单元,用于基于第二数量个进化后的无人种群确定第一数量个无人簇。[0114]可选地,进化单元具体用于:[0115]获取目标无人节点所采集数据的数据质量和数据量;其中,目标无人节点表示目标无人簇中的任一无人节点。[0116]基于数据质量和数据量计算目标无人节点进行簇头选择之后,目标无人节点在目标种群中获得的收益。[0117]计算目标无人节点进行簇头选择之后,目标无人节点的训练成本;其中,训练成本包括:通信成本和计算成本。[0118]基于收益和训练成本计算目标无人节点进行簇头选择之后,目标无人节点在目标种群中的效用函数值。[0119]基于目标种群的种群状态和效用函数值,计算目标种群的种群增长率。[0120]基于种群增长率对目标种群进行种群进化。[0121]可选地,该装置还包括:[0122]判断模块,用于判断目标无人节点与其原始簇头之间的链路是否损坏;[0123]第二获取模块,用于在确定目标无人节点与其原始簇头之间的链路损坏的情况下,获取目标无人节点与目标簇头之间的链路状态;其中,目标无人节点表示目标无人簇中的任一无人节点;目标簇头表示第一数量个簇头中的任一簇头。[0124]计算模块,用于计算目标无人节点选择转移簇头之后,目标无人节点的奖励值;其中,转移簇头表示与目标无人节点之间的链路通畅的任一簇头。[0125]确定模块,用于将最大奖励值对应的目标转移簇头作为目标无人节点的簇头。[0126]更新模块,用于更新目标无人簇中的无人节点,得到更新后的目标无人簇。[0127]可选地,计算模块具体用于:[0128]计算目标无人节点未加入转移簇头所在的无人簇之前,转移簇头的无人簇内所有无人节点进行聚合后的第一模型质量。[0129]计算目标无人节点加入转移簇头所在的无人簇之后,更新后的转移簇头的无人簇内所有无人节点进行聚合后的第二模型质量。[0130]将第二模型质量与第一模型质量的差值作为目标无人节点选择转移簇头之后的奖励值。[0131]可选地,对第一数量个无人簇进行簇间分布式联邦学习训练过程中,每一轮迭代时,目标簇头的簇模型参数通过算式进行更新;其中,表示第t 1轮迭代时目标簇头k的簇模型参数,wi,k表示目标簇头k的邻居簇头i的簇模型参数在迭代中的权重,表示第t轮迭代时邻居簇头i的簇模型参数,α表示学习率,表示第t 1轮迭代时目标簇头k的损耗函数的梯度;nk表示目标簇头k的邻居簇头集合。[0132]可选地,预设结束条件包括:目标算式的取值小于预设阈值;目标算式为:其中,表示目标簇头k的簇内无人节点j的局部模型参数,nk表示目标簇头k的簇内无人节点总数,表示目标簇头k的簇内无人节点j的损失函数,(hj,yj)表示无人节点j的样例输入,hj表示无人节点j所采集数据的特征向量,yj表示无人节点j所采集数据的标签向量。[0133]实施例三[0134]参见图6,本发明实施例提供了一种电子设备,该电子设备包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;处理器60用于执行存储器61中存储的可执行模块,例如计算机程序。[0135]其中,存储器61可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。[0136]总线62可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。[0137]其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器60中,或者由处理器60实现。[0138]处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。[0139]本发明实施例所提供的一种无人集群智能模型训练方法、装置和电子设备的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。[0140]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。[0141]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。[0142]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。[0143]在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。[0144]此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。[0145]在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。[0146]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献