CN115037618B - 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台 - Google Patents

一种基于KubeEdge的轻量级边缘智能协同联邦学习平台 Download PDF

Info

Publication number
CN115037618B
CN115037618B CN202210634941.5A CN202210634941A CN115037618B CN 115037618 B CN115037618 B CN 115037618B CN 202210634941 A CN202210634941 A CN 202210634941A CN 115037618 B CN115037618 B CN 115037618B
Authority
CN
China
Prior art keywords
edge
cloud
module
core module
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210634941.5A
Other languages
English (en)
Other versions
CN115037618A (zh
Inventor
王瑞锦
宋晓童
何玉萍
黄兆康
赖金山
邓浩然
张传鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202210634941.5A priority Critical patent/CN115037618B/zh
Publication of CN115037618A publication Critical patent/CN115037618A/zh
Application granted granted Critical
Publication of CN115037618B publication Critical patent/CN115037618B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,包括Cloud Core云端核心模块、Edge Core边缘核心模块、云控制系统、客户端;Edge Core边缘核心模块上部署有边缘聚合中心;Cloud Core云端核心模块上部署有云聚合中心。本发明将边缘计算和联邦学习进行有效的结合,在KubeEdge平台基础上实现了高效率、高准确率、可用、可扩展的边缘智能协同联邦学习,不仅在数据应用上提供轻量级、低时延、安全可靠的平台支持,而且使联邦学习的实验环境更加仿真,实现更为精准、有效的机器学习建模,满足智能交通、智慧园区、智慧能源、智慧工厂、智慧银行、智慧工地、CDN等行业中的用户隐私保护、数据安全的需求,进而更好地为智慧城市及相关配套产业的发展提供良好的基础和保障。

Description

一种基于KubeEdge的轻量级边缘智能协同联邦学习平台
技术领域
本发明涉及联邦学习技术领域,具体涉及的是一种基于KubeEdge的轻量级边缘智能协同联邦学习平台。
背景技术
边缘计算,是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务。其应用程序在边缘侧发起,能产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。目前关于边缘计算平台的研究有很多,如ParaDrop、Cloudlet、PCloud以及由华为云于2018年11月开源的云原生边缘计算平台KubeEdge,等等。
以KubeEdge为例,KubeEdge就是将Kubernetes原生的容器编排和调度能力拓展到边缘,并为边缘应用部署、云与边缘间的元数据同步、边缘设备管理等提供基础架构支持,目前已广泛应用于智能交通、智慧园区、智慧能源、智慧工厂、智慧银行、智慧工地、CDN等行业,为用户提供了一体化的边端云协同解决方案。
联邦机器学习又名联邦学习、联合学习、联盟学习。联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。
目前,基于边缘计算的联邦学习平台基本未见报道,一方面,根据上述介绍可知,如果能将边缘计算与联邦学习进行有效的结合,可以在数据应用上提供低时延、高效率、可扩展、安全可靠的平台支持;另一方面,是利用边缘计算的协同效应,可以使联邦学习的实验环境更加仿真,从而实现更为精准、有效的机器学习建模。如此,即可更好地满足智能交通、智慧园区、智慧能源、智慧工厂、智慧银行、智慧工地、CDN等行业中的用户隐私保护、数据安全的需求,进而更好地为智慧城市及其相关配套产业的发展提供良好的基础和保障。
发明内容
本发明的目的在于提供一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,通过将将边缘计算与联邦学习进行有效的结合,不仅在数据应用上可以提供轻量级、低时延、高效率、可扩展、安全可靠的平台支持,而且可以使联邦学习的实验环境更加仿真。
为实现上述目的,本发明采用的技术方案如下:
一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,包括Cloud Core云端核心模块和与Cloud Core云端核心模块通信的Edge Core边缘核心模块,还包括:
云控制系统,用于实现对Cloud Core云端核心模块和Edge Core边缘核心模块的控制;
边缘聚合中心,部署于Edge Core边缘核心模块,用于接收端设备上传的部分模型输出,并以此进行神经网络训练,更新局部模型参数,然后上传至Cloud Core云端核心模块;
云聚合中心,部署于Cloud Core云端核心模块,用于聚合多个Edge Core边缘核心模块上传的局部模型参数并添加高斯噪声更新全局模型参数,然后将聚合结果在云端备份,并返回给Edge Core模块和端设备;
客户端,部署于端设备上,分别连接Cloud Core云端核心模块和Edge Core模块,用于接收联合学习的指令。
具体地,所述云控制系统包括控制模块,受控制模块控制、用于实现对crd资源处理的CrdClient模块,受控制模块控制、用于从Cloud Core云端核心模块获取信息的Kcclient模块,以及受控制模块控制、用于操作YAML配置文件的dyClient模块。
具体地,所述客户端包括:
客户端控制器,用于联邦学习过程控制和状态转换,该客户端控制器通过MQTT客户端与Edge Core模块通信,同时,该客户端控制器通过设备接入客户端与Cloud Core云端核心模块通信;
联邦学习驱动模块,用于以轮询方式查询机器学习的运行状态,并实时上报客户端控制器;同时,联邦学习驱动模块也会检查目录下的文件,并通过文件与客户端控制器通信,使客户端控制器异步停止或启动联邦学习;
深度学习模块,用于创建用户自定的深度学习模型或将集中式机器学习模型更改为联邦学习。
进一步地,所述客户端控制器与MQTT客户端之间还设置有设备孪生值服务器。
具体地,边缘聚合中心更新局部模型参数的过程如下:
(1)端设备和Edge Core边缘核心模块均从Cloud Core云端核心模块下载初始模型;
(2)端设备利用自身数据对初始模型进行训练,然后将部分模型输出发送给EdgeCore边缘核心模块;
(3)边缘聚合中心以部分模型输出的分量作为输入进行神经网络的训练,得到一个局部模型;
(4)各个Edge Core边缘核心模块将局部模型参数发送到Cloud Core云端核心模块。
再进一步地,本发明还包括与云控制系统通信的Web端,该Web端包括:
集群可视化监控模块,用于平台中云-边-端节点状态的监控和管理;
任务中心模块,用于管理模型训练任务和可视化边缘智能协同进行模型训练过程;
模型管理模块,用于管理所有训练模型并进行初始模型的添加。
与现有技术相比,本发明具有以下有益效果:
(1)本发明在KubeEdge平台提供的边云协同基础上,通过添加设备状态的管理,并在Cloud Core云端核心模块和Edge Core边缘核心模块分别部署云聚合中心和边缘聚合中心,可适应多种聚合方式的联邦学习,实现自动化云边端协同的高效率计算,进而达到了云-边-端智能协同的目的。
(2)本发明将KubeEdge复杂的接口进行封装,提供给用户简单易用的交互接口,使用难度远远小于KubeEdge;同时,本发明搭建了集群监控和联邦学习管理一体化的Web端,用户可在本发明平台Web端上进行集群的管理,也可以进行联邦学习模型的训练,操作便捷、高效,具有非常良好的用户体验。
(3)本发明在收集各个边缘服务器的局部模型参数后,通过云聚合中心聚合,然后添加高斯噪声更新全局模型参数,与传统的隐私保护机制相比,本发明采用高斯机制来扰乱信息实现差分隐私的方案,具有可量化的隐私预算和用户敏感数据隐藏的特点。如此,本发明可在保证全局模型参数尽可能准确的情况下做到反馈时的隐私保护。
(4)本发明具有极强的可扩展性。一方面,本发明平台的调度能力和设计本身提供的接口有利于进行二次开发新的应用或平台;另一方面,本发明采用的联邦学习架构设计有利于多种形式联邦学习模型和应用的部署。
(5)本发明基于KubeEdge搭建,其通过重组Kubernetes中的kubelet功能模块,对kubelet不必要的部分进行了精简,大大减少了内存占有量,提高了资源利用率的同时也降低了边缘节点的内存消耗,使得平台真正达到了轻量级的层次。
(6)本发明平台使用HTTPS通信加密协议,当端设备加入集群时,云端会用基于键值对的端设备验证方法进行身份验证,保证了系统的安全。
附图说明
图1为本发明-实施例的系统框架示意图。
图2为本发明-实施例中云控制系统的结构框架示意图。
图3为本发明-实施例中客户端的结构框架示意图。
图4为本发明-实施例中的一种集群监控页面示意图。
图5为本发明-实施例中的一种应用部署页面示意图。
图6为本发明-实施例中的一种任务中心页面示意图。
图7为本发明-实施例中的一种模型管理页面示意图。
具体实施方式
下面结合附图说明和实施例对本发明作进一步说明,本发明的实施包含但不限于以下实施例。
实施例
本实施例提供了一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,其是在KubeEdge基础上进行部署,以实现边缘计算和联邦学习的有效结合。本实施例所设计的联邦学习平台的系统框架如图1所示,其中,Cloud Core云端核心模块和Edge Core边缘核心模块均属于KubeEdge中的组件,而本实施例则在此基础上从控制系统设计、联邦学习系统设计与安全和认证三个方面展开进行部署,包括云控制系统、云聚合中心、边缘聚合中心、客户端。
下面对上述部分一一进行阐述。
一、云控制系统
本实施例中的云控制系统是模块化和可扩展的,以便于实现对KubeEdge的控制。云控制系统的底层由各种Go-Client组件组成,其中,CrdClient组件用于管理资源,Kcclient用于从Cloud Core云端核心模块中获取各种信息;dyClient是一个灵活的动态组件,用于直接操作YAML配置文件。此外,配置组件可以从文件系统读取系统的配置。在系统的中间是控制器,它负责将各种复杂的任务分解成不同底层组件的动作组合,并控制这些组件按需执行任务。系统的顶部是一些可扩展的服务。例如,开发一个平台服务(命名为“KubeFL”)来演示不同的联邦学习模型,开发一个HTTP服务器来允许外部设备主动访问系统等。总之,系统具有基本的功能,同时也提供了以后修改和升级的能力。云控制系统的结构框架如图2所示。
此外,在云控制系统中,ConfigProcessor模块主要包含两个方法:OutClusterConf和InClusterConf。这两个方法用于从集群外部或内部检索环境信息,并集成到一个rest.config对象中。具体来说,如果控制器的上层服务在KubeEdge集群之外运行,则应使用OutClusterConf,否则应使用InClusterConf。
而yamlProcessor模块由几个可以操作yaml配置文件的方法组成。这些方法构建了一个完整的yaml读取和编辑系统。基于yaml文件的读取和修改,系统可以很容易地获得或修改系统的状态。此外,该模块还包含一个结构“ProPerty”,它记录了模型的属性。每种方法描述如表1所示:
表1 yamlProcessor模块方法
方法 功能
ChangeYaml 根据输入参数修改yaml文件。
GenerateModelYaml 根据设备模型对象生成yaml文件。
GenerateDeviceYaml 根据设备实例的属性生成yaml文件。
GetModelProperties 从yaml文件中获取模型属性列表。
GetModelName 从yaml文件中获取模型的名称。
mapChange 自动匹配和修改Map对象的内部函数。
KccClient模块包含一个KccClient类和几个解析函数。KccClient通过ConfigProcessor模块获取系统信息并访问KubeEdge,完成Kubeneters支持的大部分操作。其余的解析函数是实用函数,用于获取通过本地方法难以获得的信息。每种方法描述如表2所示:
表2 KccClient模块方法
方法 功能
NewKccClient KccClient 构造函数,生成一个新的KccClient。
GetPodList KccClient 根据命名空间从集群中获取Pod列表。
GetPod KccClient 根据Pod名称和命名空间获取Pod信息。
DeletePod KccClient 根据Pod名称和命名空间删除pod。
DeployApp KccClient 根据命名空间和yaml文件部署应用。
DeleteApp KccClient 根据应用名称和命名空间删除一个应用。
GetAppList KccClient 根据命名空间获取应用列表。
GetNodeList KccClient 根据命名空间获取节点列表。
GetTimeStampFromDevic None 从设备实例对象解析报告的时间戳。
GetNodeStatus None 获取节点对象的状态。
GetTwinFromDevice None 从设备实例对象解析设备孪生值。
dyClient模块只有一个函数applyYaml。该函数生成一个动态的Kcc客户端。从这个客户端,该函数可以应用任何yaml配置文件。
crdClient模块主要负责crd资源的处理和控制。具体来说,在crdClient模块中实现了KccClient的几个方法,都与KubeEdge的设备资源有关。每种方法描述如表3所示:
表3 crdClient模块方法
Controller进一步封装了底层接口,定义了系统中多个实体的数据结构,目的是实现更复杂的功能。为了处理设备和模型、控制节点以及添加和删除服务,我们需要首先对这些实体进行建模。处理实体时,实际上是对元数据的修改。ResMeta类首先定义为所有资源实体元数据的基类,然后从该类派生出多个特定的子类。
Controller类包含一个KccClient对象。创建Controller时,需要指定命名空间,也就是说一个Controller只能服务一个命名空间。每种方法描述如表4所示:
表4 Controller模块方法
方法 功能
NewController 创建一个新的Controller对象。
GetDeviceList 获取设备列表。
GetDevice 根据名称获取设备信息。
GetNodeList 获取节点列表。
GetDeviceModelList 获取设备模型列表。
AddDeviceModel 基于模型对象添加设备模型。
AddDevice 基于设备对象添加设备。
ChangeDeviceTwins 根据键值对更改设备孪生。
虽然Controller中的方法和KccClient是一样的,但是输入输出数据都是更高层次的封装。这种封装和聚合对上层方法隐藏了大量细节,允许开发人员在不了解KubeEdge原理的情况下开发基于控制器的服务。
Template模块在某些服务中,资源可以分为不同的类别。例如,客户端可以分为移动设备、笔记本电脑或高性能服务器。此时,如果要处理特定的设备,可以使用模板来完成。开发者可以在Template模块中定义返回不同资源模板供Controller处理的方法。在本实施例中,NewLearnerDeviceModel方法将返回一个DeviceModel对象,该对象包含设备程序所需的所有设备孪生的信息和初始值。
本实施例中,Services是建立在Controller上的应用程序。这些服务可以在集群中运行,也可以在集群外单独运行。在本实施例中,核心服务被称为KubeFL,它是Kube Edge上的Federated Learning。该服务包括演示、系统状态检索和修改、设备连接和几种不同模型下的联邦学习等。具体来说,KubeFL服务可以接收键盘输入,用户可以通过命令获取当前系统的状态信息,例如设备的访问时间、当前状态等。KubeFL还可以使用Devicet Twin与设备交换数据以进行联合学习。像这项服务一样,其他开发人员可以制作许多甚至不使用联邦学习的不同服务。使系统具有出色的可扩展性。
二、联邦学习
在本实施例中,联邦学习主要分为两个部分,即:客户端和聚合中心。客户端是在用户的本地设备上运行,维护自己的状态,实现自动连接边缘,异常退出恢复并接受联合学习的指令的系统。聚合中心实际上是Flower框架的服务器端。它被打包为用于系统调度的Docker映像。此外,还有对设备进行身份验证和访问的辅助系统,例如访问服务器。
边缘聚合中心
部署于Edge Core边缘核心模块,用于接收端设备(例如用户手机、平板等便携式移动设备)上传的部分模型输出,并以此进行神经网络训练,更新局部模型参数,然后上传至Cloud Core云端核心模块。对于一般的联邦学习模型,边缘聚合中心接收端设备上传的模型梯度,并进行聚合,聚合完成后再上传给云聚合中心。对于另一些联邦学习模型,边缘聚合中心可能会收到来自端设备的原始数据,使用原始数据训练模型后再将梯度上传到云聚合中心。总之,根据联邦学习模型不同,边缘聚合中心会执行不同的任务。
云聚合中心
部署于Cloud Core云端核心模块,用于聚合多个Edge Core边缘核心模块上传的局部模型参数并添加高斯噪声更新全局模型参数,然后将聚合结果在云端备份,并返回给Edge Core边缘核心模块和端设备。若未达到要求的精度,则作为新一轮训练的初始参数,重复这一过程直到满足精度要求;若达到要求精度,该模型将存储在Cloud Core云端核心模块和端设备上供服务器调用。
更新模型参数方式
对于局部模型参数更新,其过程如下:
(1)端设备和Edge Core边缘核心模块均从Cloud Core云端核心模块下载初始模型;
(2)端设备利用自身数据对初始模型进行训练,然后将部分模型输出发送给EdgeCore边缘核心模块;
(3)边缘聚合中心以部分模型输出的分量作为输入进行神经网络的训练,得到一个局部模型;
(4)各个Edge Core边缘核心模块将局部模型参数发送到Cloud Core云端核心模块。
噪声添加
常用的噪声添加机制是高斯机制和拉普拉斯机制。在高斯机制中,有:
M(d)表示添加噪声后的结果,是一个归一化分布,其均值为0,标准差为Sf·σ,Sf为函数f的灵敏度:
通过在函数f中加入噪声,构造了一个新函数M,可以证明M也满足(∈,δ)-differential privacy。
本实施例中,在边缘服务器训练时,按照如下步骤添加噪声:将相邻数据集的集合用于训练,计算它们的输出/>和灵敏度Sf,最后将噪声/>添加到输出上:
全局模型参数更新
由上述可知,当来自不同边缘服务器的模型更新为时,对于每个来自不同边缘服务器的更新,计算其范式/>得到总范式/> 计算灵敏度Sf为ζ的中位数,最后即可通过添加噪声更新全局模型参数:/>
客户端
如图3所示,本实施例中,客户端主要包括客户端控制器、联邦学习驱动模块、深度学习模块三大部分,下面对其一一展开阐述。
客户端控制器:负责联邦学习过程控制和状态转换。本实施例中,客户端控制的状态定义如下表5所示:
表5
状态 解释
NotReady 没有第一次连接,系统处于初始化状态
Online 已经连接到KubeEdge
Offline 无法连接到EdgeCore
ReadyForLearning 准备开始联邦学习
Running 正在进行联邦学习
在持久化状态时,客户端控制器采用文件的形式,通过创建不同文件名的特殊文件,确定当前状态,从而在异常情况下恢复正常状态。此外,客户端主程序将控制联邦学习驱动模块实现数据读取和联邦学习启动。
联邦学习驱动模块:该模块的核心是一个以管道形式启动用户定义的机器学习模型的函数。联邦学习启动后,驱动会一直以轮询的方式查询机器学习的运行状态,并实时上报客户端主程序。另外,联邦学习驱动模块也会检查目录下的文件,并通过文件与客户端控制器通信,因此客户端控制器可以异步停止或启动联邦学习。
深度学习模型模块:借助Flower框架的灵活性,用户可以创建自己的深度学习模型或将集中式机器学习模型更改为联邦学习。用户只需实现机器学习的训练和验证过程,即可轻松接入平台。该平台还支持各种通用深度学习框架,例如TensorFlow和PyTorch。
MQTT客户端:该模块负责通过MQTT协议与Edge Core边缘核心模块进行通信。该程序基于PAHO.MQTT框架,实现全双工MQTT通信。
此外,在客户端程序中还设置了Device类来处理当前设备状态的连接、指令上传、问题和持久性。当客户端运行时,它将启动一个事件循环。当发生异常或收到指令时,事件循环暂停,客户端执行特定操作。客户端的动作可以分为初始连接、状态恢复、主动状态改变和被动状态改变。
初始连接:客户端主动查找设备接入服务器并发送带有键值对的HTTPS请求以验证其身份;身份验证成功后,设备接入服务器会向云服务器发送指令以添加设备;然后KubeEdge尝试将系统状态同步到每个组件。当客户端收到连接成功的回复时,它会添加配置文件并继续其余的工作。
状态恢复:当客户端启动时,首先尝试向对应的MQTT服务器发送请求,查看EdgeCore是否在线。如果Edge Core可访问,则客户端与Device Twin同步以恢复其状态。否则,客户端从本地配置文件中恢复状态。
状态改变:设备的状态变化可以分为主动或被动。为了实现状态改变,客户端程序中有一个与EdgeCore通信的全双工MQTT客户端。在讨论状态变化之前,首先讨论不同组件的优先级。组件的优先级越高,修改它的状态就越自由。在这个系统中,最高优先级是云控制系统,可以随意修改任何状态,其他组件需要与之同步。当云控制系统离线时,边缘具有一定的自主权。此时客户端优先级最高,边缘节点需要与设备同步数据,直到云端再次上线。设备活动状态变化时,客户端向Edge Core发送MQTT请求以修改Device Twin并将其同步到云端。当MQTT请求得到正确响应时,客户端会提前保持状态。如果MQTT请求失败,设备不会修改本地状态,而是等待Edge Core发出指令进行被动状态更改。被动状态同步实际上是一种从云端发出的命令。当云端需要修改指令时,Device Twin会直接修改,修改后会同步到边缘节点,通过MQTT请求发送给设备。设备无条件地接受此状态更改并做出响应。
基于上述系统设计,用户可以在该平台上部署多种联邦学习模型,调动云边端协同训练。
三、安全和认证
联邦学习的初衷是在不进行数据交换的情况下进行机器学习,以充分保护用户的隐私。因此,在该平台中,除了依托KubeEdge本身的安全模块外,该平台还添加了一些额外的方式来保护系统的安全。
1)SSL/TLS
根据前置研究,可以使用生成对抗网络从联邦学习的用户梯度中反向导出用户数据。因此,在进行联邦学习时,用户上传的梯度也需要加密。本实施例方案中使用了安全且广泛使用的SSL/TLS加密。
具体来说,Flower框架使用HTTP协议进行服务器和客户端之间的通信。在本实施例中,通过重载和非侵入式修改,将HTTP替换为HTTPS。客户端有服务器地址和证书,执行SSL握手后即可进行数据的加密传输。
2)设备认证
为了提高系统的安全性,需要对设备进行识别和验证。只有经过身份验证的设备才能访问系统进行联邦学习,从而防止黑客攻击模型。具体来说,本实施例方案中设计了一种基于键值对的设备验证方法。每台设备都有唯一的ID(密钥)和唯一的密码值,这两者都是在安装应用程序之前确定的,因此可以提前将它们存储在云服务器或边缘服务器上。当设备连接到系统时,它首先向接入模块发送HTTPS请求,尝试验证自己的密钥对。访问模块会查询本地文件,如果关键内容匹配则允许访问KubeEdge,否则拒绝连接。
由此,本实施例为边缘计算和联邦学习的结合提供了一个易用、轻量、可扩展、安全可靠的平台和基础。
此外,本实施例还实现了平台Web端的设计,在本实施例中,Web端包括:集群可视化监控模块、任务中心模块、模型管理模块三大部分,主要用户是平台管理员,其中,集群监控分为集群状态和应用部署共两个功能点;任务中心有实施统计、任务进展和任务发布共三个功能点;模型管理分为模型列表和模型创建共两个功能点。
下面对其一一展开阐述。
1、集群监控模块:用于平台中云-边-端节点状态的监控和管理。
管理员登录后进入集群监控大屏,页面显示集群实时数据,如云、边、端节点的数量以及信息,如状态、IP地址、CPU和内存使用情况。点击查看详情,可看到云数据中心或边缘服务器的详细信息。在设备列表,可查看每个设备所连接的边缘服务器、端设备的yaml配置文件,并进行设备状态的设置。相关示例如图4所示。
集群监控模块的应用部署,可查看该集群上部署的用于完成平台主要功能的模块,如云聚合中心、边缘服务器聚合中心、云控制系统等,这些模块实现了边缘智能协同联邦学习。同时也可查看运行这些部署的容器组及其关键信息。相关示例如图5所示。
2、任务中心模块:用于管理模型训练任务和可视化边缘智能协同进行模型训练过程。
任务中心模块,可查看模型训练实时情况,如模型状态及集群结构图。在任务进展中,可查看正在进行的模型训练列表。模型训练列表显示模型名称、版本号及进度百分比等。相关示例如图6所示。
在模型训练任务列表中点击查看报告,可看到正在训练模型的详细信息,如参与节点个数、训练轮数、当前最高准确率及所采取的隐私保护措施等。
任务中心模块还可以发布训练任务,选择初始模型、需参与设备数量以及准确率要求即可开始基于端-边-云分层的联邦学习训练模型,训练过程中可看到集群节点的状态变化、数据传输情况和训练日志,也可选择放置在后台训练,然后继续发布任务或查看报告。
3、模型管理模块:用于管理所有训练模型并进行初始模型的添加。
模型管理模块可查看平台上所有模型的列表,查看模型报告。而在模型创建中,可通过输入模型名称、版本、描述,选择模型类型,传模型初始参数进行模型的创建。相关示例如图7所示。
综上,本发明平台将边缘计算和联邦学习进行有效的结合,在KubeEdge平台基础上实现了高效率、高准确率、可用、可扩展的边缘智能协同联邦学习,并且搭建了集群监控和联邦学习管理一体化的Web页面,不仅可以在数据应用上提供轻量级、低时延、安全可靠的平台支持,而且可以使联邦学习的实验环境更加仿真,实现更为精准、有效的机器学习建模,进而更好地满足智能交通、智慧园区、智慧能源、智慧工厂、智慧银行、智慧工地、CDN等行业中的用户隐私保护、数据安全的需求,为智慧城市及其相关配套产业的发展提供良好的基础和保障。
上述实施例仅为本发明的优选实施方式,不应当用于限制本发明的保护范围,凡在本发明的主体设计思想和精神上作出的毫无实质意义的改动或润色,其所解决的技术问题仍然与本发明一致的,均应当包含在本发明的保护范围之内。

Claims (5)

1.一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,包括Cloud Core云端核心模块和与Cloud Core云端核心模块通信的Edge Core边缘核心模块,其特征在于,还包括:
云控制系统,用于实现对Cloud Core云端核心模块和Edge Core边缘核心模块的控制;
边缘聚合中心,部署于Edge Core边缘核心模块,用于接收端设备上传的部分模型输出,并以此进行神经网络训练,更新局部模型参数,然后上传至Cloud Core云端核心模块;边缘聚合中心更新局部模型参数的过程如下:
(1)端设备和Edge Core边缘核心模块均从Cloud Core云端核心模块下载初始模型;
(2)端设备利用自身数据对初始模型进行训练,然后将部分模型输出发送给Edge Core边缘核心模块;
(3)边缘聚合中心以部分模型输出的分量作为输入进行神经网络的训练,得到一个局部模型;
(4)各个Edge Core边缘核心模块将局部模型参数发送到Cloud Core云端核心模块;
云聚合中心,部署于Cloud Core云端核心模块,用于聚合多个Edge Core边缘核心模块上传的局部模型参数并添加高斯噪声更新全局模型参数,然后将聚合结果在云端备份,并返回给Edge Core模块和端设备;
客户端,部署于端设备上,分别连接Cloud Core云端核心模块和Edge Core模块,用于接收联合学习的指令。
2.根据权利要求1所述的一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,其特征在于,所述云控制系统包括控制模块,受控制模块控制、用于实现对crd资源处理的CrdClient模块,受控制模块控制、用于从Cloud Core云端核心模块获取信息的Kcclient模块,以及受控制模块控制、用于操作YAML配置文件的dyClient模块。
3.根据权利要求1或2所述的一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,其特征在于,所述客户端包括:
客户端控制器,用于联邦学习过程控制和状态转换,该客户端控制器通过MQTT客户端与Edge Core模块通信,同时,该客户端控制器通过设备接入客户端与Cloud Core云端核心模块通信;
联邦学习驱动模块,用于以轮询方式查询机器学习的运行状态,并实时上报客户端控制器;同时,联邦学习驱动模块也会检查目录下的文件,并通过文件与客户端控制器通信,使客户端控制器异步停止或启动联邦学习;
深度学习模块,用于创建用户自定的深度学习模型或将集中式机器学习模型更改为联邦学习。
4.根据权利要求3所述的一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,其特征在于,所述客户端控制器与MQTT客户端之间还设置有设备孪生值服务器。
5.根据权利要求4所述的一种基于KubeEdge的轻量级边缘智能协同联邦学习平台,其特征在于,还包括与云控制系统通信的Web端,该Web端包括:
集群可视化监控模块,用于平台中云-边-端节点状态的监控和管理;
任务中心模块,用于管理模型训练任务和可视化边缘智能协同进行模型训练过程;
模型管理模块,用于管理所有训练模型并进行初始模型的添加。
CN202210634941.5A 2022-06-06 2022-06-06 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台 Active CN115037618B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210634941.5A CN115037618B (zh) 2022-06-06 2022-06-06 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210634941.5A CN115037618B (zh) 2022-06-06 2022-06-06 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台

Publications (2)

Publication Number Publication Date
CN115037618A CN115037618A (zh) 2022-09-09
CN115037618B true CN115037618B (zh) 2023-11-07

Family

ID=83122428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210634941.5A Active CN115037618B (zh) 2022-06-06 2022-06-06 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台

Country Status (1)

Country Link
CN (1) CN115037618B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115481752B (zh) * 2022-09-23 2024-03-19 中国电信股份有限公司 模型训练方法、装置、电子设备以及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112532746A (zh) * 2020-12-21 2021-03-19 北京邮电大学 一种云边协同感知的方法及系统
CN113240184A (zh) * 2021-05-21 2021-08-10 浙江大学 一种基于联邦学习的楼宇空间单元冷负荷预测方法及系统
CN113361694A (zh) * 2021-06-30 2021-09-07 哈尔滨工业大学 一种应用差分隐私保护的分层联邦学习方法及系统
CN113435472A (zh) * 2021-05-24 2021-09-24 西安电子科技大学 车载算力网络用户需求预测方法、系统、设备、介质
CN113723220A (zh) * 2021-08-11 2021-11-30 电子科技大学 基于大数据联邦学习架构下的深度伪造溯源系统
CN114116198A (zh) * 2021-10-21 2022-03-01 西安电子科技大学 一种移动车辆的异步联邦学习方法、系统、设备及终端

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11521090B2 (en) * 2018-08-09 2022-12-06 International Business Machines Corporation Collaborative distributed machine learning

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112532746A (zh) * 2020-12-21 2021-03-19 北京邮电大学 一种云边协同感知的方法及系统
CN113240184A (zh) * 2021-05-21 2021-08-10 浙江大学 一种基于联邦学习的楼宇空间单元冷负荷预测方法及系统
CN113435472A (zh) * 2021-05-24 2021-09-24 西安电子科技大学 车载算力网络用户需求预测方法、系统、设备、介质
CN113361694A (zh) * 2021-06-30 2021-09-07 哈尔滨工业大学 一种应用差分隐私保护的分层联邦学习方法及系统
CN113723220A (zh) * 2021-08-11 2021-11-30 电子科技大学 基于大数据联邦学习架构下的深度伪造溯源系统
CN114116198A (zh) * 2021-10-21 2022-03-01 西安电子科技大学 一种移动车辆的异步联邦学习方法、系统、设备及终端

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Privacy-Preserving Federated Learning for Internet of Medical Things Under Edge Computing;Ruijin Wang等;《 IEEE Journal of Biomedical and Health Informatics 》;全文 *
区块链赋能6G;代玥玥;张科;张彦;;物联网学报(第01期);全文 *
联邦学习在5G云边协同场景中的原理和应用综述;刘耕;赵立君;陈庆勇;唐小勇;游正鹏;;通讯世界(第07期);全文 *
联邦学习研究综述;周传鑫等;《网络与信息安全学报》;全文 *
边缘智能:人工智能向边缘分布式拓展的新触角;莫梓嘉;《数据与计算发展前沿》;全文 *

Also Published As

Publication number Publication date
CN115037618A (zh) 2022-09-09

Similar Documents

Publication Publication Date Title
Hsu et al. A Creative IoT agriculture platform for cloud fog computing
Lo'ai et al. A mobile cloud computing model using the cloudlet scheme for big data applications
CN108491164B (zh) 一种混合云存储架构系统
CN112861190B (zh) 数据跨链协同方法、系统及装置
CN103617255B (zh) 一种用于电力信息系统的业务数据交换同步系统及方法
CN103067502A (zh) 一种开发测试云的硬件系统
CN111866086B (zh) 一种基于云边端的区块链控制方法及系统
CN115037618B (zh) 一种基于KubeEdge的轻量级边缘智能协同联邦学习平台
US11349709B2 (en) System and method for onboarding IOT devices
CN103546544A (zh) 一种基于云计算的数据管理系统
KR102392739B1 (ko) IPFS(Inter Planetary File System) 기반의 분산 클라우드 저장소를 이용한블록체인 기반 클라우드 서비스 제공 방법 및 시스템
CN106716968A (zh) 账户管理方法、装置及账户管理系统
CN113037858A (zh) 一种实现手机与终端共享算力的系统及方法
CN109583186A (zh) 一种云计算式图像处理系统
CN112256760B (zh) 一种数据预测方法、装置、计算机设备及存储介质
CN108347450A (zh) 一种远程登录的方法及设备
CN116204307A (zh) 兼容不同计算框架的联邦学习方法和联邦学习系统
US20220398256A1 (en) Decentralized information system and method
CN104052785B (zh) 利用通用消息传输协议管理移动设备的方法和系统
US20230266996A1 (en) Distributed ai platform mesh for machine learning workflows
CN115909841A (zh) 一种基于云的lvc防化模拟训练仿真系统及方法
KR102114374B1 (ko) 클라우드 기반의 데이터 처리 장치 및 사용자 단말
Fowdur et al. Enabling Technologies and Applications of 5G/6G-Powered Intelligent Connectivity
WO2023209414A1 (en) Methods and apparatus for computing resource allocation
Xuning et al. Research of campus resource management based on cloud computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant