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

一种基于异构资源之上的联邦学习训练和预测方法及系统与流程

2022-03-23 00:34:08 来源:中国专利 TAG:


1.本发明属于物联网智能医疗相关领域,尤其涉及是指一种基于异构资源之上的联邦学习训练和预测方法及系统。


背景技术:

2.医疗数据——诸如电子病历(ehr)、医学影像等——一方面对精准健康的实现有奠基性的作用,另一方面,这些数据往往分散在各处,因其敏感性而很难被共享。例如:智能手表收集到了个人实时心跳数据,研究者试图使用这些数据,结合电子病历,训练模型在数月前预测中风。但是智能手表厂商和医院的病历记录,都以隐私理由拒绝数据公开。鉴于这样的关键因素,数据存储和分析的趋势正在从基于云的集中式转向分布式和设备上的。这种转变的关键使能技术是边缘计算,它通过提供计算资源以支持物联网设备卸载复杂的计算任务或应用。通过边缘计算,可以有效解决物联网设备计算能力不足、向云服务器卸载延迟高、数据安全等问题。
3.由于边缘计算和分布式机器学习的快速发展(s.arisdakessian,q.a.wahab,a.mourad,h.otrok,and n.kara,|intelligent multi-criteria iot-fog scheduling approach llsing game theory.transactions on networking,2020.),人们提出了一种新的分布式机器学习范式——联邦学习,以在边缘节点或终端设备级别,在不暴露原始数据的情况下,协同训练机器学习模型实现本地和分布式机器学习训练。联邦学习通常采用参数服务器架构,其中终端训练由参数服务器同步的本地模型。
4.联邦学习是分布式优化的一个新兴子领域,其中数据收集和模型训练都被推送到大量通信和计算能力有限的边缘客户端,来解决隐私和协作分布式学习相关的问题。然而,在资源受限的物联网设备中部署联邦学习有很多挑战,比如设备在训练中的异步参与,以及防止恶意设备参与的必要性等。物联网设备在计算速度和网络行为方面具有高度异构性,并且分布广泛。许多此类分布式物联网基础设施的应用需要用户隐私保护和有限时间(低延迟)响应。因此,在资源高度异构的物联网中,一个经济实用的隐私保护协作学习解决方案是有用的。
5.现有的联邦学习的研究中,大量研究专注于数据统计挑战以及多参与方的激励问题的研究,企图加快联邦学习训练的进度,已有很多文献在这些方面展开了调研。然而,通信效率与计算效率在联邦学习中的影响也是一个不容小觑的问题,若联邦学习训练过程中存在掉队者(因通信或计算力低下的原因),则会影响整个联邦学习的进度,拉长联邦学习训练所花费的时间(h.b.mcmahan,e.moore,d.ramage,s.hampson,and b.a.arcas,“communication-efficient learning of deep networks from decentralized deta,"in proceedings of machine learning research,vol.54,pp.1273-1282,apr.),因此有必要在计算和通信方面优化联邦学习的训练速度,特别是在一些高动态实时场景下,这种问题更是愈发关键。


技术实现要素:

6.本发明的主要目的在于克服现有技术中的上述缺陷,提出一种基于mab的异构联邦学习训练方法,使用bandit模型来区分设备的计算、通信资源的异构性,并将利用估计出的bandit模型来选择每轮联邦学习的训练设备,通过各个设备的计算异构性对不同设备的训练强度进行调整,在边缘设备与设备之间采用异步的通信方式减缓同步联邦学习每轮的等待时间,以及慢设备带来的训练速度过慢的影响,同时在医疗数据方面对精准健康的实现有奠基性的作用,另一方面,这为分散在各处的数据能够被共享,能够改善联邦学习训练方式,加速联邦学习训练的速度。
7.本发明至少通过如下技术方案之一实现。
8.一种基于异构资源之上的联邦学习训练和预测方法,包括如下步骤:
9.s1、服务端确定卷积神经网络模型的学习任务和预测函数;
10.s2、参数服务器初始化神经网络模型参数,以及各个边缘设备的多臂老虎机(mab)模型参数;随机选择若干设备,向每个被选中设备发布预设的卷积神经网络模型参数;
11.s3、设备利用本地数据训练服务器发来的模型参数后将训练结果返回给服务端;
12.s4、参数服务器在收到满足条件的本地模型参数后,利用设备训练所产生的信息来更新卷积神经网络的全局模型参数;
13.s5、服务器根据mab模型,从候选边缘设备列表中选择部分边缘设备进行本地模型训练;
14.s6、利用被选的边缘设备的mab模型,为被选中的边缘设备设置训练强度,并回到步骤s3,直到全局模型聚合的次数到达预设的数目。
15.进一步地,步骤s1中包括以下步骤:
16.s11、模型初始化:初始化卷积神经网络模型参数;边缘设备i的模型参数为wi,服务器的全局模型参为数w;
17.s12、设置训练任务和预测函数:定义特征空间x和标签集合y={1,
···
,b},b为标签总数;设(x,y)表示标记样本,x∈x,y∈y;
18.设置预测函数,用于根据输入的特征信息预测对应的结果:
19.fw:x
→s20.s={z|∑
j∈t
zj=1,zj≥0}
21.式中,s表示为每个样本对应不同标签的概率向量,zj表示样本归类为标签j的概率,w为预测函数的参数,即训练的模型参数;函数fw为每个样本产生的概率向量;
22.s13、预测函数的损失函数定义为交叉熵:
[0023][0024]
其中p表示真实的概率分布,为预测样本x属于第j类标签的概率。
[0025]
进一步地,利用联邦学习训练卷积神经网络模型模型,训练内容具体包括:服务器和边缘设备的通信内容(w,τ)和(wi,tc),其中w为预测函数的全局的参数,τ表示服务端为边缘设备设置的训练强度,wi表示边缘设备i所训练出来的本地参数,tc表示边缘设备执行本
地训练所耗费的时间。
[0026]
进一步地,步骤s5包括:参数服务器利用mab模型估计设备计算、通信资源的异构性,并据此从候选边缘设备列表中选择部分边缘设备进行本地模型训练,具体包括:
[0027]
参数服务器为每个边缘设备i维护关于计算能力和通信能力的mab模型参数:δi分别表示计算能力的经验均值、通信能力的经验均值、和用于估计ucb上界的信息参数;
[0028][0029][0030][0031]
其中,ni表示设备i至今被选中的次数,为设备i通信能力的一次观测值,为设备i计算能力的一次观测值,m为边缘设备的总数;设备i的计算能力的上界表示为:
[0032]
每个设备i的通信能力的上界表示为:
[0033]
在获取到每个设备的计算能力和通信能力的上界,定义每个设备的奖励ri:μ1、μ2表示为奖励设置中计算能力和通信能力的权重参数;
[0034]
以各个设备的奖励作为被选中的权重,随机从候选的设备列表中选出若干设备,选择的设备个数和当前活跃的设备数即当前正处于训练的设备数之和等于c,且不含重复设备;具体方式采用轮盘赌算法,首先计算所有设备权重的总和sum,生成从0-sum之间的一个随机数random,然后遍历所有的设备,将sum减去设备的权重,直到减为负数时该设备被选择中,将此设备从中剔除,反复执行上述选择方法,得到被选中的设备列表。
[0035]
进一步地,参数服务器使用适应性或固定策略,利用被选的边缘设备的bandit模型为边缘设备设置训练强度τ。
[0036]
进一步地,所述适应性策略为:服务端维护全局的平均训练能力参数
[0037][0038]
其中m为边缘设备的总数;在选中的边缘设备列表中,训练强度的设置方式为:
[0039][0040]
其中,τ0为初始强度,为设备i的计算能力的上界。
[0041]
进一步地,固定策略包括:若服务端在t时进行全局更新那下次全局更新的时机为
t t,对被选中的每个边缘设备i,训练强度的设置为:
[0042][0043]
其中β是超参数,rand()表示(0,1)之间的随机数,hi表示一次通信的数据量,vi边缘设备i的数据传输速率,参数t表示服务端全局更新的时间间隔。
[0044]
进一步地,参数服务器更新卷积神经网络的全局模型参数具体包括:
[0045]
在进行全局聚合时,每个设备i所返回的内容包括以下信息:wi、τi,、bi,,分别表示设备模型参数、训练模型所使用的训练强度、训练模型所基于的全局模型版本、训练时设备所使用的数据量大小;这些都打包作为集合的元素,全局模型参数聚合策略为:
[0046][0047]
其中,
[0048][0049]
式中,k表示当前的全局模型版本,表示每个设备所返回的内容集合,w为全局模型参数,gi为不同边缘设备的本地模型参数的聚合权重,分子表示训练强度越大权重越高,分母表示边缘设备训练的模型参数所基于的全局模型参数越旧则权重越低,k为当前服务器的全局模型版本。
[0050]
实现所述的一种基于异构资源之上的联邦学习训练和预测方法的系统,包括:
[0051]
设备选择单元:采用mab模型区分设备的计算、通信异质性,并利用区分出的这两种信息作为联邦学习中每一轮设备被选择的依据,得到选择的设备列表;
[0052]
设备训练强度设置单元:根据每个设备mab模型所估计出的设备计算能力,为将选中的设备设置相应的训练强度,进行联邦学习训练;
[0053]
全局更新控制和聚合单元:根据预先设置好的控制策略和控制参数,等待满足预先设置的条件时执行全局模型聚合、参数更新。
[0054]
进一步地,全局更新控制和聚合单元具体包括适应性策略和固定策略:
[0055]
适应性策略:设置的超参数为α,设每次活跃的设备数最多为n,采用适应性策略时,服务端等待收到α
×
n个设备更新结果时触发全局参数更新;
[0056]
固定策略:该策略需要设置的超参数有β、t,采用固定策略周期性地触发全局参数更新,周期为t,其中超参数β则是用于设置被选中设备的训练强度参数。
[0057]
与现有技术相比,本发明具有如下有益效果:
[0058]
(1)本发明采用联邦学习方式能够跨机构的使用敏感数据,隐私计算(privacy computing),即让参与方在不泄露各自数据的前提下通过协作对数据进行联合机器学习和联合分析,在不泄露隐私的前提下联合多方数据,为多方带来增益。
[0059]
(2)本发明为了优化训练过程,使用bandit模型可以区分设备的计算、通信资源的异构性,并将利用估计出的bandit模型来选择每轮联邦学习的训练设备,通过各个设备的计算异构性对不同设备的训练强度进行调整,在边缘设备与设备之间采用异步的通信方式减缓同步联邦学习每轮的等待时间,以及慢设备带来的训练速度过慢的影响;
[0060]
(3)本发明充分考虑到异步训练可能带来的模型不一致和训练不一致的情况,能够改善联邦学习训练方式,加速联邦学习训练的速度。
附图说明
[0061]
图1为本发明实施例一种基于异构资源之上的联邦学习训练和预测方法的流程图;
[0062]
图2为本发明实施例提供的基于异构资源之上的联邦学习优化系统的结构图。
具体实施方式
[0063]
以下通过具体实施方式对本发明作进一步的描述。
[0064]
本发明通过研究移动边缘计算中计算卸载优化问题,提出了一种基于mab的异构联邦学习训练方法,同时可以保护用户的隐私数据;bandit模型来区分设备的计算、通信资源的异构特性;
[0065]
如图1所示,本实施例的一种基于异构资源之上的联邦学习训练和预测方法,包括如下步骤:
[0066]
采用联邦学习训练卷积神经网络(cnn)模型:
[0067]
初始化模型参数;边缘设备i的模型参数为wi,服务器的全局模型参数为w;考虑一个特定的训练任务(以分类某种症状任务为例):设(x,y)表示一个特定的标记样本,x是用户的健康特征信息,y是特征对应的某种症状,x∈x,y∈y,x表示紧凑的特征空间,y={1,
···
,b}表示标签集合,b为标签总数。
[0068]
定义预测函数,根据输入的特征信息预测症状的结果:
[0069]fw:
x
→s[0070]
s={z|∑
j∈y
zj=1,zj≥0}
[0071]
式中,s表示为每个样本的一个对应不同标签的概率向量,w为预测函数的参数,即服务器的全局模型参数,函数fw为每个样本产生一个概率向量,zj表示样本归类为标签j的概率;
[0072]
其预测函数的损失函数可定义为交叉熵:
[0073][0074]
式中p表示训练目标所需要学习的真实的概率分布,为预测样本属于第i类的概率;
[0075]
学习问题是优化预测函数:
[0076][0077]
在联邦学习中,设总共有m个边缘设备(所述边缘设备包括智能手表、传感设备、手机等);第j个设备具有遵循数据分布p(j)的m(j)个数据样本,这是该设备上样本{x,y}的联合分布。在每个t回合中(全局聚合的次数),选择若干个边缘设备,每个设备从服务器下载
当前全局模型权重参数w
t
,并在本地进行以下随机梯度下降(sgd)训练:
[0078][0079]
式中为边缘设备进行本地训练所产生的模型参数,w
t-1
表示边缘设备在开启本地训练时服务器所发送的的全局模型参数、η为学习率、表示损失函数所产生的梯度,损失函数l(w
t-1
)由交叉熵表示为)由交叉熵表示为为预测样本x属于第i类标签的概率。
[0080]
然后所有设备将设备自身的模型参数上传到边缘服务器;将边缘服务器的参数进行更新并进行全局聚合,即所有边缘服务器将自己的模型参数上传到全局云服务器,并将云服务器的参数进行更新。
[0081]
具体实施流程如下:
[0082]
初始时,服务端随机选择c个设备,保存至集合中,服务器向每个设备发送(τi,k=0,w,t

),其中τi为设备i设置的训练强度,k=0为发送的模型版本(初始为0,每执行一次全局模型聚合,全局模型版本就加一),w为当前的全局模型参数,t

为发送参数时的时间戳;
[0083]
收到参数数据的设备i,首先记录收到参数的时间戳ts,然后,用随机梯度下降sgd算法在本地数据集上对模型参数w下进行τi次迭代训练(wi=w),得到本地训练模型参数wi,每次迭代训练的公式为:
[0084][0085]
式中表示损失函数对模型参数所产生的梯度,并在训练结束时记录时间戳te,最后将(wi,t
e-ts,k,t

)打包发送给服务端,参数数据分别表示训练后的本地模型参数wi,训练过程耗费的时间t
e-ts,k表示本次设备训练所基于的全局模型的版本,t

表示设备接收到模型参数的时间戳(收到参数数据的设备i会并行地执行这一过程)。
[0086]
此时服务端有一个更新进程来接收边缘设备发送过来的数据(wi,tc,bi,t

),并将(wi,tc,bi,t

,t)作为元组放入集合中(bi为本地模型参数wi所基于的全局模型版本,tc为训练强度为τi时训练过程耗费的时间t
e-ts,t为服务端在收到数据时的时间戳),此时服务端根据预先设置的更新策略来进行下一步操作;预先设置的更新策略包括适应性策略和固定策略。
[0087]
采用适应性策略时,服务端在集合中所收到的边缘设备发来的元素个数大于α
×
c时触发更新程序,α∈(0,1]表示异步训练的程度,越接近1则越接近于同步训练,越接近0则越趋近于异步训练;
[0088]
采用固定策略时,服务端则会周期性地触发更新程序,周期为t;更新程序被触发时会执行三个操作:
[0089]
更新全局模型参数w:
[0090][0091]
其中,
[0092][0093]
式中为全局模型参数,gi为不同边缘设备的本地模型参数的聚合权重,分子表示训练强度越大权重越高,分母表示边缘设备训练的模型参数所基于的全局模型参数越旧则权重越低,di表示边缘设备i的样本数据集合。
[0094]
k表示当前的全局模型版本,采用这种模型聚合方式主要是考虑到异构设备的训练强度的差异、本地模型的新旧程度的不同以及数据量的差别,训练强度越大的设备所带来的贡献理应越高,而本地模型所基于的全局模型版本的老化程度越高那么带来的模型偏差会较高所以模型参数的权重应当越小;
[0095]
然后集合置空;k=k 1;
[0096]
之后的每个回合k中,服务端用mab模型来选择边缘设备,具体地:
[0097]
参数服务器为每个边缘设备i维护关于计算能力和通信能力的mab模型参数,先利用前一回合所接收到的数据按如下规则更新设备i计算能力的均值设备i通信能力的均值设备i被选中的次数ni:
[0098][0099][0100]
ni=ni 1
[0101]
计算用于估计ucb上界的信息参数:
[0102][0103]
其中,ni表示设备i至今被选中的次数,k=ni,为设备i通信能力的一次观测值,为设备i计算能力的一次观测值,m为边缘设备的总数;
[0104]
然后更新所有设备的计算、通信能力的上界:
[0105][0106][0107]
计算上界的方式是一种乐观估计,通过不断地观测各个设备的计算、通信能力值来区分它们的能力差异;
[0108]
这里计算能力的一次观测值表示为:
[0109][0110]
其中为设备i第k次训练的训练强度,设备i第k次训练在计算上所花费的时间,即设备i训练结束后向服务器返回的tc值;
[0111]
通信能力的一次观测值定义为:
[0112][0113]
其中为设备i第k次训练时的和服务器通信的数据量,设备i第k次训练在和服务器通信时所花费的时间,即t-t
′‑
tc;
[0114]
在获取设备的计算和通信的上界之后,得到设备i的选择权重
[0115]
采用轮盘赌算法,计算所有设备权重的总和sum=∑ri,生成从0-sum之间的一个随机数random,然后遍历所有的设备,将random减去设备的权重,直到减为负数时该设备被选择中,将此设备从中剔除,反复执行轮盘赌方法,得到被选中的设备列表s;
[0116]
在选好设备之后,需要根据预设的策略设置训练强度,对于每个设备i∈s,其训练强度τi设置根据预设的方法有两种策略适应性和固定:
[0117]
适应性策略:
[0118][0119]
其中,τ0为初始强度,为全局的平均计算能力;
[0120]
这种修改方式是为了根据设备的计算能力来调整训练强度,当边缘设备的计算能力较弱时,较高的训练强度势必会导致更长的训练时间,为此,理应降低其迭代训练的次数;类似地,当边缘设备的计算能力较强时,应增加其迭代训练的次数;判断能力强弱的准则则是以全局的平均计算能力为基准:
[0121][0122]
固定策略:
[0123][0124]hi
表示一次通信的数据量,vi边缘设备i的数据传输速率;
[0125]
β是超参数,rand()表示(0,1)之间的随机数;该方法的使用是基于以下原因:
[0126]
根据设备计算能力的定义,可以粗略地认为设备i在训练强度τi下的训练时间为
[0127]
那么从服务器发送一个参数到接收到这个参数的更新所耗费的时间大致为
(通信耗费的时间),则希望参数尽可能在下一回合周期t开始之前到达,而又不希望训练得太少,所以将设备i在训练强度τi下的训练时间设置为:
[0128][0129][0130]
随后同样将(τi,k,w,t

)发送给每个被选中设备,被选中设备同样如上述一般参与到本地训练中,服务端的触发更新和更新策略同前文所述一样;
[0131]
直到回合数到达预设的数目k,训练结束。
[0132]
如图2所示的一种基于异构资源之上的联邦学习训练和预测方法的系统,包括:
[0133]
设备选择单元201:采用mab模型区分设备的计算、通信异质性,并利用两种信息作为联邦学习中每一轮设备被选择的依据,得到选择的设备列表;
[0134]
设备训练强度设置单元202:根据每个设备mab模型所估计出的设备计算能力,为将选中的设备设置相应的训练强度,进行联邦学习训练;
[0135]
全局更新控制和聚合单元203:根据预先设置好的控制策略和控制参数,等待满足预先设置的条件时执行全局模型聚合、参数更新。全局更新控制和聚合单元具体包括适应性更新控制策略和固定更新控制策略:
[0136]
适应性策略:设置的超参数为α,设每次活跃的设备数最多为n,采用适应性策略时,服务端等待收到α
×
n个设备更新结果时触发全局参数更新;
[0137]
固定策略:该策略需要设置的超参数有β、t,采用固定策略是周期性地触发全局参数更新模块,周期为t,其中超参数β则是用于设置被选中设备的训练强度设置时所需要的参数。
[0138]
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献