CN112257105B - 一种基于参数替换算法的联邦学习方法及*** - Google Patents
一种基于参数替换算法的联邦学习方法及*** Download PDFInfo
- Publication number
- CN112257105B CN112257105B CN202011118491.1A CN202011118491A CN112257105B CN 112257105 B CN112257105 B CN 112257105B CN 202011118491 A CN202011118491 A CN 202011118491A CN 112257105 B CN112257105 B CN 112257105B
- Authority
- CN
- China
- Prior art keywords
- model
- parameters
- parameter
- training
- federal learning
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种基于参数替换算法的联邦学习方法及***,其中方法包括:聚合服务器将起始参数发送给参与者(边缘计算设备和终端设备),参与者根据起始参数初始化本地模型;参与者根据各自的训练集对本地模型进行训练,得到本地模型参数;边缘计算设备将训练后的模型参数发送给服务器和终端设备;终端设备根据更新后的第一模型参数初始化第二模型,执行状态判断,根据当前状态执行不同上传策略进行参数上传;聚合服务器对接收到的本地模型参数进行整合得到下轮的起始参数;重复上述直至所有第二设备退出联邦学习。本发明保证联邦学习中用户上传的参数可见,避免恶意用户上传错误参数,能保证联邦学习训练过程中的隐私安全和精度安全。
Description
技术领域
本发明涉及人工智能技术领域,尤其是涉及一种基于参数替换算法的联邦学习方法及***。
背景技术
联邦学习(Federated Learning)是一种基于分布式数据训练模型的可行方法,该方法将私有数据保留在边缘节点中,通过共享参数训练模型,从而防止了原始数据的隐私泄露。
联邦学习的核心在于两点:一是能够保护参与者隐私;第二是有效地对参与者拥有的数据进行学习。当前,联邦学习中存在着由于用户上传的参数包含隐私信息,从而导致隐私泄露的问题,且当前主流解决方案的思想包括对上传的参数添加一定的噪音,和对上传的参数进行加密。但前者隐私保护效果不佳,且容易造成精度损失;后者计算成本较高,且容易导致被联邦学习安全攻击利用,进而造成严重的精度损失。
发明内容
本发明的目的是提供一种基于参数替换算法的联邦学习方法及***,以解决传统隐私保护方法中因参数不可见和参数噪音加强所带来的精度损失的技术问题。
本发明的目的,可以通过如下技术方案实现:
本发明提供了一种基于参数替换算法的联邦学习方法,包括:
S1:聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
S2:所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
S3:所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
S4:所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略进行参数上传;
S5:聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复S1-S5直至所有第二设备退出联邦学习。
可选地,所述第一设备为边缘计算设备,所述第二设备为终端设备。
可选地,所述第一训练集为公共数据集,所述第二训练集为所述第二设备的私有数据集。
可选地,S1中聚合服务器将起始参数发送给联邦学习的参与者设备中之前还包括:初始化损失连续增大或稳定的最大轮次Tmax、损失忽略阈值θ、当前损失连续增大或稳定轮次Tnow、最佳损失值Lbest及状态标志位F的值。
可选地,执行状态判断的具体过程为:
若状态标志位F为true,计算第二训练集对第一模型参数的损失值作为第一损失Lnow1,如果Lnow1与Lbest的差值小于θ或者Lnow1>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow1,并将Tnow重置为0;当Tnow≥Tmax时,将F设为false,将Tnow和Lbest重设为初始化时的值;
若状态标志位F为false,计算第二设备的测试集对第二模型参数的损失值作为第二损失Lnow2,如果Lnow2与Lbest的差值小于θ或者Lnow2>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow2,并将Tnow重置为0;当Tnow≥Tmax时,退出联邦学习;其中,所述测试集为对第二模型训练结果进行评估的数据集。
可选地,所述第二设备根据当前状态的不同执行不同的上传策略进行参数上传的具体过程为:
若状态标志位为True,将结果数组Wresult的值设为第二模型参数,计算第二训练集对第二模型参数的第三损失Lnow3,将第一模型参数和第二模型参数进行差值比较,将最大差值对应的第一模型参数值替换到结果数组中,直至Lresult>Lnow1-(Lnow1-Lnow3)/3;将结果数组作为参数上传给聚合服务器;
若状态标志位为False,则直接上传第二模型参数。
本发明还提供了一种基于参数替换算法的联邦学习***,应用了所述的基于参数替换算法的联邦学习方法,包括:
本地模型初始化模块,用于聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
本地模型训练模块,用于所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
第一设备参数发送模块,用于所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
第二设备参数上传模块,用于所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略进行参数上传;
本地模型参数聚合模块,聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复执行模块,用于重复执行直至所有第二设备退出联邦学习。
可选地,第二设备参数上传模块执行状态判断的具体过程为:
若状态标志位F为true,计算第二训练集对第一模型参数的损失值作为第一损失Lnow1,如果Lnow1与Lbest的差值小于θ或者Lnow1>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow1,并将Tnow重置为0;当Tnow≥Tmax时,将F设为false,将Tnow和Lbest重设为初始化时的值;
若状态标志位F为false,计算第二设备的测试集对第二模型参数的损失值作为第二损失Lnow2,如果Lnow2与Lbest的差值小于θ或者Lnow2>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow2,并将Tnow重置为0;当Tnow≥Tmax时,退出联邦学习;其中,所述测试集为对第二模型训练结果进行评估的数据集。
可选地,第二设备参数上传模块根据当前状态的不同执行不同的上传策略进行参数上传的具体过程为:
若状态标志位为True,将结果数组Wresult的值设为第二模型参数,计算第二训练集对第二模型参数的第三损失Lnow3,将第一模型参数和第二模型参数进行差值比较,将差值最大项对应的第一模型参数值,替换到结果数组中,直至Lresult>Lnow1-(Lnow1-Lnow3)/3;将结果数组作为参数上传给聚合服务器;
若状态标志位为False,则直接上传第二模型参数。
本发明还提供了一种电子设备,包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序实现所述的基于基于参数替换算法的联邦学习方法。
本发明提供了一种基于参数替换算法的联邦学习方法及***,其中方法包括:S1:聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;S2:所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;S3:所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;S4:所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略进行参数上传;S5:聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;重复S1-S5直至所有第二设备退出联邦学习。
本发明提供的基于参数替换算法的联邦学习方法及***,保证联邦学习中用户上传的参数可见,使得精度安全得以保证,避免恶意用户上传错误参数;对用户上传的参数,能够保证攻击者无法从中推理出用户的数据信息,达到隐私保护的效果,能保证联邦学习训练过程中的隐私安全和精度安全。
附图说明
图1为本发明一种基于参数替换算法的联邦学习方法及***的***结构示意图;
图2为本发明一种基于参数替换算法的联邦学习方法及***中用户上传参数时对当前阶段的判断流程图;
图3为本发明一种基于参数替换算法的联邦学习方法及***中用户上传参数时的双阶段上传策略流程图。
具体实施方式
术语解释:
联邦学习:联邦学习(Federated Learning)允许参与者在不公开自己所拥有的数据的情况下,与其他参与者共同训练深度学习模型。其核心在于隐私性,以及该框架下,模型的可学习能力。在联邦学习中,各个参与者根据自己所拥有的数据集训练模型,在训练结束后与其他参与者共享模型参数,通过相关聚合算法,第三方可以对各参与者共享的信息进行聚合,获得集聚了所有参与者的数据信息的参数,从而达到不公开数据情况下,间接共享各自训练数据的效果。与集中式深度学习相比较,联邦学习的参与者不需要公开自己的私有数据,这一特性有效地保护了参与者的隐私。与此同时,各参与者可以随时参加和退出训练,这也体现了联邦学习的便捷特性。实际上,尽管联邦学习提供了更好的保护隐私框架,但它仍然存在着隐私威胁。在联邦学习过程中,用户上传的新参数,实际上是通过其拥有的数据集计算后所得到的结果。拥有不同的训练数据,求解出的新参数值也会相应的发生改变,因此,存在着相关的隐私攻击研究,利用着模型参数和训练数据的相关特性,对用户的数据信息进行推理,造成隐私泄露。目前,联邦学习隐私保护主要使用两种方案:多方安全计算和差分隐私。
差分隐私:差分隐私(Differential Privacy)往往应用于数据库信息查询的隐私保护,是一种利用密码学相关方案,实现在最大化信息准确率的同时,为用户的隐私提供一定保护效果的技术。对于需要保护的数据项,差分隐私技术实施者往往采取去除数据项的个体特征,并在保留下来的整体特征中加入一定的噪音的方案,以实现隐私保护。这个方案能对数据信息起到一定的保护效果,但是相关研究依旧指出,在使用了差分隐私的情况下,隐私仍存在一定程度的泄露。与此同时,相关研究也指出,由于差分隐私对参数添加了噪音,因此,可能会导致精度的下降。而且在参与者较少的情况下尤为明显。
安全多方计算:安全多方计算(Secure Multi-Party Computation)的研究是针对无可信第三方的情况下,如何为需要协同计算,但互不信任的各个用户提供一个安全的约定函数的问题。多方安全计算方法能够为参加计算的各个参与者提供这样的一个效果:各个用户通过将自己的数据输入到设计好的约定函数中,可以获得最终的计算结果,但是所有参与者除了自己的输入和最终结果外,对其他信息一无所知。当前的主流方案主要是通过同态加密算法,实现一个满足加法特性的加密方案:对加密后的信息进行相加,解密后的结果与没有加密时相加的结果一致,从而达到用户信息***露,且所有人只可以获得自己的输入,和聚合后的结果的效果。但是,一方面,同态加密算法对计算量要求极大,绝大部分的用户设备将会由于计算能力受限,导致无法有效部署。另一方面,由于参数对其他参与者不可见,这为中毒攻击的实施提供了可能。在多轮次上传错误的参数过后,联邦学习的最终精度将由于中毒攻击者的加入,造成极大的损失,并最终使得模型不可用。相关研究也同样指出:在参数不可见的情况下,将极难对中毒攻击的实施进行检测和预防。
中毒攻击:中毒攻击(Poisoning Attack)是一项关于如何从第三方角度,降低深度学习训练者所训练的模型最终效果的研究。当前,中毒攻击实施者通过采取模型攻击,数据攻击等手段,在深度学习训练的数据和参数中添加干扰信息,或者错误的信息。典型的是:分析出对所有用户而言,最具代表性的样本,并且将其标签置为错误的标签后,训练本地模型,从而造成训练出的模型识别了错误的信息,上传到聚合服务器进行聚合后,将会造成原始数据的准确率大幅度下滑。
本发明实施例提供了一种基于参数替换算法的联邦学习方法及***,以解决传统隐私保护方法中因参数不可见和参数噪音加强所带来的精度损失的技术问题。
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的首选实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
目前,对联邦学习的隐私攻击,主要是利用参与者上传的参数信息,分析该参与者训练集中的数据特征。根据对联邦学习隐私攻击的调研与分析,发现目前的隐私攻击主要利用联邦学习参与者的训练过程中两方面的损失偏差,对用户数据中的训练数据信息进行分析,分别是自身训练集的损失值小于其他参与者数据集损失,和用户数据中训练集的损失小于用户自身数据中测试集的损失这一特性。为了规避传统隐私保护方法中,参数不可见和参数噪音加强所带来的精度损失,
请参阅图1至图3,本发明一种基于参数替换算法的联邦学习方法的实施例,包括:
S101:聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
S102:所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
S103:所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
S104:所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略进行参数上传;
S105:聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复S101-S105直至所有第二设备退出联邦学习。
本实施例提供的基于参数替换算法的联邦学***识别准确率的全局模型,并且降低了隐私攻击的效果。
为解决上述问题,本发明提供的联邦学习方法的技术方案具体为:
(1)***初始化:联邦学习***中共有三个角色,负责聚合所有参与者参数的聚合服务器SA;持有公共数据集DPublic的参与者PPublic(一般通过使用另一服务器,并在其上部署模型和数据实现);以及持有私有数据集DPrivate的参与者PPrivate。
具体的,聚合服务器SA用于聚合各联邦学习中各参与者上传的参数,并将最新轮次的起始参数发送给各参与者;
持有公共数据集DPublic的参与者PPublic可以为边缘设备,边缘计算设备持有公共数据集,将所持有的公共数据集作为训练集训练本地模型,并将参数上传至聚合服务器SA,发送给终端设备;
持有私有数据集DPrivate的参与者PPrivate可以为终端设备,终端设备持有私有数据集,将所持有的私有数据集作为训练集训练本地模型,接收边缘计算设备更新后的本地模型,利用边缘计算设备更新后的本地模型初始化终端设备的本地模型,并根据不同状态选择不同的参数上传策略将参数上传至聚合服务器SA。
对相关参数进行初始化:
设置常量值θ,表示损失值波动忽略阈值;最大衰减轮次设置为Tmax,表示容忍损失连续稳定或增大的轮次上限;当前损失的连续稳定和增大轮次设置为Tnow,Tnow的初始值为0;最佳损失值设置为Lbest,Lbest的初始值为浮点型最大值Nan;状态标志位设置为F,F的初始值为True;
持有私有数据集的参与者PPrivate各自维护三个变量:
1)布尔型的状态标志位F,初始值为true,根据状态标志位的值决定采取何种上传策略,当状态标志位F的值为true时,使用第一阶段上传策略;当状态标志位F的值为false时,使用第二阶段上传策略;
2)最优损失值Lbest,该值初始化为浮点数最大值Nan;
3)当前损失的连续衰减轮次Tnow,初始值为0。
(2)开始训练:服务器SA将本轮次的起始参数WEpoch发放给持有公共数据集DPublic的参与者PPublic,以及持有私有数据集DPrivate的参与者PPrivate。所有用户获得参数后,使用该参数初始化本地模型,并且使用自身数据对模型进行训练,直至达到特定轮次或达到目标精度,用户得到新参数Wprivate,服务器得到新参数Wpublic。
(3)广播公有数据集参数:持有公共数据集DPublic的参与者PPublic将使用了自身数据集训练后得到的新模型参数WPublic广播给所有持有私有数据集DPrivate的参与者PPrivate,并且将该轮次的参数上传到服务器SA处。
(4)持私有数据集参与者进行状态判断:
请参阅图2,用户接收参数后,保留本地模型参数副本,并用公共数据集参数初始化模型,执行状态判断;
1)如果当前状态标志位的值为false,计算私有数据集DPrivate中的测试集在使用自身训练集训练得到的参数Wprivate上的损失值Lnow,如果损失值Lnow小于Lbest,且Lpublic与Lbest的绝对值的差大于θ,则将Lbest值设为Lpublic,并将Tnow的值置为0;否则,将Tnow自增,当Tnow大于等于Tmax时,退出联邦学习训练;
2)如果当前状态标志位的值为true:计算该轮次中,自身数据集关于公共数据集的参与者PPublic的模型参数WPublic的损失LPublic,如果LPublic的值小于Lbest,且LPublic与Lbest的绝对值的差大于θ,则将Lbest值设为LPublic,并将Tnow的值设为0;否则,将Tnow自增,当Tnow大于Tmax时,将状态标志位的值变为false,将T重置为0,将Lbest重置为Nan。
请参阅图3,本实施例中的参数替换算法如下:
(5)持私有数据集参与者按照当前状态上传参数:根据当前状态,选取上传策略:
1)当状态标志位F的值为true时:记Wresult为结果数组,并将Wresult的值置为WPrivate,并记自己的数据在Wresult上的损失值为Lresult,WPublic上的损失值为LPublic,而在WPrivate上的损失值为LPrivate。将WPublic和WPrivate进行比较,将二者差值大小中差值最大的项中对应的参数点的值,替换到结果数组Wresult的对应参数点中,直至Lresult>Lnow1-(Lnow1-Lnow3)/3。结束后,把参数上传给服务器SA。
b)当状态标志位F的值为false时,则将自己的参数值直接上传给服务器SA。
(6)聚合服务器SA对所有上传的参数进行聚合:聚合服务器SA在获得PPublic和PPrivate上传的所有参数后,使用联邦学习聚合算法对参数值进行聚合,获得新轮次参数wEpoch+1,并将新参数发给所有参与者,继续联邦学习训练,该流程将循环至所有持有私有数据集DPrivate的参与者PPrivate均退出联邦学习的训练为止。
具体的,在状态标志位F的值为true时所采取的上传策略中,所有用户上传的参数截取了服务器绝对值最大的2/3,剩下的部分使用自己的参数作为补充。由于值越大,对输出的改变量也相应越大,因此,我们保留了公共数据集的2/3的参数,使得上传的参数对公共数据集的结果识别较用户自身数据集更精确。由于对用户而言,自身的数据本质上就是对服务器而言的测试数据,所以当自身数据集损失保持不变,或者连续增小时,说明服务器的模型精度已经到达较为安全的最小状态——过拟合。此时切换模式后,由于用户的数据集损失一直比公有数据集的更大,所以公有数据集此阶段也能有效地保证用户隐私,并且引用早停机制,也使得用户自身训练集和测试集损失差最小,有效地保证了准确度和隐私。相关研究证明,联邦学习到后期是可收敛的,这也有力证明了我们提供的联邦学习方法的可行性。
本实施例提供的基于参数替换算法的联邦学习方法,在公有数据集的协助下,使用双阶段参数上传机制,有效地保证了用户的隐私安全,使得用户训练集数据与自身测试集、其余用户训练集难以区分。而且此过程中,由于参数一直可见,所以该方案有效规避了原始隐私保护方案中,参数不可见带来的中毒攻击隐患(即服务器和用户的上传的参数,只要部署到模型中,使用相关数据计算每个轮次中的损失是否有变化,或使用相关验证算法,即可成功判断出是否为错误参数和恶意参数)。因此,本实施例提供的基于参数替换算法的联邦学习方法,为联邦学习训练过程中的隐私安全和精度安全,都提供了保证。
本实施例提供的基于参数替换算法的联邦学习方法,根据联邦学习隐私攻击和深度学习中由于过度训练,或模型参数设置不当从而导致的过拟合问题(即用户的训练数据损失值往往小于用户用于测试的数据损失值这一现象),以及联邦学习中数据非独立同分布的特性,提出了对任意一个联邦学习用户而言,其他用户的数据都可以看做是该用户的测试集的观点,并创新性地提出了使用公共数据集保护用户隐私数据集的策略。
本实施例提供了联邦学习中参数替换算法,有效地保证了联邦学习中各个用户训练数据集的损失大于公共数据集这一特性,保证了用户在训练过程中的隐私隐患,并且引入双阶段上传机制,使得联邦学习后期进程中,用户可以在有效保证自己的隐私安全下进行联邦学习。此外,由于全过程中的参数可见,这为解决联邦学习的安全威胁提供了可能。
与差分隐私相比,本实施例不添加任何的噪音信息,有效地解决了差分隐私噪音引入导致的不收敛问题。与此同时,该框架使用公共数据集信息,“隐藏”了用户信息,有效地保证了隐私的保护,比差分隐私提供了更优的隐私保护性能。
与多方安全计算相比,本实施例中参数信息可见,这有效地避免的参数不可见情况下,接受恶意参数参加聚合的问题。由于隐私信息被隐藏,服务器或公有数据集可以使用用户上传的参数进行验证,且该过程不会暴露用户信息。与此同时,该方案时间复杂度和通信成本更低,更适合应用于IOT,IOV等运算资源、通信资源受限场景。
本发明还提供了基于参数替换算法的联邦学习***的实施例,应用了所述的基于参数替换算法的联邦学习方法,包括:
本地模型初始化模块,用于聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
本地模型训练模块,用于所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
第一设备参数发送模块,用于所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
第二设备参数上传模块,用于所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略进行参数上传;
本地模型参数聚合模块,聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复执行模块,用于重复执行直至所有第二设备退出联邦学习。
本发明还提供了一种电子设备,包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序实现如权利要求1-6任一项所述的基于基于参数替换算法的联邦学习方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种基于参数替换算法的联邦学习方法,其特征在于,包括:
S0:初始化损失连续增大或稳定的最大轮次Tmax、损失忽略阈值θ、当前损失连续增大或稳定轮次Tnow、最佳损失值Lbest及状态标志位F的值;
S1:聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
S2:所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
S3:所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
S4:所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略将参数上传至所述聚合服务器;
执行状态判断的具体过程为:
若状态标志位F为true,计算第二训练集对第一模型参数的损失值作为第一损失Lnow1,如果Lnow1与Lbest的差值小于θ或者Lnow1>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow1,并将Tnow1重置为0;当Tnow≥Tmax时,将F设为false,将Tnow和Lbest重设为初始化时的值;
若状态标志位F为false,计算第二设备的测试集对第二模型参数的损失值作为第二损失Lnow2,如果Lnow2与Lbest的差值小于θ或者Lnow2>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow2,并将Tnow2重置为0;当Tnow≥Tmax时,退出联邦学习;其中,所述测试集为对第二模型训练结果进行评估的数据集;
S5:聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复S1-S5直至所有第二设备退出联邦学习。
2.根据权利要求1所述的基于参数替换算法的联邦学习方法,其特征在于,所述第一设备为边缘计算设备,所述第二设备为终端设备。
3.根据权利要求2所述的基于参数替换算法的联邦学习方法,其特征在于,所述第一训练集为公共数据集,所述第二训练集为所述第二设备的私有数据集。
4.根据权利要求3所述的基于参数替换算法的联邦学习方法,其特征在于,所述第二设备根据当前状态的不同执行不同的上传策略进行参数上传的具体过程为:
若状态标志位为True,将结果数组Wresult的值设为第二模型参数,计算第二训练集对第二模型参数的损失值作为第三损失Lnow3,将第一模型参数和第二模型参数进行差值比较,将最大差值对应的第一模型参数值替换到结果数组中,直至Lresult>Lnow1-(Lnow1-Lnow3)/3;将结果数组作为参数上传给聚合服务器;
若状态标志位为False,则直接上传第二模型参数。
5.一种基于参数替换算法的联邦学习***,应用了如权利要求1-4任一项所述基于参数替换算法的联邦学习方法,其特征在于,包括:
初始化参数模块,用于初始化损失连续增大或稳定的最大轮次Tmax、损失忽略阈值θ、当前损失连续增大或稳定轮次Tnow、最佳损失值Lbest及状态标志位F的值;
本地模型初始化模块,用于聚合服务器将起始参数发送给联邦学习的参与者设备,所述参与者设备根据所述起始参数初始化本地模型;其中,所述参与者设备包括多个第一设备和第二设备,所述第一设备中的本地模型为第一模型,所述第二设备中的本地模型为第二模型;
本地模型训练模块,用于所述参与者设备根据各自的训练集对本地模型进行训练,得到本地模型参数;其中,训练第一模型的训练集为第一训练集,训练第二模型的训练集为第二训练集;所述本地模型参数包括第一模型参数和第二模型参数,所述第一模型参数是所述第一设备基于第一训练集对所述第一模型训练得到的,所述第二模型参数是所述第二设备基于第二训练集对所述第二模型训练得到的;
第一设备参数发送模块,用于所述第一设备将所述第一模型参数发送给所述聚合服务器和所述第二设备;
第二设备参数上传模块,用于所述第二设备根据接收到的第一模型参数初始化第二模型,执行状态判断,根据当前状态的不同执行不同的上传策略将参数上传至所述聚合服务器;
第二设备参数上传模块执行状态判断的具体过程为:
若状态标志位F为true,计算第二训练集对第一模型参数的损失值作为第一损失Lnow1,如果Lnow1与Lbest的差值小于θ或者Lnow1>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow1,并将Tnow重置为0;当Tnow≥Tmax时,将F设为false,将Tnow和Lbest重设为初始化时的值;
若状态标志位F为false,计算第二设备的测试集对第二模型参数的损失值作为第二损失Lnow2,如果Lnow2与Lbest的差值小于θ或者Lnow2>Lbest,则将Tnow=Tnow+1;否则,将Lbest的值设为Lnow2,并将Tnow重置为0;当Tnow≥Tmax时,退出联邦学习;其中,所述测试集为对第二模型训练结果进行评估的数据集;
本地模型参数聚合模块,聚合服务器对接收到的本地模型参数进行整合得到全局模型参数,将所述全局模型参数作为下轮的起始参数;
重复执行模块,重复执行直至所有第二设备退出联邦学习。
6.根据权利要求5所述的基于参数替换算法的联邦学习***,其特征在于,第二设备参数上传模块根据当前状态的不同执行不同的上传策略进行参数上传的具体过程为:
若状态标志位为True,将结果数组Wresult的值设为第二模型参数,计算第二训练集对第二模型参数的第三损失Lnow3,将第一模型参数和第二模型参数进行差值比较,将差值最大项对应的第一模型参数值,替换到结果数组中,直至Lresult>Lnow1-(Lnow1-Lnow3)/3;将结果数组作为参数上传给聚合服务器;
若状态标志位为False,则直接上传第二模型参数。
7.一种电子设备,其特征在于,包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序实现如权利要求1-4任一项所述的基于参数替换算法的联邦学习方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011118491.1A CN112257105B (zh) | 2020-10-19 | 2020-10-19 | 一种基于参数替换算法的联邦学习方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011118491.1A CN112257105B (zh) | 2020-10-19 | 2020-10-19 | 一种基于参数替换算法的联邦学习方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112257105A CN112257105A (zh) | 2021-01-22 |
CN112257105B true CN112257105B (zh) | 2022-01-11 |
Family
ID=74244006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011118491.1A Active CN112257105B (zh) | 2020-10-19 | 2020-10-19 | 一种基于参数替换算法的联邦学习方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112257105B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113037722B (zh) * | 2021-02-26 | 2022-06-07 | 山东浪潮科学研究院有限公司 | 一种边缘计算场景的入侵检测方法及设备 |
CN113011602B (zh) * | 2021-03-03 | 2023-05-30 | 中国科学技术大学苏州高等研究院 | 一种联邦模型训练方法、装置、电子设备和存储介质 |
CN113259363B (zh) * | 2021-05-26 | 2022-09-02 | 中国人民解放军战略支援部队信息工程大学 | 一种隐蔽通信方法及装置 |
CN113537513A (zh) * | 2021-07-15 | 2021-10-22 | 青岛海尔工业智能研究院有限公司 | 基于联邦学习的模型训练方法、装置、***、设备和介质 |
CN113591974A (zh) * | 2021-07-29 | 2021-11-02 | 浙江大学 | 一种联邦学习中基于易遗忘数据子集的遗忘验证方法 |
CN113657607B (zh) * | 2021-08-05 | 2024-03-22 | 浙江大学 | 一种面向联邦学习的连续学习方法 |
CN114363176B (zh) * | 2021-12-20 | 2023-08-08 | 中山大学 | 一种基于联邦学习的网络辨别方法、装置、终端及介质 |
CN114707662B (zh) * | 2022-04-15 | 2024-06-18 | 支付宝(杭州)信息技术有限公司 | 联邦学习方法、装置及联邦学习*** |
CN116010944B (zh) * | 2023-03-24 | 2023-06-20 | 北京邮电大学 | 联邦计算网络保护方法及相关设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666987A (zh) * | 2020-05-22 | 2020-09-15 | 中国电子科技集团公司电子科学研究院 | 基于联邦学习的跨域数据安全互联方法及*** |
CN111737749A (zh) * | 2020-06-28 | 2020-10-02 | 南方电网科学研究院有限责任公司 | 基于联邦学习的计量装置告警预测方法及设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200272945A1 (en) * | 2019-02-21 | 2020-08-27 | Hewlett Packard Enterprise Development Lp | System and method of decentralized model building for machine learning and data privacy preserving using blockchain |
CN110276210B (zh) * | 2019-06-12 | 2021-04-23 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数的确定方法及装置 |
CN110399742B (zh) * | 2019-07-29 | 2020-12-18 | 深圳前海微众银行股份有限公司 | 一种联邦迁移学习模型的训练、预测方法及装置 |
CN110990871B (zh) * | 2019-11-29 | 2023-04-07 | 腾讯云计算(北京)有限责任公司 | 基于人工智能的机器学习模型训练方法、预测方法及装置 |
CN111259446B (zh) * | 2020-01-16 | 2023-08-22 | 深圳前海微众银行股份有限公司 | 基于联邦迁移学习的参数处理方法、设备及存储介质 |
CN111611610B (zh) * | 2020-04-12 | 2023-05-30 | 西安电子科技大学 | 联邦学习信息处理方法、***、存储介质、程序、终端 |
CN111460511B (zh) * | 2020-04-17 | 2023-05-02 | 支付宝(杭州)信息技术有限公司 | 基于隐私保护的联邦学习、虚拟对象分配方法和装置 |
-
2020
- 2020-10-19 CN CN202011118491.1A patent/CN112257105B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666987A (zh) * | 2020-05-22 | 2020-09-15 | 中国电子科技集团公司电子科学研究院 | 基于联邦学习的跨域数据安全互联方法及*** |
CN111737749A (zh) * | 2020-06-28 | 2020-10-02 | 南方电网科学研究院有限责任公司 | 基于联邦学习的计量装置告警预测方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112257105A (zh) | 2021-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112257105B (zh) | 一种基于参数替换算法的联邦学习方法及*** | |
Zhang et al. | Gan enhanced membership inference: A passive local attack in federated learning | |
CN112714106B (zh) | 一种基于区块链的联邦学习搭便车攻击防御方法 | |
CN111428887B (zh) | 一种基于多个计算节点的模型训练控制方法、装置及*** | |
Sun et al. | Decentralized deep learning for multi-access edge computing: A survey on communication efficiency and trustworthiness | |
Zhang et al. | LSFL: A lightweight and secure federated learning scheme for edge computing | |
Yazdinejad et al. | Hybrid privacy preserving federated learning against irregular users in next-generation Internet of Things | |
CN115481441A (zh) | 面向联邦学习的差分隐私保护方法及装置 | |
Liang et al. | Co-maintained database based on blockchain for idss: A lifetime learning framework | |
Aggarwal et al. | Designing effective masking strategies for cyberdefense through human experimentation and cognitive models | |
Lian et al. | Privacy-preserving blockchain-based global data sharing for federated learning with non-iid data | |
Amiri-Zarandi et al. | SIDS: A federated learning approach for intrusion detection in IoT using Social Internet of Things | |
Almutairi et al. | Federated learning vulnerabilities, threats and defenses: A systematic review and future directions | |
Guo et al. | Robust and privacy-preserving collaborative learning: A comprehensive survey | |
CN115329388B (zh) | 一种面向联邦生成对抗网络的隐私增强方法 | |
Kargupta et al. | A game theoretic approach toward multi-party privacy-preserving distributed data mining | |
Zhang et al. | Privacy protection federated learning framework based on blockchain and committee consensus in IoT devices | |
Yang et al. | Horizontal federated learning | |
CN115310120A (zh) | 一种基于双陷门同态加密的鲁棒性联邦学习聚合方法 | |
Sarkar et al. | Neural weight coordination-based vector-valued neural network synchronization | |
Zuo et al. | ApaPRFL: Robust Privacy-Preserving Federated Learning Scheme Against Poisoning Adversaries for Intelligent Devices Using Edge Computing | |
Huang et al. | VPPFL: A verifiable privacy-preserving federated learning scheme against poisoning attacks | |
Liu et al. | Guaranteeing Data Privacy in Federated Unlearning with Dynamic User Participation | |
Ke et al. | SPEFL: efficient security and privacy enhanced federated learning against poisoning attacks | |
Ma et al. | A new implementation of federated learning for privacy and security enhancement |
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 |