CN112257876A - 联邦学习方法、装置、计算机设备及介质 - Google Patents

联邦学习方法、装置、计算机设备及介质 Download PDF

Info

Publication number
CN112257876A
CN112257876A CN202011274264.8A CN202011274264A CN112257876A CN 112257876 A CN112257876 A CN 112257876A CN 202011274264 A CN202011274264 A CN 202011274264A CN 112257876 A CN112257876 A CN 112257876A
Authority
CN
China
Prior art keywords
information
sample
computer device
model
computer
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
CN202011274264.8A
Other languages
English (en)
Other versions
CN112257876B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202011274264.8A priority Critical patent/CN112257876B/zh
Publication of CN112257876A publication Critical patent/CN112257876A/zh
Application granted granted Critical
Publication of CN112257876B publication Critical patent/CN112257876B/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
    • G06N20/20Ensemble 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

联邦学习方法、装置、计算机设备及介质
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种联邦学习方法、装置、计算机设备及介质。
背景技术
随着计算机技术的发展和人工智能(Artificial Intelligence,AI)技术的进步,联邦学习(Federated Learning)逐渐成为AI领域的一个热门课题,联邦学习通过多方协作完成神经网络模型的训练,在保护用户隐私和数据安全的同时,解决了数据孤岛的问题。
由于不同的样本集中包括的样本的特征不同,且不同的样本集中样本对应的标签信息也不完全相同,例如,第一样本集中包括用户在银行的转账记录及表示用户风险等级的标签,第二样本集中包括用户的购买记录及表示用户喜好的标签。但是横向联邦学习、纵向联邦学习或者联邦迁移学习均不适用于这种场景,因此,亟需一种新的联邦学习方式来对不同的样本集中的样本进行处理。
发明内容
本申请实施例提供了一种联邦学习方法、装置、计算机设备及介质,提高了模型训练速度和模型的准确率。所述技术方案如下:
一方面,提供了一种联邦学习方法,所述方法包括:
第一计算机设备获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
所述第一计算机设备获取所述样本标识对应的第一融合信息;
所述第二计算机设备获取所述样本标识对应的第二融合信息,向所述第一计算机设备发送所述第二融合信息;
所述第一计算机设备基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,向所述第二计算机设备发送所述梯度算子;
所述第一计算机设备和所述第二计算机设备基于所述梯度算子,分别调整机器学习模型中第一子模型的模型参数和第二子模型的模型参数。
另一方面,提供了一种联邦学习方法,应用于第一计算机设备,所述方法包括:
获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
获取所述样本标识对应的第一融合信息和第二融合信息,所述第二融合信息是由所述第二计算机设备发送的;
基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,基于所述梯度算子,调整机器学习模型中第一子模型的模型参数;
向所述第二计算机设备发送所述梯度算子,以使所述第二计算机设备基于所述梯度算子调整所述机器学习模型中第二子模型的模型参数。
在一种可能实现方式中,所述获取所述样本标识对应的第一融合信息和第二融合信息,包括:
基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,所述第一特征为所述第一样本集中所述样本标识对应的特征,所述第二特征为所述第二样本集中所述样本标识对应的特征;
接收所述第二计算机设备发送的所述第二融合信息,所述第二融合信息是由所述第二计算机设备基于所述第一特征和所述第二特征获取的。
在另一种可能实现方式中,所述基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,包括:
对所述第一特征进行处理,得到所述样本标识对应的第一信息;
对所述样本标识对应的第一加密信息进行解密,得到所述样本标识对应的第二信息,所述第一加密信息是由所述第二计算机设备对所述第二特征进行加密得到的;
所述第一计算机设备对所述第一信息和所述第二信息进行融合,得到所述第一融合信息。
在另一种可能实现方式中,所述基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,包括:
调用所述第一子模型,对所述第一融合信息和所述第二融合信息进行处理,得到所述样本标识对应的预测标签信息;
将所述预测标签信息和所述样本标签信息之间的差值,确定为所述梯度算子。
在另一种可能实现方式中,所述基于所述梯度算子,调整机器学习模型中第一子模型的模型参数,包括:
基于所述梯度算子和所述第一特征,获取所述第一子模型对应的第一调整参数;
基于所述第一调整参数,调整所述第一子模型的模型参数。
在另一种可能实现方式中,所述方法还包括:
响应于所述梯度算子不大于预设阈值,停止调整所述第一子模型的模型参数。
在另一种可能实现方式中,所述基于所述梯度算子,调整机器学习模型中第一子模型的模型参数之后,所述方法还包括:
调用所述第一子模型,对目标标识对应的第一融合信息和第二融合信息进行处理,得到所述目标标识对应的目标标签信息,所述目标标识对应的第二融合信息是由所述第二计算机设备发送的。
另一方面,提供了一种联邦学习装置,所述装置包括:
样本标签获取模块,用于获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
融合信息获取模块,用于获取所述样本标识对应的第一融合信息和第二融合信息,所述第二融合信息是由所述第二计算机设备发送的;
梯度算子获取模块,用于基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子;
参数调整模块,用于基于所述梯度算子,调整机器学习模型中第一子模型的模型参数,向所述第二计算机设备发送所述梯度算子,以使所述第二计算机设备基于所述梯度算子调整所述机器学习模型中第二子模型的模型参数。
在一种可能实现方式中,所述融合信息获取模块,包括:
第一获取单元,用于基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,所述第一特征为所述第一样本集中所述样本标识对应的特征,所述第二特征为所述第二样本集中所述样本标识对应的特征;
第二获取单元,用于接收所述第二计算机设备发送的所述第二融合信息,所述第二融合信息是由所述第二计算机设备基于所述第一特征和所述第二特征获取的。
在另一种可能实现方式中,所述第一获取单元,用于:
对所述第一特征进行处理,得到所述样本标识对应的第一信息;
对所述样本标识对应的第一加密信息进行解密,得到所述样本标识对应的第二信息,所述第一加密信息是由所述第二计算机设备对所述第二特征进行加密得到的;
所述第一计算机设备对所述第一信息和所述第二信息进行融合,得到所述第一融合信息。
在另一种可能实现方式中,所述梯度算子获取模块,包括:
预测标签获取单元,用于调用所述第一子模型,对所述第一融合信息和所述第二融合信息进行处理,得到所述样本标识对应的预测标签信息;
梯度算子获取单元,用于将所述预测标签信息和所述样本标签信息之间的差值,确定为所述梯度算子。
在另一种可能实现方式中,所述参数调整模块,包括:
调整参数获取单元,用于基于所述梯度算子和所述第一特征,获取所述第一子模型对应的第一调整参数;
模型参数调整单元,用于基于所述第一调整参数,调整所述第一子模型的模型参数。
在另一种可能实现方式中,所述装置还包括:
停止调整模块,用于响应于所述梯度算子不大于预设阈值,停止调整所述第一子模型的模型参数。
在另一种可能实现方式中,所述装置还包括:
目标标签获取模块,用于调用所述第一子模型,对目标标识对应的第一融合信息和第二融合信息进行处理,得到所述目标标识对应的目标标签信息,所述目标标识对应的第二融合信息是由所述第二计算机设备发送的。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以实现如上述方面所述的联邦学习方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以实现如上述方面所述的联邦学习方法中所执行的操作。
另一方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或所述计算机程序包括计算机程序代码,所述计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取所述计算机程序代码,处理器执行所述计算机程序代码,使得所述计算机设备实现如上述方面所述的联邦学习方法中所执行的操作。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的联邦学习方法、装置、计算机设备及介质,由第一计算机设备和第二计算机设备协同训练机器学习模型,采用哪个计算机设备中存储的标签信息,即由哪个计算机设备获取梯度算子,避免将标签信息发送给其他设备,提高了安全性,且能够由一个计算机设备同时采用不同计算机设备获取的融合信息来获取梯度算子,对机器学习模型进行训练,而无需由不同计算机设备分别获取梯度算子来训练机器学习模型,从而提高了模型的训练速度,且丰富了样本的信息量,提高了模型的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种模型训练系统的示意图;
图2是本申请实施例提供的一种联邦学习方法的流程图;
图3是本申请实施例提供的一种样本标识的特征和标签信息的分布示意图;
图4是本申请实施例提供的另一种联邦学习方法的流程图;
图5是本申请实施例提供的另一种联邦学习方法的流程图;
图6是本申请实施例提供的另一种联邦学习方法的流程图;
图7是本申请实施例提供的一种数据处理方法的流程图;
图8是本申请实施例提供的一种联邦学习装置的结构示意图;
图9是本申请实施例提供的另一种联邦学习装置的结构示意图;
图10是本申请实施例提供的一种终端的结构示意图;
图11是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一特征称为第二特征,将第二特征称为第一特征。
本申请所使用的术语“至少一个”、“多个”、“每个”、“任一”等,至少一个包括一个、两个或两个以上,多个包括两个或两个以上,每个是指对应的多个中的每一个,任一是指多个中的任意一个。举例来说,多个样本标识包括3个样本标识,而每个样本标识是指这3个样本标识中的每一个样本标识,任一是指这3个样本标识中的任意一个,可以是第一个,可以是第二个,也可以是第三个。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案,基于人工智能的机器学习技术,训练机器学习模型。
为了便于理解本申请实施例提供的方法,对本申请涉及到的术语进行解释:
联邦学习:联邦学习又称为联合学习,能够在保护用户隐私和数据安全的前提下实现数据的“可用而不可见”,也即通过多方协作完成机器学习模型的训练任务,此外,还能够提供机器学习模型的推理服务。
在人工智能时代,机器学习尤其深度学习模型的获得需要大量的训练数据作为前提。但是在很多业务场景中,模型的训练数据往往分散在各个不同的业务团队、部门、甚至是不同的公司内。由于确保用户隐私和数据安全,不同数据源之间不能够直接交换数据,形成了所谓的“数据孤岛”,阻碍了数据合作和获取模型所需要的大数据。近两年,联邦学习技术(Federated Learning)迅速发展,联邦学习在保护用户隐私和数据安全的同时,充分利用多方数据源的数据来训练机器学习模型,通过使用多方、互补的数据源来提升机器学习模型的性能,例如,提升广告推荐模型的准确率。
与传统的集中式机器学习不同,联邦学习过程中,由两个或两个以上的参与方一起协作训练一个或多个机器学习模型。从分类上来说,基于数据的分布特征,联邦学习可以划分为横向联邦学习(Horizontal Federated Learning)、纵向联邦学习(VerticalFederated Learning)和联邦迁移学习(Federated Transfer Learning)。其中,横向联邦学习又称为基于样本的联邦学习,适用于样本集共享相同特征空间但样本空间不同的情况;纵向联邦学习又称为基于特征的联邦学习,适用于样本集共享相同样本空间但特征空间不同的情况;联邦迁移学习则适用于样本集不仅在样本空间上不同而且在特征空间上也不同的情况。
本申请中的斜向联邦学习(Diagonal Federated Learning,DFL)是一种新的联邦学习类型,斜向联邦学习适用于样本集在样本空间上不完全相同且在特征空间上也不同,且不同数据源对应的样本集中的标签信息不完全相同的情况,即对于同一样本,该样本的标签信息在不同的样本集中可能相同,也可能不同,还有可能一个样本集中有标签信息另一个样本集中没有标签信息。
区块链:区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain)本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。其中,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。
以分布式系统为区块链系统为例,由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
区块链系统中各节点的功能包括:(1)路由,节点具有的基本功能,用于支持节点之间的通信。(2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
本申请实施例提供的联邦学习方法,应用于联邦学习系统,参见图1,该联邦学习系统包括第一计算机设备101和第二计算机设备102,该第一计算机设备101为终端或服务器,该第二计算机设备102为终端或服务器。其中,服务器是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content DeliveryNetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在待训练的机器学习模型包括第一子模型和第二子模型的情况下,第一计算机设备101对第一子模型进行训练,第二计算机设备102对第二子模型进行训练。其中,第一子模型的输入为第一计算机设备提供的第一特征,第二子模型的输入为第一计算机设备提供的第二特征,第一子模型与第二子模型并联,第一计算机设备能够将基于第一子模型得到的中间处理信息发送给第二计算机设备,使第二子模型能够基于接收到的中间处理信息和第二特征得到最终的输出结果,同样地,第二计算机设备能够将基于第二子模型得到的中间处理信息发送给第一计算机设备,使第一子模型能够基于接收到的中间处理信息和第二特征得到最终的输出结果。
在一种可能实现方式中,将联邦学习系统应用于区块链,第一计算机设备和第二计算机设备分别为区块链中的不同节点,每个节点中存储有对应的样本集。
本申请实施例提供的方法可应用于多种场景下。
例如,应用于标签获取模型场景下。
采用本申请实施例提供的联邦学习方法,获取多个样本用户标识在多个数据源的特征,基于多个数据源的特征训练标签获取模型,后续基于训练完成的标签获取模型,对目标用户标识在多个数据源的特征进行处理,得到目标用户标识对应的用户标签。
又例如,应用于风险等级评估场景下。
采用本申请实施例训练的机器学习模型,获取多个样本用户标识在多个数据源的特征,基于多个数据源的特征训练风险评估模型,后续基于训练完成的风险评估模型,对目标用户标识在多个数据源的特征进行处理,为目标用户标识生成对应的表示用户风险等级的用户标签。
或者,还能够应用于物品推荐场景下,好友推荐场景下等。
在采用联邦学习方法训练模型的过程中,需要经过多次迭代过程,本申请实施例以任一次迭代过程为例,对模型训练过程进行说明。
图2是申请实施例提供的一种联邦学习方法的流程图。本申请实施例的交互主体为第一计算机设备和第二计算机设备,参见图2,该方法包括以下步骤:
201、第一计算机设备获取样本标识对应的样本标签信息。
其中,样本标识为第一样本集和第二样本集中均包括的样本标识,该样本标识对应的样本标签信息为样本标识在第一样本集中对应的标签信息。第一样本集为第一计算机设备存储的,第一样本集包括基于样本的第一特征划分的样本标识以及对应的标签信息,第二样本集为第二计算机设备存储的,第二样本集包括基于样本的第二特征划分的样本标识以及对应的标签信息。以样本标识为样本用户标识为例,样本标识用于唯一表示一个用户,样本是指用户的训练数据,该训练数据包括样本标识、样本标识对应的特征以及标签信息。例如,样本标识为身份证号、手机号、用户账号、用户昵称、或者为用户唯一标识的哈希值等。
其中,样本标签信息用于表示样本的特征。例如,样本标签信息用于表示用户的消费水平、购买能力、风险等级等。第一样本集中的标签信息为第一特征对应的样本用户的标签信息,第二样本集中的标签信息为第二特征对应的样本用户的标签信息,标签信息是由人工标注获取到的或者采用其他方式获取的。
第一特征和第二特征均用于表示样本标识对应的用户的特征,但是第一特征和第二特征不完全相同,例如,第一特征和第二特征为不同方面、不同维度的用户特征。例如,该第一特征为用于描述用户的年龄、职业、工资、身高的特征,则第一样本集中的样本标签用于表示用户的属性特征,第二特征为用于描述用户的消费记录、购买记录的特征,则第二样本集中的样本标签用于表示用户的消费水平、购买能力等。该第一特征和第二特征可以用向量或者矩阵表示。
例如,参见图3,第一斜线区域301为样本标识在第一样本集中对应的特征,第二斜线区域302为样本标识在第一样本集中对应的标签信息,第一空白区域303为样本标识在第二样本集中对应的特征,第二空白区域304为样本标识在第二样本集中对应的标签信息,能够看出不同样本集中包括同一样本标识对应的不同特征以及不同的标签信息。在训练机器学习模型时如果仅是根据其中一个样本集中的特征进行训练,则特征较少,模型的训练效率较低且训练得到模型准确率也会较低。
在一种可能实现方式中,确定第一样本集和第二样本集中包括的标签信息,如果第一样本集和第二样本集中同时包括该样本标识对应的标签信息,则不论第一样本集和第二样本集中的标签信息是否相同,采用其中一个样本集的标签信息作为该样本标识对应的样本标签信息;而如果仅是其中一个样本集中包括该样本标识对应的标签信息,则将该样本集中的标签信息作为该样本标识对应的样本标签信息。
在同时采用多个样本标识进行训练的情况下,如果第一样本集和第二样本集中同时包括该多个样本标识对应的标签信息,则不论第一样本集和第二样本集中的标签信息是否相同,采用其中一个样本集中的标签信息作为该多个样本标识对应的样本标签信息,即该多个样本标识对应的样本标签信息均属于同一样本集,也即是样本标签信息属于同一参与方。其中,能够预先设置在第一样本集和第二样本集同时拥有标签信息的情况下,采用哪个样本集中的标签信息。
由于不同样本集中的标签信息是在不同计算机设备中存储的,为了保护标签信息的安全,计算机设备在训练模型的过程中使用的样本标签信息,需要是该计算机设备中存储的标签信息。即如果由第一计算机设备根据样本标签信息训练模型,则第一计算机设备使用第一样本集中的标签信息,如果由第二计算机设备根据样本标签信息训练模型,则第二计算机设备使用第二样本集中的标签信息。换句话说,第一计算机设备和第二计算机设备预先设置由哪个计算机设备来获取梯度算子,则使用该计算机设备中存储的样本集中的标签信息。
本申请实施例以由第一计算机设备来获取梯度算子为例,即使用第一样本集中的标签信息为例进行说明。
在另一种情况下,如果预先设置使用第一样本集中的标签信息,但是第一样本集中不包括该样本标识对应的标签信息,则使用该样本标识在第二样本集中的标签信息。例如,对于三个样本标识,预先设置的是使用第一样本集中的标签信息,但是对于其中一个样本标识,如果第一样本集中没有该样本标识对应的标签信息,则使用该样本标识在第二样本集中的标签信息。
另外,第一样本集和第二样本集的数据源不同,数据源是指样本的来源。可选地,数据源包括第一参与方和第二参与方,第一样本集来自第一参与方,第二样本集来自第二参与方。其中,第一参与方为第一计算机设备所属的一方,第二参与方为第二计算机设备所属的一方。
例如,第一参与方为支付机构,则第一计算机设备是为支付机构提供服务的设备,第二参与方为电商平台,则第二计算机设备是为电商平台提供服务的设备。
202、第一计算机设备获取样本标识对应的第一融合信息。
其中,第一融合信息是由第一计算机设备基于样本标识对应的第一特征和第二特征获取的,即该第一融合信息为样本标识对应的不同特征融合之后得到的信息。
在一种可能实现方式中,由于第一融合信息是由第一计算机设备获取的,而第二特征是第二计算机设备存储的,为了保护第二特征的安全,第一计算机设备获取的第二特征是加密后的特征,第一计算机设备对加密后的第二特征进行解密后与第一特征进行融合,得到第一融合信息。其中,对加密后的第二特征进行解密无法直接得到未加密前的第二特征,保证第一计算机设备无法直接得到第二特征,以保护第二特征的安全。
203、第二计算机设备获取样本标识对应的第二融合信息,向第一计算机设备发送第二融合信息。
其中,第二融合信息是由第二计算机设备基于样本标识对应的第一特征和第二特征获取的,即该第二融合信息为样本标识对应的不同特征融合之后得到的信息。
在一种可能实现方式中,由于第二融合信息是由第二计算机设备获取的,而第一特征是第一计算机设备存储的,为了保护第一特征的安全,第二计算机设备获取的第一特征是加密后的特征,第二计算机设备对加密后的第一特征进行解密后与第二特征进行融合,得到第二融合信息。其中,对加密后的第一特征进行解密无法直接得到未加密前的第一特征,保证第二计算机设备无法直接得到第一特征,以保护第一特征的安全。
由于是由第一计算机设备来获取梯度算子的,因此第二计算机设备获取到第二融合信息之后,将第二融合信息发送给第一计算机设备。
204、第一计算机设备基于第一融合信息、第二融合信息和样本标签信息,获取样本标识对应的梯度算子,向第二计算机设备发送梯度算子。
第一计算机设备调用存储的第一子模型,对第一融合信息和第二融合信息进行处理,得到预测标签信息,再根据预测标签信息和样本标签信息之间的差异,获取样本标识对应的梯度算子。
第一计算机设备得到梯度算子之后,能够基于该梯度算子训练第一子模型。而第二计算机设备由于没有计算梯度算子,因此第一计算机设备需要将梯度算子发送给第二计算机设备,以使第二计算机设备基于该梯度算子训练第二子模型。
205、第一计算机设备和第二计算机设备基于梯度算子,分别调整机器学习模型中第一子模型的模型参数和第二子模型的模型参数。
第一计算机设备基于梯度算子,调整第一子模型的模型参数;第二计算机设备基于梯度算子,调整第二子模型的模型参数。
其中,机器学习模型为线性回归(Linear Regression,LR)模型,逻辑回归(Logistic Regression,LogR)模型和支持向量机(Support Vector Machine,S VM)模型、神经网络网络或其他类型的模型。
需要说明的是,在另一实施例中,第二计算机设备获取样本标识对应的样本标签信息,由第二计算机设备基于第一融合信息、第二融合信息和样本标签信息,获取梯度算子。
本申请实施例提供的方法,由第一计算机设备和第二计算机设备协同训练机器学习模型,采用哪个计算机设备中存储的标签信息,即由哪个计算机设备获取梯度算子,避免将标签信息发送给其他设备,提高了安全性,且能够由一个计算机设备同时采用不同计算机设备获取的融合信息来获取梯度算子,对机器学习模型进行训练,而无需由不同计算机设备分别获取梯度算子来训练机器学习模型,从而提高了模型的训练速度,且丰富了样本的信息量,提高了模型的准确率。。
图4是本申请实施例提供的一种联邦学习方法的流程图。本申请实施例的交互主体为第一计算机设备和第二计算机设备,本申请实施例以第m次迭代训练,且一次迭代过程中采用一个样本标识对应的特征及样本标签信息进行训练为例进行说明,其中,m为大于0的正整数。参见图4,该方法包括以下步骤:
401、第一计算机设备和第二计算机设备获取样本标识。
在一种可能实现方式中,第一计算机设备接收第二计算机设备发送的第二样本集中的多个样本标识,第一计算机设备将接收到的多个样本标识与第一样本集中的多个样本标识进行对比,确定第一样本集和第二样本集中均包括的样本标识,将该样本标识发送给第二计算机设备,也即是对第一样本集和第二样本集进行样本对齐。第一样本集和第二样本集中均包括该样本标识的情况下,第一样本集和第二样本集中也会包括该样本标识对应的特征,从而后续在训练模型的过程中,能够使用不同数据源的特征。
或者,第二计算机设备接收第一计算机设备发送的第一样本集中的多个样本标识,第二计算机设备将接收到的多个样本标识与第二样本集中的多个样本标识进行对比,确定第一样本集和第二样本集中均包括的样本标识,将该样本标识发送给第一计算机设备。
402、第一计算机设备获取样本标识对应的第一特征,第二计算机设备获取样本标识对应的第二特征。
其中,第一特征为样本标识在第一样本集中包括的特征,第二特征为样本标识在第二样本集中包括的特征。例如,第一特征为
Figure BDA0002778642470000141
第二特征为
Figure BDA0002778642470000142
其中,m表示为第m次迭代过程,第一特征和第二特征采用向量、矩阵或其他形式表示。
403、第一计算机设备对第一特征进行加密,得到第二加密信息,将第二加密信息发送给第二计算机设备。
404、第二计算机设备对第二特征进行加密,得到第一加密信息,将第一加密信息发送给第一计算机设备。
其中,第一计算机设备中包括第一掩码、第一公钥和第一公钥对应的第一私钥,第一公钥用于对特征进行加密,第一私钥用于对第一公钥加密后的特征进行解密,该第一公钥和第一私钥作为密钥对使用。该第一掩码、第一公钥和第一私钥为第一计算机设备生成的,或者为其他计算机设备发送给第一计算机设备的。
第二计算机设备中包括第二掩码、第二公钥和第二公钥对应的第二私钥,第二公钥用于对特征进行加密,第二私钥用于对第二公钥加密后的特征进行解密,该第二公钥和第二私钥作为密钥对使用。该第二掩码、第二公钥和第二私钥为第二计算机设备生成的,或者为其他计算机设备发送给第二计算机设备的。
在一种可能实现方式中,采用加法同态加密方式或其他方式对特征进行加密,例如,采用Paillier同态加密算法进行同态加密。
第一计算机设备将第一公钥和第一掩码发送给第二计算机设备,以使第二计算机设备能够使用第一公钥和第一掩码对特征进行加密,第二计算机设备将第二公钥和第二掩码发送给第一计算机设备,以使第一计算机设备能够使用第二公钥和第二掩码对特征进行加密。
在一种可能实现方式中,第一计算机设备中包括样本标识对应的第一特征,第一计算机设备采用第二掩码和第二公钥对第一特征进行加密,得到第二加密信息,将第二加密信息发送给第二计算机设备,避免泄露第一特征的内容,提高第一特征的安全性。例如,第一特征为
Figure BDA0002778642470000151
第二公钥为pk2,第二掩码为R1,进行加密得到第二加密信息为
Figure BDA0002778642470000152
其中,密文空间的运算取决于加密实现形式,
Figure BDA0002778642470000153
表示密文空间的乘法运算,该乘法运算可以是乘法,也可以是乘方;相应的,密文空间的加法运算可以是普通的加法,也可以是乘法。
第二计算机设备中包括样本标识对应的第二特征,第二计算机设备采用第一掩码和第一公钥对第二特征进行加密,得到第一加密信息,将第一加密信息发送给第一计算机设备,避免泄露第二特征,提高第二特征的安全性。例如,未加密的第二特征为
Figure BDA0002778642470000161
第一公钥为pk1,第一掩码为R2,进行加密得到第一加密信息为
Figure BDA0002778642470000162
第二特征为向量、矩阵或其他形式的特征。
在另一种可能实现方式中,第二计算机设备采用第二公钥对第二掩码进行加密,得到加密后的第二掩码,将加密后的第二掩码发送给第一计算机设备,第一计算机设备基于加密后的第二掩码对第一特征进行加密,得到第二加密特征,将第二加密特征发送给第二计算机设备。例如,第二公钥为pk2,第二掩码为R1,进行加密得到加密后的第二掩码pk2(R1),然后基于加密后的第二掩码对第一特征进行处理得到
Figure BDA0002778642470000163
第一计算机设备采用第一公钥对第一掩码进行加密,得到加密后的第一掩码,将加密后的第一掩码发送给第二计算机设备,第二计算机设备基于加密后的第一掩码对第二特征进行加密,得到第一加密特征,将第一加密特征发送给第一计算机设备。例如,第一公钥为pk1,第一掩码为R2,进行加密得到加密后的第一掩码pk1(R2),然后基于加密后的第一掩码对第二特征得到
Figure BDA0002778642470000164
在一种可能实现方式中,得到加密信息之后还会在加密信息中融合噪声,第一计算机设备将第二加密信息与第二噪声进行融合,得到融合后的第二加密信息;第二计算机设备将第一加密信息与第一噪声进行融合,得到融合后的第一加密信息。例如,第二噪声为r1,融合后的第二加密信息为
Figure BDA0002778642470000165
第一噪声为r2,得到融合后的第一加密信息为
Figure BDA0002778642470000166
这种在加密信息中融合噪声的方式,进一步降低了特征泄露的风险,提高了特征的安全性。
需要说明的是,本申请实施例仅是以先执行步骤403再执行步骤404为例进行说明,在另一实施例,能够先执行步骤404再执行步骤403,或者同时执行步骤403和步骤404。
405、第一计算机设备对第一特征进行处理,得到第一信息,对第一加密信息进行解密,得到第二信息。
其中,第一计算机设备基于第一私钥对第一加密信息进行解密,得到解密后的第二信息。例如,对第一加密信息
Figure BDA0002778642470000167
进行解密,得到第二信息
Figure BDA0002778642470000171
在一种可能实现方式中,在第一加密信息中还融合有第一噪声的情况下,对第一加密信息
Figure BDA0002778642470000172
进行解密,得到第二信息
Figure BDA0002778642470000173
在待训练的机器学习模型包括第一子模型和第二子模型的情况下,第一计算机设备存储第一子模型,并对第一子模型进行训练,第二计算机设备存储第二子模型,并对第二子模型进行训练。第一计算机设备调用第一子模型对第一特征
Figure BDA0002778642470000174
进行初步处理,得到第一信息
Figure BDA0002778642470000175
其中,W1为第一子模型的模型参数。
406、第一计算机设备基于第一信息和第二信息,得到第一融合信息。
第一计算机设备将第一信息和第二信息进行融合,得到第一融合信息。例如,第二信息为
Figure BDA0002778642470000176
则得到第一融合信息
Figure BDA0002778642470000177
第二信息为
Figure BDA0002778642470000178
则得到第一融合信息
Figure BDA0002778642470000179
其中,S1表示第一融合信息。
在一种可能实现方式中,在信息中添加有噪声的情况下,为了便于后续去除信息中的噪声,在对第一信息和第二信息进行融合时,在第一融合信息中添加第二噪声r1,得到第一融合信息
Figure BDA00027786424700001710
407、第二计算机设备对第二特征进行处理,得到第三信息,对第二加密信息进行解密,得到第四信息。
第二计算机设备基于第二私钥对第二加密信息进行解密,得到解密后的第四信息。例如,对第二加密信息
Figure BDA00027786424700001711
进行解密,得到解密后的第四信息
Figure BDA00027786424700001712
在一种可能实现方式中,在第二加密信息中还融合有第二噪声的情况下,对第二加密信息
Figure BDA00027786424700001713
进行解密,得到第四信息
Figure BDA00027786424700001714
第二计算机设备调用第二子模型对第二特征
Figure BDA00027786424700001715
进行初步处理,得到第三信息
Figure BDA00027786424700001716
其中,W2为第二子模型的模型参数。其中,第二子模型是第二计算机设备存储的,由第二计算机设备进行训练。
408、第二计算机设备基于第三信息和第四信息,得到第二融合信息。
第二计算机设备将第三信息和第四信息进行融合,得到第二融合信息。例如,第四信息为
Figure BDA00027786424700001717
则得到第二融合信息
Figure BDA00027786424700001718
第四信息为
Figure BDA00027786424700001719
则得到第二融合信息
Figure BDA00027786424700001720
其中,S2表示第二融合信息。
在一种可能实现方式中,在信息中添加有噪声的情况下,为了便于后续去除信息中融合的噪声,在对第三信息和第四信息进行融合时,在第二融合信息中添加第一噪声r2,得到第二融合信息
Figure BDA0002778642470000181
需要说明的是,本申请实施例仅是以先执行步骤405-406再执行步骤407-408为例进行说明,在另一实施例中,能够先执行步骤407-408再执行步骤405-406,或者同时执行步骤405-406和步骤407-408。
409、第二计算机设备将第二融合信息发送给第一计算机设备。
本申请实施例中,以使用第一样本集中的标签信息为例进行说明,则第二计算机设备得到第二融合信息之后,由于标签信息在第一样本集中,第二计算机设备无法获取该标签信息,因此,将第二融合信息发送给第一计算机设备进行处理。
例如,第一计算机设备有对应的标签信息,而第二计算机设备没有对应的标签信息,则使用第一计算机设备中的标签信息,将第二融合信息发送给第一计算机设备;或者,第一计算机设备和第二计算机设备中均存储有对应的标签信息,但是预先设置的是使用第一计算机设备中的标签信息,则也需要将第二融合信息发送给第一计算机设备。
对应地,第一计算机设备和第二计算机设备中均存储有对应的标签信息,但是预先设置的是使用第二计算机设备中的标签信息,则第一计算机设备将第一融合信息发送给第二计算机设备。
需要说明的是,本申请实施例仅是以一个样本标识为例进行说明,在另一实施例中,第一计算机设备和第二计算机设备能够获取多个样本标识;第一计算机设备分别对获取的多个样本标识对应的第一特征进行加密,得到每个样本标识对应的第二加密信息,将每个样本标识对应的第二加密信息发送给第二计算机设备;第二计算机设备分别对获取的多个样本标识对应的第二特征进行加密,得到每个样本标识对应的第一加密信息,将每个样本标识对应的第一加密信息发送给第一计算机设备;第一计算机设获取多个样本标识对应的第一信息,以及对多个样本标识对应的第一加密信息解密得到的第二信息,第一计算机设备分别基于多个样本标识对应的第一信息和第二信息,得到每个样本标识对应的第一融合信息;同理,第二计算机设备得到每个样本标识对应的第二融合信息,第二计算机设备将每个样本标识对应的第二融合信息发送给第一计算机设备,后续对于任一样本标识,采用下述步骤410-步骤414的实施方式对模型进行训练,从而避免每次迭代过程中都需要执行一次上述步骤401-409,以减少第一计算机设备和第二计算机设备之间的数据传输次数,提高训练效率。
410、第一计算机设备调用第一子模型,对第一融合信息和第二融合信息进行处理,得到预测标签信息。
其中,预测标签信息为样本标识对应的样本用户的标签,是通过第一子模型对第一融合信息和第二融合信息进行预测到的。
在一种可能实现方式中,第一计算机设备将第一融合信息和第二融合信息进行融合,对融合后的第三融合信息进行处理。例如,采用下述公式确定预测标签信息:
z=S1+S2
Figure BDA0002778642470000191
其中,z为融合后的第三融合信息,
Figure BDA0002778642470000192
表示预测标签信息,e表示自然对数函数的底数,Sigmoid(z)表示逻辑回归函数。
在一种可能实现方式中,第一融合信息为
Figure BDA0002778642470000193
第二融合信息为
Figure BDA0002778642470000194
的情况下,第一融合信息和第二融合信息中由r1和r2引入的的噪声相互抵消,将第一融合信息和第二融合信息进行融合之后,融合后的第三融合信息中不包括含噪声,实现了对融合信息中噪声的去除。
411、第一计算机设备将样本标签信息和预测标签信息之间的差值,确定为标本标识对应的梯度算子。
其中,梯度算子即表示样本标识对应的预测标签信息与样本标签信息之间的差值。例如,梯度算子为:
Figure BDA0002778642470000195
其中,δ为梯度算子(也称为残差),
Figure BDA0002778642470000196
为预测标签信息,y(m)为样本标签信息。
由于预测标签信息是通过第一子模型及样本特征得到的,样本标签信息是样本标识对应的真实的标签信息,则预测标签信息与样本标签信息之间会存在差异,通过获取预测标签信息与样本标签信息之间的差异,以便后续能够根据该差异对第一子模型进行调整。
412、第一计算机设备基于梯度算子和第一特征,调整第一子模型的模型参数。
在一种可能实现方式中,第一子模型的调整过程包括下述步骤:
1、第一计算机设备根据梯度算子及第一特征,获取第一子模型的第一调整参数。
其中,第一调整参数是用于对第一子模型进行调整的参数。由于在获取样本标识对应的预测标签信息的过程中,第一子模型是对第一特征进行处理的,因此,通过梯度算子与第一特征,可以得到第一子模型的第一调整参数,后续可以通过第一调整参数对第一子模型进行调整。
在一种可能实现方式中,梯度算子为梯度算子矩阵,第一特征为第一特征矩阵,将该梯度算子矩阵与该第一特征矩阵之间的乘积,作为该第一子模型的第一调整参数。
在一种可能实现方式中,根据梯度算子δ及第一特征X1,获取第一子模型的第一调整参数g1,该梯度算子δ、第一特征X1及该第一调整参数g1,满足以下关系:
Figure BDA0002778642470000201
在一种可能实现方式中,如果同时采用多个样本标识对应的特征进行训练,则梯度算子δ、第一特征X1及该第一调整参数g1,满足以下关系:
Figure BDA0002778642470000202
其中,M为样本标识的数量。
2、第一计算机设备根据第一调整参数,对第一子模型进行调整。
通过第一调整参数对第一子模型进行调整,以使通过第一子模型获取的预测标签信息与样本标签信息之间的差异减小,从而使得训练的第一子模型准确。
在一种可能实现方式中,第一子模型的模型参数为W1,根据第一调整参数g1,对第一子模型进行调整,满足以下关系:
W′1=W1-g1
其中,W′1为第一子模型调整后的模型参数。
在另一种可能实现方式中,在考虑第一子模型的学习率的情况下,第一子模型的模型参数为W1,根据第一调整参数g1,对第一子模型进行调整,满足以下关系:
W′1=W11g1
其中,η1为学习率。
413、第一计算机设备将梯度算子发送给第二计算机设备。
414、第二计算机设备基于梯度算子和第二特征,调整第二子模型的模型参数。
由于第二计算机设备没有样本标签信息,无法直接根据样本标签信息对第二子模型进行训练,因此第一计算机设备得到梯度算子之后,将梯度算子发送给第二计算机设备,使第二计算机设备能够根据该梯度算子和第二特征训练第二子模型。
其中,第二计算机设备根据梯度算子和第二特征,对第二子模型进行调整的实施方式与上述步骤410同理。
在一种可能实现方式中,第二子模型的调整过程包括下述步骤:
1、第二计算机设备根据梯度算子及第二特征,获取第二子模型的第二调整参数。
其中,第二调整参数是用于对第二子模型进行调整的参数。由于在获取样本标识对应的预测标签信息的过程中,第二子模型是对第二特征进行处理的,因此,通过梯度算子与第二特征,可以得到第二子模型的第二调整参数,后续可以通过第二调整参数对第二子模型进行调整。
第二计算机设备根据梯度算子δ及第二特征X2,获取第二子模型的第二调整参数g2,该梯度算子δ、第二特征X2及该第二调整参数g2,满足以下关系:
Figure BDA0002778642470000211
在一种可能实现方式中,如果同时采用多个样本标识对应的特征进行训练,则梯度算子δ、第二特征X2及该第二调整参数g2,满足以下关系:
Figure BDA0002778642470000212
2、第二计算机设备根据第二调整参数,对第二子模型进行调整。
通过第二调整参数对第二子模型进行调整,以使通过第二子模型获取的预测标签信息与样本标签信息之间的差异减小,从而使得训练的第二子模型准确。
在一种可能实现方式中,第二子模型的模型参数为W2,根据第二调整参数g2,对第二子模型进行调整,满足以下关系:
W′2=W2-g2
其中,W′2为第二子模型调整后的模型参数。
在另一种可能实现方式中,在考虑第二子模型的学习率的情况下,第二子模型的模型参数为W2,根据第二调整参数g2,对第二子模型进行调整,满足以下关系:
W′2=W22g2
其中,η2为学习率。
上述步骤401-步骤414是一次迭代训练过程,当满足以下任一条件时,认为模型训练完成,停止对机器学习模型的训练:
第一种:在得到梯度算子之后,响应于梯度算子不大于预设阈值,停止对第一子模型和第二子模型进行训练。其中,预设阈值为预先设置的任一数值,如0.3或0.4等。第一子模型的梯度算子用于表示预测标签信息与样本标签信息之间的相似度差异,梯度算子越小,则第一子模型越准确。响应于第一子模型的梯度算子不大于预设阈值,表示此时训练的第一子模型已满足需求,可以停止对第一子模型的迭代训练。
在一种可能实现方式中,第一计算机设备获取梯度算子时,第一计算机设备响应于梯度算子不大于预设阈值,停止对第一子模型进行训练;并将梯度算子发送给第二计算机设备,第二计算机设备响应于梯度算子不大于预设阈值,停止对第二子模型进行训练。
第二种:完成一次训练获取新的样本标识,重复执行上述步骤301-311,对机器学习模型进行迭代训练,响应于迭代次数达到预设次数,则停止对第一子模型和第二子模型进行训练。其中,预设次数为任一次数,例如为50次、100次等。
第三种:机器学习模型训练的时长达到预设时长,则停止对第一子模型和第二子模型进行训练。
第四种:第一子模型和第二子模型的模型参数均收敛。
另外,需要说明的一点是,上述步骤401-步骤414是以一次迭代训练过程中使用一个样本标识进行训练为例进行说明。在另一实施例中,为例提高模型的训练速度,一次迭代训练过程中能够使用多个样本标识进行训练。
需要说明的另一点是,将待训练的多个样本标识划分为多个批次,每个批次中包括的样本标识的数量可以相同,也可以不同,能够同时对该多个批次的样本进行训练,即支持模型的异步训练,能够进一步提高训练速度。例如,将多个样本标识划分为K个批次,即
Figure BDA0002778642470000231
每个批次对应的样本标签信息为y={y(1),y(2),...,y(K)},其中,K为大于1的正整数。另外,在一个批次中包括多个样本标识的情况下,该多个样本标识对应的标签信息属于同一个样本集。
需要说明另一点的是,为了增加线性模型的偏执项,可以认为将样本特征增加一维,且固定增加的一维特征的取值为1。
例如,参见图5,按照图4中的方案来训练机器学习模型。
1、第一计算机设备生成第一公钥pk1和第一私钥sk1,第二计算机设备生成第二公钥pk2和第二私钥sk2
2、第一计算机设备将第一公钥pk1发送给第二计算机设备,第二计算机设备将第二公钥pk2发送给第一计算机设备。
3、第一计算机设备随机生成第一子模型的模型参数W1和第一掩码R2,第二计算机设备随机生成第二子模型的模型参数W2和第二掩码R1
4、第一计算机设备采用第一公钥pk1对第一掩码R2进行同态加密,得到加密后的第一掩码pk1(R2),第二计算机设备采用第二公钥pk2对第二掩码R1进行同态加密,得到加密后的第二掩码pk2(R1)。
5、第一计算机设备将加密后的第一掩码pk1(R2)发送给第二计算机设备,第二计算机设备将加密后的第二掩码pk2(R1)发送给第一计算机设备。
6、第一计算机设备计算第二加密信息
Figure BDA0002778642470000232
并生成第二噪声r1,将第二加密信息和第二噪声进行融合,得到融合噪声后的第二加密信息,
Figure BDA0002778642470000233
第二计算机设备计算第一加密信息
Figure BDA0002778642470000234
并生成第一噪声r2,将第一加密信息和第一噪声进行融合,得到融合噪声后的第一加密信息
Figure BDA0002778642470000235
7、第一计算机设备将融合噪声后的第二加密信息
Figure BDA0002778642470000236
发送给第二计算机设备,第二计算机设备将融合噪声后的第一加密信息
Figure BDA0002778642470000237
发送给第一计算机设备。
8、第一计算机设备对融合噪声后的第一加密信息进行解密,得到第二信息
Figure BDA0002778642470000238
第二计算机设备对融合噪声后的第二加密信息进行解密,得到第四信息
Figure BDA0002778642470000239
9、第一计算机设备计算第一融合信息
Figure BDA00027786424700002310
第二计算机设备计算第二融合信息
Figure BDA0002778642470000241
第一计算机设备基于样本集中的标签信息或预先设置,确定是否将第一融合信息发送给第二计算机设备,第二计算机设备基于样本集中的标签信息或预先设置,确定是否将第二融合信息发送给第一计算机设备。
10、第二计算机设备将第二融合信息发送给第一计算机设备。
11、第一计算机设备基于第一融合信息和第二融合信息,得到梯度算子δ,基于梯度算子δ获取第一调整参数g1,将第一子模型的模型参数更新为W′1=W1-g1
12、第一计算机设备将梯度算子δ发送给第二计算机设备。
13、第二计算机设备基于梯度算子δ获取第二调整参数g2,将第二子模型的模型参数更新为W′2=W2-g2
本申请实施例提供的方法,基于不同的计算机设备训练不同的子模型,无需向其他计算机设备提供原始的特征,避免了数据的泄露,且丰富了特征的信息量,提高了模型的准确性。且与将不同的特征存储于一个计算机设备,由该计算机设备进行处理的方案相比,本申请实施例在不同的计算机设备中分别存储用户的特征,分别对特征进行处理,避免了由其他计算机设备存储特征而导致的信息泄露,提高了安全性。
并且,采用第一计算机设备和第二计算机设备进行联合训练,只需由其中一个计算机设备对融合信息进行处理,获取梯度算子即可,进一步提高了训练速度。且对特征进行加密,避免了特征的泄露,进一步提高了安全性。
并且,在获取梯度算子时,无需对损失函数进行线性近似或多项式近似,能够直接计算得到模型输出与样本标签信息之间的差值,不会对模型性能造成损失。
上述图4所示的实施例中,以使用第一样本集中的标签信息,由第一计算机设备训练第一子模型,得到梯度算子,发送给第二计算机设备,第二计算机设备再根据梯度算子训练第二子模型为例进行说明。在另一实施例中,第一计算机设备为第二计算机设备,第二计算机设备为第一计算机设备,此时能够使用第二样本集中的标签信息,由第二计算机设备训练第二子模型,得到梯度算子,发送给第一计算机设备,第一计算机设备再根据梯度算子训练第一子模型。参见图6,该方法包括以下步骤:
601、第一计算机设备和第二计算机设备获取样本标识。
602、第一计算机设备获取样本标识对应的第一特征,第二计算机设备获取样本标识对应的第二特征。
603、第一计算机设备对第一特征进行加密,得到第二加密特征,将第二加密信息发送给第二计算机设备。
604、第二计算机设备对第二特征进行加密,得到第一加密特征,将第一加密信息发送给第一计算机设备。
605、第一计算机设备对第一特征进行处理,得到第一信息,对第一加密信息进行解密,得到第二信息。
606、第一计算机设备基于第一信息和第二信息,得到第一融合信息。
607、第二计算机设备对第二特征进行处理,得到第三信息,对第二加密信息进行解密,得到第四信息。
608、第二计算机设备基于第三信息和第四信息,得到第二融合信息。
609、第一计算机设备将第一融合信息发送给第二计算机设备。
610、第二计算机设备调用第二子模型,对第一融合信息和第二融合信息进行处理,得到预测标签信息。
611、第二计算机设备将样本标签信息和预测标签信息之间的差值,确定为样本标识对应的梯度算子。
612、第二计算机设备基于梯度算子和第二特征,调整第二子模型的模型参数。
613、第二计算机设备将梯度算子发送给第一计算机设备。
614、第一计算机设备基于梯度算子和第一特征,调整第一子模型的模型参数。
步骤601-步骤614的实施方式与上述步骤401-步骤414的实施方式同理,在此不再赘述。
本申请实施例提供的方法,基于不同的计算机设备训练不同的子模型,无需向其他计算机设备提供原始的特征,避免了数据的泄露,且丰富了特征的信息量,提高了模型的准确性。且与将不同的特征存储于一个计算机设备,由该计算机设备进行处理的方案相比,本申请实施例在不同的计算机设备中分别存储用户的特征,分别对特征进行处理,避免了由其他计算机设备存储特征而导致的信息泄露,提高了安全性。
在另一实施例中,第一次训练机器学习模型的过程中,第一计算机设备采用第一样本集中的标签信息,获取第一梯度算子,获取第一梯度算子的方式与图4中获取梯度算子的方式同理;第二计算机设备采用第二样本集中的标签信息,获取第二梯度算子,获取第二梯度算子的方式与图6中获取梯度算子的方式同理。第一计算机设备将第一梯度算子发送给第二计算机设备,第二计算机设备将第二梯度算子发送给第一计算机设备,第一计算机设备和第二计算机设备根据第一梯度算子和第二梯度算子的大小,确定使用哪个样本集中的标签信息继续进行训练。如果第一梯度算子小于第二梯度算子,则表示第一样本集中的标签信息训练的效果较好,则确定由第一计算机设备执行上述步骤412-步骤414,确定由第一计算机设备获取梯度算子来进行后续的模型训练;如果第二梯度算子小于第一梯度算子,则表示第二样本集中的标签信息训练的效果较好,执行上述步骤612-步骤614,确定由第二计算机设备获取梯度算子来进行后续的模型训练;如果第一梯度算子等于第二梯度算子,执行上述步骤412-步骤414或者上述步骤612-步骤614,即由第一计算机设备或第二计算机设备中任一个来获取梯度算子进行后续的模型训练。
将上述图4所示的联邦学习方法,应用在获取用户标签的场景下,采用下述步骤训练标签获取模型,该标签获取模型包括第一标签获取子模型和第二标签获取子模型。
1、第一计算机设备和第二计算机设备获取样本用户标识。
2、第一计算机设备获取样本用户标识对应的第一用户特征,第二计算机设备获取样本用户标识对应的第二用户特征。
3、第一计算机设备对第一用户特征进行加密,得到第二加密用户信息,将第二加密用户信息发送给第二计算机设备。
4、第二计算机设备对第二用户特征进行加密,得到第一加密用户信息,将第一加密用户信息发送给第一计算机设备。
5、第一计算机设备对第一用户特征进行处理,得到第一用户信息,对第一加密用户信息进行解密,得到第二用户信息。
6、第一计算机设备基于第一用户信息和第二用户信息,得到第一融合用户信息。
7、第二计算机设备对第二用户特征进行处理,得到第三用户信息,对第二加密用户信息进行解密,得到第四用户信息。
8、第二计算机设备基于第三用户信息和第四用户信息,得到第二融合用户信息。
9、第一计算机设备将第一融合用户信息发送给第二计算机设备。
10、第二计算机设备调用第二标签获取子模型,对第一融合用户信息和第二融合用户信息进行处理,得到预测用户标签。
11、第二计算机设备将样本用户标签和预测用户标签之间的差值,确定为样本用户标识对应的梯度算子。
12、第二计算机设备基于梯度算子和第二用户特征,对第二标签获取子模型进行调整。
13、第二计算机设备将梯度算子发送给第一计算机设备。
14、第一计算机设备基于梯度算子和第一用户特征,对第一标签获取子模型进行调整。
例如,用户标签为表示用户风险等级的标签。第一计算机设备为属于支付机构的设备,第二计算机设备为属于电商平台的设备,则第一计算机设备获取到用户的转账记录,第二计算机设备获取到用户的购买记录,在训练标签获取模型时,根据用户的转账记录、购买记录以及样本用户标签进行训练。
同样地,能够将上述图6所示的联邦学习方法,应用于用户标签获取场景下,在此不再赘述。
本申请实施例提供的方法,基于不同的计算机设备训练不同的子模型,无需向其他计算机设备提供原始的特征,避免了数据的泄露,且丰富了特征的信息量,提高了模型的准确性。且与将不同的特征存储于一个计算机设备,由该计算机设备进行处理的方案相比,本申请实施例在不同的计算机设备中分别存储用户的特征,分别对特征进行处理,避免了由其他计算机设备存储特征而导致的信息泄露,提高了安全性。
图7是本申请实施例提供的一种数据处理方法的流程图。本申请实施例的交互主体为第一计算机设备和第二计算机设备,参见图7,该方法包括以下步骤:
701、第一计算机设备对目标标识对应的第一特征进行加密,得到第二加密信息,将第二加密信息发送给第二计算机设备。
702、第二计算机设备对目标标识对应的第二特征进行加密,得到第一加密信息,将第一加密信息发送给第一计算机设备。
703、第一计算机设备对第一特征进行处理,得到第一信息,对第二加密信息进行解密,得到第二信息。
704、第一计算机设备基于第一信息和第二信息,得到第一融合信息。
705、第二计算机设备对第二特征进行处理,得到第三信息,对第二加密信息进行解密,得到第四信息。
706、第二计算机设备基于第三信息和第四信息,得到第二融合信息。
707、第二计算机设备将第二融合信息发送给第一计算机设备。
708、第一计算机设备调用第一子模型,对第一融合信息和第二融合信息进行处理,得到目标标签信息。
其中,目标标识唯一表示待预测标签信息的用户,目标标识对应的第一特征和第二特征是已知的,目标标签信息为采用第一子模型得到的目标标识对应的标签信息。实施方式与上述步骤403-步骤410同理,在此不再赘述。
在另一实施例中,不再执行步骤707-708,而是由第一计算机设备将第一融合信息发送给第二计算机设备,第二计算机设备调用第二子模型,对第一融合信息和第二融合信息进行处理,得到目标标签信息。即是在使用机器学习模型的过程中,能够使用第一子模型或者第二子模型来目标标签信息。
本申请实施例提供的方法,基于机器学习模型获取标签信息时,能够采用任一计算机设备中的处理子模型,避免了数据的泄露,且丰富了特征的信息量。且与将特征发送给其他计算机设备,由该其他计算机设备进行处理的方案相比,本申请实施例在不同的计算机设备中分别存储用户的特征,分别对特征进行处理,避免了由其他计算机设备存储特征而导致的信息泄露,提高了安全性。
图8是本申请实施例提供的一种联邦学习装置的结构示意图。参见图8,该装置包括:
样本标签获取模块801,用于获取样本标识对应的样本标签信息,样本标识为第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,样本标签信息为样本标识在第一样本集中对应的标签信息;
融合信息获取模块802,用于获取样本标识对应的第一融合信息和第二融合信息,第二融合信息是由第二计算机设备发送的;
梯度算子获取模块803,用于基于第一融合信息、第二融合信息和样本标签信息,获取样本标识对应的梯度算子;
参数调整模块804,用于基于梯度算子,调整机器学习模型中第一子模型的模型参数,向第二计算机设备发送梯度算子,以使第二计算机设备基于梯度算子调整机器学习模型中第二子模型的模型参数。
在一种可能实现方式中,参见图9,融合信息获取模块802,包括:
第一获取单元8021,用于基于样本标识对应的第一特征和第二特征,获取第一融合信息,第一特征为第一样本集中样本标识对应的特征,第二特征为第二样本集中样本标识对应的特征;
第二获取单元8022,用于接收第二计算机设备发送的第二融合信息,第二融合信息是由第二计算机设备基于第一特征和第二特征获取的。
在另一种可能实现方式中,参见图9,第一获取单元8021,用于:
对第一特征进行处理,得到样本标识对应的第一信息;
对样本标识对应的第一加密信息进行解密,得到样本标识对应的第二信息,第一加密信息是由第二计算机设备对第二特征进行加密得到的;
第一计算机设备对第一信息和第二信息进行融合,得到第一融合信息。
在另一种可能实现方式中,参见图9,梯度算子获取模块803,包括:
预测标签获取单元8031,用于调用第一子模型,对第一融合信息和第二融合信息进行处理,得到样本标识对应的预测标签信息;
梯度算子获取单元8032,用于将预测标签信息和样本标签信息之间的差值,确定为梯度算子。
在另一种可能实现方式中,参见图9,参数调整模块804,包括:
调整参数获取单元8041,用于基于梯度算子和第一特征,获取第一子模型对应的第一调整参数;
模型参数调整单元8042,用于基于第一调整参数,调整第一子模型的模型参数。
在另一种可能实现方式中,参见图9,该装置还包括:
停止调整模块805,用于响应于梯度算子不大于预设阈值,停止调整第一子模型的模型参数。
在另一种可能实现方式中,参见图9,该装置还包括:
目标标签获取模块806,用于调用第一子模型,对目标标识对应的第一融合信息和第二融合信息进行处理,得到目标标识对应的目标标签信息,目标标识对应的第二融合信息是由第二计算机设备发送的。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的联邦学习装置在进行联邦学习时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的联邦学习装置与联邦学习方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行,以实现上述实施例的联邦学习方法中所执行的操作。
可选地,该计算机设备提供为终端。图10是本申请实施例提供的一种终端1000的结构示意图。该终端1000可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。在一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一条计算机程序,该至少一条计算机程序用于被处理器1001所执行以实现本申请中方法实施例提供的联邦学习方法。
在一些实施例中,终端1000还可选包括有:外围设备接口1003和至少一个外围设备。处理器1001、存储器1002和外围设备接口1003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1003相连。具体地,外围设备包括:射频电路1004、显示屏1005、摄像头组件1006、音频电路1007、定位组件1008和电源1009中的至少一种。
外围设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和外围设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和外围设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1005可以为一个,设置在终端1000的前面板;在另一些实施例中,显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在另一些实施例中,显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
定位组件1008用于定位终端1000的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1008可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯定位系统或欧盟的伽利略定位系统的定位组件。
电源1009用于为终端1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。当电源1009包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、指纹传感器1014、光学传感器1015以及接近传感器1016。
加速度传感器1011可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1011可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1011采集的重力加速度信号,控制显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1011还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1012可以检测终端1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1012采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1013可以设置在终端1000的侧边框和/或显示屏1005的下层。当压力传感器1013设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,由处理器1001根据压力传感器1013采集的握持信号进行左右手识别或快捷操作。当压力传感器1013设置在显示屏1005的下层时,由处理器1001根据用户对显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1014用于采集用户的指纹,由处理器1001根据指纹传感器1014采集到的指纹识别用户的身份,或者,由指纹传感器1014根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1001授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1014可以被设置在终端1000的正面、背面或侧面。当终端1000上设置有物理按键或厂商Logo时,指纹传感器1014可以与物理按键或厂商Logo集成在一起。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制显示屏1005的显示亮度。具体地,当环境光强度较高时,调高显示屏1005的显示亮度;当环境光强度较低时,调低显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1015采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1016,也称距离传感器,设置在终端1000的前面板。接近传感器1016用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制显示屏1005从亮屏状态切换为息屏状态;当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
可选地,该计算机设备提供为服务器。图11是本申请实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central Processing Units,CPU)1101和一个或一个以上的存储器1102,其中,存储器1102中存储有至少一条计算机程序,该至少一条计算机程序由处理器1101加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行,以实现上述实施例的联邦学习方法中所执行的操作。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得计算机设备实现上述实施例的联邦学习方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种联邦学习方法,其特征在于,所述方法包括:
第一计算机设备获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
所述第一计算机设备获取所述样本标识对应的第一融合信息;
所述第二计算机设备获取所述样本标识对应的第二融合信息,向所述第一计算机设备发送所述第二融合信息;
所述第一计算机设备基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,向所述第二计算机设备发送所述梯度算子;
所述第一计算机设备和所述第二计算机设备基于所述梯度算子,分别调整机器学习模型中第一子模型的模型参数和第二子模型的模型参数。
2.根据权利要求1所述的方法,其特征在于,所述第一计算机设备获取所述样本标识对应的第一融合信息,包括:
所述第一计算机设备基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,所述第一特征为所述第一样本集中所述样本标识对应的特征,所述第二特征为所述第二样本集中所述样本标识对应的特征;
所述第二计算机设备获取所述样本标识对应的第二融合信息,包括:
所述第二计算机设备基于所述样本标识对应的第一特征和第二特征,获取所述第二融合信息。
3.根据权利要求2所述的方法,其特征在于,所述第一计算机设备基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,包括:
所述第一计算机设备对所述第一特征进行处理,得到所述样本标识对应的第一信息;
所述第一计算机设备对所述样本标识对应的第一加密信息进行解密,得到所述样本标识对应的第二信息,所述第一加密信息是由所述第二计算机设备对所述第二特征进行加密得到的;
所述第一计算机设备对所述第一信息和所述第二信息进行融合,得到所述第一融合信息。
4.根据权利要求3所述的方法,其特征在于,所述第二计算机设备对所述第二特征进行加密,得到所述第一加密信息;
所述第二计算机设备对所述第一加密信息和第一噪声进行融合,得到融合后的第一加密信息。
5.根据权利要求2所述的方法,其特征在于,所述第二计算机设备基于所述样本标识对应的第一特征和第二特征,获取所述第二融合信息,包括:
所述第二计算机设备对所述第二特征进行处理,得到所述样本标识对应的第三信息;
所述第二计算机设备对所述样本标识对应的第二加密信息进行解密,得到所述样本标识对应的第四信息,所述第二加密信息是由所述第一计算机设备对所述第一特征进行加密得到的;
所述第二计算机设备对所述第三信息和所述第四信息进行融合,得到所述第二融合信息。
6.根据权利要求5所述的方法,其特征在于,所述第一计算机设备对所述第一特征进行加密,得到所述第二加密信息;
所述第一计算机设备对所述第二加密信息和第二噪声进行融合,得到融合后的第二加密信息。
7.根据权利要求1所述的方法,其特征在于,所述第一计算机设备基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,包括:
所述第一计算机设备调用所述第一子模型,对所述第一融合信息和所述第二融合信息进行处理,得到所述样本标识对应的预测标签信息;
所述第一计算机设备将所述预测标签信息和所述样本标签信息之间的差值,确定为所述梯度算子。
8.根据权利要求1所述的方法,其特征在于,所述第一计算机设备和所述第二计算机设备基于所述梯度算子,分别调整机器学习模型中第一子模型的模型参数和第二子模型的模型参数,包括:
所述第一计算机设备基于所述梯度算子和所述第一特征,获取所述第一子模型对应的第一调整参数;
所述第一计算机设备基于所述第一调整参数,调整所述第一子模型的模型参数;
所述第二计算机设备基于所述梯度算子和所述第二特征,获取所述第二子模型对应的第二调整参数;
所述第二计算机设备基于所述第二调整参数,调整所述第二子模型的模型参数。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一计算机设备响应于所述梯度算子不大于预设阈值,停止调整所述第一子模型的模型参数;
所述第二计算机设备响应于所述梯度算子不大于所述预设阈值,停止调整所述第二子模型的模型参数。
10.根据权利要求1所述的方法,其特征在于,所述第一计算机设备和所述第二计算机设备基于所述梯度算子,分别调整机器学习模型中第一子模型的模型参数和第二子模型的模型参数之后,所述方法还包括:
所述第一计算机设备调用所述第一子模型,对目标标识对应的第一融合信息和第二融合信息进行处理,得到所述目标标识对应的目标标签信息,所述目标标识对应的第二融合信息是由所述第二计算机设备发送的;或者,
所述第二计算机设备调用所述第二子模型,对所述目标标识对应的第一融合信息和第二融合信息进行处理,得到所述目标标识对应的目标标签信息,所述目标标识对应的第一融合信息是由所述第一计算机设备发送的。
11.一种联邦学习方法,其特征在于,应用于第一计算机设备,所述方法包括:
获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
获取所述样本标识对应的第一融合信息和第二融合信息,所述第二融合信息是由所述第二计算机设备发送的;
基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子,基于所述梯度算子,调整机器学习模型中第一子模型的模型参数;
向所述第二计算机设备发送所述梯度算子,以使所述第二计算机设备基于所述梯度算子调整所述机器学习模型中第二子模型的模型参数。
12.根据权利要求11所述的方法,其特征在于,所述获取所述样本标识对应的第一融合信息和第二融合信息,包括:
基于所述样本标识对应的第一特征和第二特征,获取所述第一融合信息,所述第一特征为所述第一样本集中所述样本标识对应的特征,所述第二特征为所述第二样本集中所述样本标识对应的特征;
接收所述第二计算机设备发送的所述第二融合信息,所述第二融合信息是由所述第二计算机设备基于所述第一特征和所述第二特征获取的。
13.一种联邦学习装置,其特征在于,所述装置包括:
样本标签获取模块,用于获取样本标识对应的样本标签信息,所述样本标识为所述第一计算机设备存储的第一样本集和第二计算机设备存储的第二样本集中均包括的样本标识,所述样本标签信息为所述样本标识在所述第一样本集中对应的标签信息;
融合信息获取模块,用于获取所述样本标识对应的第一融合信息和第二融合信息,所述第二融合信息是由所述第二计算机设备发送的;
梯度算子获取模块,用于基于所述第一融合信息、所述第二融合信息和所述样本标签信息,获取所述样本标识对应的梯度算子;
参数调整模块,用于基于所述梯度算子,调整机器学习模型中第一子模型的模型参数,向所述第二计算机设备发送所述梯度算子,以使所述第二计算机设备基于所述梯度算子调整所述机器学习模型中第二子模型的模型参数。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以实现如权利要求11所述的联邦学习方法中所执行的操作。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以实现如权利要求1至11所述的联邦学习方法中所执行的操作。
CN202011274264.8A 2020-11-15 2020-11-15 联邦学习方法、装置、计算机设备及介质 Active CN112257876B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011274264.8A CN112257876B (zh) 2020-11-15 2020-11-15 联邦学习方法、装置、计算机设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011274264.8A CN112257876B (zh) 2020-11-15 2020-11-15 联邦学习方法、装置、计算机设备及介质

Publications (2)

Publication Number Publication Date
CN112257876A true CN112257876A (zh) 2021-01-22
CN112257876B CN112257876B (zh) 2021-07-30

Family

ID=74265945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011274264.8A Active CN112257876B (zh) 2020-11-15 2020-11-15 联邦学习方法、装置、计算机设备及介质

Country Status (1)

Country Link
CN (1) CN112257876B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051239A (zh) * 2021-03-26 2021-06-29 北京沃东天骏信息技术有限公司 数据共享方法、应用其的模型的使用方法及相关设备
CN113177645A (zh) * 2021-06-29 2021-07-27 腾讯科技(深圳)有限公司 联邦学习方法、装置、计算设备及存储介质
CN113516249A (zh) * 2021-06-18 2021-10-19 重庆大学 基于半异步的联邦学习方法、系统、服务器及介质
CN113673476A (zh) * 2021-09-02 2021-11-19 京东科技控股股份有限公司 人脸识别模型训练方法、装置、存储介质与电子设备
CN113722738A (zh) * 2021-09-02 2021-11-30 脸萌有限公司 数据保护方法、装置、介质及电子设备
CN113762585A (zh) * 2021-05-17 2021-12-07 腾讯科技(深圳)有限公司 数据的处理方法、账号类型的识别方法及装置
CN113807538A (zh) * 2021-04-09 2021-12-17 京东科技控股股份有限公司 联邦学习方法、装置、电子设备及存储介质
CN113961967A (zh) * 2021-12-13 2022-01-21 支付宝(杭州)信息技术有限公司 基于隐私保护联合训练自然语言处理模型的方法及装置
CN114611128A (zh) * 2022-03-15 2022-06-10 北京字节跳动网络技术有限公司 一种纵向联邦学习方法、装置、系统、设备及存储介质
CN114936631A (zh) * 2021-04-26 2022-08-23 华为技术有限公司 一种模型处理方法及装置
WO2022206498A1 (zh) * 2021-03-31 2022-10-06 华为技术有限公司 一种基于联邦迁移学习的模型训练方法及计算节点
CN115185543A (zh) * 2022-09-09 2022-10-14 腾讯科技(深圳)有限公司 模型部署方法、打包方法、装置、设备及存储介质
WO2023029944A1 (zh) * 2021-08-30 2023-03-09 华为云计算技术有限公司 联邦学习的方法和装置
WO2023040429A1 (zh) * 2021-09-15 2023-03-23 京东科技信息技术有限公司 用于联邦特征工程的数据处理方法、装置、设备以及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165515A (zh) * 2018-08-10 2019-01-08 深圳前海微众银行股份有限公司 基于联邦学习的模型参数获取方法、系统及可读存储介质
CN110288094A (zh) * 2019-06-10 2019-09-27 深圳前海微众银行股份有限公司 基于联邦学习的模型参数训练方法及装置
US20200027019A1 (en) * 2019-08-15 2020-01-23 Lg Electronics Inc. Method and apparatus for learning a model to generate poi data using federated learning
CN111178524A (zh) * 2019-12-24 2020-05-19 中国平安人寿保险股份有限公司 基于联邦学习的数据处理方法、装置、设备及介质
CN111784001A (zh) * 2020-09-07 2020-10-16 腾讯科技(深圳)有限公司 一种模型训练方法、设备及计算机可读存储介质
CN111814985A (zh) * 2020-06-30 2020-10-23 平安科技(深圳)有限公司 联邦学习网络下的模型训练方法及其相关设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165515A (zh) * 2018-08-10 2019-01-08 深圳前海微众银行股份有限公司 基于联邦学习的模型参数获取方法、系统及可读存储介质
CN110288094A (zh) * 2019-06-10 2019-09-27 深圳前海微众银行股份有限公司 基于联邦学习的模型参数训练方法及装置
US20200027019A1 (en) * 2019-08-15 2020-01-23 Lg Electronics Inc. Method and apparatus for learning a model to generate poi data using federated learning
CN111178524A (zh) * 2019-12-24 2020-05-19 中国平安人寿保险股份有限公司 基于联邦学习的数据处理方法、装置、设备及介质
CN111814985A (zh) * 2020-06-30 2020-10-23 平安科技(深圳)有限公司 联邦学习网络下的模型训练方法及其相关设备
CN111784001A (zh) * 2020-09-07 2020-10-16 腾讯科技(深圳)有限公司 一种模型训练方法、设备及计算机可读存储介质

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051239A (zh) * 2021-03-26 2021-06-29 北京沃东天骏信息技术有限公司 数据共享方法、应用其的模型的使用方法及相关设备
WO2022206498A1 (zh) * 2021-03-31 2022-10-06 华为技术有限公司 一种基于联邦迁移学习的模型训练方法及计算节点
CN113807538B (zh) * 2021-04-09 2024-02-06 京东科技控股股份有限公司 联邦学习方法、装置、电子设备及存储介质
WO2022213954A1 (zh) * 2021-04-09 2022-10-13 京东科技控股股份有限公司 联邦学习方法、装置、电子设备及存储介质
CN113807538A (zh) * 2021-04-09 2021-12-17 京东科技控股股份有限公司 联邦学习方法、装置、电子设备及存储介质
CN114936631A (zh) * 2021-04-26 2022-08-23 华为技术有限公司 一种模型处理方法及装置
CN114936631B (zh) * 2021-04-26 2023-06-09 华为技术有限公司 一种模型处理方法及装置
CN113762585A (zh) * 2021-05-17 2021-12-07 腾讯科技(深圳)有限公司 数据的处理方法、账号类型的识别方法及装置
CN113516249A (zh) * 2021-06-18 2021-10-19 重庆大学 基于半异步的联邦学习方法、系统、服务器及介质
CN113516249B (zh) * 2021-06-18 2023-04-07 重庆大学 基于半异步的联邦学习方法、系统、服务器及介质
CN113177645A (zh) * 2021-06-29 2021-07-27 腾讯科技(深圳)有限公司 联邦学习方法、装置、计算设备及存储介质
WO2023029944A1 (zh) * 2021-08-30 2023-03-09 华为云计算技术有限公司 联邦学习的方法和装置
CN113722738A (zh) * 2021-09-02 2021-11-30 脸萌有限公司 数据保护方法、装置、介质及电子设备
CN113673476A (zh) * 2021-09-02 2021-11-19 京东科技控股股份有限公司 人脸识别模型训练方法、装置、存储介质与电子设备
CN113722738B (zh) * 2021-09-02 2023-08-08 脸萌有限公司 数据保护方法、装置、介质及电子设备
CN113673476B (zh) * 2021-09-02 2023-11-07 京东科技控股股份有限公司 人脸识别模型训练方法、装置、存储介质与电子设备
WO2023040429A1 (zh) * 2021-09-15 2023-03-23 京东科技信息技术有限公司 用于联邦特征工程的数据处理方法、装置、设备以及介质
CN113961967B (zh) * 2021-12-13 2022-03-22 支付宝(杭州)信息技术有限公司 基于隐私保护联合训练自然语言处理模型的方法及装置
CN113961967A (zh) * 2021-12-13 2022-01-21 支付宝(杭州)信息技术有限公司 基于隐私保护联合训练自然语言处理模型的方法及装置
CN114611128B (zh) * 2022-03-15 2023-06-06 抖音视界有限公司 一种纵向联邦学习方法、装置、系统、设备及存储介质
CN114611128A (zh) * 2022-03-15 2022-06-10 北京字节跳动网络技术有限公司 一种纵向联邦学习方法、装置、系统、设备及存储介质
CN115185543A (zh) * 2022-09-09 2022-10-14 腾讯科技(深圳)有限公司 模型部署方法、打包方法、装置、设备及存储介质
CN115185543B (zh) * 2022-09-09 2022-11-25 腾讯科技(深圳)有限公司 模型部署方法、打包方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112257876B (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
CN112257876B (zh) 联邦学习方法、装置、计算机设备及介质
CN113177645B (zh) 联邦学习方法、装置、计算设备及存储介质
CN112711774B (zh) 数据处理方法、装置、设备及存储介质
CN112132293A (zh) 纵向联邦学习中的计算方法、装置、设备及介质
CN111080443B (zh) 基于区块链的业务处理方法、装置、设备及存储介质
CN110598879B (zh) 基于区块链的垃圾回收方法、装置、设备及存储介质
CN111275122B (zh) 标签标注方法、装置、设备及可读存储介质
CN111104980B (zh) 确定分类结果的方法、装置、设备及存储介质
CN110689460A (zh) 基于区块链的交通事故数据处理方法、装置、设备及介质
CN112989767B (zh) 医学词语标注方法、医学词语映射方法、装置及设备
CN111476783A (zh) 基于人工智能的图像处理方法、装置、设备及存储介质
CN112217706B (zh) 数据处理方法、装置、设备及存储介质
CN112733970B (zh) 图像分类模型处理方法、图像分类方法及装置
CN112749728A (zh) 学生模型训练方法、装置、计算机设备及存储介质
CN113762971A (zh) 数据加密方法、装置、计算机设备及存储介质
WO2024016611A1 (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN112990053A (zh) 图像处理方法、装置、设备及存储介质
CN112231768B (zh) 数据处理方法、装置、计算机设备及存储介质
CN112561084B (zh) 特征提取方法、装置、计算机设备及存储介质
CN111695629A (zh) 用户特征获取方法、装置、计算机设备及存储介质
CN113822263A (zh) 图像标注方法、装置、计算机设备及存储介质
CN113570510A (zh) 图像处理方法、装置、设备及存储介质
CN110570289A (zh) 基于区块链的业务处理方法、装置、设备及存储介质
CN113569822B (zh) 图像分割方法、装置、计算机设备及存储介质
CN113763932A (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: 40038161

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant