CN111970304A - 消息处理方法和装置 - Google Patents

消息处理方法和装置 Download PDF

Info

Publication number
CN111970304A
CN111970304A CN202010888544.1A CN202010888544A CN111970304A CN 111970304 A CN111970304 A CN 111970304A CN 202010888544 A CN202010888544 A CN 202010888544A CN 111970304 A CN111970304 A CN 111970304A
Authority
CN
China
Prior art keywords
gradient
gradient value
value
target
coordinator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010888544.1A
Other languages
English (en)
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.)
Everbright Technology Co ltd
Original Assignee
Everbright 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 Everbright Technology Co ltd filed Critical Everbright Technology Co ltd
Priority to CN202010888544.1A priority Critical patent/CN111970304A/zh
Publication of CN111970304A publication Critical patent/CN111970304A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种消息处理方法和装置。其中,该方法包括:获取联邦学习中的参与方发送的多个梯度消息,其中,每个梯度消息中分别包括第一梯度值,第一梯度值为参与方使用本地的数据对从联邦学习过程中获取到的第一模型进行训练后,所得到的第一模型的模型参数;获取多个梯度消息各自对应的第一梯度值;根据多个第一梯度值融合得到目标梯度值;将目标梯度值发送给联邦学习中的协调方,以使协调方使用目标梯度值更新协调方本地存储的第一模型。本发明解决了联邦学习中参与方的数据安全性低的技术问题。

Description

消息处理方法和装置
技术领域
本发明涉及神经网络模型训练领域,具体而言,涉及一种消息处理方法和装置。
背景技术
现有技术中,在联邦学习的过程中,参与方将模型训练的梯度值发送给协调方,以使协调方按照梯度值对协调方的模型进行训练。
然而,若是采用上述方法,则由于协调方可以获取各个参与方的梯度值,因此,协调方可能搜集某个参与方发送的梯度值,在梯度值达到一定量之后,可以反推该参与方数据中的信息,从而造成参与方的数据泄密。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种消息处理方法和装置,以至少解决联邦学习中参与方的数据安全性低的技术问题。
根据本发明实施例的一个方面,提供了一种消息处理方法,包括:获取联邦学习中的参与方发送的多个梯度消息,其中,每个上述梯度消息中分别包括第一梯度值,上述第一梯度值为上述参与方使用本地的数据对从上述联邦学习过程中获取到的第一模型进行训练后,所得到的上述第一模型的模型参数;获取上述多个梯度消息各自对应的上述第一梯度值;根据多个上述第一梯度值融合得到目标梯度值;将上述目标梯度值发送给上述联邦学习中的协调方,以使上述协调方使用上述目标梯度值更新上述协调方本地存储的上述第一模型。
根据本发明实施例的另一方面,还提供了一种消息处理装置,包括:第一获取单元,用于获取联邦学习中的参与方发送的多个梯度消息,其中,每个上述梯度消息中分别包括第一梯度值,上述第一梯度值为上述参与方使用本地的数据对从上述联邦学习过程中获取到的第一模型进行训练后,所得到的上述第一模型的模型参数;第二获取单元,用于获取上述多个梯度消息各自对应的上述第一梯度值;融合单元,用于根据多个上述第一梯度值融合得到目标梯度值;发送单元,用于将上述目标梯度值发送给上述联邦学习中的协调方,以使上述协调方使用上述目标梯度值更新上述协调方本地存储的上述第一模型。
作为一种可选的实施例,上述发送单元包括:第一保存模块,用于将上述目标梯度值保存到区块链上,以使上述协调方从上述区块链上读取上述目标梯度值。
作为一种可选的实施例,上述发送单元还包括:第二保存模块,用于在将上述目标梯度值保存到上述区块链上之后,将上述第一梯度值与发送上述第一梯度值的上述参与方的目标标识保存到上述区块链上。
作为一种可选的实施例,上述第一获取单元包括:第三保存模块,用于在每获取到一个上述梯度消息后,将上述梯度消息保存到消息队列中;第二获取模块,用于在上述消息队列中的上述梯度消息的数量达到N的情况下,或者计时器的计时时长达到预定时长的情况下,获取上述消息队列中所有的上述梯度消息,其中,上述N为预设的第一阈值,在获取到上述消息队列中所有的上述梯度消息之后,将上述计时器的上述计时时长置零。
作为一种可选的实施例,上述第三保存模块包括:获取子模块,用于获取使用同态加密公钥加密后的上述梯度消息;保存子模块,用于将使用上述同态加密公钥加密后的上述梯度消息保存到上述消息队列中。
在本发明实施例中,采用了获取联邦学习中的参与方发送的多个梯度消息,其中,每个上述梯度消息中分别包括第一梯度值,上述第一梯度值为上述参与方使用本地的数据对从上述联邦学习过程中获取到的第一模型进行训练后,所得到的上述第一模型的模型参数;获取上述多个梯度消息各自对应的上述第一梯度值;根据多个上述第一梯度值融合得到目标梯度值;将上述目标梯度值发送给上述联邦学习中的协调方,以使上述协调方使用上述目标梯度值更新上述协调方本地存储的上述第一模型的方法,由于在上述方法中可以在获取到参与方的第一梯度值之后,根据各个参与方的第一梯度值融合得到目标梯度值,将目标梯度值发送给协调方,从而协调方不再能够反推出参与方的数据,从而实现了保证参与方的数据的安全性的效果,解决了联邦学习中参与方的数据安全性低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的消息处理方法的流程示意图;
图2是根据本发明实施例的另一种可选的消息处理方法的流程示意图;
图3是根据本发明实施例的一种可选的消息处理方法的模型文件生成示意图;
图4是根据本发明实施例的又一种可选的消息处理方法的流程示意图;
图5是根据本发明实施例的又一种可选的消息处理方法的流程示意图;
图6是根据本发明实施例的又一种可选的消息处理方法的流程示意图;
图7是根据本发明实施例的又一种可选的消息处理方法的流程示意图;
图8是根据本发明实施例的一种可选的消息处理装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种消息处理方法,可选地,作为一种可选的实施方式,如图1所示,上述消息处理方法包括:
S102,获取联邦学习中的参与方发送的多个梯度消息,其中,每个梯度消息中分别包括第一梯度值,第一梯度值为参与方使用本地的数据对从联邦学习过程中获取到的第一模型进行训练后,所得到的第一模型的模型参数;
S104,获取多个梯度消息各自对应的第一梯度值;
S106,根据多个第一梯度值融合得到目标梯度值;
S108,将目标梯度值发送给联邦学习中的协调方,以使协调方使用目标梯度值更新协调方本地存储的第一模型。
可选地,本申请可以但不限于应用于联邦学习的过程中。现有技术中,在联邦学习的过程中,通常是参与方与协调方直接交互,参与方将训练模型得到的梯度值直接发送给协调方。而若是采用此手段,协调方可以通过积累一个参与方发送的大量梯度值而反推出参与方的数据,造成参与方的数据安全性低。本申请中的方法可以在获取到多个参与方的发送的梯度值之后,根据各个梯度值融合得到目标梯度值,并将目标梯度值发送给协调方,以使协调方使用目标梯度值训练模型。该方法协调方无法通过目标梯度值反推出参与方的数据,保证了参与方的数据的安全性。
可选地,本申请中在根据多个第一梯度值融合得到目标梯度值时,可以采用如下步骤:获取区块链上保存的第二梯度值,其中,第二梯度值为协调方在上一次更新第一模型后,保存到区块链上的第一模型的最新的梯度值,将第一梯度值与第二梯度值融合为目标梯度值。
可选地,本申请中可以在获取到梯度消息中的第一梯度值之后,融合得到目标梯度值之后,将目标梯度值发送到区块链上,然后协调方可以获取上述目标梯度值更新模型,更新模型之后,可以将更新模型后的模型参数(梯度值)作为第二梯度值保存到区块链上,以便下一次获取到多个参与方发送的第一梯度值后,与第二梯度值融合确定目标梯度值。第一个第二梯度值可以为将多个第一梯度值融合得到的梯度值。融合梯度值的过程中,可以为计算所有的第一梯度值的融合值,将融合值与第二梯度值进行融合,得到融合后的目标梯度值。
可选地,本申请中还可以记录每一个参与方发送的第一梯度值与该参与方的唯一标识,将第一梯度值与该参与方的唯一标识保存到区块链上,以便后续确定各个参与方的参与度。参与度可以为对模型训练的贡献度。
可选地,本申请中在获取多个参与方各自发送的梯度消息以及获取梯度消息中的第一梯度值时,可以使用一个消息队列获取梯度消息。消息队列可以按照时间先后存储梯度消息。消息队列中的消息每达到一个数量值就获取该消息队列中的梯度消息中的第一梯度值。也可以使用一个计时器计时,每一次计时器计时时长达到预定时长,就获取消息队列汇总的梯度消息中的第一梯度值。
以下结合联邦学习的具体场景解释本申请。
本申请中包括模型训练参与方、消息队列、融合服务、区块链网络、协调方等。各组成部分以TCP/IP协议接入网络。系统框架图如图2的步骤S202到步骤S210所示。
本申请系统由参与方、梯度传递组件、协调者三大部分组成。
参与方包括参与模型优化的各方,可以是手机、PC等终端设备,或者边缘计算等装置,或者组织/机构用于模型训练的设备等。
参与方主要完成如下功能:使用本地数据进行模型训练;使用同态加密库加密训练过程中产生的模型参数梯度值;通过消息队列的客户端将加密后的梯度值发送给消息队列;从协调者获取模型更新;更新本地模型;继续训练。
梯度传递组件包括消息队列,融合服务,区块链网络服务。
消息队列主要用于接收参与方发送过来的第一梯度值(经过同态加密之后的梯度值),通过采用消息队列组件可以满足高并发、大容量的要求。
区块链网络服务主要用于记录融合之后的目标梯度值,以及所有参与贡献此次目标梯度值的参与方的唯一标识信息。基于区块链的防篡改、可追溯机制可以确认参与方的参与情况,保障其相关权益。
融合服务从消息队列中按照一定规则批量读取梯度消息,并从区块链网络中获取模型产生的当前值(第二梯度值),通过算法聚合产生当前值和梯度消息中的第一梯度值值形成新的梯度值(目标梯度值),融合服务将新梯度值和参与贡献此次梯度值(第一梯度值)的参与方ID列表信息写入到区块链中。
协调者可以是一个中立的第三方服务或者企业后端服务,主要完成搭建初始模型,从区块链中读取模型参数中的新梯度值,并使用新梯度值更新模型,在更新模型后将模型同步给参与方,同步方式可以采取参与方主动从协调方拉取的方式,也可以采取协调者主动推送给参与方的方式。
本申请的系统流程如下:
协调者按照约定搭建初始模型(第一模型),并同步给各参与者。协调者使用机器学习库如tensorflow/Keras等创建训练模型,在模型中需要定义占位符和模型参数,并设置模型函数和损失函数,选择指定的梯度下降算法,并保存文件,然后将模型文件发送给各参与方,同时将模型参数初始值使用同态加密公钥加密后写入到区块链中。图3为一种可选内的生成模型文件的示意图。图3中占位符为待输入数据,训练时会用实际数据进行替换,模型参数为将要优化的对象,损失函数用于描述预测值与真实值之间的偏差,梯度下降算法用于找到使损失函数最小的方法,期间会产生各模型产生的梯度值。
参与方A和参与方B从协调者C接收到模型文件,分别准备数据,做数据预处理,然后开始用数据做模型训练。产生模型参数的梯度值,使用同态加密后发给消息队列。参与方从协调者同步模型文件并加载,然后分配读取用于训练的数据,并对数据做预处理操作,例如归一化处理,将所有数据转成[0,1]范围内的值,然后使用预处理过后数据训练模型,训练过程中,使用缓存区缓存模型参数的梯度值,同时进行条件判断,例如缓存区梯度值数量已经达到指定数目,并且当前是发送数据的最佳状态,例如当前已经连接WIFI网络,并且当前设备处于空闲状态等;如果不满足条件,参与方继续训练,如果满足条件,参与方调用同态加密库使用公钥进行加密,之后参与方使用消息队列客户端将加密后第一梯度值发送给消息队列。流程图可以如图4的步骤S402到步骤S416所示。直到训练结束。
伪代码过程如下:
Figure BDA0002656264270000071
Figure BDA0002656264270000081
融合服务作为消息队列的消费者,当有新的消息到达时,融合服务将会做如下处理:
融合服务读取消息,当已读消息数达到一定值(N,N为正整数),或者时间计数达到一定值(预定时长)后,从区块链上读取模型参数当前值,使用融合函数聚合当前值以及梯度值,并将新梯度值和参与方标识列表更新到区块链网络上。交互模块如图5的步骤S502到步骤S506所示,流程如图6所示,直到训练结束。
伪代码过程如下:
Figure BDA0002656264270000082
Figure BDA0002656264270000091
协调者通过从区块链网络上读取最新的梯度值,使用同态加密私钥进行解密,使用解密后的梯度值更新模型参数,产生新的模型文件并发送给各参与方,同时将新的模型参数值使用同态加密公钥加密后发送给区块链网络。由于此处的梯度值已经是经过处理之后的梯度值,例如N(N为正整数)个参与者发送的原梯度值的融合值。融合值可以为计算平均值或者计算加权平均值,将参与者发送的梯度值的融合值与从区块链上获取的第二梯度值的和确定为目标梯度值。此时无法根据目标梯度值反推出每个参与者发送的原梯度值的具体值,从而达到保护参与方隐私的目的。流程图如图7的步骤S702到步骤S714所示。
伪代码流程如下:
//从区块链网络读取梯度值
gradW1,gradW2,…:=read_from_blockchain()
gradW1:=HE_decrypt(gradW1,PriKey)//解密梯度值
gradW2:=HE_decrypt(gradW2,PriKey)
model:=UpdateModel(gradW1,gradW2,…)//更新模型
SaveModel()//保存模型
W1:=getVariable(model,“W1”)//获取模型参数最新值
W2:=getVriable(model,“W2”)
W1:=HE_encrypt(W1,PubKey)//加密模型参数最新值
W2:=HE_encrypt(W2,PubKey)
//将加密后的最新值写入区块链网络
write_to_blockchain(W1,W2,…)
send()//发送模型文件
通过引入梯度传递组件有效解耦参与方和协调者,因为可以采用消息队列,例如rabbitMQ、kafka等,梯度传递组件可以抗住较大并发的请求。同时因为梯度传递组件会使用同态加密公钥聚合梯度值,并将参与方标识一同写入区块链网络,因此协调者不能获得单个参与方贡献的梯度值,同时因为区块链网络的不可篡改性和可追溯性,各参与方可以通过接入区块链网络确认自己的贡献情况,而不需要向协调者进行查询,从而保障参与方的权益(例如通过参与贡献获取积分等)的同时也能保护参与方的隐私。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述消息处理方法的消息处理装置。如图8所示,该装置包括:
第一获取单元802,用于获取联邦学习中的参与方发送的多个梯度消息,其中,每个梯度消息中分别包括第一梯度值,第一梯度值为参与方使用本地的数据对从联邦学习过程中获取到的第一模型进行训练后,所得到的第一模型的模型参数;
第二获取单元804,用于获取多个梯度消息各自对应的第一梯度值;
融合单元806,用于根据多个第一梯度值融合得到目标梯度值;
发送单元808,用于将目标梯度值发送给联邦学习中的协调方,以使协调方使用目标梯度值更新协调方本地存储的第一模型。
可选地,本申请可以但不限于应用于联邦学习的过程中。现有技术中,在联邦学习的过程中,通常是参与方与协调方直接交互,参与方将训练模型得到的梯度值直接发送给协调方。而若是采用此手段,协调方可以通过积累一个参与方发送的大量梯度值而反推出参与方的数据,造成参与方的数据安全性低。本申请中的方法可以在获取到多个参与方的发送的梯度值之后,根据各个梯度值融合得到目标梯度值,并将目标梯度值发送给协调方,以使协调方使用目标梯度值训练模型。该方法协调方无法通过目标梯度值反推出参与方的数据,保证了参与方的数据的安全性。
可选地,本申请中在根据多个第一梯度值融合得到目标梯度值时,可以采用如下步骤:获取区块链上保存的第二梯度值,其中,第二梯度值为协调方在上一次更新第一模型后,保存到区块链上的第一模型的最新的梯度值,将第一梯度值与第二梯度值融合为目标梯度值。
可选地,本申请中可以在获取到梯度消息中的第一梯度值之后,融合得到目标梯度值之后,将目标梯度值发送到区块链上,然后协调方可以获取上述目标梯度值更新模型,更新模型之后,可以将更新模型后的模型参数(梯度值)作为第二梯度值保存到区块链上,以便下一次获取到多个参与方发送的第一梯度值后,与第二梯度值融合确定目标梯度值。第一个第二梯度值可以为将多个第一梯度值融合得到的梯度值。融合梯度值的过程中,可以为计算所有待融合的第一梯度值的融合值,将融合值与第二梯度值的融合结果作为融合后的目标梯度值。融合可以为求和。
可选地,本申请中还可以记录每一个参与方发送的第一梯度值与该参与方的唯一标识,将第一梯度值与该参与方的唯一标识保存到区块链上,以便后续确定各个参与方的参与度。参与度可以为对模型训练的贡献度。
可选地,本申请中在获取多个参与方各自发送的梯度消息以及获取梯度消息中的第一梯度值时,可以使用一个消息队列获取梯度消息。消息队列可以按照时间先后存储梯度消息。消息队列中的消息每达到一个数量值就获取该消息队列中的梯度消息中的第一梯度值。也可以使用一个计时器计时,每一次计时器计时时长达到预定时长,就获取消息队列汇总的梯度消息中的第一梯度值。
本申请的其他实施例可以参见上述实施例,在此不做赘述。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种消息处理方法,其特征在于,包括:
获取联邦学习中的参与方发送的多个梯度消息,其中,每个所述梯度消息中分别包括第一梯度值,所述第一梯度值为所述参与方使用本地的数据对从所述联邦学习过程中获取到的第一模型进行训练后,所得到的所述第一模型的模型参数;
获取所述多个梯度消息各自对应的所述第一梯度值;
根据多个所述第一梯度值融合得到目标梯度值;
将所述目标梯度值发送给所述联邦学习中的协调方,以使所述协调方使用所述目标梯度值更新所述协调方本地存储的所述第一模型。
2.根据权利要求1所述的方法,其特征在于,所述根据多个所述第一梯度值融合得到目标梯度值包括:
获取区块链上保存的第二梯度值,其中,所述第二梯度值为所述协调方在上一次更新所述第一模型后,保存到所述区块链上的所述第一模型的最新的梯度值;
将所述第一梯度值与所述第二梯度值融合为所述目标梯度值。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一梯度值与所述第二梯度值融合为所述目标梯度值包括:
确定多个所述第一梯度值的融合值;
将所述融合值与所述第二梯度值融合,得到所述目标梯度值。
4.根据权利要求1所述的方法,其特征在于,所述将所述目标梯度值发送给所述协调方,以使所述协调方使用所述目标梯度值更新所述协调方本地存储的所述第一模型包括:
将所述目标梯度值保存到区块链上,以使所述协调方从所述区块链上读取所述目标梯度值。
5.根据权利要求4所述的方法,其特征在于,在将所述目标梯度值保存到所述区块链上之后,所述方法还包括:
将所述第一梯度值与发送所述第一梯度值的所述参与方的目标标识保存到所述区块链上。
6.根据权利要求1所述的方法,其特征在于,获取参与方发送的多个梯度消息包括:
在每获取到一个所述梯度消息后,将所述梯度消息保存到消息队列中;
在所述消息队列中的所述梯度消息的数量达到N的情况下,或者计时器的计时时长达到预定时长的情况下,获取所述消息队列中所有的所述梯度消息,其中,所述N为预设的第一阈值;
在获取到所述消息队列中所有的所述梯度消息之后,将所述计时器的所述计时时长置零。
7.根据权利要求6所述的方法,其特征在于,所述在每获取到一个所述梯度消息后,将所述梯度消息保存到消息队列中包括:
获取使用同态加密公钥加密后的所述梯度消息;
将使用所述同态加密公钥加密后的所述梯度消息保存到所述消息队列中。
8.一种消息处理装置,其特征在于,包括:
第一获取单元,用于获取联邦学习中的参与方发送的多个梯度消息,其中,每个所述梯度消息中分别包括第一梯度值,所述第一梯度值为所述参与方使用本地的数据对从所述联邦学习过程中获取到的第一模型进行训练后,所得到的所述第一模型的模型参数;
第二获取单元,用于获取所述多个梯度消息各自对应的所述第一梯度值;
融合单元,用于根据多个所述第一梯度值融合得到目标梯度值;
发送单元,用于将所述目标梯度值发送给所述联邦学习中的协调方,以使所述协调方使用所述目标梯度值更新所述协调方本地存储的所述第一模型。
9.根据权利要求8所述的装置,其特征在于,所述融合单元包括:
第一获取模块,用于获取区块链上保存的第二梯度值,其中,所述第二梯度值为所述协调方在上一次更新所述第一模型后,保存到所述区块链上的所述第一模型的最新的梯度值;
融合模块,用于将所述第一梯度值与所述第二梯度值融合为所述目标梯度值。
10.根据权利要求9所述的装置,其特征在于,所述融合模块包括:
第一确定子模块,用于确定多个所述第一梯度值的融合值;
第二确定子模块,用于将所述融合值与所述第二梯度值融合,得到所述目标梯度值。
CN202010888544.1A 2020-08-28 2020-08-28 消息处理方法和装置 Pending CN111970304A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010888544.1A CN111970304A (zh) 2020-08-28 2020-08-28 消息处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010888544.1A CN111970304A (zh) 2020-08-28 2020-08-28 消息处理方法和装置

Publications (1)

Publication Number Publication Date
CN111970304A true CN111970304A (zh) 2020-11-20

Family

ID=73399988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010888544.1A Pending CN111970304A (zh) 2020-08-28 2020-08-28 消息处理方法和装置

Country Status (1)

Country Link
CN (1) CN111970304A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112738035A (zh) * 2020-12-17 2021-04-30 杭州趣链科技有限公司 一种基于区块链技术的垂直联邦下模型窃取防御方法
CN112799708A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 联合更新业务模型的方法及系统
CN112965735A (zh) * 2021-02-25 2021-06-15 北京奇艺世纪科技有限公司 模型更新方法、装置、设备及计算机可读介质
CN113723619A (zh) * 2021-08-31 2021-11-30 南京大学 一种基于训练阶段感知策略的联邦学习训练方法
CN114548473A (zh) * 2020-11-26 2022-05-27 新智数字科技有限公司 一种资源分配方法、装置、可读介质及电子设备
WO2023033717A3 (zh) * 2021-09-02 2023-04-27 脸萌有限公司 数据保护方法、装置、介质及电子设备
WO2023138152A1 (zh) * 2022-01-20 2023-07-27 广州广电运通金融电子股份有限公司 一种基于区块链的联邦学习方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085277A (en) * 1997-10-15 2000-07-04 International Business Machines Corporation Interrupt and message batching apparatus and method
CN110263936A (zh) * 2019-06-14 2019-09-20 深圳前海微众银行股份有限公司 横向联邦学习方法、装置、设备及计算机存储介质
CN111008709A (zh) * 2020-03-10 2020-04-14 支付宝(杭州)信息技术有限公司 联邦学习、资料风险评估方法、装置和系统
CN111310932A (zh) * 2020-02-10 2020-06-19 深圳前海微众银行股份有限公司 横向联邦学习系统优化方法、装置、设备及可读存储介质
CN111552986A (zh) * 2020-07-10 2020-08-18 鹏城实验室 基于区块链的联邦建模方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085277A (en) * 1997-10-15 2000-07-04 International Business Machines Corporation Interrupt and message batching apparatus and method
CN110263936A (zh) * 2019-06-14 2019-09-20 深圳前海微众银行股份有限公司 横向联邦学习方法、装置、设备及计算机存储介质
CN111310932A (zh) * 2020-02-10 2020-06-19 深圳前海微众银行股份有限公司 横向联邦学习系统优化方法、装置、设备及可读存储介质
CN111008709A (zh) * 2020-03-10 2020-04-14 支付宝(杭州)信息技术有限公司 联邦学习、资料风险评估方法、装置和系统
CN111552986A (zh) * 2020-07-10 2020-08-18 鹏城实验室 基于区块链的联邦建模方法、装置、设备及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114548473A (zh) * 2020-11-26 2022-05-27 新智数字科技有限公司 一种资源分配方法、装置、可读介质及电子设备
CN112738035A (zh) * 2020-12-17 2021-04-30 杭州趣链科技有限公司 一种基于区块链技术的垂直联邦下模型窃取防御方法
CN112965735A (zh) * 2021-02-25 2021-06-15 北京奇艺世纪科技有限公司 模型更新方法、装置、设备及计算机可读介质
CN112965735B (zh) * 2021-02-25 2023-07-14 北京奇艺世纪科技有限公司 模型更新方法、装置、设备及计算机可读介质
CN112799708A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 联合更新业务模型的方法及系统
CN112799708B (zh) * 2021-04-07 2021-07-13 支付宝(杭州)信息技术有限公司 联合更新业务模型的方法及系统
CN113723619A (zh) * 2021-08-31 2021-11-30 南京大学 一种基于训练阶段感知策略的联邦学习训练方法
WO2023033717A3 (zh) * 2021-09-02 2023-04-27 脸萌有限公司 数据保护方法、装置、介质及电子设备
WO2023138152A1 (zh) * 2022-01-20 2023-07-27 广州广电运通金融电子股份有限公司 一种基于区块链的联邦学习方法和系统

Similar Documents

Publication Publication Date Title
CN111970304A (zh) 消息处理方法和装置
WO2022247576A1 (zh) 一种数据处理方法、装置、设备及计算机可读存储介质
CN101420428B (zh) 加密模块管理装置和方法
CN109740384A (zh) 基于区块链的数据存证方法和装置
US20090041249A1 (en) Method and system for managing a key for encryption or decryption of data
CN110400164B (zh) 数据确定方法和装置、存储介质及电子装置
AU2009252121B2 (en) Method and apparatus for managing tokens for digital rights management
EP3882840A1 (en) Terminal and method for making contract in blockchain type by using digital content original copy confirmation key
CN104365127B (zh) 用于在远程显示单元上追踪移动设备的方法
CN109218291B (zh) 一种基于区块链的数据流转方法、系统及相关设备
CN106960166A (zh) 一种基于分布式总账技术的智能插座管理系统及其方法
CN113079139B (zh) 基于区块链的共识组主节点确定方法、装置及系统
CN108829539A (zh) 数据备份、数据恢复方法及设备
CN110121860A (zh) 基于区块链的数据处理方法、设备和系统
CN110581839A (zh) 内容保护方法及装置
CN112749812A (zh) 一种联合学习系统、训练结果聚合的方法及设备
CN113065857A (zh) 支付过程中的数据处理方法、装置、设备、介质及产品
CN110378753A (zh) 一种广告投放策略确定方法及装置
CN103533014A (zh) 一种用于提供临时扩展空间的方法及系统
CN109818754B (zh) 客户端为多个客户端和单一服务器生成密钥的方法、设备
CN103026683A (zh) 通信系统、通信设备、通信方法和计算机程序
CN110598427B (zh) 数据的处理方法、系统和存储介质
CN106713298A (zh) 一种通信方法及设备
CN108882230B (zh) 通话记录管理方法、装置及系统
CN115794947A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201120

RJ01 Rejection of invention patent application after publication