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

一种带宽感知的去中心化联邦学习方法及装置

文献发布时间:2023-06-19 19:30:30


一种带宽感知的去中心化联邦学习方法及装置

技术领域

本发明涉及边缘智能计算技术领域,尤其是一种带宽感知的去中心化联邦学习方法及装置。

背景技术

随着5G和物联网(IoT)的快速发展,各类边缘设备(如智能传感器、智能手机、可穿戴设备等)得到充分普及,使得网络边缘产生的数据量爆炸性增长。大量的数据被收集到数据中心,可以针对不同的应用训练机器学习(ML)模型,如计算机视觉、语音识别、和疾病诊断。根据预测,数据增长的速度过快,导致在不久的将来互联网将无法容纳如此大量的数据。这意味着数据处理是一个繁重的过程,网络带宽的限制和计算能力的异构都会带来高成本和不可接受的延迟。针对这些问题,许多研究人员提出边缘智能这一概念,用来处理边缘设备收集的数据。其中联邦学习是边缘智能的代表性解决方案。

联邦学习(FL)是分布式机器学习框架的一种,能够在客户端上对收集到的大量分散数据集进行训练。这类算法假设有一定数量的企业愿意合作训练一个机器学习模型,同时不愿暴露自己的数据隐私、所有权和位置。因此,在联邦学习中,每个企业都仅使用自己本地的数据训练模型,同时提供训练的参数。并且,参数传输的过程中会进行加密,以确保数据隐私不被泄露。其中,横向联邦学习适用于数据集中用户特征重叠且用户本身不重叠的情况,而纵向联邦学习适用于数据集中用户特征略有重叠且用户本身高度重叠的情况。这些框架是目前保护数据隐私的最优解法,但在控制通信成本、缩短闲置等待问题等方面则仍有不足。去中心化联邦学习能够有效弥补这部分不足,在这一类模型中,客户端之间相互连接,进行点对点通信。每个客户端与邻居客户端交换本地参数,通过这种方式实现模型参数一致。但去中心化联邦学习仍然需要面对通信异构网络中低速链路的问题。

例如文献“S.P.Boyd,A.Ghosh,andB.Prabhakar,“RandomizedGossipAlgorithms,IEEETransactionsonInformationTheory,vol.52,no.6,pp.2508–2530,2006.”,其利用最后期限机制,针对资源异构环境,控制了客户端下载、更新和上传模型的时间。这项工作能够提升收敛速度,但可能会浪费掉被计算能力有限的客户端保管的有用数据。

再如文献“Z.Tang,S.ShiandX.Chu,“Communication-EfficientDecentralizedLearningwithSparsificationandAdaptivePeerSelection,”2020IEEE40th InternationalConferenceonDistributedComputingSystems(ICDCS),2020,pp.

1207-1208.”其利用固定网络初始拓扑结构,实现静态网络通信方案优化。但在实际应用中,网络拓扑结构始终处于动态变化中,拓扑结构中初期的高速链路可能变成低速链路,基于静态网络的通信方案无法应对,会增大通信成本。

因此,急需要提出一种逻辑简单、准确可靠的带宽感知的去中心化联邦学习方法及装置。

发明内容

针对上述问题,本发明的目的在于提供一种带宽感知的去中心化联邦学习方法及装置,本发明采用的技术方案如下:

第一部分,本技术提供了一种带宽感知的去中心化联邦学习方法,其包括以下步骤:

获取MNIST数据集,并随机采样拆分为训练集和测试集;

搭建去中心化联邦学习框架模型,并利用训练集进行训练;所述去中心化联邦学习框架采用无中心服务器的网络拓扑结构,且网络中共设有M个客户端;任一客户端托管一个全局模型参数的副本x;所述M为正整数;

对任一客户端建立共识优化算法,并采用矩阵方式对去中心化联邦学习框架模型参数进行迭代更新;在第i个客户端内设置损失函数,其表达式为:

其中,ξ表示MNIST数据集的随机采样获得的训练集;D

根据动态变化的带宽设置一个动态阈值;

根据动态阈值对相邻的客户端进行去中心化联邦学习框架模型的参数交换;

计算相邻的客户端在参数交换时所需最长的迭代时间,求得任一客户端的闲置等待时间;

根据闲置等待时间和预设好的链接带宽,求得该时间段内的传输的数据量,对交换的参数进行补充传输,缩短闲置等待时间;

利用测试集进行测试,并获取最佳的中心化联邦学习框架模型。

第二部分,本技术提供了一种带宽感知的去中心化联邦学习的装置,其包括:

数据集模块,存储MNIST数据集,并随机采样拆分为训练集和测试集;

训练模型搭建模块,与数据集模块连接;搭建去中心化联邦学习框架模型,并利用训练集进行训练;所述去中心化联邦学习框架采用无中心服务器的网络拓扑结构,且网络中共设有M个客户端;任一客户端托管一个全局模型参数的副本x;所述M为正整数;

参数更新模块,与训练模型搭建模块连接,对任一客户端建立共识优化算法,并采用矩阵方式对去中心化联邦学习框架模型参数进行迭代更新;在第i个客户端内设置损失函数,其表达式为:

