CN113128700A - 安全多方计算的联邦模型训练加速的方法和系统 - Google Patents

安全多方计算的联邦模型训练加速的方法和系统 Download PDF

Info

Publication number
CN113128700A
CN113128700A CN202110317572.2A CN202110317572A CN113128700A CN 113128700 A CN113128700 A CN 113128700A CN 202110317572 A CN202110317572 A CN 202110317572A CN 113128700 A CN113128700 A CN 113128700A
Authority
CN
China
Prior art keywords
party
random matrix
participants
fragments
model
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
CN202110317572.2A
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.)
Tongdun Technology Co ltd
Tongdun Holdings Co Ltd
Original Assignee
Tongdun Technology Co ltd
Tongdun Holdings 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 Tongdun Technology Co ltd, Tongdun Holdings Co Ltd filed Critical Tongdun Technology Co ltd
Priority to CN202110317572.2A priority Critical patent/CN113128700A/zh
Publication of CN113128700A publication Critical patent/CN113128700A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

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

Abstract

本申请涉及一种安全多方计算的联邦模型训练加速的方法和系统,其中,该方法包括:在第三方等待参与方传输数据进行比较迭代计算的过程中,第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方;参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片;参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。通过本申请,提高了服务器的效率和可用性,并提高了计算效率。

Description

安全多方计算的联邦模型训练加速的方法和系统
技术领域
本申请涉及计算机领域,特别是涉及安全多方计算的联邦模型训练加速的方法和系统。
背景技术
安全多方计算是联邦机器学习中的重要技术,能在保证数据隐私的条件下,计算隐私数据的函数,例如,对于多个参与方的联合神经网络建模训练可以通过安全多方计算,计算得到数据对于模型参数的梯度,继而更新模型。此外,安全多方计算的应用广泛,不但可以应用在跨样本的联邦学习,也可以应用于跨特征的联邦学习,还可以用于单一函数计算,如多头贷的总额计算等。
安全多方计算有多种实现方式,本申请设定的安全多方计算是含有第三方的基于加法秘密分享的安全多方计算形式。在这个形式下,参与者分为持有私有数据的机构和一个第三方。持有私有数据的机构在安全多方计算后得到需要的结果,第三方在运算过程中起辅助作用,但无法知道最终计算结果。
第三方的辅助操作主要包含2种:1)在矩阵乘法,点乘等操作中生成随机矩阵,并且对随机矩阵相乘分片发送给各个参与方。2)在比较等判断中,检查收到的数列是否符合某个特征。
安全多方计算过程中包含多次参与方与参与方,或者参与方与第三方之间的网络传输,而网络传输延时是安全多方计算的重要性能瓶颈。在相关技术中,一种常用的加速计算方法是离线加速法,在运行安全多方计算前,由第三方生成足够量的随机矩阵,并且传输存储在参与方的缓冲池中,节省第三方生成随机矩阵并且相乘,以及从第三方传回随机矩阵分片的时间,然而,由于离线运算本身需要占用大量时间,而且对于机器学习模型训练等任务,训练包含多个迭代,需要预先生成大量的随机矩阵,会占用大量的计算资源和时间。因此,采用离线加速计算会导致任务的灵活性降低。
目前针对相关技术中,在对联邦机器学习模型训练进行安全多方计算过程中,由于生成大量随机矩阵需要占用的计算时间和资源过大,而导致的模型训练任务灵活性差和计算效率低的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了安全多方计算的联邦模型训练加速的方法和系统,至少解决相关技术中在对联邦机器学习模型训练进行安全多方计算过程中,由于生成大量随机矩阵需要占用的计算时间和资源过大,而导致的模型训练任务灵活性差和计算效率低的问题。
第一方面,本申请实施例提供了一种安全多方计算的联邦模型训练加速方法,应用于联邦机器学习模型训练系统中,所述系统包括:参与方和第三方,所述方法包括:
在所述第三方等待所述参与方传输数据进行比较迭代计算的过程中,所述第三方异步运行生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方;
所述参与方根据所述参与方的特征碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片;
所述参与方之间分享更新后的所述模型参数碎片,恢复完整的模型参数,完成所述线性回归模型的训练。
在其中一些实施例中,所述第三方异步运行的过程包括:
所述第三方生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方,辅助所述参与方进行矩阵乘法迭代计算;
所述第三方获取所述参与方的传输数据,进行比较迭代计算;
所述第三方接收所述参与方发送的停止信息,并根据所述停止信息停止生成随机矩阵以所述及随机矩阵积的碎片。
在其中一些实施例中,在所述参与方有标签的情况下,所述参与方的标签被分割为标签碎片,所述迭代计算更新线性回归模型的所述模型参数碎片包括:
所述参与方根据所述参与方的特征碎片、所述标签碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片。
在其中一些实施例中,在完成所述线性回归模型的训练之前,所述方法包括:
所述参与方判断所述线性回归模型是否达到预定的收敛条件;
若达到所述预定的收敛条件,则所述参与方向所述第三方发送停止信息以通知所述第三方停止生成随机矩阵以及所述随机矩阵积的碎片。
在其中一些实施例中,在有多个参与方的情况下,所述方法包括:
在所述多个参与方中一个参与方判断所述线性回归模型达到预定的收敛条件的情况下,通知所述多个参与方中的其他参与方和所述第三方停止运行。
在其中一些实施例中,所述线性回归模型包括:逻辑斯蒂回归模型。
第二方面,本申请实施例提供了一种安全多方计算的联邦模型训练加速系统,应用于联邦机器学习模型训练系统中,所述系统包括:参与方和第三方,
第三方模块,在所述第三方等待所述参与方传输数据进行比较迭代计算的过程中,所述第三方异步运行生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方;
模型训练模块,所述参与方根据所述参与方的特征碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片,
所述参与方之间分享更新后的所述模型参数碎片,恢复完整的模型参数,完成所述线性回归模型的训练。
在其中一些实施例中,所述第三方模块还包括:
所述第三方生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方,辅助所述参与方进行矩阵乘法迭代计算;
所述第三方获取所述参与方的传输数据,进行比较迭代计算;
所述第三方接收所述参与方发送的停止信息,并根据所述停止信息停止生成随机矩阵以所述及随机矩阵积的碎片。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项所述的安全多方计算的联邦模型训练加速方法。
第四方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项所述的安全多方计算的联邦模型训练加速方法。
相比于相关技术,本申请实施例提供的一种安全多方计算的联邦模型训练加速方法,应用于联邦机器学习模型训练系统中,该系统包括:参与方和第三方;在第三方等待参与方传输数据进行比较迭代计算的过程中,第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方;参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片;参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。由于在联邦学习的迭代训练中,第三方的计算负载往往相对于参与方比较小,因此,利用这一点,在第三方等待参与方传输来的数据做辅助计算的过程中,先异步运行后续迭代需要生成的随机矩阵,以及随机矩阵的积,并且提前传输给参与方。这样,在多轮迭代后,参与方运算到需要请求第三方生成随机矩阵的时候,第三方早已把需要的随机矩阵以及随机矩阵的积发送到了参与方,参与方可以立即收取需要的随机矩阵以及随机矩阵的积做后续的运算,有效利用了第三方等待的空载时间,解决了在对联邦机器学习模型训练进行安全多方计算过程中,由于生成大量随机矩阵需要占用的计算时间和资源过大,而导致的模型训练任务灵活性差和计算效率低的问题,提高了服务器的效率和可用性,提高了计算效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的安全多方计算的联邦模型训练加速方法的流程图;
图2是根据本申请实施例的基于安全多方计算的矩阵乘法的时序示意图;
图3是根据本申请实施例的安全多方计算的联邦模型训练加速系统的结构框图;
图4是根据本申请实施例的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本申请提供了一种安全多方计算的联邦模型训练加速的方法,图1是根据本申请实施例的安全多方计算的联邦模型训练加速方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,在第三方等待参与方传输数据进行比较迭代计算的过程中,第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方;
需要说明的是,在安全多方计算的过程中,初始时,需要对参与方的隐私数据进行预处理,以下为具体的预处理过程:分割存储参与方的隐私数据的特征、模型函数的参数,得到参与方特征碎片和模型参数碎片,接着参与方之间分享该特征碎片和模型参数碎片,最后对上述获得的特征碎片以及模型参数碎片进行初始化赋值,例如,通过计算机设定对参与方的模型参数碎片进行初始化随机赋值,令参与方的模型参数碎片W1=[0.05,-0.01],这个值可以在[-0.1,0.1]区间内随机选择。通过上述将参与方的隐私数据和模型参数进行分割处理得到数据碎片后互相分享,并将这些碎片进行初始化赋值,能有效保护参与方的隐私数据;
另外,在上述参与方进行数据预处理的同时,第三方同步启动,在等待参与方传输数据进行比较迭代计算的过程中,该第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方。图2是根据本申请实施例的基于安全多方计算的矩阵乘法的时序示意图,如图2所示,第一行是第三方的运行时序图,其中第一段的0.747秒是第三方计算生成随机矩阵的时间,第二段的0.539秒是第三方将随机矩阵传输给参与方所用的网络传输时间;第二行和第三行则是参与方的运行时序图,其中第一段的3.074秒和3.346秒是两个参与方等待第三方传输和计算随机矩阵分片的时间,第二段的1.823秒和2.001秒是两个参与方互相传输数据的时间,第三段的2.083秒和1.546秒是两个参与方本地计算的时间。从图2可以看到,第三方的运行时间显著小于参与方的运行时间,且参与方等待第三方计算和传输随机矩阵的时间占据了整个运行时间的三分之一,本实施例为了减少参与方这部分等待第三方计算和传输的空载时间,第三方提前异步运行后续迭代计算需要生成的随机矩阵和随机矩阵积的碎片,并提前传输给参与方。这样,在经过多轮迭代计算后,当参与方运算到需要请求第三方生成随机矩阵的时候,第三方早已把需要的随机矩阵发送到了参与方,参与方可以立即收取需要的随机矩阵立刻做后续的矩阵乘法或比较运算。有效利用了第三方等待的空载时间,节省了参与方等待第三方计算和网络传输的时间,提高了计算效率。
步骤S102,参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片;
经过上述步骤S101中对参与方的隐私数据进行预处理,得到参与方的特征碎片和参与方的模型参数碎片,以及第三方异步运行生成并传输随机矩阵以及随机矩阵积的碎片给参与方后,参与方根据参与方的特征碎片、参与方的模型参数碎片,以及第三方传输的随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片。
在其中一些实施例中,在参与方有标签的情况下,参与方的标签被分割为标签碎片,参与方根据参与方的特征碎片、标签碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片。
优选的,本实施例以逻辑斯蒂回归模型为例,利用逻辑斯蒂回归的算法进行迭代计算更新模型参数碎片,其中,逻辑斯蒂回归的模型函数如下式1所示:
Figure BDA0002989470810000061
其中,x是参与方或其他参与方的输入特征,w是模型参数的特征系数,b是模型参数的偏置量,
Figure BDA0002989470810000062
是模型函数输出。
以下为具体的迭代计算过程:
首先,参与方通过第三方传输的随机矩阵和随机矩阵积的碎片进行矩阵乘法迭代计算,计算得到中间量a,计算公式如下式2所示:
a=matmul(w,x)+b (2)
其中,x是参与方的输入特征,w是模型参数的特征系数,b是模型参数的偏置量;
接着,第三方获取参与方的传输数据进行比较迭代计算,并将计算结果传输给参与方,得到模型输出结果o,计算公式如下式3所示:
o=sigmoid(a) (3)
然后,参与方计算梯度更新量
Figure BDA0002989470810000071
计算公式如下式4所示:
Figure BDA0002989470810000072
其中,y是数据标签;
进一步地,参与方通过第三方传输的随机矩阵以及随机矩阵积的碎片进行矩阵乘法迭代计算,计算得到梯度更新量
Figure BDA0002989470810000073
计算公式如下式5和6所示:
Figure BDA0002989470810000074
Figure BDA0002989470810000075
其中,L是目标函数,y是数据标签,x是参与方的输入特征,w是模型参数的特征系数,b是模型参数的偏置量,
Figure BDA0002989470810000076
是模型函数输出。
最后,在计算得到梯度更新量
Figure BDA0002989470810000077
Figure BDA0002989470810000078
后,参与方根据模型参数更新公式更新模型参数碎片,其中,模型参数更新公式如下式7和8所示:
Figure BDA0002989470810000079
Figure BDA00029894708100000710
其中,α是学习率参数,L是目标函数,w是模型参数的特征系数,b是模型参数的偏置量。
步骤S103,参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。
优选的,在参与方的模型参数碎片更新完成后,参与方之间分享更新后的模型参数碎片,恢复得到完整的模型参数,完成整个逻辑斯蒂回归模型的训练。例如,在训练完成后,存储在参与方中的模型参数碎片W1=[-10000,235],存储在另一个参与方中的模型参数碎片W2=[9999,-233],通过两方之间的互相分享,恢复得到真实的模型参数W=[-1,2]。
在其中一些实施例中,在完成线性回归模型的训练之前,参与方会判断线性回归模型是否达到预定的收敛条件,若达到该预定的收敛条件,则参与方会向第三方发送停止信息以通知第三方停止生成随机矩阵以及随机矩阵积的碎片。可选的,本实施例中由于第三方无法自己判断何时停止生成并发送随机矩阵和随机矩阵积的碎片,因此,需要是参与方去主动通知第三方停止,其中,参与方可以通过预定的收敛条件判断是否发送停止信息给第三方,比如当前模型是否达到预定收敛条件,模型算法的准确性是否达到预期等;若模型已经达到预定的收敛条件,则参与方通知第三方停止,此时,第三方可能已经运行到后面的循环,甚至做了很多多余的计算,但是并没有浪费整个模型训练的总体时间,反而能有效提高训练效率。
此外,在其中一些实施例中,在有多个参与方的情况下,多个参与方中的一个参与方能主动判断线性回归模型是否达到预定的收敛条件,在该参与方判断模型达到收敛条件的情况下,该参与方会通知多个参与方中的其他参与方和第三方停止运行。
通过上述步骤S101至步骤S103,相对于现有技术中,采用离线加速法占用大量时间,而且对于机器学习模型训练等任务,训练包含多个迭代,需要预先生成大量的随机矩阵,会占用大量的计算资源和时间,导致任务的灵活性降低的问题。本实施例中在第三方等待参与方传输数据进行比较迭代计算的过程中,第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方;参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片;参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。解决了在对联邦机器学习模型训练进行安全多方计算过程中,由于生成大量随机矩阵需要占用的计算时间和资源过大,而导致的模型训练任务灵活性差和计算效率低的问题,提高了服务器的效率和可用性,提高了计算效率。
在其中一些实施例中,第三方异步运行的过程包括:
(1)第三方生成随机矩阵以及随机矩阵积的碎片,并传输给参与方,辅助参与方进行矩阵乘法迭代计算;
(2)第三方获取参与方的传输数据,进行比较迭代计算,并将得到的计算结果传输给参与方;
(3)第三方接收参与方发送的停止信息,并根据停止信息停止生成随机矩阵以及随机矩阵积的碎片。
本实施例中第三方能同时运行上述的独立进程,一个进程是始终计算辅助参与方进行矩阵乘法迭代计算需要的操作;另一个进程是依次等待参与方的传输数据,进行迭代比较操作。此外,第三方在接受到参与方发送的停止信息后,会立即停止运行,不受其他进程的影响。因此,上述进程之间互不影响,能有效提高计算效率。
在其中一些实施例中,随机矩阵中的每个元素从-263到263-1内按相等概率随机选择。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例还提供了一种安全多方计算的联邦模型训练加速系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本申请实施例的安全多方计算的联邦模型训练加速系统的结构框图,如图3所示,该系统包括第三方模块31和模型训练模块32:
第三方模块31,用于在第三方等待参与方传输数据进行比较迭代计算的过程中,第三方异步运行生成随机矩阵以及随机矩阵积的碎片,并传输给参与方;模型训练模块32,用于参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片,参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。
通过上述系统,第三方模块31为了减少参与方这部分等待第三方计算和传输的空载时间,第三方提前异步运行后续迭代计算需要生成的随机矩阵和随机矩阵积的碎片,并提前传输给参与方。这样,在经过多轮迭代计算后,当参与方运算到需要请求第三方生成随机矩阵的时候,第三方早已把需要的随机矩阵发送到了参与方,参与方可以立即收取需要的随机矩阵立刻做后续的矩阵乘法或比较运算。有效利用了第三方等待的空载时间,节省了参与方等待第三方计算和网络传输的时间,提高了计算效率;模型训练模块32中参与方根据参与方的特征碎片、参与方的模型参数碎片、随机矩阵以及随机矩阵积的碎片,进行迭代计算更新线性回归模型的模型参数碎片,参与方之间分享更新后的模型参数碎片,恢复完整的模型参数,完成线性回归模型的训练。整个系统解决了在对联邦机器学习模型训练进行安全多方计算过程中,由于生成大量随机矩阵需要占用的计算时间和资源过大,而导致的模型训练任务灵活性差和计算效率低的问题,提高了服务器的效率和可用性,提高了计算效率。
下面结合应用场景对本发明进行详细的说明。
本发明的目的是提供一种安全多方计算的联邦模型训练加速方法,表1是根据本申请实施例的应用于联邦机器学习模型训练的安全多方计算加速的具体流程图,如表1所示。
表1
Figure BDA0002989470810000101
本实施例中的安全多方计算加速的方法的技术方案的流程步骤包括:
S1,分割存储参与方隐私数据XA的特征,得到参与方特征碎片:XA1和XA2;分割存储有标签参与方隐私数据XB的特征与标签Y,得到有标签参与方特征碎片和标签碎片:XB1、XB2、Y1、Y2;接着分割存储模型函数的参数W、B,得到模型参数碎片:W1、B1、W2、B2,并将W1、B1存储在参与方中,将W2、B2存储在有标签参与方中;
S2,参与方将XA2传输给有标签参与方,有标签参与方将XB1和Y1传输给参与方;
S3,初始化参与方中的碎片:XA1、XB1、Y1、W1和B1,初始化有标签参与方中的碎片:XA2、XB2、Y2、W2和B2;
S4,参与方和有标签参与方获取第三方异步运行生成的随机矩阵和随机矩阵积的碎片进行矩阵乘法迭代计算,分别计算得到中间量A1和A2;
S5,第三方获取参与方和有标签参与方的传输数据,通过传输数据进行比较迭代计算,并将该计算结果传输给参与方,分别得到模型输出结果O1和O2;
S6,参与方和有标签参与方本地计算梯度更新量
Figure BDA0002989470810000111
分别得到DL_DB1和DL_DB2;
S7,参与方和有标签参与方根据模型参数更新公式,更新模型参数碎片W1、B1、W2和B2;
S8,参与方将更新后的模型参数碎片W1、B1分享给有标签参与方,有标签参与方将更新后的模型参数碎片W2、B2分享给参与方,恢复完整的模型参数,得到训练完成后的模型参数W、B。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
另外,结合上述实施例中的安全多方计算的联邦模型训练加速方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种安全多方计算的联邦模型训练加速方法。
在一个实施例中,图4是根据本申请实施例的电子设备的内部结构示意图,如图4所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图4所示。该电子设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的数据库用于存储数据。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种安全多方计算的联邦模型训练加速方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种安全多方计算的联邦模型训练加速方法,其特征在于,应用于联邦机器学习模型训练系统中,所述系统包括:参与方和第三方,所述方法包括:
在所述第三方等待所述参与方传输数据进行比较迭代计算的过程中,所述第三方异步运行生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方;
所述参与方根据所述参与方的特征碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片;
所述参与方之间分享更新后的所述模型参数碎片,恢复完整的模型参数,完成所述线性回归模型的训练。
2.根据权利要求1所述的方法,其特征在于,所述第三方异步运行的过程包括:
所述第三方生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方,辅助所述参与方进行矩阵乘法迭代计算;
所述第三方获取所述参与方的传输数据,进行比较迭代计算;
所述第三方接收所述参与方发送的停止信息,并根据所述停止信息停止生成随机矩阵以所述及随机矩阵积的碎片。
3.根据权利要求1所述的方法,其特征在于,在所述参与方有标签的情况下,所述参与方的标签被分割为标签碎片,所述迭代计算更新线性回归模型的所述模型参数碎片包括:
所述参与方根据所述参与方的特征碎片、所述标签碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片。
4.根据权利要求1所述的方法,其特征在于,在完成所述线性回归模型的训练之前,所述方法包括:
所述参与方判断所述线性回归模型是否达到预定的收敛条件;
若达到所述预定的收敛条件,则所述参与方向所述第三方发送停止信息以通知所述第三方停止生成随机矩阵以及所述随机矩阵积的碎片。
5.根据权利要求1至4任一项所述的方法,其特征在于,在有多个参与方的情况下,所述方法包括:
在所述多个参与方中一个参与方判断所述线性回归模型达到预定的收敛条件的情况下,通知所述多个参与方中的其他参与方和所述第三方停止运行。
6.根据权利要求5所述的方法,其特征在于,所述线性回归模型包括:逻辑斯蒂回归模型。
7.一种安全多方计算的联邦模型训练加速系统,其特征在于,应用于联邦机器学习模型训练系统中,所述系统包括:参与方和第三方,
第三方模块,在所述第三方等待所述参与方传输数据进行比较迭代计算的过程中,所述第三方异步运行生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方;
模型训练模块,所述参与方根据所述参与方的特征碎片、所述参与方的模型参数碎片、所述随机矩阵以及所述随机矩阵积的碎片,进行迭代计算更新线性回归模型的所述模型参数碎片,
所述参与方之间分享更新后的所述模型参数碎片,恢复完整的模型参数,完成所述线性回归模型的训练。
8.根据权利要求7所述的系统,其特征在于,所述第三方模块还包括:
所述第三方生成随机矩阵以及所述随机矩阵积的碎片,并传输给所述参与方,辅助所述参与方进行矩阵乘法迭代计算;
所述第三方获取所述参与方的传输数据,进行比较迭代计算;
所述第三方接收所述参与方发送的停止信息,并根据所述停止信息停止生成随机矩阵以所述及随机矩阵积的碎片。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至6中任一项所述的安全多方计算的联邦模型训练加速方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至6中任一项所述的安全多方计算的联邦模型训练加速方法。
CN202110317572.2A 2021-03-23 2021-03-23 安全多方计算的联邦模型训练加速的方法和系统 Pending CN113128700A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110317572.2A CN113128700A (zh) 2021-03-23 2021-03-23 安全多方计算的联邦模型训练加速的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110317572.2A CN113128700A (zh) 2021-03-23 2021-03-23 安全多方计算的联邦模型训练加速的方法和系统

