联邦学习专用处理器、联邦学习处理芯片及芯片制造技术

技术编号:31814289 阅读:16 留言:0更新日期:2022-01-08 11:17
本申请涉及一种联邦学习专用处理器、联邦学习处理芯片及芯片。该处理器包括彼此独立的多个处理引擎,其每一个包括并行的至少一个处理子引擎且属于加密、解密、密文运算以及密钥管理的类别中的一个。该处理器用于生成联邦学习任务的任务配置信息,确定多个处理引擎的调用次序和被调用的处理引擎,根据任务配置信息和被调用的处理引擎的状态生成引擎配置信息,根据引擎配置信息完成联邦学习任务。多个处理引擎中的至少一个处理引擎所包括的处理子引擎由第一部分和第二部分组成,第一部分的个数根据联邦学习通用业务场景预先设定,第二部分的个数可根据与联邦学习任务关联的联邦学习子业务场景调整。如此实现数据流驱动的引擎分配机制及优化设计。配机制及优化设计。配机制及优化设计。

【技术实现步骤摘要】
联邦学习专用处理器、联邦学习处理芯片及芯片


[0001]本申请涉及数据安全和隐私保护
,具体涉及一种联邦学习专用处理器、联邦学习处理芯片及芯片。

技术介绍

[0002]随着人工智能和大数据挖掘分析等应用领域的发展,对数据量的需求越来越大。例如训练人工智能的应用模型需要使用大量带有合适的数据标签或者特征数值的训练数据。高质量的数据往往来源于经营活动中产生和积累的应用数据。但是应用数据往往分散在不同的组织和个体手上,例如交易数据分散在各个金融机构,医疗诊断数据分散在各个医疗机构。跨行业跨领域的应用数据往往也是分散的,例如互联网领域的社交属性数据和电商交易数据往往由不同实体掌控。随着数据所有权的重要性、用户隐私和数据安全等受到更多重视,也随着法律法规对数据收集处理提出更严格的约束和要求,掌握应用数据的各个组织或个体往往不愿意或者没有合适手段进行彼此之间的合作,从而很难让各自掌握的应用数据共同发挥作用。这种数据分享和协同合作方面的困境被称之为数据孤岛现象。为了解决跨行业跨组织的数据合作难题,尤其是关键的隐私保护及数据安全的问题,提出了联邦学习的概念。联邦学习指的是拥有数据的各个参与方,在不共享受保护的隐私数据且自有数据不传递到外部的前提下,通过加密的方式交换模型相关信息从而实现协同优化联邦学习模型。其中,联邦学习根据训练数据在不同参与方之间的数据特征空间和样本空间的分布情况,可以划分为在数据特征空间重叠较大而在样本空间重叠较小的横向联邦学习,在数据特征空间重叠较小而在样本空间重叠较大的纵向联邦学习,以及在数据特征空间和样本空间均重叠较小的联邦迁移学习。
[0003]联邦学习的应用中涉及到多个参与方如两个、三个或者更多个参与方之间的共同计算,涉及到大量的数据量,还涉及到各种安全协议和数据安全标准,因此联邦学习的计算过程带入了复杂多变的运算,这些运算对算力和内存都提出了很大的挑战。为此,需要一种联邦学习专用处理器、联邦学习处理芯片及芯片,能够满足联邦学习的应用中复杂多变的运算的需求并且具有较好的计算性能和资源利用效率。

技术实现思路

[0004]第一方面,本申请实施例提供了一种联邦学习专用处理器。所述联邦学习专用处理器包括彼此独立的多个处理引擎,所述多个处理引擎的每一个处理引擎包括并行的至少一个处理子引擎,所述多个处理引擎的每一个处理引擎属于多个类别中的一个类别,所述多个类别包括加密、解密、密文运算以及密钥管理。其中,所述联邦学习专用处理器用于接收联邦学习任务,基于所述联邦学习任务生成所述联邦学习任务的任务配置信息,根据所述任务配置信息确定所述多个处理引擎的调用次序,根据该调用次序确定被调用的处理引擎,根据所述任务配置信息和该被调用的处理引擎的状态生成引擎配置信息,根据所述引擎配置信息对该被调用的处理引擎进行配置和调用从而完成所述联邦学习任务。其中,所
述多个处理引擎中的至少一个处理引擎所包括的处理子引擎由第一部分的处理子引擎和第二部分的处理子引擎组成,所述第一部分的处理子引擎的个数根据联邦学习通用业务场景预先设定,所述第二部分的处理子引擎的个数配置为可根据与所述联邦学习任务关联的联邦学习子业务场景调整,所述联邦学习子业务场景是多种预设子业务场景中的一种预设子业务场景,所述多种预设子业务场景基于所述联邦学习通用业务场景。
[0005]第一方面所描述的技术方案,实现了数据流驱动的引擎分配机制和简化控制操作,还实现了基于联邦学习通用业务场景的设定进行优化设计以及针对联邦学习子业务场景进行优化设计,有利于满足联邦学习的应用中复杂多变的运算的需求并且具有较好的计算性能和资源利用效率。
[0006]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述多种预设子业务场景包括以下至少之一:银行子业务场景、电商子业务场景、安防子业务场景、政务子业务场景、交通子业务场景、证券子业务场景、医疗服务子业务场景、制药子业务场景、航空子业务场景。
[0007]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述联邦学习任务的所述任务配置信息包括与所述联邦学习任务关联的所述联邦学习子业务场景,其中,根据所述任务配置信息确定所述多个处理引擎的调用次序,包括:根据所述联邦学习子业务场景确定所述多个处理引擎的调用次序。
[0008]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述第二部分的处理子引擎的个数配置为可根据与所述联邦学习任务关联的所述联邦学习子业务场景调整,包括:根据所述联邦学习子业务场景确定与所述联邦学习子业务场景相对应的资源需求,所述资源需求包括数据位宽需求和运算模式需求;和根据所述资源需求确定所述第二部分的处理子引擎的个数。
[0009]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述第一部分的处理子引擎的个数根据所述联邦学习通用业务场景预先设定,包括:所述第一部分的处理子引擎的个数是出厂默认值和调整值的和,所述调整值根据所述联邦学习通用业务场景在预设范围内确定。
[0010]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述多个处理引擎包括密钥交换引擎、数据求交引擎、同态加密引擎、同态解密引擎、密态加法引擎、密态乘法引擎、矩阵加法引擎、矩阵乘法引擎以及密文累加引擎。
[0011]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述同态加密引擎用于全同态加密和半同态加密,所述同态解密引擎用于全同态解密和半同态解密,所述密态加法引擎用于向量级密态加法,所述密态乘法引擎用于向量级密态乘法,所述矩阵加法引擎用于数组和矩阵之间的密态加法以及矩阵和矩阵之间的密态加法,所述矩阵乘法引擎用于数组和矩阵之间的密态乘法以及矩阵和矩阵之间的密态乘法,所述密文累加引擎用于密文数据的串行累加计算。
[0012]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,该被调用的处理引擎的状态包括该被调用的处理引擎所包括的处理子引擎中的空闲处理子引擎的个数,所述引擎配置信息包括该被调用的处理引擎的数据分配方式,其中,根据所述任务配置信息和该被调用的处理引擎的状态生成所述引擎配置信息,包括:当所述空闲处理
子引擎的个数大于或者等于待计算数据的个数时,按照特定次序分配所述待计算数据给该被调用的处理引擎所包括的处理子引擎,所述待计算数据的个数根据所述任务配置信息确定;和当所述空闲处理子引擎的个数小于所述待计算数据的个数时,重复进行:按照所述特定次序分配所述待计算数据给该被调用的处理引擎所包括的处理子引擎中的空闲处理子引擎直到所有空闲处理子引擎被分配。
[0013]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,所述特定次序包括顺序轮询方式或者随机轮询方式。
[0014]根据第一方面的技术方案的一种可能的实现方式,本申请实施例还提供了,该被调用的处理引擎的状态还包括该被调用的处理引擎的利用率,所述引擎配置信息包括该被调用的处理引擎的资源配置,其中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种联邦学习专用处理器,其特征在于,所述联邦学习专用处理器包括彼此独立的多个处理引擎,所述多个处理引擎的每一个处理引擎包括并行的至少一个处理子引擎,所述多个处理引擎的每一个处理引擎属于多个类别中的一个类别,所述多个类别包括加密、解密、密文运算以及密钥管理,其中,所述联邦学习专用处理器用于接收联邦学习任务,基于所述联邦学习任务生成所述联邦学习任务的任务配置信息,根据所述任务配置信息确定所述多个处理引擎的调用次序,根据该调用次序确定被调用的处理引擎,根据所述任务配置信息和该被调用的处理引擎的状态生成引擎配置信息,根据所述引擎配置信息对该被调用的处理引擎进行配置和调用从而完成所述联邦学习任务,其中,所述多个处理引擎中的至少一个处理引擎所包括的处理子引擎由第一部分的处理子引擎和第二部分的处理子引擎组成,所述第一部分的处理子引擎的个数根据联邦学习通用业务场景预先设定,所述第二部分的处理子引擎的个数配置为可根据与所述联邦学习任务关联的联邦学习子业务场景调整,所述联邦学习子业务场景是多种预设子业务场景中的一种预设子业务场景,所述多种预设子业务场景基于所述联邦学习通用业务场景。2.根据权利要求1所述的联邦学习专用处理器,其特征在于,所述多种预设子业务场景包括以下至少之一:银行子业务场景、电商子业务场景、安防子业务场景、政务子业务场景、交通子业务场景、证券子业务场景、医疗服务子业务场景、制药子业务场景、航空子业务场景。3.根据权利要求2所述的联邦学习专用处理器,其特征在于,所述联邦学习任务的所述任务配置信息包括与所述联邦学习任务关联的所述联邦学习子业务场景,其中,根据所述任务配置信息确定所述多个处理引擎的调用次序,包括:根据所述联邦学习子业务场景确定所述多个处理引擎的调用次序。4.根据权利要求2所述的联邦学习专用处理器,其特征在于,所述第二部分的处理子引擎的个数配置为可根据与所述联邦学习任务关联的所述联邦学习子业务场景调整,包括:根据所述联邦学习子业务场景确定与所述联邦学习子业务场景相对应的资源需求,所述资源需求包括数据位宽需求和运算模式需求;和根据所述资源需求确定所述第二部分的处理子引擎的个数。5.根据权利要求4所述的联邦学习专用处理器,其特征在于,所述第一部分的处理子引擎的个数根据所述联邦学习通用业务场景预先设定,包括:所述第一部分的处理子引擎的个数是出厂默认值和调整值的和,所述调整值根据所述联邦学习通用业务场景在预设范围内确定。6.根据权利要求1至5中任一项所述的联邦学习专用处理器,其特征在于,所述多个处理引擎包括密钥交换引擎、数据求交引擎、同态加密引擎、同态解密引擎、密态加法引擎、密态乘法引擎、矩阵加法引擎、矩阵乘法引擎以及密文累加引擎。7.根据权利要求6所述的联邦学习专用处理器,其特征在于,所述同态加密引擎用于全同态加密和半同态加密,所述同态解密引擎用于全同态解密和半同态解密,所述密态加法引擎用于向量级密态加法,所述密态乘法引擎用于向量级密态乘法,所述矩阵加法引擎用于数组和矩阵之间的密态加法以及矩阵和矩阵之间的密态加法,所述矩阵乘法引擎用于数组和矩阵之间的密态乘法以及矩阵和矩阵之间的密态乘法,所述密文累加引擎用于密文数
据的串行累加计算。8.根据权利要求1至5中任一项所述的联邦学习专用处理器,其特征在于,该被调用的处理引擎的状态包括该被调用的处理引擎所包括的处理子引擎中的空闲处理子引擎的个数,所述引擎配置信息包括该被调用的处理引擎的数据分配方式,其中,根据所述任务配置信息和该被调用的处理引擎的状态生成所述引擎配置信息,包括:当所述空闲处理子引擎的个数大于或者等于待计算数据的个数时,按照特定次序分配所述待计算数据给该被调用的处理引擎所包括的处理子引擎,所述待计算数据的个数根据所述任务配置信息确定;和当所述空闲处理子引擎的个数小于所述待计算数据的个数时,重复进行:按照所述特定次序分配所述待计算数据给该被调用的处理引擎所包括的处理子引擎中的空闲处理子引擎直到所有空闲处理子引擎被分配。9.根据权利要求8所述的联邦学习专用处理器,其特征在于,所述特定次序包括顺序轮询方式或者随机轮询方式。10.根据权利要求8所述的联邦学习专用处理器,其特征在于,该被调用的处理引擎的状态还包括该被调用的处理引擎的利用率,所述引擎配置信息包括该被调用的处理引擎的资源配置,其中,根据所述任务配置信息和该被调用的处理引擎的状态生成所述引擎配置信息,还包括:根据所述任务配置信息和该被调用的处理引擎的利用率调整该被调用的处理引擎的资源配置。11.根据权利要求8所述的联邦学习专用处理器,其特征在于,该被调用的处理引擎的状态还包括该被调用的处理引擎的功耗,所述引擎配置信息包括该被调用的处理引擎的资源配置,其中,根据所述任务配置信息和该被调用的处理引擎的状态生成所述引擎配置信息,还包括:根据所述任务配置信息和该被调用的处理引擎的功耗调整该被调用的处理引擎的资源配置。12.一种芯片,用于联邦学习,其特征在于,所述芯片包括彼此独立的多个处理引擎,所述多个处理引擎的每一个处理引擎包括并行的至少一个处理子引擎,所述多个处理引擎分别为密钥交换引擎、数据求交引擎、同态加密引擎、同态解密引擎、密态加法引擎、密态乘法引擎、矩阵加法引擎、矩阵乘法引擎以及密文累加引擎,所述多个处理引擎的每个处理引擎被调用时通过各自的处理子引擎独立进行运算,其中,所述芯片用于接收联邦学习任务,基于所述联邦学习任务生成所述联邦学习任务的任务配置信息,根据所述任务配置信息确定所述多个处理引擎的调用次序,根据该调用次序确定被调用的处理引擎,根据所述任务配置信息和该被调用的处理引擎的状态生成引擎配置信息,根据所述引擎配置信息对该被调用的处理引擎进行配置和调用从而完成所述联邦学习任务,其中,所述多个处理引擎中的至少一个处理引擎所包括的处理子引擎由第一部分的处理子引擎和...

【专利技术属性】
技术研发人员:王玮
申请(专利权)人:深圳致星科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1