CN113672684B - 一种面向非独立同分布数据的分层用户训练管理系统及方法 - Google Patents
一种面向非独立同分布数据的分层用户训练管理系统及方法 Download PDFInfo
- Publication number
- CN113672684B CN113672684B CN202110959654.7A CN202110959654A CN113672684B CN 113672684 B CN113672684 B CN 113672684B CN 202110959654 A CN202110959654 A CN 202110959654A CN 113672684 B CN113672684 B CN 113672684B
- Authority
- CN
- China
- Prior art keywords
- training
- parameter server
- layer parameter
- middle layer
- 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
Links
- 238000012549 training Methods 0.000 title claims abstract description 164
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000009826 distribution Methods 0.000 claims abstract description 100
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000007726 management method Methods 0.000 claims description 27
- 230000002776 aggregation Effects 0.000 claims description 24
- 238000004220 aggregation Methods 0.000 claims description 24
- 239000013598 vector Substances 0.000 claims description 24
- 238000002360 preparation method Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 230000004931 aggregating effect Effects 0.000 claims description 9
- 238000011156 evaluation Methods 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 238000005070 sampling Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009514 concussion Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种面向非独立同分布数据的分层用户训练管理系统及方法,该方法包括联邦学习用户数据分布相似性评估方法、分组方法和训练方法,在保护用户标签的前提下通过计算节点数据分布和全局分布的相似性对用户进行评分,其中全局参数服务器根据用户评分进行合理的分组处理,使组间数据分布近似均匀,解决非独立同分布问题。同时,可根据用户的需求设置并行度增长曲线,使训练从串行向并行转化,在保证模型收敛速度和精度的情况下保证模型的并行度,节省训练时间,本发明将全同步算法与序列联邦学习算法相结合,在保证模型并行度的前提下大幅度提高训练精度和收敛速度、显著减少通信负载、节省计算资源,提高联邦学习的训练效果。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种面向非独立同分布数据的分层用户训练管理系统及方法。
背景技术
随着人工智能的高速发展,在多种任务中,使用大规模的神经网络可以达到很高的训练精度。同时,随着通信技术的迭代(5G、网络虚拟化、物联网等),海量设备接入网络,随之产生前所未有的数据流,海量的数据给人工智能大模型的训练提供了基础和驱动力。
然而,大模型、大数据的训练需要非常大的计算能力支持,而硬件技术的发展并没有很好跟上数据的增长,所以往往训练一个大的神经网络动辄需要数月甚至数年,无法很好的跟上市场和行业发展的迭代需求。同时,数据的分布分散在不同的机构,存在“数据孤岛”问题,即:机构间数据的融合存在安全等诸多限制。而仅依靠单一机构的数据不足以训练出高效可靠的模型。
联邦学习是目前业界公认的,解决上述问题的一种最合理的方案。联邦机器学习(Federated Learning),又名联邦学习,联合学习,联盟学习。联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。技术上讲,参与机构在云服务器的调度下,交换模型而非数据本身,从而在保护隐私的前提下协同进行模型训练,按照参与机构的不同,联邦学习可分为面向用户的联邦学习和面向机构的联邦学习。
在上述两种场景下,联邦学习面临着数据非独立同分布问题带来的严峻挑战,数据非独立同分布问题即每个参与节点所拥有的数据分布与全局分布并不一致,在模型聚合的过程中这种数据的不一致会导致模型梯度下降时的震荡,很大程度上影响模型的收敛性、精度,使得相比于单机训练,分布式训练的结果往往达不到预期的效果。应对非独立同分布问题,目前常利用的方法主要有两类:(1)通过在损失函数或者聚合策略上做调整,以适应非独立同分布数据。然而,这种调整对于非独立同分布场景下的精度提升比较有限。(2)通过将本地数据与全局数据混合进行训练,以缓解非独立同分布的情况。此类方法由于数据的直接共享,存在极大的安全隐患。
发明内容
针对现有技术中的上述不足,本发明提供的一种面向非独立同分布数据的分层用户训练管理系统及方法,解决了联邦学习非独立同分布数据带来的模型精度受损的问题,也解决了同步算法下模型收敛速度慢的问题,同时减少了每轮的计算和通信开销,缓解了已有算法下个人用户标签在上传过程中容易泄露的问题。
为了达到以上目的,本发明利用的技术方案为:
本方案提供一种面向非独立同分布数据的分层用户训练管理系统,包括顶层参数服务器、与所述顶层参数服务器通过局域网通信的中间层参数服务器以及与所述中间层参数服务器通过广域网通信的参与用户;
在训练准备阶段,所述中间层参数服务器用于通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分;
在训练准备阶段,所述顶层参数服务器用于根据评分结果对参与用户进行分组,并将分组结果广播至中间层参数服务器;
在训练阶段,所述中间层参数服务器用于根据分组结果在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,以及在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;
在训练阶段,所述顶层参数服务器用于根据分组结果在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理。
基于上述系统,本发明提供了一种面向非独立同分布数据的分层用户训练管理方法,包括以下步骤:
S1、训练准备阶段:通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分,并根据评分结果利用顶层参数服务器对参与用户进行分组,并将分组结果广播至中间层参数服务器;
S2、训练阶段:根据分组结果,由中间层参数服务器在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,由中间层参数服务器在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;以及在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理。
进一步地,所述步骤S1包括以下步骤:
S101、通过各中间层参数服务器随机选择参与用户;
S104、通过顶层参数服务器将所述全局数据总分布向量vGlobal广播至各中间层参数服务器;
S105、由各中间层参数服务器通过所述全局数据总分布向量vGlobal以及组内相邻参与用户的数据分布向量,计算得到相邻参与用户的评分,并上传至顶层参数服务器;
S106、由顶层参数服务器根据所述相邻参与用户的评分对参与用户按照分组策略进行分组,并将分组结果广播至中间层参数服务器;
S107、由中间层参数服务器根据分组结果,重新连接对应的参与用户,完成对参与用户的分组。
再进一步地,所述步骤S105中相邻参与用户的评分的表达式如下:
Scorei=cos<vGlobal,vlocal_i>
vGlobal=[ng 1,ng 2,ng 3,...,ng m]
vlocal_i=[ni 1,ni 2,ni 3,...,ni m]
其中,Scorei表示相邻参与用户的评分,vGlobal表示全局数据总分布向量,vlocal_i表示组内相邻的参与用户的数据分布向量,ng m表示全局拥有的第m类数据的数量,ni m表示第i个参与用户的第m类数据的数量。
再进一步地,所述步骤S106包括以下步骤:
S1061、由顶层参数服务器对所述相邻参与用户的评分从高到底进行排序,得到包含所有参与用户得分的数组score_list;
S1062、根据参与联邦学习的用户数量以及中间层参数服务器的数量,将数组score_list由高到低分成nummediators份,其中,每一份含有k或k+1个参与用户,所述k的表达式如下:
其中,k表示每个支链的参与用户的数量,numclients表示参与联邦学习的用户数量,nummediators表示中间层参数服务器的数量;
S1063、将每一份数组score_list随机分配至中间层参数服务器,完成对参与用户的分组,并将分组结果广播至中间层参数服务器。
再进一步地,所述步骤S2包括以下步骤:
S201、由顶层参数服务器将当前的全局模型wr分发至选择的中间层参数服务器;
S202、根据分组结果,在每一轮训练中,利用序列联邦串行算法以及联邦平均算法对模型副本进行训练和聚合处理,并由各个中间层参数服务器并行执行MediatorUpdate(m,wr),将结果返回至顶层参数服务器,记为wj r+1,其中,MediatorUpdate(m,wr)表示中间层参数服务器所执行的训练函数,wj r+1表示训练第r+1轮第j个中间层参数服务器的模型副本;
S203、在顶层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型wr+1,完成面向非独立同分布数据的分层用户的训练管理。
再进一步地,所述步骤S202包括以下步骤:
S2021、根据分组结果,在每一轮训练中,按照预设的并行度增长曲线在分组内将串行训练的长链分成nsegments段;
S2022、在nsegments段中由中间层参数服务器利用序列联邦串行算法在参与用户支链内对模型副本训练,以及利用联邦平均算法在参与用户支链之间对模型副本进行并行训练和聚合处理,得到此中间层参数服务器的模型副本记为wj r+1;
S2023、将中间层参数服务器的模型副本wj r+1传到顶层参数服务器。
再进一步地,所述步骤S2021中形成nsegments条参与用户支链的表达式如下:
nsegments=β.r
其中,nsegments表示参与用户支链的数量,β表示设定的并行度增长因子,r表示训练进行的轮数。
再进一步地,所述中间层参数服务器其参与训练的概率表达式如下:
其中,Pr(mediatorj)表示编号为j的中间层参数服务器参与训练的概率,Scoremediatorj表示编号为j的中间层参数服务器的评分。
再进一步地,所述步骤S203中最终的全局模型wr+1的表达式如下:
其中,nj表示第j个中间层参数服务器的样本数量,M表示中间层参数服务器的总数,n表示总的样本数量,wj r+1表示训练第r+1轮第j个中间层服务器的模型副本,wr+1是第r+1轮的全局模型。
本发明的有益效果:
(1)本发明提出一种面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练方法(Fedrank),该面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练方法在保护用户标签的前提下,通过计算节点数据分布和全局分布的相似性,对用户进行评分,该方法中的全局参数服务器可以根据用户评分进行合理的分组处理,使得组间数据分布近似均匀,解决非独立同分布问题。同时,该方法可根据用户的需求,设置并行度增长曲线,使得训练从串行向并行转化,在保证模型收敛速度和精度的情况下保证模型的并行度,节省训练时间,该方法可以将全同步算法与序列联邦学习算法相结合,在保证模型并行度的前提下大幅度提高训练精度和收敛速度、显著减少通信负载、节省计算资源,提高联邦学习的训练效果。
(2)在联邦学习的真实场景下,数据往往“非独立同分布”,非独立同分布数据是指数据依照不同的概率分布、非均匀地分布在各机构中,会严重损伤模型质量,是联邦学习亟需解决的重要难题。利用本方法后,本方案使得组间分布近似均匀,相比于传统方法,大幅度提升了联邦学习的收敛精度。
(3)在全同步的算法下,联邦学习的收敛速度缓慢,通信的轮数多。使用本发明后,由于利用组间同步,参与用户支链间同步(联邦平均),参与用户支链内链式联邦训练(Sequential fedavg)的方式,同时设置阶梯式增长的并行度增长曲线,在模型并行和收敛速度间达成了平衡,大大提升了收敛的速度,减少了通信的轮数。
(4)已有分组训练方法常常要求所有在线的节点参与训练,计算开销大。而本发明由于利用合理的分组方案,使得组间分布相对均匀,同时利用合理的取样策略,合理分配参与机构参加训练的概率。
(5)已有分组训练方法常常要求所有在线的节点参与训练,参与用户和中间层参数服务器,中间层参数服务器和顶层参数服务器的通信负载大。本发明所提出的系统和方法利用合理的分组方案,使得组间分布近似独立同分布,同时利用合理的取样策略,合理分配参与机构参加训练的概率。每次训练只需要较少的组参与训练,即减少了中间层参数服务器聚合过程中上传的参数量(每一轮只有选择到的中间层参数服务器才上传参数),也从全局上减少了所有参与用户每一轮训练上传的总数据量(每一轮只有选择到的中间层参数服务器才接收所管辖用户的参数)。
(6)已有分组训练方法利用暴力搜索方法进行分组,时间复杂度高,且利用“重新分组”方式,每过一定轮数进行重新分组,以应对真实场景下客户退出、客户数据分布改变等变化,使得时间开销大。本发明所提出的系统和方法利用低时间复杂度的联邦学习用户数据分布相似性评估、分组方法,有效减少分组的时间延迟,同时,训练过程中不进行重新分组,通过增加参与用户支链来进行动态调整,大幅度减少了重新分组的时间延迟。
(7)已有方法常常要求参与节点将数据分布传到顶层参数服务器进行评估,而数据分布或许含有用户的个人信息,有泄露的风险。本发明所提出的系统和方法中,用户只需将数据分布传到中间层参数服务器,而中间层参数服务器只向顶层参数服务器上传计算后的用户评分,一定程度上避免了用户标签泄露的风险,以缓解用户标签泄露的风险。
(8)已有方法往往建立在用户的数据分布、可参与训练的用户不变的前提下,然而在实际的场景中,用户的数据分布、参与训练的用户数量时刻变化。使得原先的优化策略不适应新的情况,影响训练结果。本发明所提出的系统和方法利用score sampling策略,根据实时的统计得分,改变采样的概率,可使得训练策略随数据分布进行动态调整,达到稳定的训练效果,具备对于参与用户数量和用户数据分布变化的自适应性。
附图说明
图1为本发明中部署在一台高性能服务中的示意图。
图2为本发明部署在数据中心内的不同物理服务器示意图。
图3为本发明中训练准备阶段的工作流程图。
图4为本发明中基于数据分布相似性评分的同构分组流程示意图。
图5为本发明中面向近似独立同分布参与用户组的序列联邦学习算法示意图。
图6为本发明中串行向并行转化的阶梯式训练策略示意图。
图7为本发明中整体训练架构示意图。
图8为本实施例中三种训练架构的对比示意图。
图9为本实施例中每轮参与的组数对于训练的影响示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
在对本申请进行说明前,先对以下参数的含义进行说明:
实施例1
本发明提出一种面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和采样方法(Fedrank),该面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和采样方法在保护用户标签的前提下,通过计算节点数据分布和全局分布的相似性,对用户进行评分,该方法可根据用户数据的变化自适应调整采样率,该方法中的全局参数服务器可以根据用户评分进行合理的分组处理,使得组间数据分布近似均匀,解决非独立同分布问题。同时,该方法可以将全同步算法与序列联邦学习算法相结合,在保证模型并行度的前提下大幅度提高训练精度和收敛速度、显著减少通信负载、节省计算资源,提高联邦学习的训练效果。
本发明提供了一种面向非独立同分布数据的分层用户训练管理系统,包括顶层参数服务器、与所述顶层参数服务器通过局域网通信的中间层参数服务器以及与所述中间层参数服务器通过广域网通信的参与用户;
在训练准备阶段,所述中间层参数服务器用于通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分;
在训练准备阶段,所述顶层参数服务器用于根据评分结果对参与用户进行分组,并将分组结果广播至中间层参数服务器;
在训练阶段,所述中间层参数服务器用于根据分组结果在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,以及在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;
在训练阶段,所述顶层参数服务器用于根据分组结果在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理。
本实施例中,本发明实施部署环境时,可以部署在数据中心的一台高性能服务器中,该服务器应具有较强的计算能力,服务器中有一个实现顶层参数服务器功能的中心进程和实现中间层参数服务器功能的多个从进程(虚拟的中间层参数服务器),进程间可以相互通信。对应的从进程(虚拟中间层参数服务器)与所管辖的物理节点通过广域网相互通信。该服务器需部署有深度学习软件,能实现模型的聚合、分发、上传等操作。
本实施例中,本发明实施部署环境时,可以部署在数据中心的多台物理服务器中,服务器间通过域内网络互连,其中一个物理服务器为中心节点,充当顶层参数服务器,其它服务器为参与节点,充当中间层参数服务器,中心节点需要和所有参与节点(中间层参数服务器)通过局域网相互通信,中间层参数服务器和所管辖的用户通过广域网进行通信,物理节点间的计算能力可以不同。这些物理节点均需部署有深度学习软件,能实现模型的聚合、分发、上传等操作。
本实施例中,实施部署环境为数据中心的一台高性能服务器中,如图1所示,服务器中有一个实现顶层参数服务器功能的中心进程和实现中间层参数服务器功能的多个从进程(虚拟的中间层参数服务器),进程间可以相互通信。
本实施例中,实施部署环境为部署在数据中心的多台物理服务器中,如图2所示,数据中心包括多个服务器,其中一个中心节点部署顶层参数服务器,其余节点部署中间层参数服务器。数据中心内节点间通过域内网络互连。
本发明提出了一种技术解决数据非独立同分布引起的联邦学习的性能短板问题,上述技术应在数据在节点间非独立同分布的前提下,设计与优化联邦学习训练方法和架构,使得数据分布趋于均匀,同时在保证模型并行度的前提下提高联邦学习的精度和收敛速度。根据上述特点,本发明提出了一种面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练架构。所述面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练架构可在保护用户标签的前提下,通过计算节点数据分布和全局分布的相似性,对用户进行评分,所述面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练架构可以根据用户评分进行高效的分组处理,使得组间数据分布近似均匀,解决非独立同分布问题。所述面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练架构可以将全同步策略与链式联邦训练策略相结合,在保证模型并行度的前提下大幅度提高训练精度和收敛速度、显著减少通信负载、节省计算资源。同时所述面向非独立同分布数据的联邦学习用户数据分布相似性评估、分组和训练架构可根据组间分布的差异性自适应调整采样率,进行组间采样,提高联邦学习的训练效果和自适应性,同时大幅度节省计算和通信开销。本发明通过以上设计,解决了联邦学习非独立同分布数据带来的模型精度受损的问题,也解决了同步算法下模型收敛速度慢的问题,同时减少了每轮的计算和通信开销,缓解了已有算法下个人用户标签在上传过程中容易泄露的问题。
实施例2
本发明提供了一种面向非独立同分布数据的分层用户训练管理方法,包括以下步骤:
S1、训练准备阶段:通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分,并根据评分结果利用顶层参数服务器对参与用户进行分组,并将分组结果广播至中间层参数服务器;
本发明提出一种保护个体用户数据分布的分层用户管理架构,工作流程如图3所示,所述架构通过中间层参数服务器实现计算用户分组和管理用户的功能。该架构的运行过程如下:
S101、通过各中间层参数服务器随机选择参与用户;
S104、通过顶层参数服务器将所述全局数据总分布向量vGlobal广播至各中间层参数服务器;
S105、由各中间层参数服务器通过所述全局数据总分布向量vGlobal以及组内相邻参与用户的数据分布向量,计算得到相邻参与用户的评分,并上传至顶层参数服务器,相邻参与用户的评分的表达式如下:
Scorei=cos<vGlobal,vlocal_i>
vGlobal=[ng 1,ng 2,ng 3,...,ng m]
vlocal_i=[ni 1,ni 2,ni 3,...,ni m]
其中,Scorei表示相邻参与用户的评分,vGlobal表示全局数据总分布向量,vlocal_i表示组内相邻的参与用户的数据分布向量,ng m表示全局拥有的第m类数据的数量,ni m表示第i个参与用户的第m类数据的数量;
S106、由顶层参数服务器根据所述相邻参与用户的评分对参与用户按照分组策略进行分组,并将分组结果广播至中间层参数服务器,其实现方法如下:
S1061、由顶层参数服务器对所述相邻参与用户的评分从高到底进行排序,得到包含所有参与用户得分的数组score_list;
S1062、根据参与联邦学习的用户数量以及中间层参数服务器的数量,将数组score_list由高到低分成nummediators份,其中,每一份含有k或k+1个参与用户,所述k的表达式如下:
其中,k表示每个支链的参与用户的数量,numclients表示参与联邦学习的用户数量,nummediators表示中间层参数服务器的数量;
S1063、将每一份数组score_list随机分配至中间层参数服务器,完成对参与用户的分组,并将分组结果广播至中间层参数服务器;
S107、由中间层参数服务器根据分组结果,重新连接对应的参与用户,完成对参与用户的分组。
本实施例中,本发明提出一种基于用户数据分布相似性的评分机制,所述机制引入Client Score来衡量用户数据分布到全局数据分布间的距离。Client Score高的用户,和全局分布偏离程度小,可靠性高。Score低的用户和全局分布的偏离程度大,可靠性低。假设全局数据的分布为vGlobal=[ng 1,ng 2,ng 3......ng m],用户端的数据分布为vlocal_i2=[ni 1,ni 2,ni 3......ni m],Score的方式是:
Scorei=cos<vGlobal,vlocal_i>
本实施例中,本发明提出一种基于数据分布相似性评分的同构分组方法,如图4所示,在训练准备阶段,顶层参数服务器接受到各个用户的得分之后,对用户进行分组,分组策略如下:
根据用户的分数从高到底进行排序。得到score_list;将score_list分成(或k+1)份,每一份的数量为nummediators;将每一份的用户随机分配给中间层参数服务器(即每一个mediator拥有score由高到低的一套组合)。
注:若有不能整除的情况,最后剩下的用户随机分配到不同的中间层参数服务器(最终,每个mediator拥有k或k+1个clients.)。
S2、训练阶段:根据分组结果,由中间层参数服务器在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,由中间层参数服务器在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;以及在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理,其实现方法如下:
S201、由顶层参数服务器将当前的全局模型wr分发至选择的中间层参数服务器;
S202、根据分组结果,在每一轮训练中,利用序列联邦串行算法以及联邦平均算法对模型副本进行训练和聚合处理,并由各个中间层参数服务器并行执行MediatorUpdate(m,wr),将结果返回至顶层参数服务器,记为wj r+1,其中,MediatorUpdate(m,wr)表示中间层参数服务器所执行的训练函数,wj r+1表示训练第r+1轮第j个中间层参数服务器的模型副本,其实现方法如下:
S2021、根据分组结果,在每一轮训练中,按照预设的并行度增长曲线在分组内将串行训练的长链分成nsegments段;
S2022、在nsegments段中由中间层参数服务器利用序列联邦串行算法在参与用户支链内对模型副本训练,以及利用联邦平均算法在参与用户支链之间对模型副本进行并行训练和聚合处理,得到此中间层参数服务器的模型副本记为wj r+1;
S2023、将中间层参数服务器的模型副本wj r+1传到顶层参数服务器;
S203、在顶层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型wr+1,完成面向非独立同分布数据的分层用户的训练管理,其中,最终的全局模型wr+1的表达式如下:
其中,nj表示第j个中间层参数服务器的样本数量,M表示中间层参数服务器的总数,n表示总的样本数量,wj r+1表示训练第r+1轮第j个中间层服务器的模型副本,wr+1是第r+1轮的全局模型。
本实施例中,训练阶段中间层参数服务器执行以下任务:
任务一、被顶层参数服务器取样到的中间层参数服务器控制其内部节点按照训练策略进行训练。
本实施例中,本发明提出一种面向近似独立同分布用户组的序列联邦学习算法,如图5所示,在每一个中间层参数服务器管辖的节点之间,采取序列联邦学习算法,即:一个用户完成训练之后,将模型更新上传到中间层参数服务器,一个用户从中间层参数服务器获得更新的模型副本后,再开始接着新的模型训练。对序列联邦算法的叙述如下:
假设一条“训练链”长度为l。
步骤一:将模型分发给第一个用户;
步骤三:用户训练完后,将更新参数传给中间层参数服务器,中间层参数服务器更新参数;
步骤四:中间层参数服务器将参数传给下一个用户,重复上述过程(1,2,3,...,l),直到“训练链”内的用户依次训练完毕。
本实施例中,本发明提出一种从串行向并行转化的阶梯式训练策略,如图6所示,图6中f(r)表示并行度增长曲线,在训练过程中,按照设定的并行度增长曲线,在组内将串行训练的“长链”分成nsegments段,即形成nsegments条参与用户支链。段内上述的序列联邦算法,段之间利用并行的联邦平均算法,随着段数的“阶梯式”增加,组内的训练从开始的全串行(组内所有用户构成一条“长链”,利用序列联邦)向全并行(段数和组内用户数相等,每个用户间并行计算)过渡。
nsegments=f(r)
在本发明以线性增长为例进行说明即
nsegments=β.r
其中,β是设定的并行度增长因子,r为训练进行的轮数。所以,如图7所示,整个训练策略可以概括为:分组之内,通过中间层参数服务器,参与用户支链内利用序列联邦串行更新,参与用户支链之间利用联邦平均算法并行更新;分组之间,通过顶层参数服务器,利用联邦平均算法并行更新。整个训练步骤如下:
每一轮的训练步骤如下:(r=1,2,3...R)
步骤一:顶层参数服务器将当前的全局模型wr分发给选择的中间层参数服务器。
步骤二:中间层参数服务器并行执行MediatorUpdate(m,wr),并将结果返回给顶层参数服务器,记为wm r+1。
步骤三:聚合中间层参数服务器返回的模型,得到全局模型:
其中,中间层参数服务器执行MediatorUpdate(m,wr)的流程如下(第em轮em=1,2,...,Em):
步骤一:将全局模型分发给每个参与用户支链内的第一个用户;
步骤二:收到模型的用户在此模型基础上,进行梯度下降,即(el=1,2,...,El),其中,表示本地训练el轮时的模型副本,w表示当前模型参数,η表示本地学习率,l表示损失函数,el表示本地正在训练的轮数,El表示本地训练的总轮数;
步骤三:用户训练完后,将新的参数传给中间层参数服务器,中间层参数服务器收到模型后,立即将模型转发给该用户所处参与用户支链内的下一个用户;
步骤四:下一个用户接收模型后,进行计算,重复步骤二、三,直到参与用户支链内的顺序训练完成;
步骤五:待所有参与用户支链的最后一个用户完成训练后,中间层参数服务器接收每个参与用户支链内的训练结果(即最后一个用户的模型),进行联邦聚合,得到wm r+1。
本实施例中,本发明提出一种基于中间参数服务器得分的采样策略,在训练过程中,每隔一定的轮数顶层参数服务器根据Scoremediator确定每个中间层参数服务器被选取到的概率:
其中,Pr(mediatorj)表示编号为j的中间层参数服务器参与训练的概率,Scoremediatorj表示编号为j的中间层参数服务器的评分,然后根据训练规模、需求(人为设置的参数nummediators_per_round),在mediators之中根据概率不放回抽样nummediators_per_round个mediator进行训练。
本实施例中,如图8所示,利用同构分组策略的本方法相比起fedavg算法和随机分组的方法,收敛精度明显提升,且利用同构分组策略的本方法相比起最常用的fedavg、fedprox算法和未加入分组、训练策略的随机分组方法,收敛的更快。
本实施例中,如图9所示,每次训练只需要较少的组、较少的节点参与训练,也能在取得很好的收敛速度和精度,从而大幅节省了整个训练的计算开销。
本发明通过以上设计,解决了联邦学习非独立同分布数据带来的模型精度受损的问题,也解决了同步算法下模型收敛速度慢的问题,同时减少了每轮的计算和通信开销,缓解了已有算法下个人用户标签在上传过程中容易泄露的问题。
Claims (10)
1.一种面向非独立同分布数据的分层用户训练管理系统,其特征在于,包括顶层参数服务器、与所述顶层参数服务器通过局域网通信的中间层参数服务器以及与所述中间层参数服务器通过广域网通信的参与用户;
在训练准备阶段,所述中间层参数服务器用于通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分;
在训练准备阶段,所述顶层参数服务器用于根据评分结果对参与用户进行分组,并将分组结果广播至中间层参数服务器;
在训练阶段,所述中间层参数服务器用于根据分组结果在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,以及在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;
在训练阶段,所述顶层参数服务器用于根据分组结果在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理。
2.一种面向非独立同分布数据的分层用户训练管理方法,其特征在于,包括以下步骤:
S1、训练准备阶段:通过计算中间层参数服务器的总数据分布和全局数据总分布向量的相似性对参与用户进行评分,并根据评分结果利用顶层参数服务器对参与用户进行分组,并将分组结果广播至中间层参数服务器;
S2、训练阶段:根据分组结果,由中间层参数服务器在参与用户支链内利用序列联邦串行算法对模型副本进行串行训练,由中间层参数服务器在参与用户支链之间利用联邦平均算法对模型副本进行并行训练和聚合处理;以及在中间层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型,完成面向非独立同分布数据的分层用户的训练管理。
3.根据权利要求2所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S1包括以下步骤:
S101、通过各中间层参数服务器随机选择参与用户;
S104、通过顶层参数服务器将所述全局数据总分布向量vGlobal广播至各中间层参数服务器;
S105、由各中间层参数服务器通过所述全局数据总分布向量vGlobal以及组内相邻参与用户的数据分布向量,计算得到相邻参与用户的评分,并上传至顶层参数服务器;
S106、由顶层参数服务器根据所述相邻参与用户的评分对参与用户按照分组策略进行分组,并将分组结果广播至中间层参数服务器;
S107、由中间层参数服务器根据分组结果,重新连接对应的参与用户,完成对参与用户的分组。
4.根据权利要求3所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S105中相邻参与用户的评分的表达式如下:
Scorei=cos<vGlobal,vlocal_i>
vGlobal=[ng 1,ng 2,ng 3,...,ng m]
vlocal_i=[ni 1,ni 2,ni 3,...,ni m]
其中,Scorei表示相邻参与用户的评分,vGlobal表示全局数据总分布向量,vlocal_i表示组内相邻的参与用户的数据分布向量,ng m表示全局拥有的第m类数据的数量,ni m表示第i个参与用户的第m类数据的数量。
5.根据权利要求4所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S106包括以下步骤:
S1061、由顶层参数服务器对所述相邻参与用户的评分从高到底进行排序,得到包含所有参与用户得分的数组score_list;
S1062、根据参与联邦学习的用户数量以及中间层参数服务器的数量,将数组score_list由高到低分成nummediators份,其中,每一份含有k或k+1个参与用户,所述k的表达式如下:
其中,k表示每个支链的参与用户的数量,numclients表示参与联邦学习的用户数量,nummediators表示中间层参数服务器的数量;
S1063、将每一份数组score_list随机分配至中间层参数服务器,完成对参与用户的分组,并将分组结果广播至中间层参数服务器。
6.根据权利要求2所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S2包括以下步骤:
S201、由顶层参数服务器将当前的全局模型wr分发至选择的中间层参数服务器;
S202、根据分组结果,在每一轮训练中,利用序列联邦串行算法以及联邦平均算法对模型副本进行训练和聚合处理,并由各个中间层参数服务器并行执行MediatorUpdate(m,wr),将结果返回至顶层参数服务器,记为wj r+1,其中,MediatorUpdate(m,wr)表示中间层参数服务器所执行的训练函数,wj r+1表示训练第r+1轮第j个中间层参数服务器的模型副本;
S203、在顶层参数服务器之间利用联邦聚合算法对并行训练后的模型副本进行聚合处理,得到最终的全局模型wr+1,完成面向非独立同分布数据的分层用户的训练管理。
7.根据权利要求6所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S202包括以下步骤:
S2021、根据分组结果,在每一轮训练中,按照预设的并行度增长曲线在分组内将串行训练的长链分成nsegments段;
S2022、在nsegments段中由中间层参数服务器利用序列联邦串行算法在参与用户支链内对模型副本训练,以及利用联邦平均算法在参与用户支链之间对模型副本进行并行训练和聚合处理,得到此中间层参数服务器的模型副本记为wj r+1;
S2023、将中间层参数服务器的模型副本wj r+1传到顶层参数服务器。
8.根据权利要求7所述的面向非独立同分布数据的分层用户训练管理方法,其特征在于,所述步骤S2021中形成nsegments条参与用户支链的表达式如下:
nsegments=β.r
其中,nsegments表示参与用户支链的数量,β表示设定的并行度增长因子,r表示训练进行的轮数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110959654.7A CN113672684B (zh) | 2021-08-20 | 2021-08-20 | 一种面向非独立同分布数据的分层用户训练管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110959654.7A CN113672684B (zh) | 2021-08-20 | 2021-08-20 | 一种面向非独立同分布数据的分层用户训练管理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113672684A CN113672684A (zh) | 2021-11-19 |
CN113672684B true CN113672684B (zh) | 2023-04-21 |
Family
ID=78544270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110959654.7A Active CN113672684B (zh) | 2021-08-20 | 2021-08-20 | 一种面向非独立同分布数据的分层用户训练管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672684B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114666274A (zh) * | 2022-03-17 | 2022-06-24 | 广州广电运通金融电子股份有限公司 | 异步模式训练的联邦学习方法、设备、系统及可读介质 |
CN114821143B (zh) * | 2022-05-11 | 2024-05-03 | 国网上海市电力公司 | 一种基于K-Means模型的充电桩用户画像方法 |
CN118296329B (zh) * | 2024-06-06 | 2024-08-20 | 贵州大学 | 一种用于非独立同分布情况下的联邦元学习故障诊断方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310932A (zh) * | 2020-02-10 | 2020-06-19 | 深圳前海微众银行股份有限公司 | 横向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN111865826A (zh) * | 2020-07-02 | 2020-10-30 | 大连理工大学 | 一种基于联邦学习的主动内容缓存方法 |
CN112203282A (zh) * | 2020-08-28 | 2021-01-08 | 中国科学院信息工程研究所 | 一种基于联邦迁移学习的5g物联网入侵检测方法及系统 |
CN112381236A (zh) * | 2020-12-02 | 2021-02-19 | 深圳前海微众银行股份有限公司 | 联邦迁移学习的数据处理方法、装置、设备及存储介质 |
CN112884163A (zh) * | 2021-03-18 | 2021-06-01 | 中国地质大学(北京) | 基于联邦机器学习算法与云端反馈的组合服务评估方法与系统 |
WO2021108796A2 (en) * | 2020-12-21 | 2021-06-03 | Futurewei Technologies, Inc. | System and method of federated learning with diversified feedback |
CN113011602A (zh) * | 2021-03-03 | 2021-06-22 | 中国科学技术大学苏州高等研究院 | 一种联邦模型训练方法、装置、电子设备和存储介质 |
CN113095407A (zh) * | 2021-04-12 | 2021-07-09 | 哈尔滨理工大学 | 一种降低通信次数的高效异步联邦学习方法 |
CN113112027A (zh) * | 2021-04-06 | 2021-07-13 | 杭州电子科技大学 | 一种基于动态调整模型聚合权重的联邦学习方法 |
CN113177645A (zh) * | 2021-06-29 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 联邦学习方法、装置、计算设备及存储介质 |
CN113191503A (zh) * | 2021-05-20 | 2021-07-30 | 清华大学深圳国际研究生院 | 一种非共享数据的去中心化的分布式学习方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040110119A1 (en) * | 2002-09-03 | 2004-06-10 | Riconda John R. | Web-based knowledge management system and method for education systems |
US11475350B2 (en) * | 2018-01-22 | 2022-10-18 | Google Llc | Training user-level differentially private machine-learned models |
US20210073639A1 (en) * | 2018-12-04 | 2021-03-11 | Google Llc | Federated Learning with Adaptive Optimization |
-
2021
- 2021-08-20 CN CN202110959654.7A patent/CN113672684B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310932A (zh) * | 2020-02-10 | 2020-06-19 | 深圳前海微众银行股份有限公司 | 横向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN111865826A (zh) * | 2020-07-02 | 2020-10-30 | 大连理工大学 | 一种基于联邦学习的主动内容缓存方法 |
CN112203282A (zh) * | 2020-08-28 | 2021-01-08 | 中国科学院信息工程研究所 | 一种基于联邦迁移学习的5g物联网入侵检测方法及系统 |
CN112381236A (zh) * | 2020-12-02 | 2021-02-19 | 深圳前海微众银行股份有限公司 | 联邦迁移学习的数据处理方法、装置、设备及存储介质 |
WO2021108796A2 (en) * | 2020-12-21 | 2021-06-03 | Futurewei Technologies, Inc. | System and method of federated learning with diversified feedback |
CN113011602A (zh) * | 2021-03-03 | 2021-06-22 | 中国科学技术大学苏州高等研究院 | 一种联邦模型训练方法、装置、电子设备和存储介质 |
CN112884163A (zh) * | 2021-03-18 | 2021-06-01 | 中国地质大学(北京) | 基于联邦机器学习算法与云端反馈的组合服务评估方法与系统 |
CN113112027A (zh) * | 2021-04-06 | 2021-07-13 | 杭州电子科技大学 | 一种基于动态调整模型聚合权重的联邦学习方法 |
CN113095407A (zh) * | 2021-04-12 | 2021-07-09 | 哈尔滨理工大学 | 一种降低通信次数的高效异步联邦学习方法 |
CN113191503A (zh) * | 2021-05-20 | 2021-07-30 | 清华大学深圳国际研究生院 | 一种非共享数据的去中心化的分布式学习方法及系统 |
CN113177645A (zh) * | 2021-06-29 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 联邦学习方法、装置、计算设备及存储介质 |
Non-Patent Citations (5)
Title |
---|
Jakub Konečný等.Federated Learning: Strategies for Improving Communication Efficiency.《https://arxiv.org/abs/1610.05492》.2017,1-10. * |
Xiaoxiao Li等.FedBN: Federated Learning on Non-IID Features via Local Batch Normalization.《https://arxiv.org/abs/2102.07623》.2021, 1-27. * |
李鉴;邵云峰;卢燚;吴骏.联邦学习及其在电信行业的应用.信息通信技术与政策.2020,(第09期),39-45. * |
王亚珅.面向数据共享交换的联邦学习技术发展综述.无人系统技术.2019,(第06期),62-66. * |
董业;侯炜;陈小军;曾帅.基于秘密分享和梯度选择的高效安全联邦学习.计算机研究与发展.2020,(第10期),235-244. * |
Also Published As
Publication number | Publication date |
---|---|
CN113672684A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113672684B (zh) | 一种面向非独立同分布数据的分层用户训练管理系统及方法 | |
CN114584581B (zh) | 面向智慧城市物联网信物融合的联邦学习系统及联邦学习训练方法 | |
CN105207821B (zh) | 一种面向业务的网络综合性能评估方法 | |
CN114553661B (zh) | 一种面向无线联邦学习的移动用户设备分簇训练方法 | |
CN106156810A (zh) | 通用机器学习算法模型训练方法、系统和计算节点 | |
CN103544528A (zh) | 一种基于Hadoop的BP神经网络分类方法 | |
CN101616074B (zh) | 基于量子进化的组播路由优化方法 | |
CN115544873B (zh) | 个性化联邦学习的训练效率与个性化效果量化评估方法 | |
CN110351145A (zh) | 一种基于经济效益的虚拟化的无线网络功能编排方法 | |
Nie et al. | HetuMoE: An efficient trillion-scale mixture-of-expert distributed training system | |
CN117875454B (zh) | 一种基于多级智联的数据异构性联邦学习方法及存储介质 | |
CN116362327A (zh) | 一种模型训练方法、系统及电子设备 | |
CN105896547A (zh) | 一种风电接入下的大电网分级电压控制方法 | |
CN117459570A (zh) | 联邦学习中基于强化学习的客户端选择和自适应模型聚合方法及系统 | |
Gao et al. | Deep reinforcement learning based node pairing scheme in edge-chain for IoT applications | |
Du | Economic Forecast Model and Development Path Analysis Based on BP and RBF Neural Network | |
CN116776997A (zh) | 非独立同分布环境下的联邦学习模型构建方法 | |
Li et al. | FedGosp: a novel framework of gossip federated learning for data heterogeneity | |
Guo et al. | Multi-level federated learning mechanism with reinforcement learning optimizing in smart city | |
Liu et al. | Federated Learning Model Training Mechanism with Edge Cloud Collaboration for Services in Smart Cities | |
Yin et al. | FedSCS: Client selection for federated learning under system heterogeneity and client fairness with a Stackelberg game approach | |
CN109902728A (zh) | 一种基于平均互信息的快速社区发现方法及系统 | |
Jinjuan | Research on enterprise credit risk assessment method based on improved genetic algorithm | |
Tan et al. | Research on The Evaluation Model of Symbiosis Degree in High-tech Industrial innovation Ecosystem-An Empirical Study Based on the Panel Data of China from 2012 to 2018 | |
Ren et al. | Research on Edge-Cloud Collaborative Data Sharing Method Based on Federated Learning in Internet of Vehicles |
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 |