其中,ξ表示MNIST数据集的随机采样获得的训练集;D

动态阈值预设模块,与参数更新模块连接,根据动态变化的带宽设置一个动态阈值;

参数交换模块,与动态阈值预设模块、参数更新模块连接,根据动态阈值对相邻的客户端进行去中心化联邦学习框架模型的参数交换;

闲置等待时间优化模块,与参数交换模块连接;计算相邻的客户端在参数交换时所需最长的迭代时间,求得任一客户端的闲置等待时间;根据闲置等待时间和预设好的链接带宽,求得该时间段内的传输的数据量,对交换的参数进行补充传输,缩短闲置等待时间;

验证模块,与训练模型搭建模块、数据集模块连接,利用测试集进行测试,并获取最佳的中心化联邦学习框架模型。

第三部分,本技术提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现带宽感知的去中心化联邦学习方法。

第四部分,本技术提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现带宽感知的去中心化联邦学习方法的步骤。

与现有技术相比,本发明具有以下有益效果:

(1)本发明巧妙地搭建去中心化联邦学习框架模型,并任一客户端建立共识优化算法,并采用矩阵方式对去中心化联邦学习框架模型参数进行迭代更新,再进行参数交换;本发明可通过自适应调整客户端之间交换的参数信息量,消除异质链路带宽造成的等待时间,有效提高训练效率。

(2)本发明巧妙地提出了动态阈值方法能够自适应地调整客户端之间交换的参数量,减少通信开销;另外,本发明提出的补充参数传输机制,能够减少大带宽客户端的等待时间,提高资源利用率,加快收敛速度;

(3)本发明巧妙地计算相邻的客户端在参数交换时所需最长的迭代时间,求得任一客户端的闲置等待时间;根据闲置等待时间和预设好的链接带宽,求得该时间段内的传输的数据量,对交换的参数进行补充传输,缩短闲置等待时间,其好处在于,能够大幅度提高通信资源利用率,加快模型收敛速度。

综上所述,本发明具有逻辑简单、准确可靠、收敛速度快等优点,在边缘智能计算技术领域具有很高的实用价值和推广价值。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需使用的附图作简单介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对保护范围的限定,对于本领域技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明的逻辑流程图。

图2为本发明中的小规模分散通信实验示意图。

图3为本发明中的大规模模拟实验示意图。

图4为本发明中不同客户端个数能达到的最高精度对比示意图。

具体实施方式

为使本申请的目的、技术方案和优点更为清楚,下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

本实施例中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

本实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。

在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。

如图1至图4所示,本实施例提供了一种带宽感知的去中心化联邦学习方法,可以根据带宽异构情况自适应地调整,有效控制了训练中的通信成本。同时提出了一种数据补充传输方案,缓解了资源异构带来的闲置等待时间过长问题。具体步骤如下:

第一步,数据采样,本实施例采用的MNIST数据集是一个公开认可的数据集,这是一个手写数字数据集,在这一数据集中首先随机采样50000个样本用于训练,另外采样10000个样本用于测试。

第二步,建立去中心化联邦学习框架

联邦学习框架能够在客户端上对收集到的大量分散数据集进行训练,去中心化意味着各个客户端利用本地数据训练本地的模型参数副本。本实施例假设M个客户端协同训练的模型的损失函数是f(x;ξ),x是客户端i本地的模型参数副本,ξ是数据集的随机采样。每个客户端本地的数据集可以表示为

第三步,训练模型

每个客户端中都共用一个相同的共识算法,其中客户端本地参数更新的矩阵操作可以表示如下:

其中,x

任一客户端在任一次迭代过程中,采用矩阵运算,其表达式为:

其中,

从公式中可以看出,每个客户端更新本地参数主要基于两部分,分别是其本地参数和接收到的邻居参数。值得注意的是,在进行(k+2)

第四步,根据动态变化的带宽设置一个动态阈值

第三步中展示的迭代可能带来相当大的通信成本,在通信资源异构的环境中十分受限。本实施例针对这一问题提出新的解决方式:当一部分参数在某次迭代中变化程度较小甚至没有变化,那么这些参数就不需要进行传输。因此,需要设计一个变化下限,当参数的变化量低于下限时就不再被传输。如果某一轮中客户端i和其邻居客户端j有一些更新的参数不满足条件,没有被交换,则在下一轮迭代中继续沿用这些参数在本地保存的最近一次的值即可。

在资源异构环境中,当带宽越大时,参数传输速度越快,相同时间内能够传输的参数量就越大。由于本实施例设计参数同步,那么对于客户端i,其邻居客户端集合中带宽更大的邻居客户端,在一轮迭代中有条件传输更多的参数。因此门限应当与带宽成反比,从而保证带宽较大的邻居客户端被允许传输的参数更多。为了降低带宽本身对于门限的影响,还需要对带宽进行归一化处理,用比例而非带宽本身对门限进行调整。

在本实施例中该动态阈值V的表达式为:

其中,R

在本实施例中,只有每一轮中变化量大于这一阈值的参数才会被进行传递,这一方法有效控制了迭代中的通信成本。

第五步,交换模型的参数

经过第四步对每一轮允许进行交换的参数进行筛选,之后对经过筛选的参数进行传输,每个客户端都需要与其所有邻居客户端交换参数,以保证最大程度上参数信息一致。

第六步,补充传输参数

第四步中提出的新阈值,能够在迭代中使得带宽更大的客户端彼此传输更多参数,但依然可能存在闲置等待时间过长的问题。因此本发明提出了一种优化的参数传输方案,通过对部分客户端之间的参数进行补充传输,缩短闲置等待时间。

在k

一个客户端训练过程中消耗的总时间可以表示为:

其中,

由于在迭代过程中,通信时间通常占主导地位,因此表示拉动操作时间的

由于第四步中提出的阈值机制,导致在客户端之间,必然存在一部分参数没有被传输。则利用这部分时间,将带宽较大的客户端的剩余参数再进行一部分补充传输,则一方面缩短了闲置等待时间,充分利用资源,另一方面也可以传输更多参数,加快收敛速度。假设在客户端i与其邻居客户端集合的参数交换过程中,邻居客户端里消耗时间最长客户端的迭代时间为

所述

则在闲置等待时间内,邻居客户端j能够额外传输的参数量如下:

其中,

在本实施例中,对交换的参数进行补充传输,缩短闲置等待时间;总闲置等待时间的表达式为:

其中,K表示训练过程中的迭代总次数。

本实施例的效果通过以下仿真与实验验证进一步说明:

实验结果:

本实施例选择MNIST数据集来训练一个小规模的神经网络模型,选择数据集中50000个样本用于训练,10000个样本用于测试。该模型的输入和输出分别是28*28像素的图片和0-9的数字。对于训练后的模型,设计了一个3层全连接的传统神经网络。选择了学习率为0.01的Adam优化器,并在3000次迭代历时中训练模型。

另外,本实施例选择分散训练方案(DT)与选择邻居和参数方案(SNAP)两种先进方案进行对比。其中DT是评估其他方案准确性的基准,在DT中,每个迭代中的参数都被转移到其他客户端。而SNAP中,所有改变的参数大于累积的参数误差阈值将被发送到邻居客户端,而其他参数可以被忽略。

首先,进行了小规模分散通信实验,建立三个客户端,且每个客户都与其他客户相连,即产生了一个3*3的网络结构。实验结果如图2,图2(a)展示了不同方案下每次迭代的模型精度。从结果中可以看出,DT方案的精度可以快速收敛并趋于稳定。原因是所有改变的模型参数都被转移到其他客户端,并汇总生成一个优秀的训练模型。还可以发现,本发明的算法在增加几次迭代后可以达到相同的性能,因为动态阈值可以保证更多的数据传输。在小规模的测试平台实验中,建议方案的准确率可以达到77%。相反,由于异质带宽造成的等待时间过长,SNAP的收敛速度相对缓慢。

图2(b)是不同方案的闲置等待时间比较。在异质带宽的条件下,DT方案中大量的数据传输会增加空闲时间,甚至造成串扰。而SNAP发送的数据变化较大,从而减少了数据传输量。然而,不同客户端的带宽也没有被考虑。由于其动态数据传输能力,本实施例可以尽可能地使用带宽,导致结果中的空闲时间可以忽略不计。值得注意的是,在小规模的实验中,等待时间不是很大。然而,在实际实验中,当网络结构和迭代次数增加时,空闲时间可以通过所提出的方案有效减少。

最后一项比较集中在总通信成本上,如图2(c)所示。正如预期的那样,DT方案的通信成本最高,而本发明方案的通信成本略高于SNAP。从结果来看,本发明可以有效地提高收敛速度,减少等待时间。

另外,本本实施例同时进行了大规模模拟,客户端的数量增加到40个,以模拟大规模的分散实验。每个客户端连接其他两个客户端作为邻居。在每个迭代中,客户端将发送变化大于阈值的参数给邻居客户端,并被汇总以形成合适的训练参数。

图3显示了40个客户测试下的模型精度、空闲时间和通信成本的比较。可以看到,即使在大规模的网络中,所有的方案都能达到合理的准确性。因此可以得出同样的结论:本实施例的准确率略低于分散式联合学习。然而,当客户端数量增加到40个时,所提出的方案在减少空闲时间方面显示出明显的改进,如图3(b)所示。应该注意的是,由于要传输的数据不足,空闲时间不会为零。通信成本如图3(c)所示。结果显示,与DT方案相比,通信成本可以大大降低。

然后,测试了不同网络规模下的模型精度变化,如图4所示。即使忽略了参数的微小变化,本实施例也能达到与DT几乎相同的性能。此外,由于采用了相同的求解框架,SNAP也达到了相同的精度。

上述实施例仅为本发明的优选实施例,并非对本发明保护范围的限制,但凡采用本发明的设计原理,以及在此基础上进行非创造性劳动而作出的变化,均应属于本发明的保护范围之内。

相关技术
  • 一种去中心化的联邦学习方法、装置及系统
  • 一种去中心化的联邦聚类学习方法、装置、设备及介质
技术分类

06120115938586