CN111027715A - 基于蒙特卡洛的联邦学习模型训练方法及装置 - Google Patents

基于蒙特卡洛的联邦学习模型训练方法及装置 Download PDF

Info

Publication number
CN111027715A
CN111027715A CN201911270183.8A CN201911270183A CN111027715A CN 111027715 A CN111027715 A CN 111027715A CN 201911270183 A CN201911270183 A CN 201911270183A CN 111027715 A CN111027715 A CN 111027715A
Authority
CN
China
Prior art keywords
learning model
machine learning
current
model
loss function
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.)
Granted
Application number
CN201911270183.8A
Other languages
English (en)
Other versions
CN111027715B (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 CN201911270183.8A priority Critical patent/CN111027715B/zh
Publication of CN111027715A publication Critical patent/CN111027715A/zh
Application granted granted Critical
Publication of CN111027715B publication Critical patent/CN111027715B/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书实施例提供基于蒙特卡洛的联邦学习模型训练方法及装置。在该模型训练方法中,在每次模型训练时,模型更新量由服务端设备随机产生。服务端设备根据随机产生的模型更新量来进行模型更新,并将更新后的模型下发给客户端设备。服务端设备基于各个客户端设备反馈的损失函数来进行聚合,并根据聚合结果来确定是否接受该次模型调整。按照这种模型训练方式,客户端设备无法决定模型更新方向,减少了攻击面,从而加大了客户端设备投毒攻击难度,进而增强了模型安全保护。此外,客户端设备仅仅需要向服务端设备上传损失函数,而无需上传详细梯度信息,由此服务端设备无法进行成员推断攻击,由此对客户端设备的隐私数据实现更好的隐私保护。

Description

基于蒙特卡洛的联邦学习模型训练方法及装置
技术领域
本说明书的实施例通常涉及计算机领域,更具体地,涉及基于蒙特卡洛的联邦学习模型训练方法及装置。
背景技术
在联邦学习模型训练和预测中,机器学习模型设置在模型服务提供方,以及用于模型训练和模型预测的数据位于各个数据拥有方。在模型服务提供方提供服务时,需要使用各个数据拥有方的数据来进行模型训练和模型预测。这里,数据提供方可以是公司或企业,也可以是个体用户。数据拥有方所提供的数据可以是统一收集的客户数据,比如,用户数据和业务数据等。用户数据例如可以包括用户身份数据等。业务数据例如可以包括在公司提供的业务应用上发生的业务数据,比如淘宝上的商品交易数据等。数据拥有方所提供的数据也可以是个体用户数据。对于数据拥有方而言,数据是非常重要和隐私的资产,需要进行数据隐私保护。
此外,机器学习模型是模型服务提供方最重要的资产,从而模型服务提供方也需要保护机器学习模型的模型安全。
面对这种情况,提出了能够保护数据提供方的数据隐私和模型服务提供方的模型安全的模型训练方法。
发明内容
鉴于上述问题,本说明书的实施例提供了一种基于蒙特卡洛的联邦学习模型训练方法及装置,其能够在保证数据拥有方的隐私数据安全和模型服务提供方的模型安全的情况下使用多个数据拥有方的隐私数据来进行模型训练。
根据本说明书的实施例的一个方面,提供一种基于蒙特卡洛的联邦学习模型训练方法,所述方法应用于服务端设备,所述方法包括:执行下述循环过程,直到满足循环结束条件:随机生成当前机器学习模型的模型更新量;使用所生成的模型更新量来更新所述当前机器学习模型;将经过更新的当前机器学习模型发送给至少一个客户端设备,其中,在至少一个客户端设备中的各个客户端设备处,使用本地私有数据来根据经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备;对从至少一个客户端设备接收的当前损失函数进行聚合处理;基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新,其中,在未满足循环结束条件时,如果确定接受针对当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对当前机器学习模型的当前更新,则将当前机器学习模型作为下一循环过程的当前机器学习模型。
可选地,在上述方面的一个示例中,所述至少一个客户端设备可以是联邦学习模型训练系统中的全部客户端设备,或者所述至少一个客户端设备可以是从联邦学习模型训练系统的客户端设备中选取的具备期望模型训练适合度的客户端设备。
可选地,在上述方面的一个示例中,所述当前机器学习模型的模型更新量可以是采用自适应蒙特卡洛算法随机生成的。
可选地,在上述方面的一个示例中,所述自适应蒙特卡洛算法可以包括自适应metropolis算法、CAM-ES算法或者kernel HMC算法。
可选地,在上述方面的一个示例中,基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新可以包括:基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,使用Metropolis-Hastings算法来确定是否接受针对当前机器学习模型的当前更新。
可选地,在上述方面的一个示例中,所述循环结束条件可以包括:聚合处理后的当前损失函数不大于预定阈值,以及所述方法还可以包括:在满足所述循环结束条件时,将经过更新的当前机器学习模型确定为训练好的机器学习模型。
可选地,在上述方面的一个示例中,所述循环结束条件可以包括:机器学习模型达到平衡,以及所述方法还可以包括:在满足所述循环结束条件时,基于达到平衡的机器学习模型来确定训练好的机器学习模型。
可选地,在上述方面的一个示例中,基于达到平衡的机器学习模型来确定训练好的机器学习模型可以包括:从达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型;从达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型;或者对达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
可选地,在上述方面的一个示例中,所述的机器学习模型训练方法还可以包括:将训练好的机器学习模型发送给联邦学习模型训练系统中的全部客户端设备。
可选地,在上述方面的一个示例中,所述本地私有数据可以包括图像数据、语音数据或者文本数据,或者所述本地私有数据可以包括用户特征数据。
根据本说明书的实施例的另一方面,提供一种基于蒙特卡洛的联邦学习模型训练方法,所述方法应用于客户端设备,所述方法包括:执行下述循环过程,直到满足循环结束条件:从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到;使用本地私有数据来根据经过更新的当前机器学习模型进行模型计算以得到当前损失函数并发送给服务端设备,其中,在服务端设备处,对从当前模型训练过程中参与模型训练的客户端设备接收的当前损失函数进行聚合处理,并且基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新,其中,在未满足所述循环结束条件时,如果确定接受针对当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对当前机器学习模型的当前更新,则将当前机器学习模型作为下一循环过程的当前机器学习模型。
根据本说明书的实施例的另一方面,提供一种基于蒙特卡洛的联邦学习模型训练装置,所述方法应用于服务端设备,所述联邦学习模型训练装置包括:模型更新量生成单元,随机生成当前机器学习模型的模型更新量;模型更新单元,使用所生成的模型更新量来更新所述当前机器学习模型;模型发送单元,将经过更新的当前机器学习模型发送给至少一个客户端设备,其中,在所述至少一个客户端设备中的各个客户端设备处,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备;损失函数接收单元,从所述至少一个客户端设备接收各自的当前损失函数;聚合单元,对从所述至少一个客户端设备接收的当前损失函数进行聚合处理;更新接受单元,基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新;当前模型确定单元,在未满足所述循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型,所述模型更新量生成单元、所述模型更新单元、所述模型发送单元、所述损失函数接收单元、所述聚合单元、所述更新接受单元和所述当前模型确定单元循环操作,直到满足循环结束条件。
可选地,在上述方面的一个示例中,所述联邦学习模型训练装置还可以包括:客户端选择单元,从联邦学习模型训练系统的客户端设备中选取具备期望模型训练适合度的客户端设备,作为所述至少一个客户端设备。
可选地,在上述方面的一个示例中,所述循环结束条件可以包括:聚合处理后的当前损失函数不大于预定阈值,以及所述机器学习模型训练装置还可以包括:训练模型确定单元,在满足所述循环结束条件时,将所述经过更新的当前机器学习模型确定为训练好的机器学习模型。
可选地,在上述方面的一个示例中,所述循环结束条件可以包括:机器学习模型达到平衡,以及所述机器学习模型训练装置还可以包括:训练模型确定单元,在满足所述循环结束条件时,基于达到平衡的机器学习模型来确定训练好的机器学习模型。
可选地,在上述方面的一个示例中,所述训练模型确定单元:从所述达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型;从所述达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型;或者对所述达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
可选地,在上述方面的一个示例中,在满足所述循环结束条件时,所述模型发送单元将训练好的机器学习模型发送给联邦学习模型训练系统中的全部客户端设备。
根据本说明书的实施例的另一方面,提供一种基于蒙特卡洛的联邦学习模型训练装置,所述装置应用于客户端设备,所述联邦学习模型训练装置包括:模型接收单元,从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在所述服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到;模型计算单元,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到当前损失函数;损失函数发送单元,将所得到的当前损失函数发送给所述服务端设备,其中,在所述服务端设备处,对从当前模型训练过程中参与模型训练的客户端设备接收的当前损失函数进行聚合处理,并且基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新,在未满足循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型,其中,所述模型接收单元,所述模型计算单元和所述损失函数发送单元循环操作,直到满足所述循环结束条件。
根据本说明书的实施例的另一方面,提供一种基于蒙特卡洛的联邦学习模型训练系统,包括:服务端设备,包括如上所述的联邦学习模型训练装置;以及至少一个客户端设备,每个客户端设备包括如上所述的联邦学习模型训练装置。
根据本说明书的实施例的另一方面,提供一种电子设备,包括:一个或多个处理器,以及与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的应用于服务端设备的联邦学习模型训练方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的应用于服务端设备的联邦学习模型训练方法。
根据本说明书的实施例的另一方面,提供一种电子设备,包括:一个或多个处理器,以及与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的应用于客户端设备的联邦学习模型训练方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的应用于客户端设备的联邦学习模型训练方法。
附图说明
通过参照下面的附图,可以实现对于本说明书的实施例内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了联邦学习模型训练方法的一个示例的流程图;
图2示出了根据本说明书的实施例的基于蒙特卡洛的联邦学习模型训练系统的方框图;
图3示出了根据本说明书的实施例的基于蒙特卡洛的联邦学习模型训练方法的流程图;
图4示出了根据本说明书的实施例的位于服务端设备处的联邦学习模型训练装置的方框图;
图5示出了根据本说明书的实施例的位于客户端设备处的联邦学习模型训练装置的方框图;
图6示出了根据本说明书的实施例的用于实现服务端设备处的联邦学习模型训练过程的电子设备的方框图;和
图7示出了根据本说明书的实施例的用于实现客户端设备处的联邦学习模型训练过程的电子设备的方框图。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书的实施例内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
在联邦学习模型训练时,机器学习模型设置在模型服务提供方(即,服务端设备),以及用于模型训练和模型预测的数据位于各个数据拥有方(即,客户端设备)。在模型服务提供方提供服务时,需要使用各个数据拥有方的数据来进行模型训练和模型预测。这里,数据提供方可以是公司或企业,也可以是个体用户。数据拥有方所提供的数据可以是统一收集的客户数据,比如,用户数据和业务数据等。用户数据例如可以包括用户身份数据等。业务数据例如可以包括在公司提供的业务应用上发生的业务数据,比如淘宝上的商品交易数据等。数据拥有方所提供的数据也可以是个体用户数据。对于数据拥有方而言,数据是非常重要和隐私的资产,需要进行数据隐私保护。
此外,机器学习模型是模型服务提供方最重要的资产,从而模型服务提供方也需要保护机器学习模型的模型安全。
在本说明书的实施例中,客户端设备的私有数据可以包括图像数据、语音数据或文本数据。相应地,机器学习模型可以应用于基于图像数据、语音数据或者文本数据的业务风险识别、业务分类或者业务决策等等。或者,客户端设备的私有数据可以包括用户特征数据。相应地,机器学习模型可以应用于基于用户特征数据的业务风险识别、业务分类、业务推荐或者业务决策等等。
为了解决模型训练时的隐私数据安全的问题,提出了一种联邦学习模型训练方法。在该联邦学习模型训练方法中,在进行模型训练时,服务端设备将待训练的机器学习模型下发到各个客户端设备。在接收到机器学习模型后,客户端设备使用本地的训练数据来进行模型训练,并将模型梯度信息反馈给服务端设备。服务端设备根据各个客户端设备的模型梯度信息来进行模型调整,并且在未达到训练结束条件时,将调整后的模型下发给各个客户端设备来重新进行训练。如上循环操作,直到满足训练结束条件。
图1示出了联邦学习模型训练方法100的一个示例的流程图。
如图1所示,联邦学习模型训练系统包括服务端设备10和2个客户端设备20。服务端设备10中具有待训练的机器学习模型,以及各个客户端设备20中具有用于模型训练的隐私数据。
在进行训练时,如图1所示,首先,在110,在服务端设备10处,初始化机器学习模型。然后,循环执行120到180的操作,直到满足循环结束条件。
具体地,在120,确定用于当前训练过程的当前机器学习模型。在第一次训练过程中,当前机器学习模型是初始机器学习模型。在第N次训练过程中,当前机器学习模型是第N-1次训练过程中的经过模型调整后的机器学习模型。
在130,将当前机器学习模型发送给各个客户端设备,例如,图1中的客户端设备A和B。
在接收到当前机器学习模型后,在140,在各个客户端设备A和B,分别使用各自的训练数据来根据当前机器学习模型进行模型计算,以得到模型计算结果(即,基于当前机器学习模型得到的预测值)。然后,在150,在各个客户端设备A和B处,基于各自的模型计算结果来计算出各自用于模型调整的梯度信息。
在计算出梯度信息后,在160,各个客户端设备A和B分别将各自的梯度信息发送给服务端设备10。
在接收到客户端设备A和B发送的梯度信息后,在170,服务端设备10对所接收的梯度信息进行聚合处理,并且使用聚合后的梯度信息来进行模型调整,由此得到调整后的机器学习模型。
然后,在180,判断是否满足循环结束条件。所述循环结束条件例如可以是达到预定循环次数。如果满足循环结束条件,则流程结束,并且输出调整后的机器学习模型作为训练好的机器学习模型。
如果不满足循环结束条件,则返回到120的操作。在120中,将调整后的机器学习模型作为下一训练过程的当前机器学习模型。
在图1中示出的联邦学习模型训练方法中,模型更新方向由客户端设备决定,服务端只是对梯度信息进行聚合并使用聚合后的梯度信息来进行模型更新和训练。在这种情况下,恶意客户端设备可以通过篡改数据标签(有毒训练数据)、本地训练过程等方式实施模型/数据投毒攻击。此外,由于客户端设备上传详细的梯度信息,从而使得恶意服务端设备可以根据所接收的梯度信息来推断出客户端设备的数据,由此进行成员推断攻击。
鉴于上述,本说明书的实施例提供了一种基于蒙特卡洛的联邦学习模型训练方法。在该模型训练方法中,在每次模型训练时,模型更新量(模型更新方向和模型更新幅值)由服务端设备随机产生。服务端设备根据随机产生的模型更新量来进行模型更新,并将更新后的模型下发给客户端设备。客户端设备仅仅需要向服务端设备反馈各自损失函数,服务端设备基于各个客户端设备反馈的损失函数来进行聚合,并根据聚合结果来确定是否接受该次模型调整,并且只有在损失函数满足预定要求时才接受该次模型调整。按照这种模型训练方式,客户端设备无法觉得模型更新方向,从而可以降低客户端设备对模型更新的影响,由此减少攻击面,增加客户端设备投毒攻击难度,进而增加机器学习模型的安全保护。此外,客户端设备仅仅需要向服务端设备上传损失函数,而无需上传详细的梯度信息,由此服务端设备无法进行成员推断攻击,由此对客户端设备的隐私数据实现更好的隐私保护。
图2示出了根据本说明书的实施例的基于蒙特卡洛的联邦学习模型训练系统1的方框图。
如图2所示,联邦学习模型训练系统1包括服务端设备10和2个客户端设备20(客户端设备A和B)。服务端设备10中具有待训练的机器学习模型,以及各个客户端设备20中具有用于模型训练的隐私数据。客户端设备20可以是设置在模型使用方处的任意数据提供设备,比如应用有神经网络模型的物联网中的物联网设备、安装有业务应用客户端的客户端设备等。服务端设备10和客户端设备20可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、可佩戴计算设备、消费电子设备等等。此外,要说明的是,图2中示出的客户端设备20的数量为2个。在本说明书的其它示例中,客户端设备20的数量可以包括多于2个的任意数目。
在进行联邦学习模型训练时,在每次训练过程中,服务端设备10随机产生模型调整量,并基于所产生的模型调整量来进行模型更新。随后,服务端设备10将更新后的机器学习模型下发给客户端设备A和B。在接收到更新后的机器学习模型后,客户端设备A和B使用本地的训练数据来根据该更新的机器学习模型进行模型计算,以得到各自的损失函数。然后,客户端A和B将所得到的损失函数上传到服务端设备10。服务端设备10根据所接收的损失函数来确定是否接受本次模型更新。关于模型训练的具体过程将参考图3来详细描述。
图3示出了根据本说明书的实施例的基于蒙特卡洛的联邦学习模型训练方法300的流程图。本实施例提供的联邦学习模型训练方法300也可以称为基于蒙特卡洛最优化的联邦学习模型训练方法。
在执行图3所示的联邦学习模型训练过程之前,首先执行初始化过程。在初始化过程中,在服务端设备10处初始化机器学习模型。随后,服务端设备10将初始化后的机器学习模型下发到各个客户端设备20。各个客户端设备20使用各自的本地训练数据来根据初始化的机器学习模型进行模型计算,以得到各自的初始损失函数Li(0),其中,i是各个客户端设备的编号。
在如上完成初始化过程后,循环执行310到380的操作,直到满足循环结束条件。
具体地,在310,在服务端设备10处,随机生成当前机器学习模型G(t)的模型更新量ΔG(t)。这里,模型更新量ΔG(t)可以包括模型更新方向以及模型更新幅值。在第一次训练过程中,当前机器学习模型是初始机器学习模型。在第N次训练过程中,当前机器学习模型是第N-1次训练过程中确定的用于第N次训练过程的当前机器学习模型。
在本说明书的一个示例中,服务端设备10可以使用完全随机的方式来生成当前机器学习模型的模型更新量ΔG(t)。在另一示例中,服务端设备10可以采用自适应蒙特卡洛算法随机生成当前机器学习模型的模型更新量ΔG(t)。所述自适应蒙特卡洛算法例如可以包括自适应metropolis算法、CAM-ES算法或者kernel HMC算法。
在320,在服务端设备10处,使用所生成的模型更新量ΔG(t)来更新当前机器学习模型,以得到更新后的当前机器学习模型G(t+1)=G(t)+ΔG(t)。
接着,在330,将经过更新的当前机器学习模型G(t+1)发送给至少一个客户端设备20。例如,如图3所示,将经过更新的当前机器学习模型G(t+1)发送给客户端设备A和B。这里要说明的是,在一个示例中,所述至少一个客户端设备可以是机器学习模型训练系统1中的全部客户端设备。在另一示例中,所述至少一个客户端设备可以是从机器学习模型训练系统的客户端设备中选取的具备期望模型训练适合度的客户端设备。这里,术语“模型训练适合度”可以用于描述客户端设备适合进行模型训练的程度。例如,可以利用客户端设备所具有的训练数据和/或设备能力与模型训练的匹配度来考量模型训练适合度。比如,如果客户端设备A所具有的训练数据与当前机器学习模型的模型特征关联度不大,则认为客户端设备A的模型训练适合度较低。或者,如果客户端设备A的设备能力不足以支持执行当前机器学习模型的训练过程所需要的算力,则认为客户端设备A的模型训练适合度较低。按照这种方式,通过从机器学习模型训练系统1的客户端设备中选择适合于执行模型训练的客户端设备,可以提高机器学习模型的训练效率(例如,训练速度和训练精度)。此外,要说明的是,在一个示例中,所述至少一个客户端设备的数目通常需要大于预定阈值,例如,100。
在接收到经过更新后的当前机器学习模型G(t+1)后,在340,在至少一个客户端设备的各个客户端设备处,使用本地私有数据来根据经过更新的当前机器学习模型G(t+1)进行模型计算以得到各自的当前损失函数。具体地,将本地私有数据提供给经过更新的当前机器学习模型G(t+1),由此得到模型计算结果(即,基于当前机器学习模块得到的预测值)。然后,基于模型计算结果来得到损失函数。例如,假设当前训练过程为第t+1次,则客户端设备A和B得到各自的当前损失函数LA(t+1)和LB(t+1)。
在350,各个客户端设备20将各自的当前损失函数发送给服务端设备10。例如,客户端设备A和B将各自的当前损失函数LA(t+1)和LB(t+1)发送给服务端设备10。
在接收到各个客户端设备发送的当前损失函数后,在360,在服务端设备10处,对从至少一个客户端设备接收的当前损失函数进行聚合处理,以得到聚合处理后的损失函数L(t+1)。所述聚合处理例如可以包括去除异常后求平均或者其它合适的聚合处理方式等等。
然后,在370,在服务端设备10处,基于聚合处理后的当前损失函数L(t+1)以及与当前机器学习模型对应的损失函数L(t),确定是否接受针对当前机器学习模型的当前更新。例如,可以基于聚合处理后的当前损失函数L(t+1)以及与当前机器学习模型对应的损失函数L(t),使用Metropolis-Hastings算法来确定是否接受针对所述当前机器学习模型的当前更新。换言之,可以使用Metropolis-Hastings算法来以一定概率接受模型更新,该概率根据聚合处理后的当前损失函数L(t+1)以及与当前机器学习模型对应的损失函数L(t)来计算出,例如,P=min{1,eL(t)-L(t+1)}。如果接受模型更新,则确定G(t+1)=G(t)+ΔG(t),否则,G(t+1)=G(t)。
接着,在380,判断是否满足循环结束条件。在一个示例中,所述循环结束条件可以包括:聚合处理后的当前损失函数不大于预定阈值。在另一示例中,所述循环结束条件可以包括:机器学习模型达到平衡。这里要说明的是,在本说明书中,可以通过在服务端设备10处保存各个接受的经过更新的机器学习模型,然后对所保存的各个经过更新的机器学习模型进行自关联函数计算来判断哪些机器学习模型达到平衡。
在未满足循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型。然后,返回到310执行下一循环过程,直到满足循环结束条件。
在满足循环结束条件时,训练过程结束,由此得到训练好的机器学习模型。
如果循环结束条件是聚合处理后的当前损失函数不大于预定阈值,则可以将经过更新的当前机器学习模型确定为训练好的机器学习模型。
如果循环结束条件是机器学习模型达到平衡,则可以基于达到平衡的机器学习模型来确定训练好的机器学习模型。例如,在一个示例中,可以从达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型。在另一示例中,可以从达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型。或者,在另一示例中,可以对达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
此外,要说明的是,在图3中示出的联邦学习模型训练过程中,还可以包括:将训练好的机器学习模型发送给机器学习模型训练系统1中的全部客户端设备。
利用图3中示出的联邦学习模型训练方法,在每次模型训练时,模型更新量(模型更新方向和模型更新幅值)由服务端设备随机产生。服务端设备根据随机产生的模型更新量来进行模型更新,并将更新后的模型下发给客户端设备。然后,服务端设备基于各个客户端设备反馈的损失函数来进行聚合,并根据聚合结果来确定是否接受该次模型调整,并且只有在损失函数满足预定要求时才接受该次模型调整。按照这种模型训练方式,客户端设备无法决定模型更新方向,从而可以降低客户端设备对模型更新的影响,由此减少攻击面,增加客户端设备投毒攻击难度,进而增加了机器学习模型的安全保护。
此外,利用图3中示出的联邦学习模型训练方法,客户端设备仅仅需要向服务端设备上传损失函数,而无需上传详细的梯度信息,由此服务端设备无法获悉各个客户端设备的详细梯度信息,从而无法进行成员推断攻击,进而可以对客户端设备的隐私数据实现更好的隐私保护。
此外,利用图3中示出的联邦学习模型训练方法,客户端设备仅仅需要执行推断过程,不需要进行梯度计算,从而使得客户端设备的处理更加简单,由此降低客户端设备的设备性能要求。此外,客户端设备仅仅需要上传损失函数,不需要上传梯度,从而可以降低客户端设备的上传流量。
图4示出了根据本说明书的实施例的位于服务端设备处的联邦学习模型训练装置400的方框图。如图4所示,联邦学习模型训练装置400包括模型更新量生成单元410、模型更新单元420、模型发送单元430、损失函数接收单元440、聚合单元450、更新接受单元460和当前模型确定单元470。
在进行联邦学习模型训练时,模型更新量生成单元410、模型更新单元420、模型发送单元430、损失函数接收单元440、聚合单元450、更新接受单元460和当前模型确定单元470循环操作,直到满足循环结束条件。
具体地,模型更新量生成单元410被配置为随机生成当前机器学习模型的模型更新量。模型更新量生成单元410的操作可以参考上面参照图3描述的块310的操作。
模型更新单元420被配置为使用所生成的模型更新量来更新当前机器学习模型。模型更新单元420的操作可以参考上面参照图3描述的块320的操作。
模型发送单元430被配置为将经过更新的当前机器学习模型发送给至少一个客户端设备。在至少一个客户端设备中的各个客户端设备处,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备。模型发送单元430的操作可以参考上面参照图3描述的块330的操作。
损失函数接收单元440被配置为从至少一个客户端设备接收各自的当前损失函数。损失函数接收单元440的操作可以参考上面参照图3描述的块350的操作。
聚合单元450被配置为对从至少一个客户端设备接收的当前损失函数进行聚合处理。聚合单元450的操作可以参考上面参照图3描述的块360的操作。
更新接受单元460被配置为基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新。更新接受单元460的操作可以参考上面参照图3描述的块370的操作。
当前模型确定单元470被配置为在未满足循环结束条件时,如果确定接受针对当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对当前机器学习模型的当前更新,则将当前机器学习模型作为下一循环过程的当前机器学习模型。
此外,可选地,在本说明书的一个示例中,联邦学习模型训练装置400还可以包括客户端选择单元(未示出)。客户端选择单元被配置为从联邦学习模型训练系统的客户端设备中选取具备期望模型训练适合度的客户端设备,作为所述至少一个客户端设备。
此外,可选地,在本说明书的一个示例中,联邦学习模型训练装置400还可以包括训练模型确定单元(未示出)。在循环结束条件是聚合处理后的当前损失函数不大于预定阈值时,所述训练模型确定单元被配置为将经过更新的当前机器学习模型确定为训练好的机器学习模型。在循环结束条件是机器学习模型达到平衡时,所述训练模型确定单元被配置为基于达到平衡的机器学习模型来确定训练好的机器学习模型。例如,所述训练模型确定单元可以从达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型;从达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型;或者对达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
此外,可选地,在满足循环结束条件时,模型发送单元430还可以将训练好的机器学习模型发送给联邦学习模型训练系统1中的全部客户端设备。
图5示出了根据本说明书的实施例的位于客户端设备处的联邦学习模型训练装置500的方框图。如图5所示,联邦学习模型训练装置500包括模型接收单元510、模型计算单元520和损失函数发送单元530。
在进行模型训练时,模型接收单元510、模型计算单元520和损失函数发送单元530循环操作,直到满足循环结束条件。
具体地,模型接收单元510被配置为从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在所述服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到。模型接收单元510的操作可以参考上面参照图3描述的块330的操作。
模型计算单元520被配置为使用本地私有数据来根据经过更新的当前机器学习模型进行模型计算以得到当前损失函数。模型计算单元520的操作可以参考上面参照图3描述的块340的操作。
损失函数发送单元540被配置为将所得到的当前损失函数发送给服务端设备。损失函数发送单元540的操作可以参考上面参照图3描述的块350的操作。
如上参照图1到图5,对根据本说明书的实施例的模型训练方法及模型训练装置的实施例进行了描述。上面的模型训练装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图6示出了根据本说明书的实施例的用于实现服务端设备侧的基于蒙特卡洛的联邦学习模型训练过程的电子设备600的结构框图。
如图6所示,电子设备600可以包括至少一个处理器610、存储器(例如,非易失性存储器)620、内存630、通信接口640以及内部总线660,并且至少一个处理器610、存储器620、内存630和通信接口640经由总线660连接在一起。该至少一个处理器610执行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储有计算机可执行指令,其当执行时使得至少一个处理器610:执行下述循环过程,直到满足循环结束条件:随机生成当前机器学习模型的模型更新量;使用所生成的模型更新量来更新所述当前机器学习模型;将经过更新的当前机器学习模型发送给至少一个客户端设备,其中,在至少一个客户端设备中的各个客户端设备处,使用本地私有数据来根据经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备;对从至少一个客户端设备接收的当前损失函数进行聚合处理;基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新,其中,在未满足循环结束条件时,如果确定接受针对当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对当前机器学习模型的当前更新,则将当前机器学习模型作为下一循环过程的当前机器学习模型。
应该理解的是,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器610执行在本说明书的各个实施例中如上结合图2-5描述的各种操作和功能。
图7示出了根据本说明书的实施例的用于实现客户端设备侧的基于蒙特卡洛的联邦学习模型训练过程的电子设备700的结构框图。
如图7所示,电子设备700可以包括至少一个处理器710、存储器(例如,非易失性存储器)720、内存730、通信接口740以及内部总线760,并且至少一个处理器710、存储器720、内存730和通信接口740经由总线760连接在一起。该至少一个处理器710执行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储有计算机可执行指令,其当执行时使得至少一个处理器710:执行下述循环过程,直到满足循环结束条件:从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到;使用本地私有数据来根据经过更新的当前机器学习模型进行模型计算以得到当前损失函数并发送给服务端设备,其中,在服务端设备处,对从当前模型训练过程中参与模型训练的客户端设备接收的当前损失函数进行聚合处理,并且基于聚合处理后的当前损失函数以及与当前机器学习模型对应的损失函数,确定是否接受针对当前机器学习模型的当前更新,其中,在未满足所述循环结束条件时,如果确定接受针对当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对当前机器学习模型的当前更新,则将当前机器学习模型作为下一循环过程的当前机器学习模型。
应该理解的是,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器710执行在本说明书的各个实施例中如上结合图2-5描述的各种操作和功能。
在本说明书的实施例中,电子设备600/700可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种例如非暂时性机器可读介质的程序产品。非暂时性机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中如上结合图2-5描述的各种操作和功能。
具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。

Claims (23)

1.一种基于蒙特卡洛的联邦学习模型训练方法,所述方法应用于服务端设备,所述方法包括:
执行下述循环过程,直到满足循环结束条件:
随机生成当前机器学习模型的模型更新量;
使用所生成的模型更新量来更新所述当前机器学习模型;
将经过更新的当前机器学习模型发送给至少一个客户端设备,其中,在所述至少一个客户端设备的各个客户端设备处,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备;
对从所述至少一个客户端设备接收的当前损失函数进行聚合处理;
基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新,其中,在未满足所述循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型。
2.如权利要求1所述的联邦学习模型训练方法,其中,所述至少一个客户端设备是联邦学习模型训练系统中的全部客户端设备,或者所述至少一个客户端设备是从联邦学习模型训练系统的客户端设备中选取的具备期望模型训练适合度的客户端设备。
3.如权利要求1所述的联邦学习模型训练方法,其中,所述当前机器学习模型的模型更新量是采用自适应蒙特卡洛算法随机生成的。
4.如权利要求3所述的联邦学习模型训练方法,其中,所述自适应蒙特卡洛算法包括自适应metropolis算法、CAM-ES算法或者kernel HMC算法。
5.如权利要求1所述的联邦学习模型训练方法,其中,基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新包括:
基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,使用Metropolis-Hastings算法来确定是否接受针对所述当前机器学习模型的当前更新。
6.如权利要求1所述的联邦学习模型训练方法,其中,所述循环结束条件包括:聚合处理后的当前损失函数不大于预定阈值,以及
所述方法还包括:
在满足所述循环结束条件时,将所述经过更新的当前机器学习模型确定为训练好的机器学习模型。
7.如权利要求1所述的联邦学习模型训练方法,其中,所述循环结束条件包括:机器学习模型达到平衡,以及
所述方法还包括:
在满足所述循环结束条件时,基于达到平衡的机器学习模型来确定训练好的机器学习模型。
8.如权利要求7所述的联邦学习模型训练方法,其中,基于达到平衡的机器学习模型来确定训练好的机器学习模型包括:
从所述达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型;
从所述达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型;或者
对所述达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
9.如权利要求1所述的联邦学习模型训练方法,还包括:
将训练好的机器学习模型发送给联邦学习模型训练系统中的全部客户端设备。
10.如权利要求1到9中任一所述的联邦学习模型训练方法,其中,所述本地私有数据包括图像数据、语音数据或者文本数据,或者所述本地私有数据包括用户特征数据。
11.一种基于蒙特卡洛的联邦学习模型训练方法,所述方法应用于客户端设备,所述方法包括:
执行下述循环过程,直到满足循环结束条件:
从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在所述服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到;
使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到当前损失函数并发送给所述服务端设备,
其中,在所述服务端设备处,对从当前模型训练过程中参与模型训练的客户端设备接收的当前损失函数进行聚合处理,并且基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新,其中,在未满足所述循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型。
12.一种基于蒙特卡洛的联邦学习模型训练装置,所述方法应用于服务端设备,所述联邦学习模型训练装置包括:
模型更新量生成单元,随机生成当前机器学习模型的模型更新量;
模型更新单元,使用所生成的模型更新量来更新所述当前机器学习模型;
模型发送单元,将经过更新的当前机器学习模型发送给至少一个客户端设备,其中,在所述至少一个客户端设备中的各个客户端设备处,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到各自的当前损失函数并发送给服务端设备;
损失函数接收单元,从所述至少一个客户端设备接收各自的当前损失函数;
聚合单元,对从所述至少一个客户端设备接收的当前损失函数进行聚合处理;
更新接受单元,基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新;
当前模型确定单元,在未满足循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型,
所述模型更新量生成单元、所述模型更新单元、所述模型发送单元、所述损失函数接收单元、所述聚合单元、所述更新接受单元和所述当前模型确定单元循环操作,直到满足所述循环结束条件。
13.如权利要求12所述的联邦学习模型训练装置,还包括:
客户端选择单元,从联邦学习模型训练系统的客户端设备中选取具备期望模型训练适合度的客户端设备,作为所述至少一个客户端设备。
14.如权利要求12所述的联邦学习模型训练装置,其中,所述循环结束条件包括:聚合处理后的当前损失函数不大于预定阈值,以及
所述联邦学习模型训练装置还包括:
训练模型确定单元,在满足所述循环结束条件时,将所述经过更新的当前机器学习模型确定为训练好的机器学习模型。
15.如权利要求12所述的联邦学习模型训练装置,其中,所述循环结束条件包括:机器学习模型达到平衡,以及
所述联邦学习模型训练装置还包括:
训练模型确定单元,在满足所述循环结束条件时,基于达到平衡的机器学习模型来确定训练好的机器学习模型。
16.如权利要求15所述的联邦学习模型训练装置,其中,所述训练模型确定单元:
从所述达到平衡的机器学习模型中随机选择一个机器学习模型,作为训练好的机器学习模型;
从所述达到平衡的机器学习模型中选择聚合后的损失函数最小的机器学习模型,作为训练好的机器学习模型;或者
对所述达到平衡的机器学习模型进行平均,以得到训练好的机器学习模型。
17.如权利要求12所述的联邦学习模型训练装置,其中,在满足所述循环结束条件时,所述模型发送单元将训练好的机器学习模型发送给联邦学习模型训练系统中的全部客户端设备。
18.一种基于蒙特卡洛的联邦学习模型训练装置,所述装置应用于客户端设备,所述联邦学习模型训练装置包括:
模型接收单元,从服务端设备接收经过更新的当前机器学习模型,所述经过更新的当前机器学习模型是在所述服务端设备处使用随机生成的模型更新量来对当前机器学习模型进行更新而得到;
模型计算单元,使用本地私有数据来根据所述经过更新的当前机器学习模型进行模型计算以得到当前损失函数;
损失函数发送单元,将所得到的当前损失函数发送给所述服务端设备,
其中,在所述服务端设备处,对从当前模型训练过程中参与模型训练的客户端设备接收的当前损失函数进行聚合处理,并且基于聚合处理后的当前损失函数以及与所述当前机器学习模型对应的损失函数,确定是否接受针对所述当前机器学习模型的当前更新,在未满足循环结束条件时,如果确定接受针对所述当前机器学习模型的当前更新,则将经过更新的当前机器学习模型作为下一循环过程的当前机器学习模型,如果确定不接受针对所述当前机器学习模型的当前更新,则将所述当前机器学习模型作为下一循环过程的当前机器学习模型,
其中,所述模型接收单元,所述模型计算单元和所述损失函数发送单元循环操作,直到满足所述循环结束条件。
19.一种基于蒙特卡洛的联邦学习模型训练系统,包括:
服务端设备,包括如权利要求12到17中任一所述的联邦学习模型训练装置;以及
多个客户端设备,每个客户端设备包括如权利要求18所述的联邦学习模型训练装置。
20.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1到10中任一项所述的方法。
21.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到10中任一项所述的方法。
22.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求11所述的方法。
23.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求11所述的方法。
CN201911270183.8A 2019-12-11 2019-12-11 基于蒙特卡洛的联邦学习模型训练方法及装置 Active CN111027715B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911270183.8A CN111027715B (zh) 2019-12-11 2019-12-11 基于蒙特卡洛的联邦学习模型训练方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911270183.8A CN111027715B (zh) 2019-12-11 2019-12-11 基于蒙特卡洛的联邦学习模型训练方法及装置

Publications (2)

Publication Number Publication Date
CN111027715A true CN111027715A (zh) 2020-04-17
CN111027715B CN111027715B (zh) 2021-04-02

Family

ID=70206035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911270183.8A Active CN111027715B (zh) 2019-12-11 2019-12-11 基于蒙特卡洛的联邦学习模型训练方法及装置

Country Status (1)

Country Link
CN (1) CN111027715B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111626886A (zh) * 2020-07-30 2020-09-04 工保科技(浙江)有限公司 基于多方协作的工程履约保证保险风险识别方法与平台
CN111695674A (zh) * 2020-05-14 2020-09-22 平安科技(深圳)有限公司 联邦学习方法、装置、计算机设备及可读存储介质
CN111831675A (zh) * 2020-07-07 2020-10-27 平安科技(深圳)有限公司 一种仓储模型训练方法、装置、计算机设备及存储介质
CN111898137A (zh) * 2020-06-30 2020-11-06 深圳致星科技有限公司 一种联邦学习的隐私数据处理方法、设备及系统
CN111914256A (zh) * 2020-07-17 2020-11-10 华中科技大学 一种机器学习训练数据受投毒攻击的防御方法
CN111931876A (zh) * 2020-10-12 2020-11-13 支付宝(杭州)信息技术有限公司 一种用于分布式模型训练的目标数据方筛选方法及系统
CN112001500A (zh) * 2020-08-13 2020-11-27 星环信息科技(上海)有限公司 基于纵向联邦学习系统的模型训练方法、设备及存储介质
CN112185395A (zh) * 2020-09-04 2021-01-05 哈尔滨工业大学(深圳) 一种基于差分隐私的联邦声纹识别方法
CN112651170A (zh) * 2020-12-14 2021-04-13 德清阿尔法创新研究院 一种纵向联邦学习场景中高效的特征贡献评估方法
CN113033820A (zh) * 2021-03-25 2021-06-25 支付宝(杭州)信息技术有限公司 联邦学习方法、装置以及设备
CN113987477A (zh) * 2021-10-26 2022-01-28 北京京航计算通讯研究所 一种分布式ai系统的防投毒方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109871702A (zh) * 2019-02-18 2019-06-11 深圳前海微众银行股份有限公司 联邦模型训练方法、系统、设备及计算机可读存储介质
CN110297848A (zh) * 2019-07-09 2019-10-01 深圳前海微众银行股份有限公司 基于联邦学习的推荐模型训练方法、终端及存储介质
CN110378487A (zh) * 2019-07-18 2019-10-25 深圳前海微众银行股份有限公司 横向联邦学习中模型参数验证方法、装置、设备及介质
CN110442457A (zh) * 2019-08-12 2019-11-12 北京大学深圳研究生院 基于联邦学习的模型训练方法、装置及服务器
WO2019219846A1 (en) * 2018-05-17 2019-11-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concepts for distributed learning of neural networks and/or transmission of parameterization updates therefor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019219846A1 (en) * 2018-05-17 2019-11-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concepts for distributed learning of neural networks and/or transmission of parameterization updates therefor
CN109871702A (zh) * 2019-02-18 2019-06-11 深圳前海微众银行股份有限公司 联邦模型训练方法、系统、设备及计算机可读存储介质
CN110297848A (zh) * 2019-07-09 2019-10-01 深圳前海微众银行股份有限公司 基于联邦学习的推荐模型训练方法、终端及存储介质
CN110378487A (zh) * 2019-07-18 2019-10-25 深圳前海微众银行股份有限公司 横向联邦学习中模型参数验证方法、装置、设备及介质
CN110442457A (zh) * 2019-08-12 2019-11-12 北京大学深圳研究生院 基于联邦学习的模型训练方法、装置及服务器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HOWARD H. YANG ET AL.: "Age-Based Scheduling Policy for Federated Learning in Mobile Edge Networks", 《HTTPS://ARXIV.ORG/PDF/1910.14648V1.PDF》 *
潘碧莹 等: "不同数据分布的联邦机器学习技术研究", 《5G网络创新研讨会(2019)论文集》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021114618A1 (zh) * 2020-05-14 2021-06-17 平安科技(深圳)有限公司 联邦学习方法、装置、计算机设备及可读存储介质
CN111695674A (zh) * 2020-05-14 2020-09-22 平安科技(深圳)有限公司 联邦学习方法、装置、计算机设备及可读存储介质
CN111695674B (zh) * 2020-05-14 2024-04-09 平安科技(深圳)有限公司 联邦学习方法、装置、计算机设备及可读存储介质
CN111898137A (zh) * 2020-06-30 2020-11-06 深圳致星科技有限公司 一种联邦学习的隐私数据处理方法、设备及系统
CN111831675A (zh) * 2020-07-07 2020-10-27 平安科技(深圳)有限公司 一种仓储模型训练方法、装置、计算机设备及存储介质
CN111914256A (zh) * 2020-07-17 2020-11-10 华中科技大学 一种机器学习训练数据受投毒攻击的防御方法
CN111626886A (zh) * 2020-07-30 2020-09-04 工保科技(浙江)有限公司 基于多方协作的工程履约保证保险风险识别方法与平台
CN112001500A (zh) * 2020-08-13 2020-11-27 星环信息科技(上海)有限公司 基于纵向联邦学习系统的模型训练方法、设备及存储介质
US11170786B1 (en) 2020-09-04 2021-11-09 Harbin Institute Of Technology (Shenzhen) (Shenzhen Institute Of Science And Technology Innovation, Harbin Institute Of Technology) Federated speaker verification method based on differential privacy
CN112185395B (zh) * 2020-09-04 2021-04-27 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种基于差分隐私的联邦声纹识别方法
CN112185395A (zh) * 2020-09-04 2021-01-05 哈尔滨工业大学(深圳) 一种基于差分隐私的联邦声纹识别方法
US11449805B2 (en) 2020-10-12 2022-09-20 Alipay (Hangzhou) Information Technology Co., Ltd. Target data party selection methods and systems for distributed model training
CN111931876A (zh) * 2020-10-12 2020-11-13 支付宝(杭州)信息技术有限公司 一种用于分布式模型训练的目标数据方筛选方法及系统
CN112651170A (zh) * 2020-12-14 2021-04-13 德清阿尔法创新研究院 一种纵向联邦学习场景中高效的特征贡献评估方法
CN112651170B (zh) * 2020-12-14 2024-02-27 德清阿尔法创新研究院 一种纵向联邦学习场景中高效的特征贡献评估方法
CN113033820A (zh) * 2021-03-25 2021-06-25 支付宝(杭州)信息技术有限公司 联邦学习方法、装置以及设备
CN113033820B (zh) * 2021-03-25 2023-05-26 蚂蚁金服(杭州)网络技术有限公司 联邦学习方法、装置以及设备
CN113987477A (zh) * 2021-10-26 2022-01-28 北京京航计算通讯研究所 一种分布式ai系统的防投毒方法和系统

Also Published As

Publication number Publication date
CN111027715B (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN111027715B (zh) 基于蒙特卡洛的联邦学习模型训练方法及装置
CN110929870B (zh) 图神经网络模型训练方法、装置及系统
US11095689B2 (en) Service processing method and apparatus
WO2021244035A1 (en) Methods and apparatuses for defense against adversarial attacks on federated learning systems
CN111523673B (zh) 模型训练方法、装置及系统
CN111061963B (zh) 基于多方安全计算的机器学习模型训练及预测方法、装置
CN111062487B (zh) 基于数据隐私保护的机器学习模型特征筛选方法及装置
CN111079939B (zh) 基于数据隐私保护的机器学习模型特征筛选方法及装置
US20170206361A1 (en) Application recommendation method and application recommendation apparatus
CN112052942B (zh) 神经网络模型训练方法、装置及系统
CN112000991A (zh) 多方数据联合处理方法、装置及系统
Shalev-Shwartz et al. Using more data to speed-up training time
CN111741020B (zh) 基于数据隐私保护的公共数据集确定方法、装置及系统
CN111523556B (zh) 模型训练方法、装置及系统
JP2019517067A5 (zh)
CN111368983A (zh) 业务模型训练方法、装置及业务模型训练系统
CN111738438A (zh) 图神经网络模型训练方法、装置及系统
CN109714301A (zh) 注册风险识别方法、装置、电子设备及存储介质
CN111523134B (zh) 基于同态加密的模型训练方法、装置及系统
CN110929887B (zh) 逻辑回归模型训练方法、装置及系统
CN112865973A (zh) 基于格的加密密钥和数字签名的生成方法
CN111523674A (zh) 模型训练方法、装置及系统
CN112183757B (zh) 模型训练方法、装置及系统
US10652217B2 (en) Method and system for rateless and pollution-attack-resilient network coding including decoder(s)
CN111523675B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40028009

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant