一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

联邦学习的系统和方法及客户端装置与流程

2021-12-08 02:07:00 来源:中国专利 TAG:

联邦学习的系统和方法及客户端装置
1.本技术要求于2020年6月2日提交的第63/033,747号美国临时申请和于2021年1月13日提交的第17/148,557号美国非临时专利申请的优先权权益,所述美国申请的公开通过引用全部包含于此。
技术领域
2.在此公开的主题涉及联邦机器学习(federated machine learning)。更具体地,在此公开的主题涉及用于联邦机器学习的系统和方法。


背景技术:

3.物联网(iot)的增长、智能电话的激增和记录的数字化已经促成了生成大量数据的现代系统。生成的数据可提供关于个体的大量信息,这一方面可导致高度个性化的智能应用,但是另一方面也可以是敏感的并且应当保持隐私。这样的私有数据的示例包括但不限于脸部的图像、打字历史、医疗记录和调查回复。


技术实现要素:

4.示例实施例提供一种联邦机器学习系统中的客户端装置,所述客户端装置可包括至少一个计算装置、通信接口和处理器。处理器可连接到所述至少一个计算装置和通信接口。处理器可从全局参数组选择针对所述客户端装置的参数组,使用所述客户端装置的数据集和由所述客户端装置选择的参数组来训练模型,数据集可从所述至少一个计算装置的输出形成,在训练模型之后更新权重因子字典和因子强度向量,通过通信接口向全局服务器发送客户端更新的权重因子字典和客户端更新的因子强度向量,通过通信接口从全局服务器接收全局更新的权重因子字典和全局更新的因子强度向量,和使用所述客户端装置的数据集、由所述客户端装置选择的参数组以及全局更新的权重因子字典和全局更新的因子强度向量来重新训练模型。在一个实施例中,所述客户端装置可以是n个客户端装置的组的一部分,其中n是整数。在另一实施例中,处理器可通过使用可包括种子值的三个变分参数来从全局参数组选择参数组,并且使数据集的有监督学习与被选参数组和全局参数组的正则化之间的差最小化。处理器可通过接收已经从全局服务器发送到所述n个客户端装置的第一客户端装置子集的全局参数组,来从全局参数组选择参数组,所述客户端装置是第一客户端装置子集的一部分。所述客户端装置可通过接收由全局服务器发送到所述n个客户端装置的第二子集的全局更新的权重因子字典和全局更新的因子强度向量,来接收全局更新的权重因子字典和全局更新的因子强度向量,所述客户端装置可以是第二客户端装置子集的一部分。在另一实施例中,处理器可通过通信接口向全局服务器发送对当前版本的全局参数组的请求,可使用当前版本的全局参数组来更新模型,并且可评估使用当前版本的全局参数组更新的模型,以基于所述客户端装置的数据集形成推断。
5.示例实施例提供一种可包括全局服务器和n个客户端装置的联邦机器学习系统。全局服务器可从n个客户端装置接收权重因子字典和因子强度向量的更新,并且可生成全
局更新的权重因子字典和全局更新的因子强度向量,其中n是整数。至少一个客户端装置可包括至少一个计算装置、通信接口和处理器。处理器可连接到所述至少一个计算装置和通信接口。处理器可从全局参数组选择参数组,使用所述客户端装置的数据集和由所述客户端装置选择的参数组来训练模型,在训练模型之后更新权重因子字典和因子强度向量,通过通信接口发送客户端更新的权重因子字典和客户端更新的因子强度向量,通过通信接口从全局服务器接收全局更新的权重因子字典和全局更新的因子强度向量,和使用所述客户端装置的数据集、由所述客户端装置选择的参数组以及全局更新的权重因子字典和全局更新的因子强度向量来重新训练模型。在一个实施例中,处理器可通过使用可包括种子值的三个变分参数来从全局参数组选择参数组,并且使数据集的有监督学习与被选参数组和全局参数组的正则化之间的差最小化。在另一实施例中,处理器可通过接收已经从全局服务器发送到所述n个客户端装置的第一客户端装置子集的全局参数组,来从全局参数组选择参数组,所述客户端装置可以是第一客户端装置子集的一部分。在另一实施例中,客户端装置可通过接收由全局服务器发送到所述n个客户端装置的第二子集的全局更新的权重因子字典和全局更新的因子强度向量,来接收全局更新的权重因子字典和全局更新的因子强度向量,所述客户端装置可以是第二客户端装置子集的一部分。在一个实施例中,处理器可通过通信接口向全局服务器发送对当前版本的全局参数组的请求,可使用当前版本的全局参数组来更新模型,并且可评估使用当前版本的全局参数组更新的模型,以基于所述客户端装置的数据集形成推断。
6.示例实施例提供一种联邦机器学习的方法,所述方法可包括:在客户端装置从全局参数组选择参数组,全局参数组包括权重因子字典和因子强度向量;在所述客户端装置使用所述客户端装置的数据集和由所述客户端装置选择的参数组来训练模型;在训练模型之后更新权重因子字典和因子强度向量;将客户端更新的权重因子字典和客户端更新的因子强度向量从所述客户端装置发送到全局服务器;在所述客户端装置从全局服务器接收全局更新的权重因子字典和全局更新的因子强度向量;和在所述客户端装置使用所述客户端装置的数据集、由所述客户端装置选择的参数组以及全局更新的权重因子字典和全局更新的因子强度向量,来重新训练模型。在一个实施例中,所述客户端装置可以是n个客户端装置的组的一部分,其中n是整数。在另一实施例中,从全局参数组选择参数组的步骤可包括:使用包括种子值的三个变分参数来选择参数组;和使数据集的有监督学习与被选参数组和全局参数组的正则化之间的差最小化。在另一实施例中,从全局参数组选择参数组的步骤可包括:在客户端装置接收已经从全局服务器发送到所述n个客户端装置的第一客户端装置子集的全局参数组,所述客户端装置可以是第一客户端装置子集的一部分。在另一实施例中,在所述客户端装置从全局服务器接收全局更新的权重因子字典和全局更新的因子强度向量的步骤可包括:在所述客户端装置接收由全局服务器发送到所述n个客户端装置的第二子集的全局更新的权重因子字典和全局更新的因子强度向量,所述客户端装置可以是第二客户端装置子集的一部分。在一个实施例中,所述方法还可包括:由所述客户端装置从全局服务器请求当前版本的全局参数组;接收当前版本的全局参数组;使用当前版本的全局参数组来更新模型;和评估使用当前版本的全局参数组更新的模型,以基于所述客户端装置的数据集形成推断。
附图说明
7.在下面的部分中,将参照附图中示出的示例性实施例来描述在此公开的主题的方面,其中:
8.图1描绘了根据在此公开的主题的联邦学习系统的示例实施例的功能性框图;
9.图2a和图2b分别描绘了根据在此公开的主题的全局服务器和客户端的示例实施例的功能性框图;
10.图3是根据在此公开的主题的用于客户端装置处的联邦机器学习的方法的示例实施例的流程图;和
11.图4描绘了根据在此公开的主题的包括用于联邦机器学习的功能的电子装置。
具体实施方式
12.在下面的具体实施方式中,阐述了许多具体细节以便提供对公开的透彻理解。然而,本领域技术人员将理解,可在没有这些具体细节的情况下实践公开的方面。在其他实例下,公知的方法、过程、组件和电路未被详细描述,以免模糊在此公开的主题。
13.贯穿本说明书的对“一个实施例”的引用表示:结合该实施例描述的特定的特征、结构或特性可包括在在此公开的至少一个实施例中。因此,贯穿本说明书的不同地方的短语“在一个实施例中”或“在实施例中”或“根据一个实施例”(或具有类似含义的其他短语)的出现可不必都指示同一实施例。此外,在一个或多个实施例中,可以以任何合适的方式组合特定的特征、结构或特性。在这方面,如在此使用的,词“示例性”表示“用作示例、实例或说明”。在此描述为“示例性”的任何实施例不应被解释为一定比其他实施例优选或有利。此外,在一个或多个实施例中,可以以任何合适的方式组合特定的特征、结构或特性。此外,根据在此讨论的上下文,单数术语可包括对应的复数形式,并且复数术语可包括对应的单数形式。类似地,带有连字符的术语(例如,“二

维”、“预先

确定”、“特定

像素”等)可与对应的带有非连字符的版本(例如,“二维”、“预先确定”、“特定像素”等)偶尔可互换地使用,大写的词条(例如,“counter clock”、“row select”、“pixout”等)可与对应的非大写的版本(例如,“counter clock”、“row select”、“pixout”等)可互换地使用。这样的偶尔可互换的使用不应被认为彼此不一致。
14.此外,根据在此讨论的上下文,单数术语可包括对应的复数形式,并且复数术语可包括对应的单数形式。还应注意,在此示出和讨论的各种附图(包括组件图)仅为了说明的目的,并且未按比例绘制。类似地,各种波形和时序图仅为了说明的目的而被示出。例如,为了清楚,一些元件的尺寸可能相对于其他元件被夸大。此外,如果认为合适,则参考标号在附图中被重复以指示对应和/或类似的元件。
15.在此使用的术语仅为了描述一些示例实施例的目的,而不意在限制要求保护的主题。如在此使用的,除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。还将理解,术语“包括”在本说明书中使用时,说明存在陈述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组。如在此使用的,除非明确地如此定义,否则术语“第一”、“第二”等被用作它们之后的名词的标签,并且不表示任何类型的顺序(例如,空间、时间、逻辑等)。此外,可在两个或更多个附图之间使用相同的参考标号来表示具有相同或相似功能的部件、组件、块、电路、单元
或模块。然而,这样的用法仅为了简化说明和易于讨论,并不表示这样的组件或单元的构造或架构细节在所有实施例之间都相同,或者这样的共同引用的部件/模块是实现在此公开的示例实施例中的一些的唯一方式。
16.将理解,当元件或层被称为“在”另一元件或层“上”、“连接到”或“结合到”另一元件或层时,它可直接在另一元件或层上、直接连接到或直接结合到另一元件或层,或者可存在中间元件或层。相反,当元件被称为“直接在”另一元件或层“上”、“直接连接到”或“直接结合到”另一元件或层时,不存在中间元件或层。相同的标号始终表示相同的元件。如在此使用的,术语“和/或”包括相关所列项中的一个或多个的任何组合和所有组合。
17.如在此使用的,除非明确地如此定义,否则术语“第一”、“第二”等被用作它们之后的名词的标签,并且不表示任何类型的顺序(例如,空间、时间、逻辑等)。此外,可在两个或更多个附图之间使用相同的参考标号来表示具有相同或相似功能的部件、组件、块、电路、单元或模块。然而,这样的用法仅为了简化说明和易于讨论,并不表示这样的组件或单元的构造或架构细节在所有实施例之间都相同,或者这样的共同引用的部件/模块是实现在此公开的示例实施例中的一些的唯一方式。
18.除非另外定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与本主题所属领域的普通技术人员通常理解的含义相同的含义。还将理解,除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的术语)应当被解释为具有与它们在相关领域的上下文中的含义一致的含义,并且将不以理想化或过于形式化的含义进行解释。
19.如在此使用的,术语“模块”表示被配置为提供在此结合模块描述的功能的软件、固件和/或硬件的任何组合。例如,软件可实现为软件包、代码和/或指令集或指令,并且在此描述的任何实施方式中使用的术语“硬件”可包括例如单独地或以任何组合的组装件、硬连线电路、可编程电路、状态机电路和/或存储由可编程电路执行的指令的固件。模块可共同地或单独地实现为形成较大系统的一部分的电路(例如但不限于集成电路(ic)、片上系统(soc)、组装件等)。
20.联邦学习(federated learning,又名联合学习,联盟学习)已经被提出,作为提供可通过将用户数据本地保持在每个客户端装置上并且仅与全局服务器共享模型更新来保持个性化数据隐私的机器学习。因此,联邦学习表示用于以隐私保护方式在异构分布式网络上训练机器学习模型的可行的策略。
21.虽然联邦机器学习范例可提供用于保持私有数据隐私的方式,但是对于联邦机器学习系统仍存在许多挑战。例如,当前使用的联邦机器学习系统包括由每个客户端使用的单个全局模型。然而,因为可存在横跨不同客户端的偏斜(skewed)数据分布,所以单模型方法可能无法很好地用于特定子群。
22.为了说明这一点,考虑n个客户端装置,并且第i客户端装置包括与其他客户端装置不同的作为i的函数的数据分布在传统的联邦机器学习设置中,可学习的单个全局模型可部署在所有n个客户端装置上。传统的方法假设多层感知器(mlp)架构具有横跨所有客户端装置共享的层l=1,...,l和权重集θ={w
l
}
l=1:l
。为了满足全局目标,权重集θ可学习以使关于所有客户端的均值的损失最小化。例如,一个传统的联邦机器学习系统使下面的目标f(θ)最小化:
[0023][0024]
其中,i是客户端装置的索引,n是客户端的数量,f
i
(θ)是本地目标函数,并且p
i
≥0是每个装置i的权重。
[0025]
然而,考虑到统计异质性,一刀切类型的方法可导致全局模型在特定客户端上表现不佳。通常,性能可转换为特定客户端的本地分布与整个群体的分布有多接近。结果,该示例传统联邦机器学习系统的模型可被视为对于具有在客户端之中不太常见的数据特性的客户端不太适当。
[0026]
在此公开的主题可通过使用贝叶斯非参数权重因子分解(bayesian nonparametric weight factorization)来改善联邦学习的模型一致性,贝叶斯非参数权重因子分解可提供可横跨许多客户端实现更高的本地模型性能的个性化联邦学习解决方案。
[0027]
与传统联邦学习系统相比,在此公开的联邦机器学习系统包括至少三个改进的特征。第一改进的特征在于,在其上发生联邦学习的网络被划分成两部分。第一部分提供服务器聚合,第二部分用于客户端个性化。第二改进的特征涉及在全局服务器与客户端装置之间通信的减少的数据量。也就是说,因为核因子分解(kernel factorization)在客户端装置中被使用,并且仅用于训练的参数的子集被传送,所以全局服务器与客户端装置之间的数据通信更高效。第三改进的特征涉及由核因子分解提供的额外的安全层,并且仅用于训练的参数的子集被传送。
[0028]
在此公开的联邦机器学习系统提供一种联邦学习系统,该联邦学习系统高效地使用全局模型中的数据来以因子分解的方式训练n个本地模型中的神经网络。每个客户端模型可基于客户端的本地分布而被个性化,并且所有客户端模型共享共同学习的组件。
[0029]
图1描绘了根据在此公开的主题的联邦学习系统100的示例实施例的功能性框图。联邦学习系统100可包括全局服务器101和n个客户端(即,本地装置)1021至102
n
。全局服务器101可在云中位于单个位置处或分布式位置处。如在此使用的术语“全局服务器”表示被配置为经由广域网(例如,互联网)与两个或更多个客户端装置(有线和/或无线地)通信的任何服务器装置,并且可以是被配置为与联邦机器学习系统中的两个或更多个客户端装置直接通信的任何服务器装置。客户端1021至102
n
通过通信链路103通信地连接到全局服务器101。通信链路103可以是有线通信链路和/或无线通信链路。
[0030]
图2a和图2b分别描绘了根据在此公开的主题的全局服务器101和客户端102的示例实施例的功能性框图。全局服务器101可包括通信地连接到存储器202和通信接口203的处理装置201(诸如,中央处理器(cpu))。存储器202可包括非易失性存储器和/或易失性存储器。通信接口203可被配置为与网络结构(network fabric)(诸如但不限于互联网)通信。通信接口203可以是有线和/或无线通信接口。全局服务器101的其他配置是可行的。全局服务器101可被配置为提供如在此所描述的联邦机器学习功能。在一个实施例中,由全局服务器101提供的联邦机器学习功能可由一个或多个模块提供,所述一个或多个模块可被配置为提供在此所描述的功能的软件、固件和/或硬件的任何组合。
[0031]
客户端102可包括通信地连接到存储器252、通信接口253和一个或多个计算装置254的处理装置251(诸如,cpu)。一个或多个计算装置254可包括感测或收集涉及但不限于以下信息的能力:运动、一个或多个图像、人类和/或非人类动物和/或植物的生物特征和/
或医疗状况、声音、语音、位置、元数据、应用使用(即,浏览历史)和/或调查回复。在一个实施例中,至少一个计算装置254的输出可形成数据集或数据分布在一个实施例中,至少一个计算装置254是感测装置。客户端装置102的其他配置是可行的。客户端102可被配置为提供如在此所述的联邦机器学习功能。在一个实施例中,由客户端102提供的联邦机器学习功能可以由一个或多个模块提供,所述一个或多个模块可以是被配置为提供在此描述的功能的软件、固件和/或硬件的任何组合。
[0032]
客户端102
i
可具有拥有可使用数据分布进行训练的l个层的权重矩阵的本地模型。每个权重集θ
i
可最大程度地特定于每个客户端i的数据分布然而,每个客户端通常具有有限的数据,这可能不足以在没有过拟合的情况下训练全模型。因此,必须横跨所有客户端学习的参数的总数与客户端的数量成比例。然而,学习n个单独的模型可能无法利用客户端数据分布或共享学习任务之间的相似性。为了更高效地使用数据,联邦机器学习系统100提供单个全局模型与n个本地模型之间的平衡。也就是说,每个客户端模型可被个性化到本地数据分布,所有模型共享共同学习的组件。为此,针对客户端i的权重矩阵被因子分解为:
[0033][0034][0035]
其中,和是可横跨客户端共享的秩为1的权重因子的字典,是每个客户端i的对角线个性化矩阵,diag()可用于构造对角矩阵。
[0036]
因子分解可被等效地表示为:
[0037][0038]
其中,是的第k列,是的第k行,f是因子(例如,权重因子)的数量,并且表示外积。写成这种方式,作为权重因子的列和行相应对的解释变得更清楚。字典和一起形成全局权重因子字典,并且可被视为客户端i的因子得分。客户端之间的的差异允许将模型定制为每个客户端的数据分布,同时共享底层因子和使得能够从所有客户端的数据学习。
[0039]
每个客户端因子得分可形成为逐元素乘积:
[0040][0041]
其中,指示每个因子的强度,是指示活性因子(active factor)的二值向量,其中,f表示弗罗贝尼乌斯(frobenius)空间,

表示内积。如下所述,通常是稀疏的,因此通常每个客户端仅使用可用权重因子的小子集。如在此所使用的,不
存在上标(例如,λ
i
)表示横跨因子分解被执行的所有层l的整个集合。点估计可针对w
a
、w
b
和因子强度r
i
进行学习。
[0042]
在具有统计异质性的联邦机器学习的上下文中,存在客户因子得分应该共同具有的多个期望的特性。如前所述,通常是稀疏的,结果λ
i
也是稀疏的,这促进相关知识的整合同时使干扰最小化。也就是说,客户端a应当能够在训练期间更新全局因子,而不破坏客户端b执行客户端b的任务的能力。另一方面,因子应当在客户端之中重复使用。虽然数据可横跨客户端被不独立地且不同地分布,但是通常存在数据的一些相似性或重叠。共享因子横跨所有客户端数据进行分布式学习,这避免了n个独立模型场景。此外,在针对联邦机器学习考虑的分布式设置中,节点的总数很少被预定义。因此,系统应当能够被完全地扩展以容纳新的客户端,而不用重新初始化整个模型。该特征包括增大服务器端容量(如果必要)和初始化新的客户端。
[0043]
为了促进对角线个性化矩阵上的稀疏性,对角线向量可使用类似于印度自助餐过程(ibp)的处理被正则化。可通过变分推断(variational inference)迫使对角线向量的后验分布尽可能接近先验对角线向量。使用贝叶斯非参数方法可允许数据指定客户端因子分配、因子重新使用和服务器侧模型扩展。截棍(stick

breaking)构造可与ibp一起用作因子选择的先验分布,如下所示:
[0044][0045][0046][0047]
其中,α可以是控制活性因子的预期数量和并入的新因子的速率的超参数,k对因子进行索引。此外,和可分别服从贝塔分布(beta)和伯努利分布(bernoulli)。
[0048]
可针对随机变量b
i
和v
i
学习后验分布。后验的精确推断可以是难处理的,因此具有平均场近似(mean

field approximation)的变分推断可被使用,以使用以下变分分布确定每个客户端装置的活性因子,所述变分分布通过反向传播使用贝叶斯学习每个查询的客户端的变分参数(即,种子值){π
i
,c
i
,d
i
}:
[0049][0050][0051][0052]
为了具有可微参数,kumaraswamy分布可用作贝塔分布的替代以及伯努利分布的软松弛。每个客户端的目标是最大化变分下限:
[0053][0054]
其中,是客户端i处的训练示例的数量。第一项提供标签监督,并且第二项使后验分布正则化以不偏离ibp先验分布。
[0055]
可使用平均场近似来允许第二项扩展为:
[0056][0057]
在训练开始之前,全局权重因子{w
a
,w
b
}和因子强度r可由服务器101初始化。一旦被初始化,每个训练回合开始于{w
a
,w
b
,r}被发送到所有客户端102的被选子集。然后,每个被选(采样)客户端使用它们自己的e时期的私有数据分布来训练模型,不仅更新权重因子字典{w
a
,w
b
}和因子强度r,而且还更新客户端的控制客户端使用哪些因子的变分参数{π
i
,c
i
,d
i
}。数据分布可包括与生物特征数据、医疗数据、图像数据、语音数据、位置数据、应用使用数据、热数据、大气数据、调查数据和/或音频数据有关的信息。
[0058]
一旦本地训练完成,每个客户端将{w
a
,w
b
,r}发送回服务器,但不将与数据分布一起保留在客户端内的变分参数{π
i
,c
i
,d
i
}发送回服务器。在服务器101已经从所有采样的客户端接收到更新之后,服务器101可使用平均步骤来聚合{w
a
,w
b
,r}的各种新的值,在一个实施例中,平均步骤可以是简单的求平均步骤。然后重复该处理,服务器选择客户端的新的子集进行采样,将新的更新的全局参数集发送到新的子集,以此类推,直到已经发生期望数量的通信回合为止。该处理由算法1的伪代码总结。
[0059]
算法1
[0060][0061]
当客户端102进入评估模式时,客户端可从服务器请求当前版本的全局参数{w
a
,w
b
,r}。如果客户端先前已经被查询用于联邦训练,则本地模型包括聚合的全局参数和由客户端的本地变分参数{π
i
,c
i
,d
i
}生成的二值向量。否则,客户端仅使用聚合的{w
a
,w
b
,r}。注意,如果客户端先前已经被采样,则如果网络连接不可用或太昂贵,则客户端的全局参数的最近缓存的副本可以是一种选择。通常,客户端能够请求最新的参数。在一个实施例中,客户端102(例如,处理装置251)可接收当前版本的全局参数组,使用当前版本的全局参数组来更新模型,并且评估使用当前版本的全局参数组更新的模型以基于客户端的数据集形成推断。
[0062]
数据安全性是联邦机器学习的中心方面之一。如果所有数据首先聚合在中央服务器,则更简单、更标准的训练模型的方法可被利用。敏感客户端数据在传输期间被拦截或服务器101的数据储存库被攻击者破坏的真实可能性都是主要的关注点,并且促进数据被保持在本地装置102上以用于联邦机器学习。另一方面,仅将数据保持在客户端侧对于安全目的来说可能并不足够。正如数据可能在传输中或在非联邦设置中的中央数据库被盗用,联邦训练更新同样地易受攻击。例如,在一个示例联邦机器学习方法中,更新包括模型的整个参数。这可实际上意味着立即产生数据可能是针对放弃对模型的白盒访问的权衡,这可使
模型对广泛的恶意活动开放(包括暴露联邦机器学习意在保护的真正数据)。
[0063]
对于在此公开的联邦机器学习系统,客户端向服务器101发送整个权重因子字典{w
a
,w
b
}和因子强度r,但不传输{π
i
,c
i
,d
i
}。因此,与客户端使用的哪些特定因子有关的信息被保持在本地。也就是说,客户端数据和因子选择都不离开本地装置。因此,即使消息被拦截,对方也不能完全重建模型,从而妨碍对方执行攻击以恢复数据的能力。
[0064]
图3是根据在此公开的主题的用于客户端装置的联邦机器学习的方法300的示例实施例的流程图。方法在301开始。全局参数(即,全局权重因子字典和因子强度)可由全局服务器101初始化,并在训练开始之前发送到所有客户端102的被选子集。在302,客户端装置从全局参数组选择客户端装置的参数组。在一个实施例中,客户端使用变分参数来形成客户端的参数的选择。在303,客户端装置使用客户端装置的数据集和由客户端装置选择的参数组来训练模型。在304,在训练之后,客户端装置(例如,通过通信接口253)向全局服务器101发送客户端更新的权重因子字典和客户端更新的因子强度向量,但不发送客户端装置的数据集或由客户端用于形成客户端的参数选择的变分参数。全局服务器101可使用平均步骤来聚合客户端更新的字典分量和因子强度向量。全局服务器101可选择新的客户端子集进行采样,并将新的更新的全局参数集发送给新的客户端子集。对于方法300的示例实施例,该客户端被选择作为新的客户端子集的一部分。在305,客户端装置(例如,通过通信接口253)从全局服务器101接收全局更新的权重因子字典和全局更新的因子强度向量。在306,客户端装置使用客户端的数据集、由客户端装置选择的参数组、全局更新的权重因子字典和全局更新的因子强度向量来重新训练。方法可继续,直到已经发生期望数量的训练时期为止。方法在307结束。
[0065]
图4描绘了根据在此公开的主题的包括用于联邦机器学习的功能的电子装置400。在一个实施例中,电子装置400可以是操作以提供如在此所公开的联邦机器学习的全局服务器。在另一实施例中,电子装置400可以是操作以提供如在此所公开的联邦机器学习的客户端装置。电子装置400(无论是全局服务器还是客户端装置)也可被实现为但不限于计算装置、个人数字助理(pda)、膝上型计算机、移动计算机、网络平板、无线电话、蜂窝电话、智能电话、数字音乐播放器、或者有线或无线电子装置。电子装置400可包括通过总线470彼此连接的控制器410、输入/输出装置420(诸如但不限于小键盘、键盘、显示器、触摸屏显示器、相机和/或图像传感器)、存储器430、接口440、图形处理器(gpu)450和成像处理器460。控制器410可包括例如至少一个微处理器、至少一个数字信号处理器、至少一个微控制器等。存储器430可被配置为存储将被控制器410使用的命令代码或用户数据。
[0066]
接口440可被配置为包括被配置为使用射频(rf)信号向无线通信网络发送数据或从无线通信网络接收数据的无线接口。无线接口440可包括例如天线。电子装置400还可用在通信系统的通信接口协议(诸如但不限于码分多址(cdma)、全球移动通信系统(gsm)、北美数字通信(nadc)、扩展时分多址(e

tdma)、宽带cdma(wcdma)、cdma2000、wi

fi、市政wi

fi(muni wi

fi)、蓝牙、数字增强无线电信(dect)、无线通用串行总线(无线usb)、具有无缝切换的快速低延迟接入正交频分复用(快速ofdm)、ieee 802.20、通用分组无线服务(gprs)、iburst、无线宽带(wibro)、wimax、wimax高级、通用移动通信服务

时分双工(umts

tdd)、高速分组接入(hspa)、演进数据优化(evdo)、长期演进高级(lte

advanced)、多信道多点分发服务(mmds)、第五代无线(5g)等)中。
[0067]
本说明书中描述的主题和操作的实施例可以以数字电子电路、或者以计算机软件、固件或硬件(包括本说明书中公开的结构和它们在结构上的等同物)、或者以它们中的一个或多个的组合来实现。本说明书中描述的主题的实施例可被实现为编码在计算机存储介质上以通过数据处理设备执行或控制数据处理设备的操作的一个或多个计算机程序(即,计算机程序指令中的一个或多个模块)。可选地或此外,程序指令可被编码在人工生成的传播信号(例如,机器生成的电信号、光信号或电磁信号)上,该传播信号被生成以将用于传输的信息编码到合适的接收器设备来由数据处理设备执行。计算机存储介质可以是或被包括在计算机可读存储装置、计算机可读存储基底、随机或串行存取存储器阵列或装置、或它们的组合中。此外,当计算机存储介质不是传播信号时,计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是或被包括在一个或多个单独的物理组件或介质(例如,多个cd、磁盘或其他存储装置)中。此外,本说明书中描述的操作可被实现为数据处理设备对存储在一个或多个计算机可读存储装置上或从其他源接收的数据执行的操作。
[0068]
虽然本说明书可包含许多具体的实施细节,但是实施细节不应被解释为对任何要求保护的主题的范围的限制,而是应当被解释为对特定实施例具体的特征的描述。本说明书中的在单独实施例的上下文中描述的特定特征也可以在单个实施例中以组合来实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地实现或以任何合适的子组合来实现。此外,尽管以上可将特征描述为以特定组合起作用,甚至最初这样被要求保护,但是在一些情况下,来自要求保护的组合的一个或多个特征可从该组合被删除,并且要求保护的组合可涉及子组合或子组合的变化。
[0069]
类似地,虽然在附图中以特定顺序描述操作,但这不应被理解为需要以示出的特定次序或按顺序次序执行这样的操作或者执行所有示出的操作以获得期望的结果。在特定情况下,多任务处理和并行处理可能是有利的。此外,在上述实施例中的各种系统组件的分离不应当被理解为在所有实施例中需要这样的分离,应理解:描述的程序组件和系统通常可被一起集成在单个软件产品中,或者封装在多个软件产品中。
[0070]
因此,在此已经描述了主题的具体实施例。其他实施例在所附权利要求的范围内。在一些情况下,权利要求中所阐述的动作可以以不同的次序被执行,并且仍然实现期望的结果。此外,附图中描述的处理不一定需要示出的特定次序或顺序次序来获得期望的结果。在特定实施方式中,多任务处理和并行处理可能是有利的。
[0071]
如本领域技术人员将意识到的,在此描述的创新构思可在广泛的应用中被修改和改变。因此,要求保护的主题的范围不应限于以上讨论的任何具体示例性教导,而是由所附权利要求来限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献