CN114091356A - 一种联邦学习方法及装置 - Google Patents
一种联邦学习方法及装置 Download PDFInfo
- Publication number
- CN114091356A CN114091356A CN202210051900.3A CN202210051900A CN114091356A CN 114091356 A CN114091356 A CN 114091356A CN 202210051900 A CN202210051900 A CN 202210051900A CN 114091356 A CN114091356 A CN 114091356A
- Authority
- CN
- China
- Prior art keywords
- client
- training
- verification
- clients
- abnormal
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- 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
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种联邦学习方法及装置,通过在联邦学习过程中加入验证轮,由服务端将待验证客户端上一次返回的模型更新参数发送至辅助客户端,利用辅助客户端的本地数据进行训练,计算验证轮中各辅助客户端训练终止时损失值与以往轮次的偏差,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端。能够在各客户端不知情的条件下,快速有效的识别出异常的客户端,进一步的,根据异常客户端对应的各验证轮次中的偏差调节模型聚合过程中的权重,以防止异常客户端对全局模型更新的不良影响。
Description
技术领域
本发明涉及机器学习技术领域,尤其涉及一种联邦学习方法及装置。
背景技术
随着机器学习、深度学习等人工智能技术被运用到许多大数据场景,在实际运用中机器学习、深度学习模型的训练需要大量的优质数据,在大数据场景下,数据的收集和使用受限于法律规定、行业竞争、用户隐私保护意识等多方面因素。这些限制使得数据被分散在不同企业、组织中且各方数据不能直接共享或者交换,无法采用集中式机器学习模型。出于保护隐私和提升人工智能模型效果的考虑,采用联邦学习技术,在数据不出本地的前提下,由各个客户端提供经过本地数据训练后的梯度或模型参数,由服务方进行聚合,从而实现数据不互通的多方联合建模,共同训练全局模型。
然而在联邦场景下,无法保证成百上千的联邦参与者中没有恶意的参与者通过投毒攻击等手段破坏模型效果且参与者没有上传错误或不相关的梯度或参数,而这些因素会影响全局模型的性能,如模型准确度下降或无法收敛。所以需要设计一种新的训练方法,对投毒攻击进行防御。
发明内容
鉴于此,本发明实施例提供了一种联邦学习方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷,解决联邦学习过程中参与者作恶及投毒攻击防御的问题。
本发明的技术方案如下:
一方面,本发明提供一种联邦学习方法,所述方法用于在一个服务端上运行,所述服务端与多个客户端组成的局域网,所述方法包括:
在训练轮次中,将全局模型分别发送至按照第一设定规则选择的多个训练客户端,以供各训练客户端利用本地数据对所述全局模型进行训练,在达到指定迭代次数后终止;接收各训练客户端返回的更新参数,按照预设聚合权重对各训练客户端返回的更新参数进行聚合并更新所述全局模型;
按照第二设定规则在训练轮次之间安插验证轮次,在各验证轮次中,按照第三设定规则选取多个辅助客户端对待验证客户端进行验证;
获取待验证客户端返回的更新参数并配置为验证模型,将所述验证模型发送至各辅助客户端,以供各辅助客户端利用本地数据对所述验证模型进行训练,在达到所述指定迭代次数后终止;
获取各辅助客户端训练所述验证模型终止时验证损失值,并计算各辅助客户端的验证损失值与以往训练轮次的偏差,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端;
根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整所述预设聚合权重,并基于上一训练轮次中各训练客户端返回的更新数据进行聚合和更新所述全局模型。
在一些实施例中,所述服务端与各客户端基于同态加密方案构建公钥和私钥进行通信。
在一些实施例中,所述第一设定规则为随机选择或优先选取本地数据量较多的第一设定数量个客户端作为训练客户端;所述第二设定规则为将训练轮次及验证轮次随机分布或按照设定频次均匀分布;所述第三设定规则为随机选择或优先选择声誉值较优的第二设定数量个客户端作为辅助客户端,各客户端的声誉值反比于被标记为异常客户端的次数。
在一些实施例中,所述第二设定规则还包括:在设置最大验证次数的基础上,设置每一个客户端至少参与1次验证。
在一些实施例中,按照预设聚合权重对各训练客户端返回的更新参数进行聚合并更新所述全局模型,计算式为:
其中,表示更新后的权重,Pr表示所述训练客户端的索引,nk表示第k个训练客户端的样本数据量,n表示所述训练客户端的数量,表示第k个训练客户端的权重,表示第k个训练客户端的更新参数,r+1表示轮次序数。
在一些实施例中,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端中,所述设定比例为二分之一。
在一些实施例中,根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整所述预设聚合权重,包括:
将异常客户端在相应验证轮次中各辅助客户端对应的偏差进行累加得到异常信息;
将所述异常信息带入递减函数计算可信度,采用一次函数或其他自适应函数根据该异常客户端的可信度计算该异常客户端在聚合过程中的权重。
另一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现上述方法的步骤。
本发明的有益效果至少是:
所述联邦学习方法及装置中,通过在联邦学习过程中加入验证轮,由服务端将待验证客户端上一次返回的模型更新参数发送至辅助客户端,利用辅助客户端的本地数据进行训练,计算验证轮中各辅助客户端训练终止时损失值与以往轮次的偏差,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端。能够在各客户端不知情的条件下,快速有效的识别出异常的客户端,进一步的,根据异常客户端对应的各验证轮次中的偏差调节模型聚合过程中的权重,以防止异常客户端对全局模型更新的不良影响。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所述联邦学习方法的流程示意图;
图2为本发明一实施例所述联邦学习方法中训练轮次工作逻辑示意图;
图3为本发明一实施例所述联邦学习方法中验证轮次工作逻辑示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
联邦学习过程中各个客户端的数据仅对自己可见,集中式机器学习检测投毒攻击或错误数据的方法基于原始数据进行筛选,因此无法直接迁移到联邦场景下。目前适用于联邦学习场景下的验证客户端可信度的方法多数假设客户端上传的梯度或模型参数值对服务方是可见的并且各客户端的样本数据具有相似分布,认为各客户端上传到服务端的梯度数据也同样具有相似性,在模型聚合时偏向相似度较高的梯度集合,对于与其他梯度信息偏离较大的梯度数据,在聚合时赋予较低的权重,或者将其剔除不参与聚合。然而在实际情况中,各个客户端的样本数据往往是非独立同分布的,他们使用本地数据进行训练后生成的梯度数据,之间往往有一定差异性,通过相似性进行客户端可信度验证效果不佳。同时,在联邦学习隐私增强架构下,服务方不但无法得到原始样本数据,梯度信息也只能拿到加密之后的密文,无法解密出梯度信息,也给梯度相似性的计算造成了困难。
联邦学习场景下检测投毒攻击或错误数据主要有两个思路:异常检测和提高算法鲁棒性。异常检测主要是筛选移除恶意客户端上传的梯度和模型参数,一方面从模型的异常表现入手,假设服务方拥有一个干净的验证集,通过不同客户端上传的模型在验证集上的表现(例如:模型错误率和损失函数值)来评价客户端可信度,另一方面是从梯度的异常特性入手,采用基于数值统计或主成分分析等聚类手段筛选出异常梯度的指示性特征,对这些客户端进行清洗移除。提高算法鲁棒性主要从算法本身的设计考虑,服务方通过挑选或给不同客户端上传的梯度、模型参数赋予不同的权重来聚合出鲁棒全局模型,使模型在收到投毒攻击或错误数据的情况下仍然可以学习出性能良好的分类器,提高模型鲁棒性。
当前防御技术的研究还面临着很大的挑战,对于基于模型异常表现的异常检测方法,要求服务方拥有一个保证“干净”的验证集,破坏了联邦学习各个客户端数据仅对自己可见的假设,对于基于梯度异常特性的异常检测方法和提高算法鲁棒性方法需要直接访问梯度,而根据目前多项研究表明,服务方可以通过上传的梯度直接反推出原始数据,这就导致基于异常检测和提高算法鲁棒性的方法无法运用在隐私增强架构下的联邦学习模型,并且在联邦学习场景下,各个客户端的数据分布多数是非独立同分布的,他们使用本地数据进行训练后生成的梯度数据,之间往往有一定差异性,聚合或聚类过程中不恰当的参数选取很容易造成正常客户端的梯度被排除出训练过程,导致联邦模型精度下降或对客户端可信度评价的不准确。
本发明通过同态加密和差分扰动的方法将多个参与方客户端上传的加密后的模型参数(或梯度)进行安全聚合并利用聚合后的模型参数(或梯度)更新当前的服务器模型;同时在联邦模型训练过程中,选取一定比例的客户端对目标客户端模型进行验证,以评估目标客户端可信度,排除上传恶意模型(或梯度)或错误模型(或梯度)的客户端,以保证全局模型准确率。
具体的,本发明提供一种联邦学习方法,所述方法用于在一个服务端上运行,所述服务端与多个客户端组成的局域网,在一些实施例中,所述服务端与各客户端基于同态加密方案构建公钥和私钥进行通信。
如图1所示,所述方法包括步骤S101~S105:
步骤S101:在训练轮次中,将全局模型分别发送至按照第一设定规则选择的多个训练客户端,以供各训练客户端利用本地数据对全局模型进行训练,在达到指定迭代次数后终止;接收各训练客户端返回的更新参数,按照预设聚合权重对各训练客户端返回的更新参数进行聚合并更新全局模型。
步骤S102:按照第二设定规则在训练轮次之间安插验证轮次,在各验证轮次中,按照第三设定规则选取多个辅助客户端对待验证客户端进行验证。
步骤S103:获取待验证客户端返回的更新参数并配置为验证模型,将验证模型发送至各辅助客户端,以供各辅助客户端利用本地数据对验证模型进行训练,在达到指定迭代次数后终止。
步骤S104:获取各辅助客户端训练验证模型终止时验证损失值,并计算各辅助客户端的验证损失值与以往训练轮次的偏差,若偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端。
步骤S105:根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整预设聚合权重,并基于上一训练轮次中各训练客户端返回的更新数据进行聚合和更新所述全局模型。
在步骤S101中,正常训练轮次中按照通常的联邦学习方法进行,服务节点将上一训练轮次中更新得到的全局模型发送至预选择的多个训练客户端进行训练。其中,训练客户端按照第一设定规则进行选取,随机选择或优先选取本地数据量较多的第一设定数量个客户端作为训练客户端。为了更好地适应训练需求,可以根据不同客户端的数据类型选择与训练目的相关的客户端作为训练客户端,当然,这需要各客户端在一开始向服务端披露少量数据属性相关的信息。更多的情况下,可以根据不同客户端的声誉值选择客户端,优先选择声誉值较高的多个客户端作为训练客户端,声誉值可以基于各客户端以往被判断为异常的次数进行设置,声誉值反比于被判断为异常的次数。另一些实施例中,训练客户端可以直接由服务器端进行指定。
在一些实施例中,按照预设聚合权重对各训练客户端返回的更新参数进行聚合并更新全局模型,计算式为:
在步骤S102中,由服务端决定和选择在各训练轮次之间安插验证轮次,其余客户端实际上在训练轮次和验证轮次中所作的工作是一样的,所以,客户端并不会察觉哪些是验证轮次,这样,保持隐蔽性,能够有效筛查出异常客户端。具体的,第二设定规则将训练轮次及验证轮次随机分布或按照设定频次均匀分布。在一些实施例中,所述第二设定规则还包括:在设置最大验证次数的基础上,设置每一个客户端至少参与1次验证。
在每个验证轮次中,还按照第三设定规则选择一批用于对待验证客户端进行验证的辅助客户端,具体的,随机选择或优先选择声誉值较优的第二设定数量个客户端作为辅助客户端,各客户端的声誉值反比于被标记为异常客户端的次数。
这里需要说明的是,每一个验证轮次中,仅对一个待验证客户端是否异常进行验证,其他选择的辅助客户端是为了借助其本地数据进行验证的。
在步骤S103中,将待验证客户端在上一次训练轮次中训练得到的模型作为验证模型发送至各辅助客户端,实际上发送的就是待验证模型在上一次训练轮次中的更新参数。各辅助客户端利用本地数据对验证模型进行训练更新。规定指定迭代次数,达到该迭代次数则停止训练。
在步骤S104中,服务端获取每个辅助客户端在最后一个epoch(所有的数据送入网络中,完成了一次前向计算和反向传播的过程)的损失值,当然,对于各辅助服务端,其进行的动作与训练轮次一致,还需要向服务器端返回模型的更新参数。具体的,服务端计算各辅助客户端的验证损失值与以往训练轮次的偏差。通常情况下,对于合法的未收到攻击的客户端,在经过多轮计算之后产生的模型迁移至其他客户端利用其他客户端的本地数据进行训练后,最终产生的损失值应当相对稳定。本发明,通过判断损失值与以往的损失值的偏差是否超过阈值进行异常分析。具体的,多个辅助客户端中,若超过设定比例的辅助客户端最终计算得到的偏差高于设定阈值,则可以判断当前的待验证客户端异常。进一步的,设定比例可以根据具体精度需求进行设置,例如1/4、1/3或1/2,比例越低检出精度越高,但是相应的容错率会降低。
通常情况下,对于一个待验证客户端,在首次检出异常后,还需要安排多次验证轮进行重复验证。
在步骤S105中,针对某一待验证客户端的多个验证轮中,每次验证轮中,都有多个辅助客户端计算了损失值,服务端基于相应的损失值计算待验证客户端的可信度,在根据可信度调节其在聚合过程中的权重。
具体的,根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整所述预设聚合权重,包括:
步骤S1051:将异常客户端在相应验证轮次中各辅助客户端对应的偏差进行累加得到异常信息。
步骤S1052:将异常信息带入递减函数计算可信度,采用一次函数或其他自适应函数根据该异常客户端的可信度计算该异常客户端在聚合过程中的权重。
另一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现上述方法的步骤。
下面结合具体实施例对本发明进行说明:
本实施例提出一种联邦学习方法,基于客户端交互验证的节点可信度验证形式,联邦学习场景下,有一个服务方和若干个参与方。在每个训练轮次中服务方通过聚合参与方客户端用本地数据训练后的模型参数(或梯度)更新全局模型,并在训练过程中插入验证轮次,进行节点可信度验证。具体的,服务方处设置服务端组作为节点,参与方设置客户端作为节点,组成局域网或构建区块链网络。
本实施例提供考虑隐私增强保护的场景下的运用,客户端通过同态加密或差分扰动等隐私保护技术,对上传的梯度信息进行加密或混淆,防止隐私信息泄露,并上传异常信息。服务方根据异常信息对加密的数据进行聚合,并调整不同参与方参与聚合的权重。
实施例1
在联邦学习开始前,服务端初始化全局模型参数,聚合权重,定义损失函数,初始化训练轮次和验证轮次,并将初始化的模型参数发给各个客户端,进行一定轮次的联邦训练和验证。
在训练轮次中,如图2所示,执行步骤如下:
步骤一:服务端选择本轮参与训练的多个客户端,标记为训练客户端,发送联邦全局模型给训练客户端。
步骤二:训练客户端用本地数据训练模型,更新模型参数和梯度,将训练后的本地模型参数(或梯度,即更新参数)发给服务端。
步骤三:服务端聚合各个训练客户端上传的本地模型参数(或梯度),得到本轮更新后的联邦全局模型。
在验证轮次中,如图3所示,执行步骤如下:
步骤一:服务端选择本轮要验证的客户端,标记为待验证客户端,将待验证客户端上传的本地模型发送给参与验证的其他客户端,即辅助客户端。
步骤二:每个辅助客户端用本地数据训练模型,更新模型参数,并比较本轮训练过程中的平均损失值(或准确率)和以往训练轮次的偏差,若偏差大于一定的阈值则表示客户端本轮接收到的模型可能受不可信客户端上传的模型影响,并记录本轮接收到的模型为异常模型,将训练后的模型参数(或梯度)和异常信息发给服务端。
步骤三:服务端根据收集的各个辅助客户端报告的异常信息,判断本轮要验证的客户端上传的模型参数是否异常,具体的,即判断待验证客户端异常的辅助客户端数量大于二分之一时,服务端判断待验证客户端异常。
步骤四:将待验证客户端在相应多个验证轮次中各辅助客户端的偏差进行累加,得到历史异常信息,根据历史异常信息,调整不同客户端模型参数(或梯度)的聚合权重,聚合各个客户端上传的模型参数(或梯度),得到本轮的联邦全局模型。
实施例2
本实施例的运用场景可以为:在联邦学习背景中,有若干个参与方的客户端和一个服务方的服务端,服务方通过聚合参与方提供的模型参数(或梯度)共同维护一个全局模型,在实际场景中,无法保证所有参与方上传的模型都是可靠的,因此提出一种基于客户端交互验证的节点可信度验证方法。
具体的,可以运用在有一个服务端和K个参与方的客户端,第k个客户端本地储存有个数据样本,表示为第k个客户端的第i个训练样本,服务端初始化模型参数,定义损失函数为。进行R个通信轮次的联邦学习直到模型收敛,其中有T个训练轮次索引为和E个验证轮次索引为,且,训练轮次和验证轮次的分布初始化按客户端数量均匀分布,即每进行几个训练轮次后随机不重复的挑选某个客户端进行一轮验证,保证每个客户端都进行验证后,挑选出现异常的客户端进行二次验证,直到达到最大验证次数。
联邦学习场景下,本实施例在训练轮次,具体执行步骤如下:
步骤三:保持聚合权重不变:
在验证轮次,具体执行步骤如下:
其中,为第k个辅助客户端以往轮次训练终止时损失值的均值,表示当前验证轮次终止时第k个辅助客户端的损失值,r表示轮次序数,若偏差大于一定的阈值则表示辅助客户端本轮接收到的模型可能受不可信客户端上传的模型影响,并记录本轮全局模型为异常模型,将训练后的模型参数(或梯度)和异常信息发给服务端。
实施例3
在同态加密的隐私增强框架中,参与者的客户端与服务方的服务端共同建立基于同态加密方案的公钥pk和私钥sk。私钥sk对云服务器保密,但所有学习参与者都知道。每个参与者将建立一个彼此不同的TLS/SSL安全通道,以交流和保护同态密文的完整性。其中,用表示用公钥加密后的数据。
在训练轮次,具体执行步骤如下:
步骤三:服务端根据历史异常信息进行联邦聚合,保持聚合权重不变:
其中,表示更新后的权重,Pr表示训练客户端的索引,nk表示第k个训练客户端的样本数据量,n表示训练客户端的数量,表示第k个训练客户端的权重,表示第k个训练客户端的更新参数,r+1表示轮次序数,表示用公钥加密后的数据。
在验证轮次,具体执行步骤如下:
其中,为第k个辅助客户端以往轮次训练终止时损失值的均值,表示当前验证轮次终止时第k个辅助客户端的损失值,r表示轮次序数,若偏差大于一定的阈值则表示辅助客户端本轮接收到的模型可能受不可信客户端上传的模型影响,并记录本轮全局模型为异常模型,将加密后的更新模型参数(或梯度)和异常信息发给服务端。
通过上述客户端交互评价方法,服务端不需要拥有干净的验证集作为先验知识,以模型在各个客户端本地进行预测的实际效果为标准,调整联邦聚合时的聚合权重,尽可能降低不可信客户端上传的模型信息对整体模型的影响,实现在数据不出本地客户端的情况下验证节点可信度,提高联邦模型精度。由于本方法无需在服务端计算客户端梯度相似性,因此支持隐私保护增强环境下的投毒攻击防御和节点可信度计算,具有更好的适应性。
本发明提出一种客户端交互式评价节点可信度的方法,服务端通过统计各个客户端报告的异常信息,不需要具有各个客户端的梯度信息,可以避免恶意服务器通过梯度或模型参数得到本地客户端的数据,造成隐私泄露。本发明和已存在的技术相比不涉及梯度或模型参数的相似性计算,可以运用于各种隐私增强型计算框架,例如基于同态加密和差分隐私技术的计算方法。可以根据客户端节点的可信程度动态的调整服务端进行模型聚合时不同客户端参数的权重,通过不断地进行验证降低不可信节点对联邦模型的影响,以保证联邦模型的整体精度。可以根据各个客户端报告的异常信息,动态决定要进行可信度验证的客户端节点,且是否进行验证对各个客户端不可知,使恶意客户端无法针对防御手段动态的调整攻击策略。
综上所述,所述联邦学习方法及装置中,通过在联邦学习过程中加入验证轮,由服务端将待验证客户端上一次返回的模型更新参数发送至辅助客户端,利用辅助客户端的本地数据进行训练,计算验证轮中各辅助客户端训练终止时损失值与以往轮次的偏差,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端。能够在各客户端不知情的条件下,快速有效的识别出异常的客户端,进一步的,根据异常客户端对应的各验证轮次中的偏差调节模型聚合过程中的权重,以防止异常客户端对全局模型更新的不良影响。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种联邦学习方法,其特征在于,所述方法用于在一个服务端上运行,所述服务端与多个客户端组成的局域网,所述方法包括:
在训练轮次中,将全局模型分别发送至按照第一设定规则选择的多个训练客户端,以供各训练客户端利用本地数据对所述全局模型进行训练,在达到指定迭代次数后终止;接收各训练客户端返回的更新参数,按照预设聚合权重对各训练客户端返回的更新参数进行聚合并更新所述全局模型;
按照第二设定规则在训练轮次之间安插验证轮次,在各验证轮次中,按照第三设定规则选取多个辅助客户端对待验证客户端进行验证;
获取待验证客户端返回的更新参数并配置为验证模型,将所述验证模型发送至各辅助客户端,以供各辅助客户端利用本地数据对所述验证模型进行训练,在达到所述指定迭代次数后终止;
获取各辅助客户端训练所述验证模型终止时验证损失值,并计算各辅助客户端的验证损失值与以往训练轮次的偏差,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端;
根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整所述预设聚合权重,并基于上一训练轮次中各训练客户端返回的更新数据进行聚合和更新所述全局模型。
2.根据权利要求1所述的联邦学习方法,其特征在于,所述服务端与各客户端基于同态加密方案构建公钥和私钥进行通信。
3.根据权利要求1所述的联邦学习方法,其特征在于,所述第一设定规则为随机选择或优先选取本地数据量较多的第一设定数量个客户端作为训练客户端;所述第二设定规则为将训练轮次及验证轮次随机分布或按照设定频次均匀分布;所述第三设定规则为随机选择或优先选择声誉值较优的第二设定数量个客户端作为辅助客户端,各客户端的声誉值反比于被标记为异常客户端的次数。
4.根据权利要求3所述的联邦学习方法,其特征在于,所述第二设定规则还包括:在设置最大验证次数的基础上,设置每一个客户端至少参与1次验证。
7.根据权利要求1所述的联邦学习方法,其特征在于,若所述偏差大于设定阈值的辅助客户端数量高于设定比例则标记待验证客户端为异常客户端中,所述设定比例为二分之一。
8.根据权利要求1所述的联邦学习方法,其特征在于,根据各异常客户端在多个验证轮次中计算得到的偏差计算相应的可信度,并根据各异常客户端的可信度调整所述预设聚合权重,包括:
将异常客户端在相应验证轮次中各辅助客户端对应的偏差进行累加得到异常信息;
将所述异常信息带入递减函数计算可信度,采用一次函数或其他自适应函数根据该异常客户端的可信度计算该异常客户端在聚合过程中的权重。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210051900.3A CN114091356B (zh) | 2022-01-18 | 2022-01-18 | 一种联邦学习方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210051900.3A CN114091356B (zh) | 2022-01-18 | 2022-01-18 | 一种联邦学习方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114091356A true CN114091356A (zh) | 2022-02-25 |
CN114091356B CN114091356B (zh) | 2022-05-20 |
Family
ID=80308454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210051900.3A Active CN114091356B (zh) | 2022-01-18 | 2022-01-18 | 一种联邦学习方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114091356B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114564746A (zh) * | 2022-02-28 | 2022-05-31 | 浙江大学 | 基于客户端权重评价的联邦学习方法和系统 |
CN114595831A (zh) * | 2022-03-01 | 2022-06-07 | 北京交通大学 | 融合自适应权重分配和个性化差分隐私的联邦学习方法 |
CN114723071A (zh) * | 2022-04-26 | 2022-07-08 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种基于客户端分类和信息熵的联邦学习方法及装置 |
CN114785810A (zh) * | 2022-03-31 | 2022-07-22 | 海南师范大学 | 一种适用于联邦学习的树状广播数据同步算法 |
CN114863169A (zh) * | 2022-04-27 | 2022-08-05 | 电子科技大学 | 一种结合并行集成学习和联邦学习的图像分类方法 |
CN115292738A (zh) * | 2022-10-08 | 2022-11-04 | 豪符密码检测技术(成都)有限责任公司 | 一种联邦学习模型和数据安全性及正确性的检测方法 |
CN115526339A (zh) * | 2022-11-03 | 2022-12-27 | 中国电信股份有限公司 | 联邦学习方法、装置、电子设备及计算机可读存储介质 |
CN115907003A (zh) * | 2022-12-07 | 2023-04-04 | 中国人民解放军国防科技大学 | 基于度量学习的联邦学习恶意模型更新的检测方法及系统 |
CN116306910A (zh) * | 2022-09-07 | 2023-06-23 | 北京交通大学 | 一种基于联邦节点贡献的公平性隐私计算方法 |
CN116402169A (zh) * | 2023-06-09 | 2023-07-07 | 山东浪潮科学研究院有限公司 | 一种联邦建模验证方法、装置、设备及存储介质 |
CN117114146A (zh) * | 2023-08-11 | 2023-11-24 | 南京信息工程大学 | 一种联邦学习模型中毒重建的方法、装置、介质及设备 |
WO2024001806A1 (zh) * | 2022-06-28 | 2024-01-04 | 华为技术有限公司 | 一种基于联邦学习的数据价值评估方法及其相关设备 |
CN118133328B (zh) * | 2024-05-10 | 2024-07-09 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 去中心化学习方法、系统及相关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110929880A (zh) * | 2019-11-12 | 2020-03-27 | 深圳前海微众银行股份有限公司 | 一种联邦学习方法、装置及计算机可读存储介质 |
CN112257063A (zh) * | 2020-10-19 | 2021-01-22 | 上海交通大学 | 一种基于合作博弈论的联邦学习中后门攻击的检测方法 |
CN112365005A (zh) * | 2020-12-11 | 2021-02-12 | 浙江工业大学 | 基于神经元分布特征的联邦学习中毒检测方法 |
US20210073639A1 (en) * | 2018-12-04 | 2021-03-11 | Google Llc | Federated Learning with Adaptive Optimization |
WO2021158313A1 (en) * | 2020-02-03 | 2021-08-12 | Intel Corporation | Systems and methods for distributed learning for wireless edge dynamics |
-
2022
- 2022-01-18 CN CN202210051900.3A patent/CN114091356B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210073639A1 (en) * | 2018-12-04 | 2021-03-11 | Google Llc | Federated Learning with Adaptive Optimization |
CN110929880A (zh) * | 2019-11-12 | 2020-03-27 | 深圳前海微众银行股份有限公司 | 一种联邦学习方法、装置及计算机可读存储介质 |
WO2021158313A1 (en) * | 2020-02-03 | 2021-08-12 | Intel Corporation | Systems and methods for distributed learning for wireless edge dynamics |
CN112257063A (zh) * | 2020-10-19 | 2021-01-22 | 上海交通大学 | 一种基于合作博弈论的联邦学习中后门攻击的检测方法 |
CN112365005A (zh) * | 2020-12-11 | 2021-02-12 | 浙江工业大学 | 基于神经元分布特征的联邦学习中毒检测方法 |
Non-Patent Citations (1)
Title |
---|
余清波: ""基于联邦学习的用电异常检测系统设计与实现"", 《万方数据知识服务平台》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114564746A (zh) * | 2022-02-28 | 2022-05-31 | 浙江大学 | 基于客户端权重评价的联邦学习方法和系统 |
CN114564746B (zh) * | 2022-02-28 | 2024-05-14 | 浙江大学 | 基于客户端权重评价的联邦学习方法和系统 |
CN114595831A (zh) * | 2022-03-01 | 2022-06-07 | 北京交通大学 | 融合自适应权重分配和个性化差分隐私的联邦学习方法 |
CN114595831B (zh) * | 2022-03-01 | 2022-11-11 | 北京交通大学 | 融合自适应权重分配和个性化差分隐私的联邦学习方法 |
CN114785810A (zh) * | 2022-03-31 | 2022-07-22 | 海南师范大学 | 一种适用于联邦学习的树状广播数据同步算法 |
CN114785810B (zh) * | 2022-03-31 | 2023-05-16 | 海南师范大学 | 一种适用于联邦学习的树状广播数据同步方法 |
CN114723071A (zh) * | 2022-04-26 | 2022-07-08 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种基于客户端分类和信息熵的联邦学习方法及装置 |
CN114863169A (zh) * | 2022-04-27 | 2022-08-05 | 电子科技大学 | 一种结合并行集成学习和联邦学习的图像分类方法 |
WO2024001806A1 (zh) * | 2022-06-28 | 2024-01-04 | 华为技术有限公司 | 一种基于联邦学习的数据价值评估方法及其相关设备 |
CN116306910A (zh) * | 2022-09-07 | 2023-06-23 | 北京交通大学 | 一种基于联邦节点贡献的公平性隐私计算方法 |
CN116306910B (zh) * | 2022-09-07 | 2023-10-03 | 北京交通大学 | 一种基于联邦节点贡献的公平性隐私计算方法 |
CN115292738A (zh) * | 2022-10-08 | 2022-11-04 | 豪符密码检测技术(成都)有限责任公司 | 一种联邦学习模型和数据安全性及正确性的检测方法 |
CN115292738B (zh) * | 2022-10-08 | 2023-01-17 | 豪符密码检测技术(成都)有限责任公司 | 一种联邦学习模型和数据安全性及正确性的检测方法 |
CN115526339A (zh) * | 2022-11-03 | 2022-12-27 | 中国电信股份有限公司 | 联邦学习方法、装置、电子设备及计算机可读存储介质 |
CN115526339B (zh) * | 2022-11-03 | 2024-05-17 | 中国电信股份有限公司 | 联邦学习方法、装置、电子设备及计算机可读存储介质 |
CN115907003A (zh) * | 2022-12-07 | 2023-04-04 | 中国人民解放军国防科技大学 | 基于度量学习的联邦学习恶意模型更新的检测方法及系统 |
CN116402169A (zh) * | 2023-06-09 | 2023-07-07 | 山东浪潮科学研究院有限公司 | 一种联邦建模验证方法、装置、设备及存储介质 |
CN116402169B (zh) * | 2023-06-09 | 2023-08-15 | 山东浪潮科学研究院有限公司 | 一种联邦建模验证方法、装置、设备及存储介质 |
CN117114146A (zh) * | 2023-08-11 | 2023-11-24 | 南京信息工程大学 | 一种联邦学习模型中毒重建的方法、装置、介质及设备 |
CN117114146B (zh) * | 2023-08-11 | 2024-03-29 | 南京信息工程大学 | 一种联邦学习模型中毒重建的方法、装置、介质及设备 |
CN118133328B (zh) * | 2024-05-10 | 2024-07-09 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 去中心化学习方法、系统及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114091356B (zh) | 2022-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114091356B (zh) | 一种联邦学习方法及装置 | |
US8082443B2 (en) | Pedigrees for quantum cryptography | |
CN111277570A (zh) | 数据的安全监测方法和装置、电子设备、可读介质 | |
CN112714106A (zh) | 一种基于区块链的联邦学习搭便车攻击防御方法 | |
CN111031003B (zh) | 一种跨网隔离安全系统的智能评估系统 | |
CN113468264B (zh) | 一种基于区块链的中毒防御和中毒溯源的联邦学习方法和装置 | |
CN108337219B (zh) | 一种物联网防入侵的方法和存储介质 | |
CN107708173B (zh) | 融合节点的选取方法及装置 | |
Wang et al. | Improving utility and security of the shuffler-based differential privacy | |
Coull et al. | Taming the devil: Techniques for evaluating anonymized network data | |
CN113806768A (zh) | 基于去中心化安全聚合的轻量级联邦学习隐私保护方法 | |
CN113949531A (zh) | 一种恶意加密流量检测方法及装置 | |
Huang et al. | Privacy-Preserving Friends Troubleshooting Network. | |
Buttyán et al. | RANBAR: RANSAC-based resilient aggregation in sensor networks | |
CN116828453B (zh) | 基于自适应非线性函数的无人机边缘计算隐私保护方法 | |
CN116684202B (zh) | 一种物联网信息安全传输方法 | |
Zhang et al. | SAFELearning: Secure Aggregation in Federated Learning With Backdoor Detectability | |
CN108206961A (zh) | 一种计算直播平台人气的方法及相关设备 | |
Shekokar et al. | Security against sybil attack in social network | |
Zhang et al. | Poisoning Attacks on Federated Learning-based Wireless Traffic Prediction | |
CN111884813B (zh) | 一种恶意证书检测方法 | |
Mozaffari et al. | Fedperm: Private and robust federated learning by parameter permutation | |
CN115277178A (zh) | 基于企业网网络流量的异常监测方法、装置及存储介质 | |
CN113704807A (zh) | 隐私保护联邦学习框架下针对用户级攻击的防御方法 | |
Masuda et al. | Model fragmentation, shuffle and aggregation to mitigate model inversion in federated learning |
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 |