本发明专利技术公开了一种基于SDN组网的多设备联邦学习系统,系统内采用SDN进行组网连接,该系统将边缘设备根据互相之间的延迟分为数个小组,组内采用去中心化的联邦学习策略进行联邦学习训练;在完成组内训练后,根据SDN中提供的信息在每组中选择网络性能最强的设备,让其将本组模型发送给中心节点,由中心节点对各组模型进行聚合。本发明专利技术通过对原有联邦学习过程的改良,更充分地使用了边缘设备的数据、算力与网络带宽,同时降低中心节点的压力,提高了模型训练效率,进而使各边缘设备上的数据能够更快地转化为深度学习模型,有效提升了深度学习服务的质量。服务的质量。服务的质量。
【技术实现步骤摘要】
一种基于SDN组网的多设备联邦学习系统
[0001]本专利技术涉及一种基于SDN组网的多设备联邦学习系统,属于联邦学习系统
技术介绍
[0002]近年来,深度学习技术在工业界和学术界变得无处不在,并且成为许多工业任务和活动的支柱。不断发展的深度学习技术提供了精度越来越高的模型,然而其性能的提高也伴随着模型的大小以及计算复杂度的上升。
[0003]与此同时,雾计算、云计算、边缘计算以及嵌入式终端接入物联网技术逐渐普及,为深度学习服务的应用提供了新的场景。这些不同的应用场景对硬件设备的计算能力、实时性和功耗体积等方面有着不同的要求。例如,云端大数据和深度学习等计算密集型的场景应用具有任务单一、计算密集、数据可复用率高的特点,因而要求处理器具有强大的计算能力以及数据带宽;而智能家居、工业物联网等场景则对设备的能耗、体积有严格的要求,需要以牺牲设备的部分计算与网络性能为代价换取更小的体积与能耗。
[0004]随着边缘设备日渐普及,规模不断增大,大量有价值的信息零散地分布在这些设备中,形成一个个数据孤岛。联邦学习作为一种分布式的机器学习框架,可以协同分布在多个异构设备上的数据,最终获取基于全局数据的机器学习模型。联邦学习具有天然的隐私保护特性,该方法先在存储数据的节点本地对模型进行训练,在一轮训练结束后将模型的更新信息传回服务器,由服务器聚合各个本地节点的更新,将其汇总为新的深度学习模型,再返回到本地。通过联邦学习,参与方无需将原始数据上传到服务器就可以使用自己的数据训练深度学习模型,因而可以在保护设备中的个人隐私及敏感信息的前提下让零散的数据汇聚起来,发挥更大的价值。在数据隐私与安全问题备受关注的今天,联邦学习在避免数据泄露、避免中心点数据受到攻击等方面具备显著优势。
[0005]然而,随着业界与学界对联邦学习的关注不断增加,其自身存在的各类问题也开始凸显:
[0006]a、不同的的应用场景对边缘设备的具体要求各不相同,因而联邦学习的参与方之间会在算力和网络条件上存在显著的差异,且各设备拥有的数据量参差不齐,这就导致训练进度的不同步,最终影响模型的训练效率。
[0007]b、在真实的联邦学习场景中,各节点往往分散在世界各地,并利用广域网来实现互联,因而带宽有限,在参与方节点过多时,中心节点无法提供充足的带宽来同时聚合所有设备上的模型,因而会不可避免地产生网络拥塞,从而导致训练中通信消耗的时间过长,影响模型训练效率。
[0008]目前已有的联邦学习系统可以使用中心化的架构或去中心化的架构:
[0009]1)中心化的架构由一个中心服务器与多个参与者组成。其中参与者为数据的拥有者,中心服务器将初始模型分发给各参与者,由它们使用各自的数据进行训练。训练的过程中,中心服务器会定期收集各参与者训练过的模型,并聚合这些模型,形成一个基于全部数
据的新模型,再将新模型下发到各设备,然后如此循环往复,直到模型收敛,即训练完成。
[0010]2)去中心化的架构不需要中心节点的参与。在每次迭代中,参与方使用本地数据训练模型,并将训练后的模型发送到选定的一方,选定方使用其本地数据和新模型再度更新模型,直到所有参与方都更新了模型,最后将模型广播给所有参与方。为了保证模型的公平性,充分利用各方数据,参与方事先约定迭代相同的轮数。
[0011]基于联邦学习系统发展过程中发现的问题,本专利技术设计了一种针对大量移动设备的一种基于SDN组网的多设备联邦学习系统。为了在复杂的网络环境下尽可能高效地传递信息,并尽可能地利用算力不同的各设备上的数据,本专利技术采用软件定义网络(Software Define Network,SDN)的方式组织各设备。
[0012]区别于传统网络,SDN的核心思想在于控制转发分离,将传统网络中交换机的控制功能,即控制转发规则,与转发功能,即接收上一个节点发来的数据并发往下一个节点,分离开来。SDN的体系结构中自底向上包括数据转发层、控制层和应用层,其中数据转发层负责按照既定的转发规则完成数据的转发,控制层可以获得网络的全局信息,并可以通过控制交换机的流表来实现控制网络数据的具体转发方式以及转发逻辑的效果。应用层用于服务提供商开发用户所需要的应用,同时也可以监控控制层和转发层的运行状态,优化网络运行状态。目前,应用层主要提供的服务包括QoE、流量监控、安全与防火墙、拓扑发现、负载均衡等,这些服务最终都以应用程序的方式表现,通过北向接口与SDN控制层进行数据交互。这些应用基于控制层提供的网络信息,向控制层发出指令,由控制层对连接和转发规则进行管理,由转发层负责执行转发规则,最终合作实现网络的全局调配与优化。
[0013]通过SDN连接各设备的方式,能够实现对全局网络资源的掌握,进而根据各节点计算能力调整节点之间的连接与带宽,以解决算力、网络差异对模型训练效率的影响。
[0014]为了解决设备过多时负责聚合模型的中心节点对网络带宽要求较大,会造成网络拥塞的问题,本专利技术提出了一种分为两个阶段的联邦学习框架。该框架将联邦学习边缘设备根据互相之间的延迟分为数个小组,在每组之内的各设备距离较近,延迟较小,组内采用去中心化的联邦学习策略进行联邦学习训练;在完成组内训练后,根据SDN中提供的信息在每组中选择网络性能最强的设备,让其将本组模型发送给中心节点,由中心节点对各组模型进行聚合。通过这样分组的方式,能够减轻中心服务器的压力,同时由于组内各设备间延迟低,即使采用去中心化的策略也不会有过高的时间代价。
技术实现思路
[0015]专利技术目的:针对现有技术所存在的问题,本专利技术提供一种基于SDN组网的多设备联邦学习系统,一方面通过层次化联邦学习训练技术,实现大量节点之间的高效聚合,达到高效协同训练的目标,另一方面通过全局网络状态的实时感知技术,实时感知各节点的网络连接情况,以实现动态调整连接,进一步提高联邦学习模型训练效率。
[0016]技术方案:为实现上述目的,本专利技术提供一种基于SDN组网的多设备联邦学习系统,包括中心节点及边缘设备,且系统内采用SDN进行组网连接,该系统采用以下步骤进行联邦学习训练:
[0017]步骤1、边缘设备的初始化:
[0018]以组内低延迟为原则将加入联邦学习的边缘设备分为数个小组,并通过各组中可
用网络带宽最大的边缘设备将初始模型下发到同组边缘设备;
[0019]步骤2、组内去中心化模型训练:
[0020]各组边缘设备在组内采用去中心化的联邦学习策略进行联邦学习训练,并通过各组中可用网络带宽最大的边缘设备将训练好的本地模型发送给中心节点;
[0021]步骤3、组间中心化模型聚合:
[0022]中心节点在收到各组模型后进行加权聚合,生成本轮训练的最终模型,并以此模型为初始模型重复步骤1
‑
3,直到完成约定的轮数,即可结束训练。
[0023]进一步的,所述步骤1具体包括:
[0024]步骤1.1:边缘设备在加入联邦学习时,首先向中心节点发出加入SDN本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于SDN组网的多设备联邦学习系统,其特征在于,包括中心节点及边缘设备,且系统内采用SDN进行组网连接,该系统采用以下步骤进行联邦学习训练:步骤1、边缘设备的初始化:以组内低延迟为原则将加入联邦学习的边缘设备分为数个小组,并通过各组中可用网络带宽最大的边缘设备将初始模型下发到同组边缘设备;步骤2、组内去中心化模型训练:各组边缘设备在组内采用去中心化的联邦学习策略进行联邦学习训练,并通过各组中可用网络带宽最大的边缘设备将训练好的本地模型发送给中心节点;步骤3、组间中心化模型聚合:中心节点在收到各组模型后进行加权聚合,生成本轮训练的最终模型,并以此模型为初始模型重复步骤1
‑
3,直到完成约定的轮数,即可结束训练。2.根据权利要求1所述的一种基于SDN组网的多设备联邦学习系统,其特征在于,所述步骤1具体包括:步骤1.1:边缘设备在加入联邦学习时,首先向中心节点发出加入SDN请求,并在收到中心节点下发的当前节点列表后,进一步测试本身到各已有节点的延迟,选择延迟小于设定阈值的节点作为一个分组方案,发送到中心节点;步骤1.2:中心节点在收到该边缘设备发来的分组方案时,根据已有分组情况为该边缘设备进行分组,并返回该边缘设备所在组的节点列表;步骤1.3:在收到中心节点发来的实际组内节点列表后,该边缘设备通知组内的其他边缘设备更新分组信息,并根据当前网络情况,请求可用带宽最大的节点向其发送训练中的模型作为该边缘设备的初始模型。3.根据权利要求2所述的一种基于SDN组网的多设备联邦学习系统,其特征在于,所述中心节点的...
【专利技术属性】
技术研发人员:许封元,吴昊,赵鑫,柯晓鹏,宰晓晨,
申请(专利权)人:南京大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。