CN112541592B - 基于差分隐私的联邦学习方法、装置及电子设备 - Google Patents

基于差分隐私的联邦学习方法、装置及电子设备 Download PDF

Info

Publication number
CN112541592B
CN112541592B CN202011409580.1A CN202011409580A CN112541592B CN 112541592 B CN112541592 B CN 112541592B CN 202011409580 A CN202011409580 A CN 202011409580A CN 112541592 B CN112541592 B CN 112541592B
Authority
CN
China
Prior art keywords
vector
target
gradient
gradient vector
component
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
Application number
CN202011409580.1A
Other languages
English (en)
Other versions
CN112541592A (zh
Inventor
熊涛
吴若凡
漆远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202210636831.2A priority Critical patent/CN115081640A/zh
Priority to CN202011409580.1A priority patent/CN112541592B/zh
Publication of CN112541592A publication Critical patent/CN112541592A/zh
Application granted granted Critical
Publication of CN112541592B publication Critical patent/CN112541592B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)

Abstract

本说明书实施例提供一种基于差分隐私的联邦学习方法及装置、电子设备,该方法应用于任一终端设备,包括多次迭代,每次迭代包括:基于训练数据和当前本地参数,确定待处理的第一梯度向量,该第一梯度向量的欧式范数小于等于预设范数,对第一梯度向量进行多级量化处理,得到第二梯度向量,在第二梯度向量的向量空间中,基于第二梯度向量,生成第一向量集合和第二向量集合,进行满足差分隐私的采样,以从第一向量集合或第二向量集合中随机采样出第三梯度向量。对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。能够提高联邦学习过程中的通讯效率,从而提高了联邦学习的效率。

Description

