CN117521780A - 一种无中心联邦学习方法、装置、设备及存储介质 - Google Patents
一种无中心联邦学习方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117521780A CN117521780A CN202311482210.4A CN202311482210A CN117521780A CN 117521780 A CN117521780 A CN 117521780A CN 202311482210 A CN202311482210 A CN 202311482210A CN 117521780 A CN117521780 A CN 117521780A
- Authority
- CN
- China
- Prior art keywords
- local
- model
- updated
- node
- gradient
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000012549 training Methods 0.000 claims abstract description 40
- 238000012804 iterative process Methods 0.000 claims abstract description 8
- 238000004590 computer program Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 19
- 238000012935 Averaging Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000004220 aggregation Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000012502 risk assessment 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
- G06N3/098—Distributed learning, e.g. federated 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供了一种无中心联邦学习方法、装置、设备及存储介质,涉及计算机技术领域,包括:采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,其中,每次迭代过程包括以下操作:采用本地样本数据集,对上一次迭代更新的本地待训练模型进行训练,获得本地模型梯度;基于至少一个其他节点发送的参考模型梯度对本地模型梯度进行更新;基于更新后的本地模型梯度,对上一次迭代更新的本地待训练模型的模型参数进行更新,获得本次迭代更新的本地待训练模型的模型参数,实现了联邦学习方法的去中心化,从而降低了数据泄露的风险。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种无中心联邦学习方法、装置、设备及存储介质。
背景技术
在现实世界中,随着数据的广泛传播和共享,实现数据流通全过程动态监管在数字经济建设中具有重要的必要性和价值。尤其在金融领域,准确且全面的数据能够帮助金融机构、投资者和决策者做出更明智的决策,金融机构需要实时和准确的数据来进行风险评估和管理,从而促进金融产品和服务的创新和研发。但数据流通也需要考虑隐私、安全等方面的问题。
联邦学习(Federated Learning)是一种分布式机器学习方法,旨在在保护数据隐私的前提下,允许多个参与方共同训练机器学习模型。但是,传统联邦学习中,中央服务器(中心化节点)可能成为单点故障或隐私风险的问题。比如,在传统的联邦学习金融分析业务中,通常需要模型参数的跨域传输,如果集中在一个中心化的服务器上进行模型更新,极有可能涉及个人隐私、商业秘密等敏感信息的泄露风险。
因此,如何对传统联邦学习方法去中心化,减少模型训练和参数聚合过程对中心化的依赖,解决中心节点单点故障带来的数据泄露风险是现有技术中亟需解决的技术问题。
发明内容
本申请实施例提供了一种无中心联邦学习方法、装置、设备及存储介质,实现了联邦学习方法的去中心化,降低了中心节点单点故障带来的数据泄露风险。
第一方面,本申请实施例一种无中心联邦学习方法,应用于参与联邦学习的每个节点,包括:
获取本地样本数据集,并采用所述本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,其中,每次迭代过程包括以下操作:
采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地模型梯度;
基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度;
基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数。
本申请实施例中,参与联邦学习的每个节点采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,每个节点只需要处理自己的本地数据,而不需要共享原始数据,实现了去中心联邦学习方法,有助于保护客户和企业数据的隐私和安全,避免了中心节点单点故障问题,从而降低了数据泄露风险。
一种可选实施方式中,所述基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度,包括:
对所述至少一个其他节点发送的参考模型梯度和所述本地模型梯度求平均值,获得更新后的所述本地模型梯度。
一种可选实施方式中,所述基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数,包括:
将更新后的所述本地模型梯度,与上一次迭代更新的所述本地待训练模型的模型参数加权求和,获得本次迭代更新的所述本地待训练模型的模型参数。
一种可选实施方式中,每次迭代过程还包括以下操作:
采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地损失值;
采用所述至少一个其他节点发送的参考损失值对所述本地损失值进行更新,获得更新后的所述本地损失值;
若更新后的所述本地损失值满足最小化条件,且当前迭代次数小于或等于预设次数,则确定满足所述迭代停止条件。
一种可选实施方式中,所述采用所述至少一个其他节点发送的参考损失值对所述本地损失值进行更新,获得更新后的所述本地损失值,包括:
对所述至少一个其他节点发送的参考损失值和所述本地损失值求平均值,获得更新后的所述本地损失值。
一种可选实施方式中,每次迭代过程还包括以下操作:
若当前迭代次数达到预设次数,则确定满足所述迭代停止条件。
一种可选实施方式中,所述本地样本数据包括以下至少一项:
账户信息、交易数据、用户画像、样本图像。
第二方面,本申请实施例提供了一种无中心联邦学习装置,应用于参与联邦学习的每个节点,包括:
获取模块,用于获取本地样本数据集,并采用所述本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型;
训练模块,用于采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地模型梯度;
基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度;
基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数。
一种可选实施方式中,所述训练模块具体用于:
对所述至少一个其他节点发送的参考模型梯度和所述本地模型梯度求平均值,获得更新后的所述本地模型梯度。
一种可选实施方式中,所述训练模块具体用于:
将更新后的所述本地模型梯度,与上一次迭代更新的所述本地待训练模型的模型参数加权求和,获得本次迭代更新的所述本地待训练模型的模型参数。
一种可选实施方式中,所述获取模块还用于:
采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地损失值;
采用所述至少一个其他节点发送的参考损失值对所述本地损失值进行更新,获得更新后的所述本地损失值;
若更新后的所述本地损失值满足最小化条件,且当前迭代次数小于或等于预设次数,则确定满足所述迭代停止条件。
一种可选实施方式中,所述获取模块具体用于:
对所述至少一个其他节点发送的参考损失值和所述本地损失值求平均值,获得更新后的所述本地损失值。
一种可选实施方式中,所述获取模块还用于:
若当前迭代次数达到预设次数,则确定满足所述迭代停止条件。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述无中心联邦学习方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行上述无中心联邦学习方法的步骤。
第五方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行上述无中心联邦学习方法的步骤。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种系统架构的结构示意图;
图2为本申请实施例提供的一种无中心联邦学习方法的流程示意图;
图3为本申请实施例提供的一种无中心联邦学习方法的流程示意图;
图4为本申请实施例提供的一种无中心联邦学习装置的结构示意图;
图5为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,其为本申请实施例适用的一种无中心联邦学习系统的架构图,该无中心联邦学习系统101包括多个节点102。
节点102可以是终端设备,具体可以是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。
节点102也可以是后台服务器,具体可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,简称CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。任意两个节点102之间可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
本申请实施例中的无中心联邦学习方法可以由每个节点102执行。
需说明的是,本申请提供的无中心联邦学习方法适用于任意场景下的神经网络模型训练,神经网络模型包括但不限于:金融产品推荐模型、人脸识别模型、广告推荐模型等。
基于图1所示的系统架构图,本申请实施例提供了一种无中心联邦学习方法的流程示意图,如图2所示,该方法的流程由计算机设备执行,该计算机设备可以是图1所示的节点102执行,包括以下步骤:
步骤201,获取本地样本数据集。
一种可选实施方式中,本地样本数据包括以下至少一项:账户信息、交易数据、用户画像、样本图像。
具体地,以金融产品推荐模型为例,本地样本数据可以是用户账户信息、历史产品交易信息等。
步骤202,采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型。
具体地,每次迭代过程包括以下操作:
步骤2021,采用本地样本数据集,对上一次迭代更新的本地待训练模型进行训练,获得本地模型梯度。
具体地,针对第一次迭代过程,采用本地样本数据集,对初始化的本地待训练模型进行训练,获得本地模型梯度。
针对后续迭代过程,采用本地样本数据集,在上一次迭代更新的本地待训练模型的基础上进行训练,获得本地模型梯度。
步骤2022,基于至少一个其他节点发送的参考模型梯度对本地模型梯度进行更新,获得更新后的本地模型梯度。
具体地,假设无联邦学习系统包括节点1、节点2、节点3和节点4,对于节点1来说,可以选择其他三个节点中的任意一个或者两个,也可以选择其他三个节点中的全部,同理,节点2、节点3和节点4也采用上述方式选择至少一个其他节点。
一种可选实施方式中,对至少一个其他节点发送的参考模型梯度和本地模型梯度求平均值,获得更新后的本地模型梯度。
具体地,一个节点接收K-1个其他节点发送的参考模型梯度(即其他节点的本地模型梯度),然后采用以下公式(1)计算节点更新后的本地模型梯度:
计算更新后的本地模型梯度的公式如以下公式(1)所示:
其中,表示K个节点中的节点i的本地模型梯度,/>表示K个节点的本地模型梯度的平均值,即更新后的本地模型梯度。
步骤2023,基于更新后的本地模型梯度,对上一次迭代更新的本地待训练模型的模型参数进行更新,获得本次迭代更新的本地待训练模型的模型参数。
一种可选实施方式中,将更新后的本地模型梯度,与上一次迭代更新的本地待训练模型的模型参数加权求和,获得本次迭代更新的本地待训练模型的模型参数。
具体地,节点i本次迭代更新的本地待训练模型的模型参数θi new通过以下公式(2)获得:
其中,参数η是定值,θi表示节点i上一次迭代更新的本地待训练模型的模型参数,表示节点i更新后的本地模型梯度。
上述实施方式下,通过在每轮迭代中随机选择其他节点进行模型梯度交换,可以增加模型训练过程的随机性和稳定性。
针对迭代停止条件,本申请实施例至少提供以下几种实施方式:
实施方式一、每次迭代过程还包括以下操作:
采用本地样本数据集,对上一次迭代更新的本地待训练模型进行训练,获得本地损失值;采用至少一个其他节点发送的参考损失值对本地损失值进行更新,获得更新后的本地损失值;若更新后的本地损失值满足最小化条件,且当前迭代次数小于或等于预设次数,则确定满足迭代停止条件。
具体地,本地损失值用于评估模型的准确性,每一次迭代结束,若更新后的本地损失值达到最小值,即使当前迭代次数小于或等于预设次数,也满足迭代停止条件。若当前迭代次数达到预设次数时,更新后的本地损失值没有达到最小值,依然满足迭代停止条件。
一种可选实施方式中,对至少一个其他节点发送的参考损失值和本地损失值求平均值,获得更新后的本地损失值。
具体地,假设有N个金融机构,在每个金融机构的联邦学习平台(即节点)上,本地待训练模型的模型参数通过本地训练进行更新。令θ表示模型参数,θi表示第i个节点的本地模型参数。在训练过程中,去中心化联邦学习中每个节点的本地损失值通常是基于每个节点的本地样本数据集计算的,然后在各个节点之间进行模型参数的交换和聚合。损失值具体是通过损失函数计算获得的,具体的损失函数形式可能因任务和模型而异。
设定无中心联邦学习系统中包括N个节点,一个节点接收N-1个其他节点发送的参考损失值(即其他节点的本地损失值),然后采用以下公式(3)计算节点更新后的本地损失值:
其中,Li(θi)为N个节点中节点i的本地损失值,Lglobal(θ)表示更新后的本地损失值。
为了避免节点通信问题带来的影响,设定阀值T(T≤N),当节点获得T个其他节点的本地损失值之后,随即开始计算整体损失值并更新,如公式4所示。
Lpart(θ)表示T个节点中节点i的本地损失值,Lpart(θ)表示更新后的本地损失值。
实施方式二、每次迭代过程还包括以下操作:
若当前迭代次数达到预设次数,则确定满足迭代停止条件。
也就是说,在迭代训练过程中,不考虑每次迭代过程中获得损失值,而是在迭代次数达到预设次数,停止训练,输出目标模型。
举例来说,参见图3,设定无中心联邦学习系统101包括:节点G1、节点G2、节点G3、节点G4。
下面以节点G1的模型训练过程展开来说。
针对第一次迭代过程,采用本地样本数据集对初始化模型进行模型训练,获得本地模型梯度和本地损失值。节点G1与节点G2和节点G3进行模型梯度和损失值交换,即节点G1将本地模型梯度和本地损失值发送至节点G2和节点G3;同时,节点G1接收节点G2和节点G3发送的本地模型梯度和本地损失值。
节点G1将自身的本地模型梯度以及节点G2和节点G3发送的本地模型梯度求平均值,获得更新后的本地模型梯度。然后将更新后的本地模型梯度与初始化模型的模型参数加权求和,获得第一次迭代更新的模型参数。
同时,节点G1将自身的本地损失值以及节点G2和节点G3发送的本地损失值求平均值,获得更新后的本地损失值。若本地损失值达到最小值,则迭代停止,输出本次迭代更新的模型作为目标模型。若本地损失值没有达到最小值,且当前迭代次数没有达到预设阈值,则进入第二次迭代过程。
针对第二次迭代过程,采用本地样本数据集对第一次迭代更新的模型(该模型的模型参数为第一次迭代更新的模型参数)进行模型训练,获得本地模型梯度和本地损失值。节点G1与节点G2和节点G3进行模型梯度和损失值交换,即节点G1将本地模型梯度和本地损失值发送至节点G2和节点G3;同时,节点G1接收节点G2和节点G3发送的本地模型梯度和本地损失值。
节点G1将自身的本地模型梯度以及节点G2和节点G3发送的本地模型梯度求平均值,获得更新后的本地模型梯度。然后将更新后的本地模型梯度与初始化模型的模型参数加权求和,获得第二次迭代更新的模型参数。
同时,节点G1将自身的本地损失值以及节点G2和节点G3发送的本地损失值求平均值,获得更新后的本地损失值。若本地损失值达到最小值,则迭代停止,输出本次迭代更新的模型作为目标模型。若本地损失值没有达到最小值,且当前迭代次数没有达到预设阈值,则进入第三次迭代过程。
依次类推,直到本地损失值达到最小值或当前迭代次数达到预设阈值,停止迭代,输出最后一次迭代更新的模型作为目标模型。
同理,节点G2、节点G3、节点G4可以采用上述相同的方式训练获得目标模型,此处不再赘述。
本申请实施例中,参与联邦学习的每个节点采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,所以,本发明去掉了中心服务节点,所有节点不必都连接到中央服务器,每个节点只需要处理自己的本地数据,而不需要共享原始数据,显著减少通信开销。而且,无中心联邦学习不会因为中心节点挂掉出现无法工作的情况,有很强的鲁棒性。如果部分客户端受到攻击,无中心联邦学习只会泄露部分信息,有更好的隐私信息保护能力。
此外,从金融业务角度,本申请实施例模糊中心节点概念,不受单一节点限制,各个节点可以根据实际业务需要尝试不同的方法,这有助于建立信任和合作,从而为金融业务拓展带来更多可能性。
为了更好的解释本申请实施例,以金融产品推荐的实际应用场景为例,假设有金融平台1联合金融平台2和金融平台3训练产品推荐模型。
金融平台1采用自己的本地样本数据以金融平台2和金融平台3发送的本地模型梯度和本地损失值,对初始化的产品推荐模型进行联合迭代训练,直至满足迭代停止条件,获得已训练的产品推荐模型。本地样本数据包括:用户画像信息以及相应的产品偏好标签,用户画像信息包括:产品购买行为信息、用户基本信息(比如年龄、性别、职业)等。具体训练步骤在前文已有介绍,此处不再赘述。
在获得已训练的产品推荐模型之后,将已训练的产品推荐模型部署在金融平台1中,金融平台1基于已训练的产品推荐模型预测用户感兴趣的产品类型,并基于产品类型向用户发送相关产品的推荐信息,其中,推荐信息可以是定向广告、产品购买链接等。
同理,金融机构2、金融机构3采用上述相同的方式训练获得目标模型并应用,此处不再赘述。
基于相同的技术构思,参见图4,本申请实施例提供了一种无中心联邦学习装置,应用于参与联邦学习的每个节点,包括:
获取模块401,用于获取本地样本数据集,并采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型;
训练模块402,用于采用本地样本数据集,对上一次迭代更新的本地待训练模型进行训练,获得本地模型梯度;
基于至少一个其他节点发送的参考模型梯度对本地模型梯度进行更新,获得更新后的本地模型梯度;
基于更新后的本地模型梯度,对上一次迭代更新的本地待训练模型的模型参数进行更新,获得本次迭代更新的本地待训练模型的模型参数。
一种可选实施方式中,训练模块402具体用于:
对至少一个其他节点发送的参考模型梯度和本地模型梯度求平均值,获得更新后的本地模型梯度。
一种可选实施方式中,训练模块402具体用于:
将更新后的本地模型梯度,与上一次迭代更新的本地待训练模型的模型参数加权求和,获得本次迭代更新的本地待训练模型的模型参数。
一种可选实施方式中,获取模块401还用于:
采用本地样本数据集,对上一次迭代更新的本地待训练模型进行训练,获得本地损失值;
采用至少一个其他节点发送的参考损失值对本地损失值进行更新,获得更新后的本地损失值;
若更新后的本地损失值满足最小化条件,且当前迭代次数小于或等于预设次数,则确定满足迭代停止条件。
一种可选实施方式中,获取模块401具体用于:
对至少一个其他节点发送的参考损失值和本地损失值求平均值,获得更新后的本地损失值。
一种可选实施方式中,获取模块401还用于:
若当前迭代次数达到预设次数,则确定满足迭代停止条件。
本申请实施例中,参与联邦学习的每个节点采用本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,每个节点只需要处理自己的本地数据,而不需要共享原始数据,实现了去中心联邦学习方法,有助于保护客户和企业数据的隐私和安全,避免了中心节点单点故障问题,从而降低了数据泄露风险。
基于相同的技术构思,本申请实施例提供了一种计算机设备,该计算机设备可以是图1所示的节点和/或无中心联邦学习系统,如图5所示,包括至少一个处理器501,以及与至少一个处理器连接的存储器502,本申请实施例中不限定处理器501与存储器502之间的具体连接介质,图5中处理器501和存储器502之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请实施例中,存储器502存储有可被至少一个处理器501执行的指令,至少一个处理器501通过执行存储器502存储的指令,可以执行上述无中心联邦学习方法的步骤。
其中,处理器501是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器502内的指令以及调用存储在存储器502内的数据,从而实现无中心联邦学习。可选的,处理器501可包括一个或多个处理单元,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。在一些实施例中,处理器501和存储器502可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机设备存取的任何其他介质,但不限于此。本申请实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于同一发明构思,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当程序在计算机设备上运行时,使得计算机设备执行上述无中心联邦学习方法的步骤。
基于同一发明构思,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行上述无中心联邦学习方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机设备或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备或其他可编程数据处理设备上,使得在计算机设备或其他可编程设备上执行一系列操作步骤以产生计算机设备实现的处理,从而在计算机设备或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种无中心联邦学习方法,应用于参与联邦学习的每个节点,其特征在于,包括:
获取本地样本数据集,并采用所述本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型,其中,每次迭代过程包括以下操作:
采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地模型梯度;
基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度;
基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数。
2.如权利要求1所述的方法,其特征在于,所述基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度,包括:
对所述至少一个其他节点发送的参考模型梯度和所述本地模型梯度求平均值,获得更新后的所述本地模型梯度。
3.如权利要求1所述的方法,其特征在于,所述基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数,包括:
将更新后的所述本地模型梯度,与上一次迭代更新的所述本地待训练模型的模型参数加权求和,获得本次迭代更新的所述本地待训练模型的模型参数。
4.如权利要求1所述的方法,其特征在于,每次迭代过程还包括以下操作:
采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地损失值;
采用所述至少一个其他节点发送的参考损失值对所述本地损失值进行更新,获得更新后的所述本地损失值;
若更新后的所述本地损失值满足最小化条件,且当前迭代次数小于或等于预设次数,则确定满足所述迭代停止条件。
5.如权利要求1所述的方法,其特征在于,所述采用所述至少一个其他节点发送的参考损失值对所述本地损失值进行更新,获得更新后的所述本地损失值,包括:
对所述至少一个其他节点发送的参考损失值和所述本地损失值求平均值,获得更新后的所述本地损失值。
6.如权利要求1所述的方法,其特征在于,每次迭代过程还包括以下操作:
若当前迭代次数达到预设次数,则确定满足所述迭代停止条件。
7.如权利要求1-6任一所述的方法,其特征在于,所述本地样本数据包括以下至少一项:
账户信息、交易数据、用户画像、样本图像。
8.一种无中心联邦学习装置,应用于参与联邦学习的每个节点,其特征在于,包括:
获取模块,用于获取本地样本数据集,并采用所述本地样本数据集和至少一个其他节点发送的参考模型梯度,对本地待训练模型进行联合迭代训练,直至满足迭代停止条件,获得目标模型;
训练模块,用于采用所述本地样本数据集,对上一次迭代更新的所述本地待训练模型进行训练,获得本地模型梯度;
基于所述至少一个其他节点发送的参考模型梯度对所述本地模型梯度进行更新,获得更新后的所述本地模型梯度;
基于更新后的所述本地模型梯度,对上一次迭代更新的所述本地待训练模型的模型参数进行更新,获得本次迭代更新的所述本地待训练模型的模型参数。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-7任一所述方法的步骤。
11.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行权利要求1-7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311482210.4A CN117521780A (zh) | 2023-11-08 | 2023-11-08 | 一种无中心联邦学习方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311482210.4A CN117521780A (zh) | 2023-11-08 | 2023-11-08 | 一种无中心联邦学习方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117521780A true CN117521780A (zh) | 2024-02-06 |
Family
ID=89760071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311482210.4A Pending CN117521780A (zh) | 2023-11-08 | 2023-11-08 | 一种无中心联邦学习方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117521780A (zh) |
-
2023
- 2023-11-08 CN CN202311482210.4A patent/CN117521780A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110060144B (zh) | 额度模型训练方法、额度评估方法、装置、设备及介质 | |
CN113469373B (zh) | 基于联邦学习的模型训练方法、系统、设备及存储介质 | |
CN106682906B (zh) | 一种风险识别、业务处理方法和设备 | |
CN110009486B (zh) | 一种欺诈检测的方法、系统、设备及计算机可读存储介质 | |
WO2022257730A1 (zh) | 实现隐私保护的多方协同更新模型的方法、装置及系统 | |
CN110263294B (zh) | 损失函数取值的确定方法、装置和电子设备 | |
CN113159190B (zh) | 联邦激励分配方法、装置、计算机设备及存储介质 | |
CN112766318B (zh) | 业务任务执行方法、装置以及计算机可读存储介质 | |
CN112799708A (zh) | 联合更新业务模型的方法及系统 | |
CN113222143A (zh) | 图神经网络训练方法、系统、计算机设备及存储介质 | |
CN115622777A (zh) | 一种基于联盟链的多中心联邦学习数据共享方法 | |
CN113626866A (zh) | 一种面向联邦学习的本地化差分隐私保护方法、系统、计算机设备及存储介质 | |
CN110874638B (zh) | 面向行为分析的元知识联邦方法、装置、电子设备及系统 | |
CN113689270B (zh) | 黑产设备的确定方法、电子设备、存储介质及程序产品 | |
CN113850669A (zh) | 用户分群方法、装置、计算机设备及计算机可读存储介质 | |
US20210217083A1 (en) | Method and system for optimizing resource redistribution | |
CN112926090A (zh) | 基于差分隐私的业务分析方法及装置 | |
CN112598132A (zh) | 模型训练方法及装置、存储介质、电子装置 | |
CN116432040A (zh) | 基于联邦学习的模型训练方法、装置、介质以及电子设备 | |
CN117521780A (zh) | 一种无中心联邦学习方法、装置、设备及存储介质 | |
Usmanova et al. | Federated continual learning through distillation in pervasive computing | |
CN114912627A (zh) | 推荐模型训练方法、系统、计算机设备及存储介质 | |
CN113779116B (zh) | 对象排序方法、相关设备及介质 | |
CN113297310B (zh) | 一种物联网中区块链分片验证者选取的方法 | |
CN112242959B (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 |