Publications (1)

Publication Number Publication Date
CN113128700A true CN113128700A (zh) 2021-07-16

Family

ID=76774021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110317572.2A Pending CN113128700A (zh) 2021-03-23 2021-03-23 安全多方计算的联邦模型训练加速的方法和系统

Country Status (1)

Country Link
CN (1) CN113128700A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113537361A (zh) * 2021-07-20 2021-10-22 同盾科技有限公司 联邦学习系统中的跨样本特征选择方法及联邦学习系统
CN113657525A (zh) * 2021-08-23 2021-11-16 同盾科技有限公司 基于KMeans的跨特征联邦聚类方法及相关设备
CN113836595A (zh) * 2021-09-26 2021-12-24 支付宝(杭州)信息技术有限公司 两方安全比较的方法、装置和系统

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060901A1 (en) * 2009-09-04 2011-03-10 Gradiant Cryptographic System for Performing Secure Iterative Matrix Inversions and Solving Systems of Linear Equations
US10083310B1 (en) * 2013-03-13 2018-09-25 Hrl Laboratories, Llc System and method for mobile proactive secure multi-party computation (MPMPC) using commitments
CN110709863A (zh) * 2019-01-11 2020-01-17 阿里巴巴集团控股有限公司 使用秘密共享的逻辑回归建模方案
CN110704860A (zh) * 2019-11-18 2020-01-17 深圳前海微众银行股份有限公司 提升安全性的纵向联邦学习方法、设备、系统及存储介质
CN111324870A (zh) * 2020-01-22 2020-06-23 武汉大学 一种基于安全双方计算的外包卷积神经网络隐私保护系统
CN111444021A (zh) * 2020-04-02 2020-07-24 电子科技大学 基于分布式机器学习的同步训练方法、服务器及系统
CN111738361A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN111737755A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN112001501A (zh) * 2020-08-14 2020-11-27 苏州浪潮智能科技有限公司 一种ai分布式训练系统的参数更新方法、装置、设备
CN112231561A (zh) * 2020-10-14 2021-01-15 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN112257873A (zh) * 2020-11-11 2021-01-22 深圳前海微众银行股份有限公司 机器学习模型的训练方法、装置、系统、设备及存储介质
CN112329072A (zh) * 2020-12-31 2021-02-05 支付宝(杭州)信息技术有限公司 一种基于安全多方计算的模型联合训练方法
CN112396191A (zh) * 2020-12-29 2021-02-23 支付宝(杭州)信息技术有限公司 一种基于联邦学习进行模型参数更新的方法、系统及装置
CN112508199A (zh) * 2020-11-30 2021-03-16 同盾控股有限公司 针对跨特征联邦学习的特征选择方法、装置及相关设备

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060901A1 (en) * 2009-09-04 2011-03-10 Gradiant Cryptographic System for Performing Secure Iterative Matrix Inversions and Solving Systems of Linear Equations
US10083310B1 (en) * 2013-03-13 2018-09-25 Hrl Laboratories, Llc System and method for mobile proactive secure multi-party computation (MPMPC) using commitments
CN110709863A (zh) * 2019-01-11 2020-01-17 阿里巴巴集团控股有限公司 使用秘密共享的逻辑回归建模方案
CN110704860A (zh) * 2019-11-18 2020-01-17 深圳前海微众银行股份有限公司 提升安全性的纵向联邦学习方法、设备、系统及存储介质
CN111324870A (zh) * 2020-01-22 2020-06-23 武汉大学 一种基于安全双方计算的外包卷积神经网络隐私保护系统
CN111444021A (zh) * 2020-04-02 2020-07-24 电子科技大学 基于分布式机器学习的同步训练方法、服务器及系统
CN111738361A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN111737755A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN112001501A (zh) * 2020-08-14 2020-11-27 苏州浪潮智能科技有限公司 一种ai分布式训练系统的参数更新方法、装置、设备
CN112231561A (zh) * 2020-10-14 2021-01-15 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN112257873A (zh) * 2020-11-11 2021-01-22 深圳前海微众银行股份有限公司 机器学习模型的训练方法、装置、系统、设备及存储介质
CN112508199A (zh) * 2020-11-30 2021-03-16 同盾控股有限公司 针对跨特征联邦学习的特征选择方法、装置及相关设备
CN112396191A (zh) * 2020-12-29 2021-02-23 支付宝(杭州)信息技术有限公司 一种基于联邦学习进行模型参数更新的方法、系统及装置
CN112329072A (zh) * 2020-12-31 2021-02-05 支付宝(杭州)信息技术有限公司 一种基于安全多方计算的模型联合训练方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ASHISH CHOUDHURY: "An Efficient Framework for Unconditionally Secure Multiparty Computation", 《IEEE TRANSACTIONS ON INFORMATION THEORY》 *
张嘉诚 等: "基于安全多方计算的电子评审系统设计方案", 《计算机应用》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113537361A (zh) * 2021-07-20 2021-10-22 同盾科技有限公司 联邦学习系统中的跨样本特征选择方法及联邦学习系统
CN113537361B (zh) * 2021-07-20 2024-04-02 同盾科技有限公司 联邦学习系统中的跨样本特征选择方法及联邦学习系统
CN113657525A (zh) * 2021-08-23 2021-11-16 同盾科技有限公司 基于KMeans的跨特征联邦聚类方法及相关设备
CN113657525B (zh) * 2021-08-23 2024-04-26 同盾科技有限公司 基于KMeans的跨特征联邦聚类方法及相关设备
CN113836595A (zh) * 2021-09-26 2021-12-24 支付宝(杭州)信息技术有限公司 两方安全比较的方法、装置和系统
CN113836595B (zh) * 2021-09-26 2023-11-14 支付宝(杭州)信息技术有限公司 两方安全比较的方法、装置和系统

Similar Documents

Publication Publication Date Title
CN113128700A (zh) 安全多方计算的联邦模型训练加速的方法和系统
CN110929886B (zh) 模型训练、预测方法及其系统
US20210044609A1 (en) Method and system that determine malicious nodes in a distributed computation network
CN111988203B (zh) 节点选举方法、装置及存储介质
US10943324B2 (en) Data processing method, apparatus, and electronic device
CN111651285A (zh) 批量业务数据处理方法、装置、计算机设备和存储介质
CN112507360A (zh) 基于门限签名和预言机的区块链数据上链方法及装置
WO2020252911A1 (zh) 失踪人脸识别方法、装置、计算机设备和存储介质
CN110555769A (zh) 区块链交易数据处理方法、装置、计算机设备和存储介质
CN109377226A (zh) 一种交易信息管理方法及相关设备
CN110209472B (zh) 任务数据处理方法和板卡
CN108009642A (zh) 分布式机器学习方法和系统
CN111161062A (zh) 一种跨链交易的方法及装置
CN112527901A (zh) 数据存储系统、方法、计算设备及计算机存储介质
CN114330673A (zh) 一种对业务预测模型进行多方联合训练的方法及装置
CN110263707B (zh) 图像识别方法、装置、计算机设备以及存储介质
CN109034176B (zh) 辨识系统以及辨识方法
CN116992480A (zh) 一种提供公开可验证的外包计算服务的方法
CN112970037A (zh) 用于实施神经网络应用的多芯片系统、适用于多芯片系统的数据处理方法、和非暂时性计算机可读介质
CN112104569A (zh) 报文数据处理方法、装置、计算机设备和存储介质
CN115525921A (zh) 基于mpc的联邦学习模型训练和预测方法、系统、设备及介质
CN110717727A (zh) 基于多平台的信息处理方法、装置、计算机设备和存储介质
CN114662148A (zh) 一种保护隐私的多方联合训练方法及装置
CN111047187B (zh) 信息匹配处理方法、装置、计算机设备和存储介质
CN113887740A (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: 20210716

RJ01 Rejection of invention patent application after publication