基于差分隐私的联邦学习方法、装置及电子设备
技术领域
本说明书一个或多个实施例涉及隐私保护技术领域,特别涉及一种基于差分隐私的联邦学习方法、装置及电子设备。
背景技术
机器学习所需要的数据往往会涉及到多个领域。例如在基于机器学习的商户分类分析场景中,电子支付平台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。数据往往以孤岛的形式存在。由于行业竞争、数据安全、用户隐私等问题,数据整合面临着很大阻力,如何更高效地将分散在各个平台的数据整合在一起训练机器学习模型具有尤为重要的意义。
发明内容
为了解决上述技术问题之一,本说明书一个或多个实施例提供一种基于差分隐私的联邦学习方法、装置及电子设备。
根据第一方面,提供一种基于差分隐私的联邦学习方法,所述联邦学习通过服务器和多个终端设备进行,所述方法应用于任一终端设备,所述方法包括多次迭代,其中,每次迭代包括:
从本地训练集中选取训练数据,并获取服务器发送的当前本地参数;
基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,所述第一梯度向量的欧式范数小于等于预设范数U;
对所述第一梯度向量进行多级量化处理,得到第二梯度向量;
在所述第二梯度向量的向量空间中,基于所述第二梯度向量,生成第一向量集合和第二向量集合,使所述第一向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量大于预设数量κ,使所述第二向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量小于等于所述预设数量κ;
从所述第一向量集合或所述第二向量集合中随机采样出第三梯度向量;其中,从所述第一向量集合和从所述第二向量集合中采样的概率分别为预设概率p和1-p;其中,所述预设概率p大于等于0.5;并且,所述预设数量κ和所述预设概率p的设定使所述采样满足差分隐私;
对所述第三梯度向量进行归一化,得到目标梯度向量,并向所述服务器上传所述目标梯度向量。
可选的,所述对所述第一梯度向量进行多级量化处理,得到第二梯度向量,包括:
将从-U到U的区间范围平均分成多个子区间;
确定所述第一梯度向量的各个分量的值在所述多个子区间中各自对应的各个目标子区间;
基于预设的概率,随机选取所述各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值;
基于所述各个分量的修正值,获取所述第二梯度向量。
可选的,所述基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,包括:
基于所述训练数据和所述当前本地参数,确定当前本地梯度向量,所述当前本地梯度向量的欧式范数被规范到小于等于所述预设范数U;
从所述当前本地梯度向量的分量中随机选取预设个数x个目标分量;
确定本次迭代的当前梯度残差向量;
获取所述当前梯度残差向量在所述目标分量的方向上的目标残差分量;
基于所述目标分量和所述目标残差分量,确定所述第一梯度向量。
可选的,首次迭代时,所述当前梯度残差向量为0;非首次迭代时,所述当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和;所述第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分;所述第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。
可选的,所述基于所述目标分量和所述目标残差分量,确定所述第一梯度向量,包括:
确定目标旋转矩阵,所述目标旋转矩阵为正交矩阵;
计算所述目标分量和预设的第二修正因子的乘积与所述目标残差分量之和,并利用所述目标旋转矩阵乘以所述计算的结果,得到所述第一梯度向量。
可选的,所述确定目标旋转矩阵,包括:
生成目标对角矩阵;所述目标对角矩阵的对角元素为0.5;
获取目标沃尔什-阿达玛矩阵;
利用所述目标沃尔什-阿达玛矩阵乘以所述目标对角矩阵,并除以所述预设个数x。
根据第二方面,提供一种基于差分隐私的联邦学习装置,所述联邦学习通过服务器和多个终端设备进行,所述装置应用于任一终端设备,所述装置执行多次迭代,所述装置包括:
获取模块,用于从本地训练集中选取训练数据,并获取服务器发送的当前本地参数;
确定模块,用于基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,所述第一梯度向量的欧式范数小于等于预设范数U;
处理模块,用于对所述第一梯度向量进行多级量化处理,得到第二梯度向量;
生成模块,用于在所述第二梯度向量的向量空间中,基于所述第二梯度向量,生成第一向量集合和第二向量集合,使所述第一向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量大于预设数量κ,使所述第二向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量小于等于所述预设数量κ;
采样模块,用于从所述第一向量集合或所述第二向量集合中随机采样出第三梯度向量;其中,从所述第一向量集合和从所述第二向量集合中采样的概率分别为预设概率p和1-p;其中,所述预设概率p大于等于0.5;并且,所述预设数量κ和所述预设概率p的设定使所述采样满足差分隐私;
输出模块,用于对所述第三梯度向量进行归一化,得到目标梯度向量,并向所述服务器上传所述目标梯度向量。
可选的,其中,所述处理模块包括:
划分子模块,用于将从-U到U的区间范围平均分成多个子区间;
映射子模块,用于确定所述第一梯度向量的各个分量的值在所述多个子区间中各自对应的各个目标子区间;
选取子模块,用于基于预设的概率,随机选取所述各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值;
获取子模块,用于基于所述各个分量的修正值,获取所述第二梯度向量。
可选的,所述确定模块包括:
计算子模块,用于基于所述训练数据和所述当前本地参数,确定当前本地梯度向量,所述当前本地梯度向量的欧式范数被规范到小于等于所述预设范数U;
分量选取子模块,用于从所述当前本地梯度向量的分量中随机选取预设个数x个目标分量;
残差确定子模块,用于确定本次迭代的当前梯度残差向量;
分量获取子模块,用于获取所述当前梯度残差向量在所述目标分量的方向上的目标残差分量;
确定子模块,用于基于所述目标分量和所述目标残差分量,确定所述第一梯度向量。
可选的,首次迭代时,所述当前梯度残差向量为0;非首次迭代时,所述当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和;所述第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分;所述第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。
可选的,所述确定子模块被配置用于:
确定目标旋转矩阵,所述目标旋转矩阵为正交矩阵;
计算所述目标分量和预设的第二修正因子的乘积与所述目标残差分量之和,并利用所述目标旋转矩阵乘以所述计算的结果,得到所述第一梯度向量。
可选的,所述确定子模块通过如下方式确定目标旋转矩阵:
生成目标对角矩阵;所述目标对角矩阵的对角元素为0.5;
获取目标沃尔什-阿达玛矩阵;
利用所述目标沃尔什-阿达玛矩阵乘以所述目标对角矩阵,并除以所述预设个数x。
根据第三方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法。
根据第四方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任一项所述的方法。
本说明书的实施例提供的技术方案可以包括以下有益效果:
本说明书的实施例提供的基于差分隐私的联邦学习方法和装置,通过从本地训练集中选取训练数据,并获取服务器发送的当前本地参数,基于训练数据和当前本地参数,确定待处理的第一梯度向量,该第一梯度向量的欧式范数小于等于预设范数,对第一梯度向量进行多级量化处理,得到第二梯度向量,在第二梯度向量的向量空间中,基于第二梯度向量,生成第一向量集合和第二向量集合,进行满足差分隐私的采样,以从第一向量集合或第二向量集合中随机采样出第三梯度向量。对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。由于本实施例对梯度向量采用了多级量化处理,并采用满足差分隐私的方式进行采样,从而最终得到目标梯度向量,提高了联邦学习过程中的通讯效率,从而提高了联邦学习的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本说明书根据一示例性实施例示出的一种基于差分隐私的联邦学习的场景示意图;
图2是本说明书根据一示例性实施例示出的一种基于差分隐私的联邦学习方法的流程图;
图3是本说明书根据一示例性实施例示出的另一种基于差分隐私的联邦学习方法的流程图;
图4是本说明书根据一示例性实施例示出的另一种基于差分隐私的联邦学习方法的流程图;
图5是本说明书根据一示例性实施例示出的另一种基于差分隐私的联邦学习装置的框图;
图6是本说明根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1所示,是根据一示例性实施例示出的一种基于差分隐私的联邦学习场景示意图。
在图1示出的场景中,任一终端设备可以从服务器获取当前本地参数,并从本地存储的本地训练集中随机选取部分训练数据。然后,基于当前本地参数以及训练数据,得到第一梯度向量,并对第一梯度向量进行多级量化处理,得到第二梯度向量。
接着,根据第二梯度向量生成第一向量集合和第二向量集合,使第一向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量大于预设数量κ。并使第二向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量小于等于κ。再从第一向量集合或第二向量集合中随机采样出第三梯度向量。其中,从第一向量集合和从第二向量集合中采样的概率分别为预设概率p和1-p。并且,κ和p的设定使采样满足差分隐私。
最后,对第三梯度向量进行归一化,得到目标梯度向量,并将目标梯度向量上传至服务器。
服务器可以收集各个终端设备各自上传的各个目标梯度向量,并对这些目标梯度向量进行整合,从而得到各个终端设备各自对应的各个本地参数,并向各个终端设备返回各自对应的各个本地参数。
下面将结合具体的实施例对本说明书提供的方案进行详细描述。
如图2所示,图2是根据一示例性实施例示出的一种基于差分隐私的联邦学习方法的流程图,该联邦学习可以通过服务器和多个终端设备进行,该方法可以应用于任一终端设备中。本领域技术人员可以理解,该终端设备可以包括但不限于诸如智能手机的移动终端设备、智能穿戴式设备、平板电脑、膝上型便携式电脑以及台式电脑等等。该方法可以包括多次迭代,其中,每次迭代可以包括以下步骤:
在步骤201中,从本地训练集中选取训练数据,并获取服务器发送的当前本地参数。
在步骤202中,基于训练数据和当前本地参数,确定待处理的第一梯度向量。
在本实施例中,该终端设备可以从本地训练集中随机选取训练数据,并获取服务器发送的本次迭代的当前本地参数。然后,可以基于训练数据和当前本地参数,确定待处理的第一梯度向量,其中,第一梯度向量的欧式范数小于等于预设范数U。U可以是基于经验得到的一个范数的上界,也可以是采用预设算法计算得到的一个范数的上界,可以理解,本实施例对预设范数U的具体取值方面不限定。
具体来说,基于训练数据和当前本地参数,确定当前本地梯度向量,并计算当前本地梯度向量的范数。若计算得到的该范数大于U,则将当前本地梯度向量除以U。若计算得到的该范数小于等于U,则对当前本地梯度向量不进行处理。从而将当前本地梯度向量的欧式范数规范到小于等于U。
在一种实现方式中,可以将欧式范数被规范到小于等于U的当前本地梯度向量作为待处理的第一梯度向量。在另一种实现方式中,还可以对欧式范数被规范到小于等于U的当前本地梯度向量进行进一步处理,得到待处理的第一梯度向量。可以理解,本实施例对此方面不限定。
在步骤203中,对第一梯度向量进行多级量化处理,得到第二梯度向量。
在本实施例中,可以对第一梯度向量进行多级量化处理,得到第二梯度向量。具体来说,首先,可以将从-U到U(U即为上述预设范数)的区间范围平均分成K-1个子区间(K为大于2的整数),得到K个端点。用Bn表示第n个端点,则这K个端点可分别表示为B1<B2<……BK-1<BK,并且,B1=-U,BK=U。其中,Bn=-U+2(n-1)U/(k-1)。
接着,可以确定第一梯度向量的各个分量的值在多个子区间中各自对应的各个目标子区间。例如,第一梯度向量的第i个分量的值为m,可以在上述K-1个子区间中找到该第i个分量对应的子区间[Bn-1,Bn],使得Bn-1<m<Bn
最后,基于预设的概率,随机将各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值,并基于各个分量的修正值,得到第二梯度向量。例如,第一梯度向量的第i个分量的值为m,该第i个分量对应的子区间为[Bn-1,Bn],可以随机选取Bn-1或Bn作为第i个分量的修正值。其中,选取Bn-1的概率为预设值q,选取Bn的概率为1-q。其中,q=(n-1)(m-Bn)/2U。确定第一梯度向量的各个分量的修正值后,利用各个分量的修正值构建出第二梯度向量(第二梯度向量各个分量的值即为第一梯度向量各个分量的修正值)。
在步骤204中,在第二梯度向量的向量空间中,基于该第二梯度向量,生成第一向量集合和第二向量集合。
在本实施例中,可以在第二梯度向量的向量空间中,基于该第二梯度向量,生成第一向量集合和第二向量集合。使第一向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量大于预设数量κ,第二向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量小于等于κ。
例如,第二梯度向量为
Figure BDA0002819259530000101
κ=4,可以构建向量
Figure BDA0002819259530000102
可见,
Figure BDA0002819259530000103
和第二梯度向量
Figure BDA0002819259530000104
具有相同向量分量
Figure BDA0002819259530000105
Figure BDA0002819259530000106
相同向量分量的数量为5个,大于κ,因此,
Figure BDA0002819259530000107
可以作为第一向量集合中的元素。构建向量
Figure BDA0002819259530000108
可见,
Figure BDA0002819259530000109
和第二梯度向量
Figure BDA00028192595300001010
具有相同向量分量
Figure BDA00028192595300001011
Figure BDA00028192595300001012
相同向量分量的数量为3个,小于κ,因此,
Figure BDA00028192595300001013
可以作为第二向量集合中的元素。
在步骤205中,从第一向量集合或第二向量集合中随机采样出第三梯度向量。
在本实施例中,可以从第一向量集合或第二向量集合中随机采样出第三梯度向量。其中,从第一向量集合中采样的概率为预设概率p,从第二向量集合中采样的概率为1-p,p大于等于0.5,并且,κ和p的设定使上述采样满足差分隐私。
例如,κ和p可以为满足以下公式的任意取值:
Figure BDA0002819259530000111
Figure BDA0002819259530000112
其中,d为第二梯度向量的维度数,τ为大于(d+κ+1)/2的最小整数,∈为预设的隐私预算,
Figure BDA0002819259530000113
为组合常数,K为步骤203中提到的端点的个数。
在步骤206中,对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。
在本实施例中,可以对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。
本说明书的上述实施例提供的基于差分隐私的联邦学习方法,通过从本地训练集中选取训练数据,并获取服务器发送的当前本地参数,基于训练数据和当前本地参数,确定待处理的第一梯度向量,该第一梯度向量的欧式范数小于等于预设范数,对第一梯度向量进行多级量化处理,得到第二梯度向量,在第二梯度向量的向量空间中,基于第二梯度向量,生成第一向量集合和第二向量集合,进行满足差分隐私的采样,以从第一向量集合或第二向量集合中随机采样出第三梯度向量。对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。由于本实施例对梯度向量采用了多级量化处理,并采用满足差分隐私的方式进行采样,从而最终得到目标梯度向量,提高了联邦学习过程中的通讯效率,从而提高了联邦学习的效率。
如图3所示,图3根据一示例性实施例示出的另一种基于差分隐私的联邦学习方法的流程图,该实施例描述了确定待处理的第一梯度向量的过程,该方法可以应用于终端设备中,包括以下步骤:
在步骤301中,基于训练数据和当前本地参数,确定当前本地梯度向量,当前本地梯度向量的欧式范数被规范到小于等于预设范数U。
在本实施例中,基于训练数据和当前本地参数,确定当前本地梯度向量,并计算当前本地梯度向量的范数。若计算得到的该范数大于U,则将当前本地梯度向量除以U。若计算得到的该范数小于等于U,则对当前本地梯度向量不进行处理。从而将当前本地梯度向量的欧式范数规范到小于等于U。
在步骤302中,从当前本地梯度向量的分量中随机选取x个目标分量。
在本实施例中,可以从当前本地梯度向量的分量中随机选取预设个数x个目标分量。例如,当前本地梯度向量为
Figure BDA0002819259530000121
x为3,可以随机选取
Figure BDA0002819259530000122
3个分量作为目标分量。
在步骤303中,确定本次迭代的当前梯度残差向量。
在本实施例中,可以确定本次迭代的当前梯度残差向量。具体来说,首次迭代时,当前梯度残差向量为0。
非首次迭代时,当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和。第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分。第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。例如,当前梯度残差向量可以表示为:Rt=αVt—1+Rt—1,其中,α为第一修正因子,Vt—1为第一向量部分,Rt—1为第二向量部分。
其中,第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分。例如,上次迭代中的本地梯度向量表示为:
Figure BDA0002819259530000131
上次迭代中选取
Figure BDA0002819259530000132
作为目标分量,则第一向量部分为
Figure BDA0002819259530000133
其中,第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。例如,上次迭代中的梯度残差向量表示为:
Figure BDA0002819259530000134
上次迭代中选取
Figure BDA0002819259530000135
作为目标残差分量,则第二向量部分为
Figure BDA0002819259530000136
在步骤304中,获取当前梯度残差向量在目标分量的方向上的目标残差分量。
在本实施例中,可以获取当前梯度残差向量在目标分量的方向上的目标残差分量。例如,当前梯度残差向量表示为:
Figure BDA0002819259530000137
本次迭代的目标分量为
Figure BDA0002819259530000138
当前梯度残差向量在目标分量的方向上的目标残差分量可以表示为
Figure BDA0002819259530000139
在步骤305中,基于目标分量和目标残差分量,确定第一梯度向量。
在本实施例中,可以基于目标分量和目标残差分量,确定第一梯度向量。例如,可以将目标分量和目标残差分量相加的结果作为第一梯度向量。
本说明书的上述实施例提供的基于差分隐私的联邦学习方法,通过基于训练数据和当前本地参数,确定当前本地梯度向量,从当前本地梯度向量的分量中随机选取预设个数个目标分量,确定本次迭代的当前梯度残差向量,获取当前梯度残差向量在目标分量的方向上的目标残差分量,并基于目标分量和目标残差分量,确定第一梯度向量。由于本实施例采用了梯度采样的方式从当前本地梯度向量的分量中随机选取多个目标分量,以进一步确定目标残差分量,并确定第一梯度向量,从而进一步提高了隐私保护的强度。
如图4所示,图4根据一示例性实施例示出的另一种基于差分隐私的联邦学习方法的流程图,该实施例详细描述了确定第一梯度向量的过程,该方法可以应用于终端设备中,包括以下步骤:
在步骤401中,确定目标旋转矩阵,该目标旋转矩阵为正交矩阵。
在本实施例中,可以生成一个正交矩阵,作为目标旋转矩阵。具体来说,可以基于当前本地梯度向量的维度,生成一个能够和当前本地梯度向量相乘的对角元素为0.5的对角矩阵,作为目标对角矩阵。并根据目标对角矩阵的阶数,获取一个沃尔什-阿达玛矩阵,作为目标沃尔什-阿达玛矩阵。然后,利用目标沃尔什-阿达玛矩阵乘以目标对角矩阵,并除以目标分量的个数x,从而得到目标旋转矩阵。
在步骤402中,计算目标分量和预设的第二修正因子的乘积与目标残差分量之和,并利用目标旋转矩阵乘以计算的结果,得到第一梯度向量。
在本实施例中,可以计算目标分量和预设的第二修正因子的乘积与目标残差分量之和,并利用目标旋转矩阵乘以计算的结果,得到第一梯度向量。例如,第一梯度向量可以表示为:H=S(βX+Y),其中,β为第二修正因子,X为目标分量,Y为目标残差分量,S为目标旋转矩阵。
本说明书的上述实施例提供的基于差分隐私的联邦学习方法,通过确定目标旋转矩阵,该目标旋转矩阵为正交矩阵,计算目标分量和预设的第二修正因子的乘积与目标残差分量之和,并利用目标旋转矩阵乘以计算的结果,得到第一梯度向量。由于本实施例采用旋转矩阵对目标分量和目标残差分量进行旋转处理,从而能够降低联邦学习过程中产生的误差,提高了联邦学习的准确率。
应当注意,尽管在上述实施例中,以特定顺序描述了本说明书实施例的方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
与前述基于差分隐私的联邦学习方法实施例相对应,本说明书还提供了基于差分隐私的联邦学习装置的实施例。
如图5所示,图5是本说明书根据一示例性实施例示出的一种基于差分隐私的联邦学习装置框图,该联邦学习通过服务器和多个终端设备进行,该装置应用于任一终端设备,该装置执行多次迭代,可以包括:获取模块501,确定模块502,处理模块503,生成模块504,采样模块505和输出模块506。
其中,获取模块501,用于从本地训练集中选取训练数据,并获取服务器发送的当前本地参数。
确定模块502,用于基于训练数据和当前本地参数,确定待处理的第一梯度向量,该第一梯度向量的欧式范数小于等于预设范数U。
处理模块503,用于对第一梯度向量进行多级量化处理,得到第二梯度向量。
生成模块504,用于在第二梯度向量的向量空间中,基于第二梯度向量,生成第一向量集合和第二向量集合,使第一向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量大于预设数量κ,使第二向量集合中的任一向量与第二梯度向量具有的相同向量分量的数量小于等于κ。
采样模块505,用于从第一向量集合或第二向量集合中随机采样出第三梯度向量。其中,从第一向量集合和从第二向量集合中采样的概率分别为预设概率p和1-p,其中,预设概率p大于等于0.5,并且,κ和p的设定使采样满足差分隐私。
输出模块506,用于对第三梯度向量进行归一化,得到目标梯度向量,并向服务器上传目标梯度向量。
在另一些可选实施方式中,处理模块503可以包括:划分子模块,映射子模块,选取子模块和获取子模块(图中未示出)。
其中,划分子模块,用于将从-U到U的区间范围平均分成多个子区间。
映射子模块,用于确定第一梯度向量的各个分量的值在多个子区间中各自对应的各个目标子区间。
选取子模块,用于基于预设的概率,随机选取各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值。
获取子模块,用于基于各个分量的修正值,获取第二梯度向量。
在另一些可选实施方式中,确定模块502可以包括:计算子模块,分量选取子模块,残差确定子模块,分量获取子模块和确定子模块(图中未示出)。
其中,计算子模块,用于基于训练数据和当前本地参数,确定当前本地梯度向量,当前本地梯度向量的欧式范数被规范到小于等于预设范数U。
分量选取子模块,用于从当前本地梯度向量的分量中随机选取预设个数x个目标分量。
残差确定子模块,用于确定本次迭代的当前梯度残差向量。
分量获取子模块,用于获取当前梯度残差向量在目标分量的方向上的目标残差分量。
确定子模块,用于基于目标分量和目标残差分量,确定第一梯度向量。
在另一些可选实施方式中,首次迭代时,当前梯度残差向量为0。非首次迭代时,当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和。第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分,第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。
在另一些可选实施方式中,确定子模块被配置用于:确定目标旋转矩阵,目标旋转矩阵为正交矩阵。计算目标分量和预设的第二修正因子的乘积与目标残差分量之和,并利用目标旋转矩阵乘以上述计算的结果,得到第一梯度向量。
在另一些可选实施方式中,确定子模块通过如下方式确定目标旋转矩阵:生成目标对角矩阵,目标对角矩阵的对角元素为0.5,获取目标沃尔什-阿达玛矩阵,利用目标沃尔什-阿达玛矩阵乘以目标对角矩阵,并除以x。
应当理解,上述装置可以预先设置在终端设备中,也可以通过下载等方式而加载到终端设备中。上述装置中的相应模块可以与终端设备中的模块相互配合以实现基于差分隐私的联邦学习方案。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书一个或多个实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书一个或多个实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2至图4任一实施例提供的基于差分隐私的联邦学习方法。
对应于上述的基于差分隐私的联邦学习方法,本说明书一个或多个实施例还提出了图6所示的根据本说明书的一示例性实施例的电子设备的示意结构图。请参考图6,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成基于差分隐私的联邦学习装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。其中,软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种基于差分隐私的联邦学习方法,所述联邦学习通过服务器和多个终端设备进行,所述方法应用于任一终端设备,所述方法包括多次迭代,其中,每次迭代包括:
从本地训练集中选取训练数据,并获取服务器发送的当前本地参数;
基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,所述第一梯度向量的欧式范数小于等于预设范数U;
对所述第一梯度向量进行多级量化处理,得到第二梯度向量;
在所述第二梯度向量的向量空间中,基于所述第二梯度向量,生成第一向量集合和第二向量集合,使所述第一向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量大于预设数量κ,使所述第二向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量小于等于所述预设数量κ;
从所述第一向量集合或所述第二向量集合中随机采样出第三梯度向量;其中,从所述第一向量集合和从所述第二向量集合中采样的概率分别为预设概率p和1-p;其中,所述预设概率p大于等于0.5;并且,所述预设数量κ和所述预设概率p的设定使所述采样满足差分隐私;
对所述第三梯度向量进行归一化,得到目标梯度向量,并向所述服务器上传所述目标梯度向量。
2.根据权利要求1所述的方法,其中,所述对所述第一梯度向量进行多级量化处理,得到第二梯度向量,包括:
将从-U到U的区间范围平均分成多个子区间;
确定所述第一梯度向量的各个分量的值在所述多个子区间中各自对应的各个目标子区间;
基于预设的概率,随机选取所述各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值;
基于所述各个分量的修正值,获取所述第二梯度向量。
3.根据权利要求1所述的方法,其中,所述基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,包括:
基于所述训练数据和所述当前本地参数,确定当前本地梯度向量,所述当前本地梯度向量的欧式范数被规范到小于等于所述预设范数U;
从所述当前本地梯度向量的分量中随机选取预设个数x个目标分量;
确定本次迭代的当前梯度残差向量;
获取所述当前梯度残差向量在所述目标分量的方向上的目标残差分量;
基于所述目标分量和所述目标残差分量,确定所述第一梯度向量。
4.根据权利要求3所述的方法,其中,首次迭代时,所述当前梯度残差向量为0;非首次迭代时,所述当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和;所述第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分;所述第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。
5.根据权利要求3所述的方法,其中,所述基于所述目标分量和所述目标残差分量,确定所述第一梯度向量,包括:
确定目标旋转矩阵,所述目标旋转矩阵为正交矩阵;
计算所述目标分量和预设的第二修正因子的乘积与所述目标残差分量之和,并利用所述目标旋转矩阵乘以所述计算的结果,得到所述第一梯度向量。
6.根据权利要求5所述的方法,其中,所述确定目标旋转矩阵,包括:
生成目标对角矩阵;所述目标对角矩阵的对角元素为0.5;
获取目标沃尔什-阿达玛矩阵;
利用所述目标沃尔什-阿达玛矩阵乘以所述目标对角矩阵,并除以所述预设个数x。
7.一种基于差分隐私的联邦学习装置,所述联邦学习通过服务器和多个终端设备进行,所述装置应用于任一终端设备,所述装置执行多次迭代,所述装置包括:
获取模块,用于从本地训练集中选取训练数据,并获取服务器发送的当前本地参数;
确定模块,用于基于所述训练数据和所述当前本地参数,确定待处理的第一梯度向量,所述第一梯度向量的欧式范数小于等于预设范数U;
处理模块,用于对所述第一梯度向量进行多级量化处理,得到第二梯度向量;
生成模块,用于在所述第二梯度向量的向量空间中,基于所述第二梯度向量,生成第一向量集合和第二向量集合,使所述第一向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量大于预设数量κ,使所述第二向量集合中的任一向量与所述第二梯度向量具有的相同向量分量的数量小于等于所述预设数量κ;
采样模块,用于从所述第一向量集合或所述第二向量集合中随机采样出第三梯度向量;其中,从所述第一向量集合和从所述第二向量集合中采样的概率分别为预设概率p和1-p;其中,所述预设概率p大于等于0.5;并且,所述预设数量κ和所述预设概率p的设定使所述采样满足差分隐私;
输出模块,用于对所述第三梯度向量进行归一化,得到目标梯度向量,并向所述服务器上传所述目标梯度向量。
8.根据权利要求7所述的装置,其中,所述处理模块包括:
划分子模块,用于将从-U到U的区间范围平均分成多个子区间;
映射子模块,用于确定所述第一梯度向量的各个分量的值在所述多个子区间中各自对应的各个目标子区间;
选取子模块,用于基于预设的概率,随机选取所述各个目标子区间的两个端点中的任意一个端点,作为各个分量的修正值;
获取子模块,用于基于所述各个分量的修正值,获取所述第二梯度向量。
9.根据权利要求7所述的装置,其中,所述确定模块包括:
计算子模块,用于基于所述训练数据和所述当前本地参数,确定当前本地梯度向量,所述当前本地梯度向量的欧式范数被规范到小于等于所述预设范数U;
分量选取子模块,用于从所述当前本地梯度向量的分量中随机选取预设个数x个目标分量;
残差确定子模块,用于确定本次迭代的当前梯度残差向量;
分量获取子模块,用于获取所述当前梯度残差向量在所述目标分量的方向上的目标残差分量;
确定子模块,用于基于所述目标分量和所述目标残差分量,确定所述第一梯度向量。
10.根据权利要求9所述的装置,其中,首次迭代时,所述当前梯度残差向量为0;非首次迭代时,所述当前梯度残差向量为第一向量部分与预设的第一修正因子的乘积和第二向量部分之和;所述第一向量部分为上次迭代中的本地梯度向量除掉上次迭代中的目标分量以外的分量部分;所述第二向量部分为上次迭代中的梯度残差向量除掉上次迭代中的目标残差分量以外的分量部分。
11.根据权利要求9所述的装置,其中,所述确定子模块被配置用于:
确定目标旋转矩阵,所述目标旋转矩阵为正交矩阵;
计算所述目标分量和预设的第二修正因子的乘积与所述目标残差分量之和,并利用所述目标旋转矩阵乘以所述计算的结果,得到所述第一梯度向量。
12.根据权利要求11所述的装置,其中,所述确定子模块通过如下方式确定目标旋转矩阵:
生成目标对角矩阵;所述目标对角矩阵的对角元素为0.5;
获取目标沃尔什-阿达玛矩阵;
利用所述目标沃尔什-阿达玛矩阵乘以所述目标对角矩阵,并除以所述预设个数x。
13.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-6中任一项所述的方法。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1-6中任一项所述的方法。
CN202011409580.1A 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备 Active CN112541592B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210636831.2A CN115081640A (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备
CN202011409580.1A CN112541592B (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011409580.1A CN112541592B (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210636831.2A Division CN115081640A (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112541592A CN112541592A (zh) 2021-03-23
CN112541592B true CN112541592B (zh) 2022-05-17

Family

ID=75015993

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202011409580.1A Active CN112541592B (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备
CN202210636831.2A Pending CN115081640A (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202210636831.2A Pending CN115081640A (zh) 2020-12-06 2020-12-06 基于差分隐私的联邦学习方法、装置及电子设备

Country Status (1)

Country Link
CN (2) CN112541592B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113807535B (zh) * 2021-04-01 2023-11-03 京东科技控股股份有限公司 联邦学习模型的训练方法、装置、电子设备和存储介质
CN113139796B (zh) * 2021-05-10 2022-06-21 深圳市洞见智慧科技有限公司 基于纵向联邦学习的推荐方法及装置
CN113221183B (zh) * 2021-06-11 2022-09-16 支付宝(杭州)信息技术有限公司 实现隐私保护的多方协同更新模型的方法、装置及系统
CN116961939A (zh) * 2022-04-14 2023-10-27 苏州科技大学 一种基于联盟链的可信联邦学习方法
CN114781545B (zh) * 2022-05-10 2023-05-05 重庆大学 一种联邦学习方法及系统
CN117933427B (zh) * 2024-03-19 2024-05-28 南京邮电大学 一种智能电网双重采样优化的差分隐私联邦学习方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105324812A (zh) * 2013-06-17 2016-02-10 杜比实验室特许公司 不同信号维度的参数矢量的多级量化
US11475350B2 (en) * 2018-01-22 2022-10-18 Google Llc Training user-level differentially private machine-learned models
US11204806B2 (en) * 2018-06-03 2021-12-21 Apple Inc. Systems and methods for user adaptive resource management
CN111046433B (zh) * 2019-12-13 2021-03-05 支付宝(杭州)信息技术有限公司 一种基于联邦学习的模型训练方法
CN111091199B (zh) * 2019-12-20 2023-05-16 哈尔滨工业大学(深圳) 一种基于差分隐私的联邦学习方法、装置及存储介质
CN111340614B (zh) * 2020-02-28 2021-05-18 深圳前海微众银行股份有限公司 基于联邦学习的样本采样方法、设备及可读存储介质
CN111582508A (zh) * 2020-04-09 2020-08-25 上海淇毓信息科技有限公司 一种基于联邦学习框架的策略制定方法、装置和电子设备
CN111582504A (zh) * 2020-05-14 2020-08-25 深圳前海微众银行股份有限公司 联邦建模方法、装置、设备及计算机可读存储介质
CN111582505A (zh) * 2020-05-14 2020-08-25 深圳前海微众银行股份有限公司 联邦建模方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN115081640A (zh) 2022-09-20
CN112541592A (zh) 2021-03-23

Similar Documents

Publication Publication Date Title
CN112541592B (zh) 基于差分隐私的联邦学习方法、装置及电子设备
CN110659744A (zh) 训练事件预测模型、评估操作事件的方法及装置
US20070124236A1 (en) Credit risk profiling method and system
US20170194930A1 (en) Quantum algorithms for arithmetic and function synthesis
CN110008973B (zh) 一种模型训练方法、基于模型确定目标用户的方法及装置
CN107590690B (zh) 数据处理方法、装置及服务器
CN111506922B (zh) 多方联合对隐私数据进行显著性检验的方法和装置
JP2021163471A (ja) 最適化ソルバマシンを使用する統合されたクラスタリング及び外れ値検出
CN111242283B (zh) 评估交互事件的自编码器的训练方法及装置
CN113379071B (zh) 一种基于联邦学习的噪声标签修正方法
CN111414533A (zh) 推荐信息的生成方法、装置、电子设备、存储介质
CN113592095A (zh) 一种基于量子计算的模型训练方法及装置
CN113689270B (zh) 黑产设备的确定方法、电子设备、存储介质及程序产品
CN112910890B (zh) 基于时间卷积网络的匿名网络流量指纹识别方法及设备
CN110874481B (zh) 一种基于gbdt模型的预测方法和装置
US20220253426A1 (en) Explaining outliers in time series and evaluating anomaly detection methods
CN112926090A (zh) 基于差分隐私的业务分析方法及装置
CN111737921B (zh) 基于循环神经网络的数据处理方法、设备及介质
CN111553685B (zh) 确定交易路由通道的方法、装置、电子设备和存储介质
Li et al. Statistical inference for measurement equation selection in the log-realgarch model
Chen et al. Monte Carlo methods and their applications in Big Data analysis
CN110633971A (zh) 资损估计方法以及装置
CN112686677A (zh) 基于组合特征与注意力机制的客户资质评估方法及装置
CN114251075B (zh) 基于多目标参数的储层开采方案确定方法、装置及设备
Mitchell et al. Boundary evolution equations for American options

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40048343

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant