CN113988314B - 一种选择客户端的分簇联邦学习方法及系统 - Google Patents
一种选择客户端的分簇联邦学习方法及系统 Download PDFInfo
- Publication number
- CN113988314B CN113988314B CN202111318689.9A CN202111318689A CN113988314B CN 113988314 B CN113988314 B CN 113988314B CN 202111318689 A CN202111318689 A CN 202111318689A CN 113988314 B CN113988314 B CN 113988314B
- Authority
- CN
- China
- Prior art keywords
- model
- local
- cluster
- current
- clients
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012549 training Methods 0.000 claims abstract description 62
- 239000011159 matrix material Substances 0.000 claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 13
- 238000011156 evaluation Methods 0.000 claims description 53
- 230000002776 aggregation Effects 0.000 claims description 26
- 238000004220 aggregation Methods 0.000 claims description 26
- 238000012360 testing method Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000016571 aggressive behavior Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种选择客户端的分簇联邦学习方法及系统,其中,方法包括:获取数据样品标签矩阵;数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;根据数据样品标签矩阵,利用K‑Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;分别利用每个簇中的客户端的本地数据,对全局初始模型进行训练,得到每个簇的簇全局模型。本发明通过将为与服务器连接的多个客户端进行分簇处理并分别进行连邦学习,能够降低Non‑IID数据程度对联邦学习的影响,同时降低客户端上传本地模型至服务器阶段的通信开销。
Description
技术领域
本发明涉及机器训练技术领域,特别是涉及一种选择客户端的分簇联邦学习方法及系统。
背景技术
近年来,随着大数据和物联网的快速发展,数据量呈现爆炸式增长。在海量数据中,用户的隐私保护问题显得格外的突出。在普通的分布式机器学习的训练过程中,若干客户端的本地数据会直接发送至服务器,进行统一训练,这无疑会增大用户隐私泄露的危险。研究者为保护用户隐私,研究出了联邦学习技术。联邦学习技术由Google在2016年首次提出,之后被应用于移动设备输入法的下一词联想模型的训练和部署。联邦学习的设计目标是在保证每个参与训练用户数据的安全前提下,无需将所有数据集中到中央服务器就能够训练机器学习模型的技术。因此,客户端的数据只需在本地就可以完成模型的训练,从而在一定程度上解决了隐私保护的问题,让客户端的数据能够在多客户端的参与下进行安全的交互建模和学习,从而达到理想的共同收益。
但是,在联邦学习的实际应用环境中,非独立同分布数据(Non-Independent andIdentically Distributed,Non-IID)会对联邦学习的训练带来以下的影响:模型训练带来偏差、导致准确率下降、影响模型的性能以及训练轮次过多导致模型不能够快速收敛。
发明内容
本发明的目的是提供一种选择客户端的分簇联邦学习方法及系统,能够降低Non-IID数据程度对联邦学习的影响,同时降低客户端上传本地模型至服务器阶段的通信开销。
为实现上述目的,本发明提供了如下方案:
一种选择客户端的分簇联邦学习方法,包括:
获取数据样品标签矩阵;所述数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
根据所述数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型。
可选的,所述分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型,具体包括:
确定任一簇为当前簇;
所述当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将所述全局初始模型确定为本地初始模型;
所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型;
根据多个所述本地模型,更新所述当前簇;
所述服务器将更新后的所述当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
判断所述当前簇的聚合模型是否收敛,得到第一判断结果;
若所述第一判断结果为否,则将所述当前簇的聚合模型作为所述本地初始模型,并返回步骤“所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型”;
若所述第一判断结果为是,则确定当前簇的聚合模型为所述当前簇的簇全局模型。
可选的,所述根据多个所述本地模型,更新所述当前簇,具体包括:
分别计算所述当前簇中多个本地模型的评估分数;
根据所述评估分数,更新每个所述本地模型的惩罚因子;
删除所述当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后所述当前簇。
可选的,所述根据所述评估分数,更新每个所述本地模型的惩罚因子,具体包括:
确定所述当前簇中任一客户端对应的本地模型为当前本地模型;
判断所述当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;
若所述第二判断结果为是,则将所述当前本地模型的惩罚因子的数值减小1;
若所述第二判断结果为否,则将所述当前本地模型的惩罚因子的数值增加1。
可选的,所述评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;we+M为客户端i在e+M轮的训练权重;acci,e+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,e+M为该簇中的客户端在第e+M轮的平均准确率。
一种选择客户端的分簇联邦学习系统,包括:
数据样品标签矩阵获取模块,用于获取数据样品标签矩阵;所述数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
分簇处理模块,用于根据所述数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
簇全局模型确定模块,用于分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型。
可选的,所述簇全局模型确定模块,具体包括:
当前簇确定子模块,用于确定任一簇为当前簇;
本地初始模型确定子模块,用于所述当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将所述全局初始模型确定为本地初始模型;
本地模型确定子模块,用于使所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型;
当前簇更新子模块,用于根据多个所述本地模型,更新所述当前簇;
聚合模型确定子模块,用于使所述服务器将更新后的所述当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
第一判断子模块,用于判断所述当前簇的聚合模型是否收敛,得到第一判断结果;若所述第一判断结果为否,则调用本地初始模型更新子模块;若所述第一判断结果为是,则调用簇全局模型确定子模块;
本地初始模型更新子模块,用于将所述当前簇的聚合模型作为所述本地初始模型,并调用所述本地模型确定子模块;
簇全局模型确定子模块,用于确定当前簇的聚合模型为所述当前簇的簇全局模型。
可选的,所述当前簇更新子模块,具体包括:
评估分数计算单元,用于分别计算所述当前簇中多个本地模型的评估分数;
惩罚因子更新单元,用于根据所述评估分数,更新每个所述本地模型的惩罚因子;
当前簇更新单元,用于删除所述当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后所述当前簇。
可选的,所述惩罚因子更新单元,具体包括:
当前本地模型确定子单元,用于确定所述当前簇中任一客户端对应的本地模型为当前本地模型;
第二判断子单元,用于判断所述当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;若所述第二判断结果为是,则调用第一惩罚因子更新子单元;若所述第二判断结果为否,则调用第二惩罚因子更新子单元;
第一惩罚因子更新子单元,用于将所述当前本地模型的惩罚因子的数值减小1;
第二惩罚因子更新子单元,用于将所述当前本地模型的惩罚因子的数值增加1。
可选的,所述评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;wc+M为客户端i在e+M轮的训练权重;acci,e+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,e+M为该簇中的客户端在第e+M轮的平均准确率。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供了一种选择客户端的分簇联邦学习方法及系统,其中,方法包括:获取数据样品标签矩阵;数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;根据数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;分别利用每个簇中的客户端的本地数据,对全局初始模型进行训练,得到每个簇的簇全局模型。本发明通过将为与服务器连接的多个客户端进行分簇处理并分别进行连邦学习,能够降低Non-IID数据程度对联邦学习的影响,同时降低客户端上传本地模型至服务器阶段的通信开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中选择客户端的分簇联邦学习方法流程图;
图2为本发明实施例中客户端分簇流程图;
图3为本发明实施例中选择客户端的分簇联邦学习过程框架图;
图4为本发明实施例中客户端训练过程中的选择流程。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种选择客户端的分簇联邦学习方法及系统,能够降低Non-IID数据程度对联邦学习的影响,同时降低客户端上传本地模型至服务器阶段的通信开销。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明实施例中选择客户端的分簇联邦学习方法流程图,如图1,本发明提供了一种选择客户端的分簇联邦学习方法,包括:
步骤101:获取数据样品标签矩阵;数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
步骤102:根据数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
步骤103:分别利用每个簇中的客户端的本地数据,对全局初始模型进行训练,得到每个簇的簇全局模型。
步骤103,具体包括:
确定任一簇为当前簇;
当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将全局初始模型确定为本地初始模型;
当前簇中的多个客户端分别利用本地数据,对本地初始模型进行训练,得到当前簇中的每个客户端的本地模型;
根据多个本地模型,更新当前簇;
服务器将更新后的当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
判断当前簇的聚合模型是否收敛,得到第一判断结果;
若第一判断结果为否,则将当前簇的聚合模型作为本地初始模型,并返回步骤“当前簇中的多个客户端分别利用本地数据,对本地初始模型进行训练,得到当前簇中的每个客户端的本地模型”;
若第一判断结果为是,则确定当前簇的聚合模型为当前簇的簇全局模型。
其中,根据多个本地模型,更新当前簇,具体包括:
分别计算当前簇中多个本地模型的评估分数;
根据评估分数,更新每个本地模型的惩罚因子;
删除当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后当前簇。
具体的,根据评估分数,更新每个本地模型的惩罚因子,具体包括:
确定当前簇中任一客户端对应的本地模型为当前本地模型;
判断当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;
若第二判断结果为是,则将当前本地模型的惩罚因子的数值减小1;
若第二判断结果为否,则将当前本地模型的惩罚因子的数值增加1。
具体的,评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;we+M为客户端i在e+M轮的训练权重;acci,e+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,e+M为该簇中的客户端在第e+M轮的平均准确率。
具体的,本发明阐述了一种基于分簇的联邦学习客户端选择方法。该方法主要是筛选在每个簇中训练的客户端的模型质量的好坏或者是具有一定破坏行为的恶意客户端。该方法起到了能够保证多客户端之间训练的可靠性和安全性,在不降低训练准确率的保证下,降低客户端与服务器之间的通信开销。该方法主要体现在簇内客户端的选择,而不过多介绍对客户端进行分簇的方法,具体方案如下所示:
Step 1:对客户端进行分簇(采用客户端上传数据样本标签的方式)。
1.1、首先,所有参与训练的客户端将自己的数据样本标签以one-hot编码的方式上传至服务器,上传过程可使用某种安全协议(安全多方计算、同态加密和差分隐私等)保证客户端的数据不被识别。
1.2、之后,服务器根据每个客户端上传的数据样本标签信息后,形成一个数据样本标签矩阵。
1.3、最后,服务器基于该数据样本标签矩阵使用K-Means++算法对每个客户端进行分簇,使具有相似标签信息的客户端放在同一个簇内。簇的数量由K-Means++算法中的k值而定。
在K-Means++算法中,本方法采用余弦相似度来度量每个客户端之间的相似性,假设客户端i和客户端j的余弦相似度表示如下:
sim(xi,xj)=||xi,xj||
假设共N个客户端参与训练及分成k个簇。经过K-Means++算法之后,可以得到客户端簇c1,c2,…,ck如图2。
Step 2:联邦训练
在该步骤中,我们分别对每个簇中的客户端进行联邦训练,并在训练的过程中评估出符合我们要求的客户端。图3为选择客户端的分簇联邦学习过程框架图。我们在此假设,训练需要用到的参数:本地训练次数E,簇内客户端数目n,计算阈值M,惩罚因子P,惩罚宽容因子Q,评估分数S,平均准确率avg,测试准确率testacc以及准确率acc。其中,M表示在训练过程中每训练M次进行一次计算;P表示每训练M次如果评估分数S的值小于0,则P减1,否则,P加1;S表示每训练M次的评估分数;avg表示的意思为,在每训练M次该簇中所有客户端的平均准确率;testacc表示的意思为,在每训练M次,客户端i的测试准确率。
2.1、服务器初始化全局模型w0,并将该全局模型发送给每个簇中的客户端。
2.2、在簇ck中,客户端i收到服务器发送的全局模型之后,将自己持有的本地数据与全局模型进行本地训练。
2.3、在训练过程中,我们每M个回合就对参加训练的客户端计算一次评估分数S。评估分数S的表达式如下:
2.4、每个客户端计算评估分数S之后,进行判断评估分数S是否符合系统所设置的阈值0(评估分数阈值)。若评估分数S≥0,则符合我们对该客户端的评估,其惩罚因子P加1;否则说明该客户端,在该次评估中模型质量较差。或者说,该客户端的数据样本标签与簇中其它客户端差别较大,因此,惩罚因子P减1。惩罚因子P的初始值为0。
2.5、如图4,每个客户端的模型质量评价结束后,得到了每个客户端新的惩罚因子P。我们假设惩罚宽容因子Q=2,即P=Q=|2|。此时,我们将判断每个客户端的惩罚因子大小。若客户端i的惩罚因子-2≤P≤2时,该客户端仍可以参与下一通信轮次的训练;若P>2时,说明客户端i的模型质量较好;若P<-2时,客户端将被剔除,不再进行后续的联邦训练。
2.6、当所有的客户端训练结束后,将训练好的本地模型上传至服务器,等待服务器的聚合操作。注:惩罚因子P<-2的客户端,将不再上传本地模型。
2.7、服务器收到每个客户端本地模型之后,将每个簇的客户端分别聚合成新的全局模型,即
2.8、服务器将新的全局模型发送给对应簇的客户端中,进行下一轮次的训练。直到模型收敛为止。
本发明还提供了一种选择客户端的分簇联邦学习系统,包括:
数据样品标签矩阵获取模块,用于获取数据样品标签矩阵;数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
分簇处理模块,用于根据数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
簇全局模型确定模块,用于分别利用每个簇中的客户端的本地数据,对全局初始模型进行训练,得到每个簇的簇全局模型。
其中,簇全局模型确定模块,具体包括:
当前簇确定子模块,用于确定任一簇为当前簇;
本地初始模型确定子模块,用于当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将全局初始模型确定为本地初始模型;
本地模型确定子模块,用于使当前簇中的多个客户端分别利用本地数据,对本地初始模型进行训练,得到当前簇中的每个客户端的本地模型;
当前簇更新子模块,用于根据多个本地模型,更新当前簇;
聚合模型确定子模块,用于使服务器将更新后的当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
第一判断子模块,用于判断当前簇的聚合模型是否收敛,得到第一判断结果;若第一判断结果为否,则调用本地初始模型更新子模块;若第一判断结果为是,则调用簇全局模型确定子模块;
本地初始模型更新子模块,用于将当前簇的聚合模型作为本地初始模型,并调用本地模型确定子模块;
簇全局模型确定子模块,用于确定当前簇的聚合模型为当前簇的簇全局模型。
具体的,当前簇更新子模块,具体包括:
评估分数计算单元,用于分别计算当前簇中多个本地模型的评估分数;
惩罚因子更新单元,用于根据评估分数,更新每个本地模型的惩罚因子;
当前簇更新单元,用于删除当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后当前簇。
优选地,惩罚因子更新单元,具体包括:
当前本地模型确定子单元,用于确定当前簇中任一客户端对应的本地模型为当前本地模型;
第二判断子单元,用于判断当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;若第二判断结果为是,则调用第一惩罚因子更新子单元;若第二判断结果为否,则调用第二惩罚因子更新子单元;
第一惩罚因子更新子单元,用于将当前本地模型的惩罚因子的数值减小1;
第二惩罚因子更新子单元,用于将当前本地模型的惩罚因子的数值增加1。
具体的,评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;we+M为客户端i在e+M轮的训练权重;acci,e+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,c+M为该簇中的客户端在第e+M轮的平均准确率。
综上,本发明可以某个簇内,剔除掉质量较差的客户端,即数据样本标签与该簇内其他客户端相差较大的客户端。可以进一步解决Non-IID数据问题;剔除掉质量较差的客户端,可以进一步提高联邦学习算法的准确率,使得模型可以快速达到收敛状态,在上传本地模型期间,不再上传质量较差的客户端,可以一定程度上节省上行链路的通信开销;质量较差的客户端,亦可能是带有攻击性或者威胁性的恶劣客户端,这样的客户端对联邦学习算法是具有很大威胁的,严重情况下会导致客户端的隐私泄露。因此,该方法可以有效地在安全性方面得到较好的保障。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (4)
1.一种选择客户端的分簇联邦学习方法,其特征在于,所述方法,包括:
获取数据样品标签矩阵;所述数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
根据所述数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型;
所述分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型,具体包括:
确定任一簇为当前簇;
所述当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将所述全局初始模型确定为本地初始模型;
所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型;
根据多个所述本地模型,更新所述当前簇;
所述服务器将更新后的所述当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
判断所述当前簇的聚合模型是否收敛,得到第一判断结果;
若所述第一判断结果为否,则将所述当前簇的聚合模型作为所述本地初始模型,并返回步骤“所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型”;
若所述第一判断结果为是,则确定当前簇的聚合模型为所述当前簇的簇全局模型;
所述根据多个所述本地模型,更新所述当前簇,具体包括:
分别计算所述当前簇中多个本地模型的评估分数;
根据所述评估分数,更新每个所述本地模型的惩罚因子;
删除所述当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后所述当前簇;
所述评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;wc+M为客户端i在e+M轮的训练权重;acci,c+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,e+M为该簇中的客户端在第e+M轮的平均准确率。
2.根据权利要求1所述的选择客户端的分簇联邦学习方法,其特征在于,所述根据所述评估分数,更新每个所述本地模型的惩罚因子,具体包括:
确定所述当前簇中任一客户端对应的本地模型为当前本地模型;
判断所述当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;
若所述第二判断结果为是,则将所述当前本地模型的惩罚因子的数值减小1;
若所述第二判断结果为否,则将所述当前本地模型的惩罚因子的数值增加1。
3.一种选择客户端的分簇联邦学习系统,其特征在于,所述系统,包括:
数据样品标签矩阵获取模块,用于获取数据样品标签矩阵;所述数据样品标签矩阵中的元素为与服务器连接的多个客户端的本地数据标签;
分簇处理模块,用于根据所述数据样品标签矩阵,利用K-Means++算法对为与服务器连接的多个客户端进行分簇处理,得到多个簇;
簇全局模型确定模块,用于分别利用每个所述簇中的客户端的本地数据,对全局初始模型进行训练,得到每个所述簇的簇全局模型;
所述簇全局模型确定模块,具体包括:
当前簇确定子模块,用于确定任一簇为当前簇;
本地初始模型确定子模块,用于所述当前簇中的多个客户端分别获取服务器发送的全局初始模型,并将所述全局初始模型确定为本地初始模型;
本地模型确定子模块,用于使所述当前簇中的多个客户端分别利用本地数据,对所述本地初始模型进行训练,得到所述当前簇中的每个客户端的本地模型;
当前簇更新子模块,用于根据多个所述本地模型,更新所述当前簇;
聚合模型确定子模块,用于使所述服务器将更新后的所述当前簇中多个客户端对应的本地模型进行聚合,得到当前簇的聚合模型;
第一判断子模块,用于判断所述当前簇的聚合模型是否收敛,得到第一判断结果;若所述第一判断结果为否,则调用本地初始模型更新子模块;若所述第一判断结果为是,则调用簇全局模型确定子模块;
本地初始模型更新子模块,用于将所述当前簇的聚合模型作为所述本地初始模型,并调用所述本地模型确定子模块;
簇全局模型确定子模块,用于确定当前簇的聚合模型为所述当前簇的簇全局模型;
所述当前簇更新子模块,具体包括:
评估分数计算单元,用于分别计算所述当前簇中多个本地模型的评估分数;所述评估分数的计算公式为:
其中,S为评估分数;E为总通信轮次;we+M为客户端i在e+M轮的训练权重;acci,e+M为客户端i在第e+M轮的训练准确率;M为1次迭代时本地模型的训练次数;testacc,i,e+M为客户端i在第e+M轮的测试准确率;avgacc,c+M为该簇中的客户端在第e+M轮的平均准确率;
惩罚因子更新单元,用于根据所述评估分数,更新每个所述本地模型的惩罚因子;
当前簇更新单元,用于删除所述当前簇中惩罚因子小于惩罚因子阈值的本地模型对应的客户端,得到更新后所述当前簇。
4.根据权利要求3所述的选择客户端的分簇联邦学习系统,其特征在于,所述惩罚因子更新单元,具体包括:
当前本地模型确定子单元,用于确定所述当前簇中任一客户端对应的本地模型为当前本地模型;
第二判断子单元,用于判断所述当前本地模型的评估分数是否小于评估分数阈值,得到第二判断结果;若所述第二判断结果为是,则调用第一惩罚因子更新子单元;若所述第二判断结果为否,则调用第二惩罚因子更新子单元;
第一惩罚因子更新子单元,用于将所述当前本地模型的惩罚因子的数值减小1;
第二惩罚因子更新子单元,用于将所述当前本地模型的惩罚因子的数值增加1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111318689.9A CN113988314B (zh) | 2021-11-09 | 2021-11-09 | 一种选择客户端的分簇联邦学习方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111318689.9A CN113988314B (zh) | 2021-11-09 | 2021-11-09 | 一种选择客户端的分簇联邦学习方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113988314A CN113988314A (zh) | 2022-01-28 |
CN113988314B true CN113988314B (zh) | 2024-05-31 |
Family
ID=79747307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111318689.9A Active CN113988314B (zh) | 2021-11-09 | 2021-11-09 | 一种选择客户端的分簇联邦学习方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113988314B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114553661B (zh) * | 2022-01-29 | 2023-08-18 | 南京邮电大学 | 一种面向无线联邦学习的移动用户设备分簇训练方法 |
CN114925854A (zh) * | 2022-04-02 | 2022-08-19 | 同济大学 | 一种基于梯度相似性度量的联邦学习节点选择方法及系统 |
CN115329985B (zh) * | 2022-09-07 | 2023-10-27 | 北京邮电大学 | 无人集群智能模型训练方法、装置和电子设备 |
US20240265268A1 (en) * | 2023-02-08 | 2024-08-08 | World Wide Technology Holding Co., LLC | Federated learning with single-round convergence |
CN117077817B (zh) * | 2023-10-13 | 2024-01-30 | 之江实验室 | 一种基于标签分布的个性化联邦学习模型训练方法及装置 |
CN117575423B (zh) * | 2024-01-10 | 2024-04-16 | 湖南工商大学 | 基于联邦学习系统的工业产品质量检测方法及相关设备 |
CN117808126B (zh) * | 2024-02-29 | 2024-05-28 | 浪潮电子信息产业股份有限公司 | 机器学习方法、装置、设备、联邦学习系统及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112181971A (zh) * | 2020-10-27 | 2021-01-05 | 华侨大学 | 一种基于边缘的联邦学习模型清洗和设备聚类方法、系统、设备和可读存储介质 |
CN112488322A (zh) * | 2020-12-15 | 2021-03-12 | 杭州电子科技大学 | 一种基于数据特征感知聚合的联邦学习模型训练方法 |
CN112508205A (zh) * | 2020-12-04 | 2021-03-16 | 中国科学院深圳先进技术研究院 | 一种联邦学习调度方法、装置及系统 |
CN113379066A (zh) * | 2021-06-10 | 2021-09-10 | 重庆邮电大学 | 一种基于雾计算的联邦学习方法 |
WO2021196701A1 (zh) * | 2020-03-31 | 2021-10-07 | 深圳前海微众银行股份有限公司 | 一种应对攻击的方法及联邦学习装置 |
CN113487351A (zh) * | 2021-07-05 | 2021-10-08 | 哈尔滨工业大学(深圳) | 隐私保护广告点击率预测方法、装置、服务器及存储介质 |
-
2021
- 2021-11-09 CN CN202111318689.9A patent/CN113988314B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021196701A1 (zh) * | 2020-03-31 | 2021-10-07 | 深圳前海微众银行股份有限公司 | 一种应对攻击的方法及联邦学习装置 |
CN112181971A (zh) * | 2020-10-27 | 2021-01-05 | 华侨大学 | 一种基于边缘的联邦学习模型清洗和设备聚类方法、系统、设备和可读存储介质 |
CN112508205A (zh) * | 2020-12-04 | 2021-03-16 | 中国科学院深圳先进技术研究院 | 一种联邦学习调度方法、装置及系统 |
CN112488322A (zh) * | 2020-12-15 | 2021-03-12 | 杭州电子科技大学 | 一种基于数据特征感知聚合的联邦学习模型训练方法 |
CN113379066A (zh) * | 2021-06-10 | 2021-09-10 | 重庆邮电大学 | 一种基于雾计算的联邦学习方法 |
CN113487351A (zh) * | 2021-07-05 | 2021-10-08 | 哈尔滨工业大学(深圳) | 隐私保护广告点击率预测方法、装置、服务器及存储介质 |
Non-Patent Citations (2)
Title |
---|
潘碧莹 ; 丘海华 ; 张家伦.不同数据分布的联邦机器学习技术研究.2019年5G网络创新研讨会.2019,全文. * |
联邦学习及其在电信行业的应用;李鉴;邵云峰;卢燚;吴骏;;信息通信技术与政策;20200915(09);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113988314A (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113988314B (zh) | 一种选择客户端的分簇联邦学习方法及系统 | |
CN105608179B (zh) | 确定用户标识的关联性的方法和装置 | |
CN107609389B (zh) | 一种基于图像内容相关性的验证方法及系统 | |
CN114842267A (zh) | 基于标签噪声域自适应的图像分类方法及系统 | |
CN110020022B (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN109117856A (zh) | 基于智能边缘云的人及物追踪方法、装置及系统 | |
CN114943345B (zh) | 基于主动学习和模型压缩的联邦学习全局模型训练方法 | |
CN116049412B (zh) | 文本分类方法、模型训练方法、装置及电子设备 | |
CN115130536A (zh) | 特征提取模型的训练方法、数据处理方法、装置及设备 | |
CN113691594B (zh) | 一种基于二阶导数解决联邦学习中数据不平衡问题的方法 | |
WO2023020214A1 (zh) | 检索模型的训练和检索方法、装置、设备及介质 | |
CN115544873B (zh) | 个性化联邦学习的训练效率与个性化效果量化评估方法 | |
CN114863226A (zh) | 一种网络物理系统入侵检测方法 | |
CN116362325A (zh) | 一种基于模型压缩的电力图像识别模型轻量化应用方法 | |
CN111310918A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN117726884B (zh) | 对象类别识别模型的训练方法、对象类别识别方法及装置 | |
CN115392285A (zh) | 一种基于多模态的深度学习信号个体识别模型防御方法 | |
CN113011893B (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN113988315A (zh) | 一种去中心的分簇联邦学习方法及系统 | |
CN118036708A (zh) | 一种基于历史更新修正的联邦遗忘学习方法 | |
CN110209704B (zh) | 用户匹配方法及设备 | |
CN110889467A (zh) | 一种公司名称匹配方法、装置、终端设备及存储介质 | |
CN116259057A (zh) | 基于联盟博弈解决联邦学习中数据异质性问题的方法 | |
CN115577797A (zh) | 一种基于本地噪声感知的联邦学习优化方法及系统 | |
CN118035800A (zh) | 模型训练方法、装置、设备及存储介质 |
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 |