CN116306910B - 一种基于联邦节点贡献的公平性隐私计算方法 - Google Patents
一种基于联邦节点贡献的公平性隐私计算方法 Download PDFInfo
- Publication number
- CN116306910B CN116306910B CN202211089847.2A CN202211089847A CN116306910B CN 116306910 B CN116306910 B CN 116306910B CN 202211089847 A CN202211089847 A CN 202211089847A CN 116306910 B CN116306910 B CN 116306910B
- Authority
- CN
- China
- Prior art keywords
- client
- model
- local
- data set
- global
- 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
- 238000004364 calculation method Methods 0.000 title claims abstract description 40
- 238000012549 training Methods 0.000 claims abstract description 90
- 238000000034 method Methods 0.000 claims abstract description 81
- 238000004220 aggregation Methods 0.000 claims abstract description 61
- 230000002776 aggregation Effects 0.000 claims abstract description 55
- 230000008569 process Effects 0.000 claims abstract description 40
- 238000009826 distribution Methods 0.000 claims description 48
- 230000006870 function Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000011478 gradient descent method Methods 0.000 claims description 2
- 239000010410 layer Substances 0.000 description 47
- 238000011156 evaluation Methods 0.000 description 16
- 230000007246 mechanism Effects 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000011229 interlayer Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于联邦节点贡献的公平性隐私计算方法。该方法包括:客户端使用本地数据集训练本地模型,服务器端额外收集根数据集以便对客户端的贡献进行评估;服务器计算每个客户端的贡献值,根据客户端的贡献值评估客户端的节点信誉,按照比例公平聚合各个客户端的参数更新;各个客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新。本发明在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,根据每个客户端的实际贡献为每个客户端分配与节点信誉相匹配的全局模型参数,能够促进联邦节点在全局聚合和计算回报过程中的公平性。
Description
技术领域
本发明涉及联邦学习技术领域,尤其涉及一种基于联邦节点贡献的公平性隐私计算方法。
背景技术
联邦学习是一种新的机器学习方法,用于分布式数据集进行训练。传统的机器学习方法通过将所有的数据收集到集中的服务器进行训练,这种方式使得所有参与用户的数据面临着严重的隐私泄露问题。联邦学习的基本框架的核心思想就是:数据拥有者之间在不共享原始私有数据的前提下,基于多种加密机制交换和优化模型参数或者梯度,并依赖于中央参数服务器进行聚合维护一个全局共享模型。联邦学习能够使参与用户使用本地的数据进行本地模型训练,在传输的过程中只传输模型参数的更新,避免将原始数据传输到中心服务器中。通过这种方式,联邦学习不仅能实现高效的通信交流和模型训练,为各参与用户提供高分布服务,同时也能够降低隐私泄露的风险。
联邦学习中多个客户端可以协作训练全局的联邦学习模型,而无需交换原始数据。例如,FedAvg是一种当前常用的联邦学习方法,它计算局部模型更新的平均值,并根据局部训练数据集的大小进行加权,作为全局模型更新。然而,联邦学习在实际应用中仍存在着问题,阻碍了联邦学习在实际中的应用,这就是联邦学习中的合作公平性。
当前大多数联邦学习方法,如FedAvg,它允许所有参与者在每个通信轮中接收相同的联邦模型更新。但在实际应用中,由于联邦网络中不同节点设备的数据异构性以及计算组件的不同,导致模型贡献和性能在不同设备之间会有很大差异。因此,部分参与者可能会有更好的表现(训练后的模型测试精度较高),而部分参与者可能表现较差会削弱模型(训练后的模型测试精度较低)。传统的聚合操作会无意中偏向某些设备。因此,最终的聚合模型对不同参与者的数据的准确性存在较大的差距。
现有的联邦学习方法允许所有参与者接收相同的模型,而不管他们的贡献(通过他们上传的参数/梯度)。然而,这种机制在现实世界中并不适用。例如,恶意客户端可能参与获取联邦模型,而在训练过程中实际上并没有提供任何数据,这被称为搭便车攻击。由于不管如何参与者都会接收到和其它参与者相同的模型,因此搭便车攻击在联邦学习的过程中会非常普遍,恶意参与者的搭便车攻击最终导致联邦学习计划面临知识产权损失和数据隐私泄露,例如以模型倒置的形式发生。
针对这些问题,有必要设计新的联邦学习框架,促进联邦学习各参与节点的公平性。
现有技术中的联邦学习公平性研究方法包括:使不同设备的本地模型尽可能具有相同性能,降低各参与者之间模型的方差,同时保持合理的平均性能(例如,平均测试准确度)。然而这类思想仍然可以被看作是传统联邦学习框架的平等主义方法优化,具体通过最大最小优化和公平资源分配等方法来执行平等主义的概念。然而在实际应用中,平等主义的方法可能并不总是可取的。因为在实际情况中,每个客户的贡献是不同的。如果每个人都得到同等的回报,而不考虑他们的贡献,那么贡献高(数据分布高或训练精度高)的参与者可能就没有动机参与联邦学习的过程。
该现有技术方法的核心思想是贡献更多的参与者应该得到更好的奖励。参与节点的贡献和奖励应该是定量的,并且适用于联邦学习的框架中。直观地说,拥有更大更好数据集的参与者应该能够做出更高的贡献。因此,它们采用了一种简单的实证方法:贡献是由独立的性能估计的,即一个模型的测试精度只训练了参与者的本地数据。同样的,奖励也用最终的表现来表示,即参与者在联邦学习结束时收到的模型测试精度。为了实现公平性的要求,模型的表现需要与它们的贡献相称。
具体的做法是:在全局聚合的过程中,首先计算每个参与客户端更新的梯度方向与全局模型梯度方向的余弦相似度,根据余弦相似度度量不同客户端的信誉值。按照信誉值的不同决定客户端的聚合权重,并且根据信誉值的大小划分出客户端在本地更新阶段从服务器端下载的参数量,贡献值高的客户端获得更多的参数,从而实现联邦学习的公平性。
现有技术还提出了一种基于动态调整模型聚合权重的联邦学习方法。该方法提出了一种根据数据分布、模型精度和模型差异综合量化为数值指标,从而加权形成模型的全局聚合权重。
上述现有技术中的联邦学习公平性研究方法的缺点包括:
当前的联邦学习每个客户端在相似度度量中使用的方法是:考虑客户端的整体模型参数或损失值之间的距离度量。但是在非独立同分布场景中这种方法不同充分地反映不同客户端的实际贡献程度。
当前的全局聚合方法聚合后的模型会受到个别局部模型的影响而向其更新方向偏移,本地上传和全局聚合的梯度易受干扰和破坏。这时若以全局模型作为标准去进行相似度对比,不能公平地反映每个参与客户端的个性化本地模型。因此需要更加科学的方法进行节点的贡献评估。
目前联邦学习参与节点之间公平性难以保障,当前的研究不能很好地为不同的参与节点分配与它在联邦学习训练过程中实际贡献相匹配的聚合权重和计算回报。
发明内容
本发明的实施例提供了一种基于联邦节点贡献的公平性隐私计算方法法,以实现有效地促进联邦节点在全局聚合和计算回报过程中的公平性。
为了实现上述目的,本发明采取了如下技术方案。
一种基于联邦节点贡献的公平性隐私计算方法,包括:
客户端初始化参数、本地模型和信誉值,服务器收集根数据集,客户端使用本地数据集训练本地模型;
服务器计算每个客户端的贡献值,根据客户端的贡献值评估客户端的节点信誉,依据客户端的节点信誉按照比例公平聚合各个客户端的本地数据集,使用聚合后的参数更新全局模型;
各个客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新。
优选地,所述的客户端初始化参数、本地模型和信誉值,服务器收集根数据集,客户端使用本地数据集训练本地模型,包括:
参与联邦学习的客户端初始化自身的参数和本地模型,并且分配初始化的信誉值;
服务器收集一个包含所有数据类的根数据集,该根数据集不是提取的客户端数据集,该根数据集的分布结构与参与联邦学习的所有客户端的分布结构相同;
在初始化过程中,服务器端根据根数据集训练一个初始化全局模型,客户端从服务器下载初始的全局模型作为本地模型,客户端利用随机梯度下降方法使用本地数据集训练本地模型。
优选地,所述的服务器计算每个客户端的贡献特征,包括:
在每一轮迭代训练的过程中,服务器端根据根数据集训练一个全局模型,每个客户端将训练好的本地模型的梯度发送到服务器,服务器根据收到的各个客户端上传的本地模型的梯度获取各个客户端的本地数据集,计算各个客户端的本地数据集与根数据集的相似度;
对于第i个客户端的本地数据集Di,计算本地数据集Di中每个类Cj在整个数据集中所占的比例Pj;
第i个客户的本地数据数据集Di中,类别概率分布Pi(x)={P1,P2,…,Pj};
按照相同的方法计算根数据集中每个类在整个跟数据集中所占的比例Qj以及其概率分布Q(x)={Q1,Q2,…,Qj};
依次将联邦学习中各个客户端的数据集与根数据集进行对比,度量他们之间的相似性;
根据KL值得出第i个客户端的本地数据数据集Di的贡献值ki:
α是用于归一化的超参数。
优选地,所述的根据客户端的贡献值评估客户端的节点信誉,包括:
在层级上比较客户端的本地模型的每一层与全局模型的对应层之间的差异性,在层级中,客户端模型与全局模型的相似度的计算公式如下:
客户端的本地模型的训练时间成本Ti的计算公式如下;
其中Ti是客户端i的本地训练时间,Tmax和Tmin分别是训练用时最长和最短客户端的时间;
结合客户端的本地数据数据集的贡献值、模型层级差异和训练时间的指标,评估出客户端的节点信誉ri:
ri=Si+λki+μTi
其中λ、μ是一个可设置的权重系数。
优选地,所述的依据客户端的节点信誉按照比例公平聚合各个客户端的本地数据集,使用聚合后的参数更新全局模型,包括:
设置信誉阈值ρ,在每一轮的迭代训练开始时,将信誉阈值ρ与更新后的客户端的节点信誉进行比较,将节点信誉小于ρ的参与客户端从随后的一轮迭代训练中剔除;
ri=Si+λki+μTi
在服务器端进行全局聚合的时候,设置各客户端在聚合时所占的权重与其自身的信誉值相对应,全局的训练目标表示为:
其中Fi(w)是客户端i本地的损失函数,ri是客户端i的信誉,代表了全局聚合时的权重,ri越高表示在全局聚合时的权重越高;
经过几个时间段的局部训练后,服务器通过执行全局聚合将客户端的局部更新集合到加权的全局更新ωt+1,每个客户端的聚合权重为计算得到的客户端i的信誉ri;
将全局模型进行细粒度的划分,在层级上比较了全局模型和客户端本地模型之间的差异性,设置客户端本地模型每一层的权重根据其与全局模型对应层的相似程度决定,为客户端的本地模型的每一层分配不同的权重。
优选地,所述的各个客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新,包括:
当服务器端进行聚合和更新完成后,服务器端根据每个客户端在训练和上传聚合过程中的贡献值,为每个客户端分配与贡献值相匹配的全局模型参数,每个参与客户端下载相应的全局模型参数,将下载的全局模型参数作为计算回报,进行下一轮本地训练更新;
在每一轮的迭代训练过程中,客户端动态地调整下载的计算回报权重m,并计算该计算回报权重m与聚合权重之间的JFI值;
其中,mi和ri分别表示计算回报权重和聚合权重,该聚合权重为客户端i的信誉,通过动态地优化计算回报权重m,使得计算回报权重m和聚合权重尽可能的匹配,JFI的值尽可能的大。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例将全局模型进行了细粒度的划分,在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。服务器端根据每个客户端在训练和上传聚合过程中的实际贡献,为每个客户端分配与贡献值相匹配的全局模型参数,能够促进联邦节点在全局聚合和计算回报过程中的公平性。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提出的一种层级化联邦节点公平性隐私的计算框架示意图;
图2为本发明实施例提供的一种基于联邦节点贡献的公平性隐私计算方法的实现原理图;
图3为本发明实施例提供的一种基于联邦节点贡献的公平性隐私计算方法的处理流程图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
本发明旨在解决联邦节点公平性的隐私计算问题,这是目前现有技术方法未涉及的领域。根据节点在联邦学习过程中的实际贡献,为其分配相应的聚合权重和计算回报。公平性保障是联邦节点进行可信计算的前提,如果不能保证联邦学习过程中的公平性,不能公平地对待每个参与节点,那么将会严重影响各参与节点之间进行数据共享和计算的积极性。
本发明实施例提出了一种层级化的细粒度贡献评估方法,该方法将模型进行了细粒度的划分,因为神经网络的不同层可以有不同的效用,传统的比较整个模型参数的距离会忽略这种层间的差异。本发明实施例在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。通过这种方法,我们为模型的每一层分配不同的权重。
针对本地上传的梯度易受干扰和破坏,本发明提出了一种辅助模型去评估客户端的实际贡献,服务器端自身会收集并维护一个根数据集,这个根数据集不是通过收集每个客户端的数据,而是服务器端额外收集,并不会影响每个客户端的隐私。根数据集与参与的所有客户端有相似的数据分布。使用根数据集作为基准去对比评估每个客户端的数据分布情况和在训练过程中的实际贡献。在贡献评估中,我们另外加入了客户端模型的训练时间作为贡献度的一部分,用来计算模型训练的时间成本。
本发明不仅有聚合过程,同时还考虑了全局聚合后在模型下发阶段的计算回报机制。为了提高联邦学习过程的公平性,提出了贡献回报的方法,服务器端会根据每个客户端在训练和上传聚合过程中的实际贡献,为每个客户端分配与贡献相匹配的模型下载作为计算回报。本发明旨在解决联邦节点的公平隐私计算问题,一是要保证隐私,二是要确保节点之间进行共享和计算的公平性。
本发明提出了一个基于联邦节点贡献的公平性隐私计算方法。与当前方法不同的是,本发明的创新之处在于,提出了一种新的贡献评估方法。针对本地上传梯度易受干扰和破坏的问题,本发明提出了一种辅助模型去评估客户端的实际贡献,服务器端自身会收集并维护一个根数据集,根数据集与参与的所有客户端有相似的数据分布。使用根数据集作为基准去对比评估每个客户端的数据分布情况和在训练过程中的实际贡献。与当前联邦学习使用整体模型参数进行评估的方法不同,本发明将模型进行了细粒度的划分,因为神经网络的不同层可以有不同的效用,传统的比较整个模型参数的距离会忽略这种层间的差异。本发明在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。通过这种方法,本发明为模型的每一层分配不同的权重。在贡献评估中,本发明另外加入了客户端模型的训练时间作为贡献度的一部分,用来计算模型训练的时间成本。
本发明不仅有聚合过程,同时还考虑了全局聚合后在模型下发阶段的计算回报机制。为了提高联邦学习过程的公平性,本发明提出了贡献回报的方法,服务器端会根据每个客户端在训练和上传聚合过程中的实际贡献,为每个客户端分配与贡献相匹配的模型下载作为计算回报。
本发明实施例提出的一种层级化联邦节点公平性隐私的计算框架示意图如图1所示。在此框架中,参与联邦学习的客户端会依据他们在实际训练中的贡献量,决定他们在联邦学习中所占的权重,从而区分出客户端的数据分布和贡献程度,促进了联邦学习中的公平性。
在本发明提出的框架中主要包括三个模块:数据分布评估模块、节点信誉计算模块和全局公平聚合模块。
在数据分布评估模块中,该模块使用一个小的根数据集,根数据集可以作为基准来对比客户端的相似性,从而评估各客户端的数据分布和分布。
全局公平聚合模块,该模块根据客户端数据分布对其分配不同的权重,数据分布高的客户端在联邦学习中具有更大的贡献,因此它在全局聚合中所占的权重相应地更大。
在节点信誉计算模块中,本发明综合考虑了联邦学习中各客户端的数据分布和他们在训练过程中的实际贡献程度,利用信誉机制对所有参与客户端进行信誉评估,若客户端的信誉值低于阈值,则将该客户端隔离出联邦学习的过程中,从而避免该客户端对整体模型训练的影响,保证联邦学习训练模型的分布。联邦学习中的客户端根据其贡献的大小从服务器端下载相应的参数作为下一轮本地更新的参数。
本发明实施例提供的一种基于联邦节点贡献的公平性隐私计算方法的实现原理如图2所示,具体处理流程如图3所示,包括如下的处理步骤:
步骤1:初始化。参与联邦学习的客户端初始化自身的参数和模型,并且分配初始化的信誉值。
步骤2:特征提取。首先,服务器可以自己收集一个包含所有数据类的小型训练数据集(本发明称之为根数据集)。这个数据集并不是提取的客户端数据集,因为这种方式会造成本地客户端隐私的泄漏。根数据集的分布情况与参与的所有客户端整体分布相同。服务器可以通过收集的小根数据集作为评估的基准,将每个客户端的数据集与根数据集进行相似度对比,从而评估各数据集的分布。
步骤3:本地训练。每个客户端从服务器下载全局模型,然后使用其本地训练数据集训练自己的本地模型。一开始,本地客户端初始化参数,然后使用随机梯度下降(Stochastic Gradient Descent,SGD)方法训练自己的模型。然后将训练好的本地模型的梯度发送到服务器,以进行进一步的验证和聚合。
步骤4:贡献评估。在每一轮迭代训练的过程中,服务器端会根据根数据集训练一个全局模型,服务器收到各个客户端上传的梯度后,将全局模型进行细粒度的划分,因为神经网络的不同层可以有不同的效用,传统的比较整个模型参数的距离会忽略这种层间的差异。本发明在层级上比较了全局模型和客户端本地模型之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。通过这种方法,本发明为客户端本地模型的每一层分配不同的权重。
步骤5:公平聚合。服务器端会首先查看各客户端的信誉值,如果信誉值小于联邦学习的阈值,该客户端将会被隔离在联邦学习过程之外,避免其对联邦学习系统的影响。经过几个时间段的局部训练后,服务器端将局部模型的参数进行全局聚合,服务器端通过处理本发明提出的贡献模型进行全局聚合,聚合的权重是基于每个客户端的贡献。
ri=Si+λki+μTi
步骤6:全局更新。根据步骤5计算得到的公平聚合权重,服务器通过执行全局聚合将客户端的局部更新集合到加权的全局更新ωt+1。
步骤7:计算回报。在全局模型更新完成后,本地客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新。
如图1所示,本发明的层级化联邦节点公平性隐私的计算框架示意图的主要创新部分分为三个模块:数据分布评估模块、节点信誉计算模块和全局公平聚合模块。
1、数据分布评估模块:可评价局部数据分布与全局数据分布的相似性。该模块使用一个小的根数据集对所有客户端的整个数据分布进行分布评估,不引入太多的计算成本或复杂的优化。根数据集可以作为基准来评估客户端的相似性。
数据分布评估模块是联邦学习中的第一步。其目标是评估所有客户端的本地数据集的分布。由于计算组件的不同,本地客户端之间的数据分布也不同。因此,评估每个客户端的数据集是很重要的。
在这项工作中,本发明设计了一套新的方法。针对客户端本地上传的梯度易受干扰和破坏的问题,本发明使服务器端首先收集一个小的根数据集作为基准。根数据集很小,例如100个训练示例。根数据集与整体的所有参与客户端的本地数据分布相似。因为联邦学习中每个客户端是不同的,它们之间可能没有相同的数据分布,但是根数据集可以作为基准。然后通过计算与根数据集的相似度来比较所有客户端的数据分布。这里本发明采用Kullback-Leibler(KL)散度作为度量,KL散度可以衡量两个数据分布之间的距离。
具体来说,对于第i个客户端的本地数据集Di,本发明首先计算数据集中每个类Cj在整个数据集中所占的比例Pj。
因此,第i个客户的本地数据数据集Di中,类别概率分布Pi(x)={P1,P2,…,Pj}。之后本发明按照相同的方法计算根数据集中每个类在整个跟数据集中所占的比例Qj以及其概率分布Q(x)={Q1,Q2,…,Qj}。
最后本发明依次将联邦学习中各个客户端的数据集与根数据集进行对比,度量他们之间的相似性。
当两个分布相同时,它们之间的KL散度为零,当两个数据分布的差别增大时,它们之间的KL散度也会增大。
根据KL值,本发明可以得出客户端数据集的贡献值:
α是用于归一化的超参数。当客户端与根数据集的KL散度值越小,说明该客户端的数据集分布越高。通过这种方法,本发明在客户端设备和数据异质性的情况下,能够有效地区分不同数据分布的客户端。
2、节点信誉计算模块:
节点信誉计算模块是对每个联邦节点在共享和训练过程中的实际贡献程度进行评估,包括训练前的数据分布评估和训练过程中的模型相似度评估。根据数据分布的相似性,具有高分布数据集的客户端i应该能够做出更大的贡献。在每一轮迭代训练的过程中,服务器端会根据根数据集训练一个全局模型,客户端会根据自身的数据集在本地训练局部模型
与当前联邦学习使用整体模型参数进行评估的方法不同,本发明将模型进行了细粒度的划分,因为神经网络的不同层可以有不同的效用,传统的比较整个模型参数的距离会忽略这种层间的差异。本发明在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。通过这种方法,本发明为模型的每一层分配不同的权重。最后该客户端在这一轮的信誉值依据数据分布的相似度和模型的相似度共同得出。
在层级中,客户端模型与全局模型的相似度可以通过
。本发明依次评估客户端的本地模型的每一层与全局模型对应层之间的相似度,从而为本地模型的每一层分配不同的聚合权重。
此外,本发明还考虑了客户端模型训练时间的影响。现有的方法主要集中在评价数据质量、数据收集成本或模型性能改进方面。客户端模型的训练时间(等待他人训练结束后进行聚合的时间成本)也需要获得公平地考虑。因此,本发明另外加入了客户端模型的训练时间作为贡献度的一部分,用来计算模型训练的时间成本。
其中Ti是客户端i的本地训练时间,Tmax和Tmin分别是训练用时最长和最短客户端的时间。
结合数据质量、模型层级差异和训练时间的指标,本发明能够综合计算出每一轮客户端的实际贡献如下:
ri=Si+λki+μTi
其中λ、μ是一个可设置的权重系数,本发明将数据的相似度、模型层级差异以及模型训练的时间成本进行了整合,综合全面地对客户端的信誉值进行评估,并减轻训练过程和随机模型对信誉评估的影响。
3)全局公平聚合模块:
全局公平聚合模块能够使每个参与联邦学习的节点都能获得与其节点信誉相对应的计算回报。为了更好地实现联邦学习的公平性,在服务器端进行全局聚合的时候,根据联邦学习中客户端的信誉值,各客户端在聚合时所占的权重应与其自身的信誉值相对应。全局训练的目标可以表示为:
其中Fi(w)是客户端i的本地损失函数,ri是客户端i的信誉,代表了全局聚合时的权重,ri越高表示在全局聚合时的权重越高。
为了防止信誉低的客户端对整个联邦学习训练过程的影响,本发明引入信誉阈值ρ作为一个可设置的系数,它代表了联邦学习参与者需要做出最少的贡献。它还可以用来识别和删除联邦学习中的恶意参与者,因为他们的贡献通常很低。在每一轮t中,将与更新后的信誉进行比较,信誉小于ρ的参与者将从随后的一轮中剔除,删除的参与者将不会在以后被添加回来。
当服务器端进行聚合和更新完成后,每个参与客户端根据它们在训练过程中贡献度所占的比例下载相应的全局模型参数。贡献度高的客户端将会下载更高分布的模型参数作为计算回报。本发明想要计算回报尽可能与客户端的实际贡献相匹配,因此在每一轮的迭代中,客户端动态地调整下载的计算回报权重m,并计算该权重m与聚合权重之间的JFI值。
其中,mi和ri分别表示计算回报权重和聚合权重(即客户端i的信誉)。JFI值越高,则表示计算回报与聚合权重越相关,从而说明该方法越公平。本发明通过动态地优化计算回报权重m,使得m和聚合权重尽可能的匹配,即JFI的值尽可能的大,从而提高联邦节点之间的公平性。
综上所述,本发明实施例与当前联邦学习使用整体模型参数进行评估的方法不同,本发明将全局模型进行了细粒度的划分,因为神经网络的不同层可以有不同的效用,传统的比较整个模型参数的距离会忽略这种层间的差异。本发明在层级上比较了参与端本地模型每一层与全局模型对应层之间的差异性,客户端本地模型每一层的权重会根据其与全局模型对应层的相似程度决定。通过这种方法,本发明为模型的每一层分配不同的权重。
针对本地上传的梯度易受干扰和破坏,本发明提出了一种辅助模型去评估客户端的实际贡献,服务器端自身会收集并维护一个根数据集,这个根数据集不是通过收集每个客户端的数据,而是服务器端额外收集,并不会影响每个客户端的隐私。根数据集与参与的所有客户端有相似的数据分布。使用根数据集作为基准去对比评估每个客户端的数据分布情况和在训练过程中的实际贡献。在评价指标上,本发明加入了客户端模型的训练时间(等待他人训练结束后进行聚合的时间成本)作为计算客户端贡献的重要指标。
本发明不仅有聚合过程,同时还考虑了全局聚合后在模型下发阶段的计算回报机制。为了提高联邦学习过程的公平性,本发明提出了贡献回报的方法,服务器端会根据每个客户端在训练和上传聚合过程中的实际贡献,为每个客户端分配与贡献相匹配的模型下载作为计算回报。
本发明的计算回报机制,服务器端会根据每个客户端在训练和上传聚合过程中的实际贡献,为每个客户端分配与节点信誉相匹配的全局模型参数。能够促进联邦节点在全局聚合和计算回报过程中的公平性。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (4)
1.一种基于联邦节点贡献的公平性隐私计算方法,其特征在于,包括:
客户端初始化参数、本地模型和信誉值,服务器收集根数据集,客户端使用本地数据集训练本地模型;
服务器计算每个客户端的贡献值,根据客户端的贡献值评估客户端的节点信誉,依据客户端的节点信誉按照比例公平聚合各个客户端的本地数据集,使用聚合后的参数更新全局模型;
各个客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新;
所述的服务器计算每个客户端的贡献值,包括:
在每一轮迭代训练的过程中,服务器端根据根数据集训练一个全局模型,每个客户端将训练好的本地模型的梯度发送到服务器,服务器根据收到的各个客户端上传的本地模型的梯度获取各个客户端的本地数据集,计算各个客户端的本地数据集与根数据集的相似度;
对于第i个客户端的本地数据集Di,计算本地数据集Di中每个类Cj在整个数据集中所占的比例Pj;
第i个客户的本地数据数据集Di中,类别概率分布Pi(x)={P1,P2,…,Pj};
按照相同的方法计算根数据集中每个类在整个跟数据集中所占的比例Qj以及其概率分布Q(x)={Q1,Q2,…,Qj};
依次将联邦学习中各个客户端的数据集与根数据集进行对比,度量他们之间的相似性;
根据KL值得出第i个客户端的本地数据数据集Di的贡献值ki:
α是用于归一化的超参数;
所述的根据客户端的贡献值评估客户端的节点信誉,包括:
在层级上比较客户端的本地模型的每一层与全局模型的对应层之间的差异性,在层级中,客户端模型与全局模型的相似度的计算公式如下:
用m表示模型的层数,其中lm表模型的第m层,和/>分别为客户端i和全局模型在模型第m层的更新梯度;
客户端的本地模型的训练时间成本Ti的计算公式如下;
其中Ti是客户端i的本地训练时间,Tmax和Tmin分别是训练用时最长和最短客户端的时间;
结合客户端的本地数据数据集的贡献值、模型层级差异和训练时间的指标,评估出客户端的节点信誉ri:
ri=Si+λki+μTi
其中λ、μ是一个可设置的权重系数。
2.根据权利要求1所述的方法,其特征在于,所述的客户端初始化参数、本地模型和信誉值,服务器收集根数据集,客户端使用本地数据集训练本地模型,包括:
参与联邦学习的客户端初始化自身的参数和本地模型,并且分配初始化的信誉值;
服务器收集一个包含所有数据类的根数据集,该根数据集不是提取的客户端数据集,该根数据集的分布结构与参与联邦学习的所有客户端的分布结构相同;
在初始化过程中,服务器端根据根数据集训练一个初始化全局模型,客户端从服务器下载初始的全局模型作为本地模型,客户端利用随机梯度下降方法使用本地数据集训练本地模型。
3.根据权利要求1所述的方法,其特征在于,所述的依据客户端的节点信誉按照比例公平聚合各个客户端的本地数据集,使用聚合后的参数更新全局模型,包括:
设置信誉阈值ρ,在每一轮的迭代训练开始时,将信誉阈值ρ与更新后的客户端的节点信誉进行比较,将节点信誉小于ρ的参与客户端从随后的一轮迭代训练中剔除;
在服务器端进行全局聚合的时候,设置各客户端在聚合时所占的权重与其自身的信誉值相对应,全局的训练目标表示为:
其中Fi(w)是客户端i本地的损失函数,ri是客户端i的信誉,代表了全局聚合时的权重,ri越高表示在全局聚合时的权重越高;
经过几个时间段的局部训练后,服务器通过执行全局聚合将客户端的局部更新集合到加权的全局更新ωt+1,每个客户端的聚合权重为计算得到的客户端i的信誉ri;
ri=Si+λki+μTi
将全局模型进行细粒度的划分,在层级上比较了全局模型和客户端本地模型之间的差异性,设置客户端本地模型每一层的权重根据其与全局模型对应层的相似程度决定,为客户端的本地模型的每一层分配不同的权重。
4.根据权利要求3所述的方法,其特征在于,所述的各个客户端根据自身的训练贡献从服务器端下载相应的全局模型作为计算回报,进行下一轮本地训练更新,包括:
当服务器端进行聚合和更新完成后,服务器端根据每个客户端在训练和上传聚合过程中的贡献值,为每个客户端分配与贡献值相匹配的全局模型参数,每个参与客户端下载相应的全局模型参数,将下载的全局模型参数作为计算回报,进行下一轮本地训练更新;
在每一轮的迭代训练过程中,客户端动态地调整下载的计算回报权重m,并计算该计算回报权重m与聚合权重之间的JFI值;
其中,bi和ri分别表示计算回报权重和聚合权重,该聚合权重为客户端i的信誉,通过动态地优化计算回报权重,使得计算回报权重和聚合权重尽可能的匹配,JFI的值尽可能的大。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211089847.2A CN116306910B (zh) | 2022-09-07 | 2022-09-07 | 一种基于联邦节点贡献的公平性隐私计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211089847.2A CN116306910B (zh) | 2022-09-07 | 2022-09-07 | 一种基于联邦节点贡献的公平性隐私计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116306910A CN116306910A (zh) | 2023-06-23 |
CN116306910B true CN116306910B (zh) | 2023-10-03 |
Family
ID=86820916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211089847.2A Active CN116306910B (zh) | 2022-09-07 | 2022-09-07 | 一种基于联邦节点贡献的公平性隐私计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116306910B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116962085B (zh) * | 2023-09-20 | 2023-12-08 | 北京交通大学 | 鲁棒的个性化联邦学习方法、装置、系统及存储介质 |
CN117278540B (zh) * | 2023-11-23 | 2024-02-13 | 中国人民解放军国防科技大学 | 自适应边缘联邦学习客户端调度方法、装置及电子设备 |
CN117932521A (zh) * | 2024-03-21 | 2024-04-26 | 国网江西省电力有限公司电力科学研究院 | 基于信用卡声誉更新机制的电力数据异常检测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113112027A (zh) * | 2021-04-06 | 2021-07-13 | 杭州电子科技大学 | 一种基于动态调整模型聚合权重的联邦学习方法 |
CN114091356A (zh) * | 2022-01-18 | 2022-02-25 | 北京邮电大学 | 一种联邦学习方法及装置 |
CN114564746A (zh) * | 2022-02-28 | 2022-05-31 | 浙江大学 | 基于客户端权重评价的联邦学习方法和系统 |
WO2022116421A1 (zh) * | 2020-12-04 | 2022-06-09 | 深圳先进技术研究院 | 一种联邦学习工人节点选择方法、系统、终端以及存储介质 |
-
2022
- 2022-09-07 CN CN202211089847.2A patent/CN116306910B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022116421A1 (zh) * | 2020-12-04 | 2022-06-09 | 深圳先进技术研究院 | 一种联邦学习工人节点选择方法、系统、终端以及存储介质 |
CN113112027A (zh) * | 2021-04-06 | 2021-07-13 | 杭州电子科技大学 | 一种基于动态调整模型聚合权重的联邦学习方法 |
CN114091356A (zh) * | 2022-01-18 | 2022-02-25 | 北京邮电大学 | 一种联邦学习方法及装置 |
CN114564746A (zh) * | 2022-02-28 | 2022-05-31 | 浙江大学 | 基于客户端权重评价的联邦学习方法和系统 |
Non-Patent Citations (3)
Title |
---|
Fed-TGAN: Federated Learning Framework for Synthesizing Tabular Data;Zilong Zhao等;《https://arxiv.org/pdf/2108.07927.pdf》;第1-10页 * |
一种基于区块链的隐私保护异步联邦学习;高胜 等;《https://kns.cnki.net/kcms/detail/11.5846.TP.20211014.1107.003.html》;第1-20页 * |
基于区块链的公平性联邦学习模型;陈乃月 等;《https://kns.cnki.net/kcms/detail/31.1289.TP.20220505.1627.003.html》;第1-12页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116306910A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116306910B (zh) | 一种基于联邦节点贡献的公平性隐私计算方法 | |
Liu et al. | Gtg-shapley: Efficient and accurate participant contribution evaluation in federated learning | |
CN111754000B (zh) | 质量感知的边缘智能联邦学习方法及系统 | |
CN112465626B (zh) | 基于客户端分类聚合的联合风险评估方法及相关设备 | |
CN114297722B (zh) | 一种基于区块链的隐私保护异步联邦共享方法及系统 | |
CN112367109A (zh) | 空地网络中由数字孪生驱动的联邦学习的激励方法 | |
CN113902021B (zh) | 一种高能效的聚类联邦边缘学习策略生成方法和装置 | |
US20220044162A1 (en) | Blockchain-based secure federated learning | |
CN110490335A (zh) | 一种计算参与者贡献率的方法及装置 | |
WO2021208720A1 (zh) | 基于强化学习的业务分配方法、装置、设备及存储介质 | |
Yang et al. | Client selection for federated learning with label noise | |
CN113268920B (zh) | 一种基于联邦学习的无人机群感知数据安全共享方法 | |
Liu et al. | Blockchain-based task offloading for edge computing on low-quality data via distributed learning in the internet of energy | |
Xiao et al. | Incentive mechanism design for federated learning: A two-stage stackelberg game approach | |
CN111105240A (zh) | 资源敏感的联合金融欺诈检测模型训练方法及检测方法 | |
CN115881306A (zh) | 基于联邦学习的网络化icu智能医疗决策方法及存储介质 | |
Arouj et al. | Towards energy-aware federated learning on battery-powered clients | |
Qin et al. | Privacy-preserving federated learning framework in multimedia courses recommendation | |
CN114925854A (zh) | 一种基于梯度相似性度量的联邦学习节点选择方法及系统 | |
CN117196058A (zh) | 一种基于节点贡献聚类的公平联邦学习方法 | |
You et al. | Accuracy Degrading: Toward Participation-Fair Federated Learning | |
CN116451806A (zh) | 一种基于区块链的联邦学习激励分配方法及装置 | |
CN110599337A (zh) | 一种基于群智感知技术的联盟链安全激励方法 | |
CN116302874A (zh) | 模型能力测试方法、装置、电子设备、存储介质及产品 | |
CN113179224B (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 |