CN114860266A - 一种多方安全计算模型的部署方法和系统 - Google Patents
一种多方安全计算模型的部署方法和系统 Download PDFInfo
- Publication number
- CN114860266A CN114860266A CN202210390155.5A CN202210390155A CN114860266A CN 114860266 A CN114860266 A CN 114860266A CN 202210390155 A CN202210390155 A CN 202210390155A CN 114860266 A CN114860266 A CN 114860266A
- Authority
- CN
- China
- Prior art keywords
- model
- deployment
- computing
- participant
- deployed
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本说明书公开了一种多方安全计算模型的部署方法和系统,多方安全计算包括多个参与方,每个参与方持有模型的一部分,参与方包括一个或多个用于部署模型的计算设备;该方法由模型部署平台执行,包括:获取对应于各参与方的第一描述文件;基于第一描述文件确定待部署于各参与方的部分模型;对于每个参与方,基于计算设备的性能确定每个计算设备需要部署的模型数据。
Description
技术领域
本说明书涉及多方安全计算领域,特别涉及一种多方安全计算模型的部署方法和系统。
背景技术
为了满足各参与方在执行联合业务的同时保护自身数据安全的需求,诞生了多方安全计算技术,但随着数据的增多和多方安全计算模型复杂度性增加,原始的多方安全技术已不能满足复杂模型的部署需求。
因此,希望可以提供一种多方安全计算模型的部署方法和系统,以更好的部署多方安全计算模型。
发明内容
本说明书实施例之一提供一种多方安全计算模型的部署方法,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述方法由模型部署平台执行,包括:获取对应于各参与方的第一描述文件;基于所述第一描述文件确定待部署于各参与方的部分模型;对于每个参与方,基于所述计算设备的性能确定每个所述计算设备需要部署的模型数据。
本说明书实施例之一提供一种多方安全计算模型的部署系统,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述系统部署于模型部署平台,包括:第一描述文件获取模块,用于获取对应于各参与方的第一描述文件;待部署模型确定模块,用于基于所述第一描述文件确定待部署于各参与方的部分模型;模型分发模块,用于对于每个参与方,基于所述计算设备的性能确定所述计算设备需要部署的模型数据。
本说明书实施例之一提供一种多方安全计算模型的部署方法,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;该方法由任一参与方执行,包括:通过模型部署平台确定每个所述计算设备需要部署的模型数据;将所述部分模型部署于所述计算设备上。
本说明书实施例之一提供一种多方安全计算模型的部署系统,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述系统部署于任一参与方,包括:模型接收模块,用于通过模型部署平台确定每个所述计算设备需要部署的模型数据;模型部署模块,用于将所述模型数据部署于所述计算设备上。
本说明书实施例之一提供一种多方安全计算模型的部署装置,包括处理器;所述处理器用于执行上述方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的多方安全计算模型部署系统的应用场景示意图;
图2是根据本说明书一些实施例所示的多方安全计算模型的部署方法的示例性流程图;
图3是根据本说明书一些实施例所示的多方安全计算模型部署过程示意图;
图4是根据本说明书另一些实施例所示的多方安全计算模型部署的示例性流程图;
图5是根据本说明书一些实施例所示的多方安全计算模型部署系统的模块化示意图;
图6是根据本说明书另一些实施例所示的多方安全计算模型部署系统的模块化示意图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
在机器学习场景中,安全多方计算的计算结果可以是一个可运行的模型,每个安全多方计算的参与方都持有模型的一部分,所有参与方的模型合起来组成一个逻辑上的完整模型。在执行时,如果部分机构没有成功部署或启动自身持有的部分模型,则无法执行模型预测流程。
在一些实施例中,可以通过专用的协调器(或服务器)来进行模型的分发部署,但该协调器的功能有限,无法针对各参与方的实际情况(如硬件性能)进行部署和管理,使多方安全计算的执行受限。
有鉴于此,在一些实施例中,考虑将安全多方计算的模型进行容器化管理,以便于模型的部署、控制和协调等操作,因此,在本说明书的一些实施例中,提供了一种能够实现自动化模型部署以及便于模型管理的方法。
图1是根据本说明书一些实施例所示的多方安全计算模型部署系统的应用场景示意图。
如图1所示,多方安全计算模型部署系统100可以包括服务器110、多个参与方120和网络130。
服务器110是指具有计算能力的系统,可以包括各种计算机,比如服务器、个人计算机,也可以是由多台计算机以各种结构连接组成的计算平台。
服务器110中可以包括处理器,处理器可以执行程序指令。处理器可以包括各种常见的通用中央处理器(Central processing unit,CPU),图形处理器(GraphicsProcessing Unit,GPU),微处理器,特殊应用集成电路(Application-specificintegrated circuit,ASIC),或其他类型的集成电路。
服务器110中可以包括存储介质,存储介质可以存储指令,也可以存储数据。存储介质可包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。
参与方120可以包括安全多方计算的多个参与方(如第一参与方121和第二参与方122等),每个参与方120可以是指有业务需求的机构之一。在一些实施例中,参与方120可以是同行业的机构,也可以是不同行业的机构。例如,金融行业、医疗行业、服务行业等中的一种或多种。在一些实施例中,参与方自身配备有计算设备和私密数据。为了防止数据泄露,参与方参与业务时只将中间数据进行传输,对于获得的中间数据,参与方可以使用自身的私密数据对其进行处理得到其他中间数据或预测结果。在一些实施例中,参与方上的计算设备设置于可行的执行环境中,并可在可行的执行环境中对获取的中间数据进行处理。在一些实施例中,计算设备可以包括一个或多个处理引擎(例如,单核心处理引擎或多核心处理器)。仅作为示例,处理引擎可以包括中央处理器(中央处理器)、特定应用集成电路(ASIC)、专用指令集处理器(ASIP)、图像处理器(GPU)、物理运算处理单元(PPU)、数字信号处理器(DSP)、现场可程序门阵列(FPGA)、可程序逻辑装置(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等中的一种或多种组合。
网络130可以连接系统的各组成部分和/或连接系统与外部资源部分。网络130使得各组成部分之间,以及与系统之外其他部分之间可以进行通讯,促进数据和/或信息的交换。在一些实施例中,网络130可以是有线网络或无线网络中的任意一种或多种。例如,网络130可以包括电缆网络、光纤网络、电信网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络(ZigBee)、近场通信(NFC)、设备内总线、设备内线路、线缆连接等或其任意组合。各部分之间的网络连接可以是采用上述一种方式,也可以是采取多种方式。在一些实施例中,网络可以是点对点的、共享的、中心式的等各种拓扑结构或者多种拓扑结构的组合。在一些实施例中,网络130可以包括一个或以上网络接入点。
图2是根据本说明书一些实施例所示的多方安全计算模型的部署方法的示例性流程图。
在一些实施例中,多方安全计算模型的部署方法的流程200中的一个或多个步骤可以由模型部署平台执行,模型部署平台可以部署于平台的服务器(如图1中服务器110)中。在一些实施例中,流程200包括:
步骤210,获取对应于各参与方的第一描述文件。在一些实施例中,步骤210可以由描述文件获取模块510执行。
在一些实施例中,多方安全计算包括多个参与方(如图1中的参与方121和参与方122等),每个所述参与方持有所述模型的一部分,在一些实施例中,每个参与方持有的模型可以相同,也可以不同。
在一些实施例中,可以通过第一描述文件描述所需要被部署于各个参与方的模型。在一些实施例中,第一描述文件可以包括需要部署的模型的ID信息和模型的启动参数。在一些实施例中,第一描述文件还可以包括如模型的镜像地址和参与方ID等信息。
在一些实施例中,第一描述文件可以是多方安全计算的特定参与方(如安全多方计算的发起者或协调者等)发送的,也可以是通过模型部署平台生成得到的。
在一些实施例中,模型部署平台可以为Kubernetes平台,通过将模型容器化,然后利用Kubernetes部署、扩展和管理容器化的模型。在一些实施例中,模型部署平台还可以是其他容器管理平台如基于Docker的管理平台或云平台等,为了便于描述,后文中采用Kubernetes平台对本方案进行介绍,其并不意在限制本说明书的范围。
Kubernetes是一个开源的容器编排服务,也是一个自动化的容器运维管理平台,可以支持将多台主机组合成集群来运行容器化应用,它可以自动创建、删除容器。Kubernetes中至少设置有Pod、Deployment和Namespeace等中的一种或多种。其中,Pod是可以在Kubernetes中创建和管理的最小可部署的计算单元,用于描述一组需要运行在一起的容器,在一些实施例中,一个pod下可以只设置一个容器,以使一个pod只加载一个模型。Deploymend可以用于维持Kubernetes集群按业务的需求运行。Namespeace可以用于分组、分离和隔离对象。
在一些实施例中,可以通过Kubernetes Master管理各参与方中的pod完成多个参与方间模型的调度。例如,在每个参与方只部署Kubernetes节点,而不部署KubernetesMaster,使得所有参与方的节点和中心的Kubernetes Master组成一个Kubernetes集群。在一些实施例中,Kubernetes Master可以包括一个或多个处理器。
在一些实施例中,以Kubernetes平台为例,第一描述文件可以是Deploymend描述文件。在一些实施例中,可以通过Kubernetes Master根据Deploymend描述文件实现自动部署功能,即可以通过该模型部署平台,实现模型在多个参与方处的自动化部署。
步骤220,基于所述第一描述文件确定待部署于各参与方的部分模型。在一些实施例中,步骤220可由待部署模型确定模块520执行。
部分模型是指每个参与方所需要部署的模型。继续以Kubernetes平台为例,在一些实施例中,Kubernetes Master可以通过第一描述文件,确定待部署于各参与方的部分模型。
步骤230,对于每个参与方,基于所述计算设备的性能确定每个所述计算设备需要部署的模型数据。在一些实施例中,步骤230可由模型分发模块执行。
计算设备的性能是指计算设备处理数据的能力,在一些实施例中,计算设备的性能与所部署的模型数据可以成正相关,即计算设备的性能越强,可以部署的模型数据越多。
在一些实施例中,计算设备的性能可以取决于中央处理器(CPU)的主频、核心数或图形处理器(GPU)的频率和显存大小或计算设备中网络的带宽等因素。在一些实施例中,模型部署平台可以基于上述因素中的一个或多个确定各计算设备的性能,在此不做限制。
在一些实施例中,以Kubernetes平台为例,可以将一个参与方作为一个Namespeace,在一些实施例中,可以将计算设备作为执行节点挂入对应参与方的Namespeace中,模型部署平台可以通过执行节点获取计算设备的性能,并基于计算设备的性能确定计算设备上所要部署的模型数据。在一些实施例中,一个计算设备上可以设置一个或多个pod,每个pod中加载一部分模型数据以将计算设备之间隔离开来,使得部分模型运行出错时不影响其他部分模型的运行。
在一些实施例中,通过模型部署平台对模型进行容器化管理,通过生成第一描述文件,使得能够实现自动化模型部署。在一些实施例中,平台通过计算设备的性能分配模型数据,使得能够支持参与方的异构计算设备(即计算设备之间的性能或配置不同)。在一些实施例中,利用模型部署平台还可以便于模型运行管理。示例性的,如可以通过Kubernetes平台自动监控各个pod中容器的状态,通过在特定情况下对容器进行重启、新建等操作,使得参与方中部署的部分模型能一直提供服务。
步骤240,当所述参与方中的计算设备状态变化时,重新确定所述计算设备需要部署的模型数据。
模型预测属于在线服务,需要长期运行,在长时间的运行中,计算设备可能会随着运行出现状态的变化。在一些实施例中,状态变化可以包括计算设备的添加和宕机等。示例性的,添加状态可以指当参与方添加一个新的计算设备用以部署模型的情况,宕机状态可以指某计算设备出现故障的情况。
示例性的,在一些实施例中,参与方通过将新的计算设备作为新的执行节点加入该参与方的Namespeace中,Kubernetes平台自动确定该新计算设备的性能(如执行步骤230),将合适的容器(即部分模型数据)调度到该新计算设备上。在一些实施例中,当参与方的某计算设备宕机时,Kubernetes平台可以将先前分配于该计算设备上的容器,基于其他计算设备的性能再次分配或调整至性能存在剩余的其他计算设备上。
在一些实施例中,模型部署平台还可以用于确定模型的部署状态,以便于对模型的进一步动作(如执行)提供依据。基于此,在一些实施例中,流程200还可以包括:
接收各参与方的模型部署情况;
基于所述各参与方的模型部署情况确定模型的部署状态。
在一些实施例中,模型部署情况可以包括部署完成和部署中。在一些实施例中,模型部署情况还可以包括模型部署失败以及失败原因等信息。在一些实施例中,模型部署情况还可以包括模型执行的情况,如是否正在执行模型预测等。
在一些实施例中,模型部署平台可以根据接收各参与方的模型部署情况确定模型的部署状态,模型的部署状态可以与模型部署情况具有相同的属性,如包括部署完成和部署中。示例性的,在一些实施例中,模型的部署状态的依据可以是当全部参与方的模型部署情况为部署完成时,确定部署状态为部署完成,否则确定为部署中;在一些其他实施例中,还可以是通过比例来确定部署状态,如接收到的部署状态超过90%为部署完成时,确定部署状态为部署完成,否则确定为部署中。
在一些实施例中,模型部署平台为Kubernetes平台时,可以通过KubernetesMaster执行上述模型的部署状态的确定。
图3是根据本说明书一些实施例所示的多方安全计算模型部署过程示意图。
在一些实施例中,步骤210可以包括:
获取第二描述文件;
至少基于所述第二描述文件,生成对应于各参与方的第一描述文件。
参考图3,在一些实施例中,第二描述文件310可以是一个包括所有参与方需要部署的模型的信息的文件,模型部署平台320在获取第二描述文件310后,可以至少基于该第二描述文件310,生成对应各参与方的第一描述文件330,并基于第一描述文件330确定需要部署于各参与方的计算设备341上的模型数据。在一些实施例中,与第一描述文件330相似,第二描述文件310也可以是多方安全计算的某个参与方发送的。
在一些实施例中,第二描述文件310可以包括需要部署模型的参与方ID以及所述参与方对应的模型信息(如启动参数等)。在一些实施例中,第二描述文件310还可以包括如模型的镜像地址和平台版本号等信息。示例性的,如第二描述文件310的内容可以包括:待部署模型:模型A;模型A的镜像地址;需部署参与方:参与方a、参与方b;参与方a的启动参数及模型信息;参与方b的启动参数及模型信息,生成的第一描述文件330可以包括对应参与方a的第一描述文件330,其包括:模型A的镜像地址、参与方a的启动参数及模型信息;以及对应参与方b的第一描述文件330,其包括:模型A的镜像地址、参与方b的启动参数及模型信息。
继续以Kubernetes平台为例,由前文所述,第一描述文件330可以是Deploymend描述文件,在一些实施例中,第二描述文件310也可以是Deploymend描述文件,通过Kubernetes Master基于第二描述文件310生成多个第一描述文件330。
在一些实施例中,第二描述文件310可以是用户定义的格式,模型部署平台320将该第二描述文件310输入至能够解析其格式的处理器中,生成对应各参与方的第一描述文件330。在一些实施例中,够解析其格式的处理器可以单独配置,也可以设置于KubernetesMaster中。
在一些实施例中,通过模型部署平台320在生成对应各参与方的第一描述文件330,使得对于每个第一描述文件330中均相同的信息(如模型ID或模型的镜像地址等)只需要在第二描述文件310中记录一次,大大减少了工作量且避免了可能出现错误的概率。此外,模型部署平台320作为可信方,通过其生成第一描述文件330,保证了模型的安全性以及权限管理的统一化,避免了参与方在生成第一描述文件330时,针对性的修改文件内容,以对其他参与方进行恶意攻击的可能性。
图4是根据本说明书另一些实施例所示的多方安全计算模型部署的示例性流程图。
在一些实施例中,多方安全计算模型的部署方法的流程400中的一个或多个步骤可以由参与方执行(如图1中的第一参与方121或第二参与方122)。在一些实施例中,流程400包括:
步骤410,通过模型部署平台确定每个所述计算设备需要部署的模型数据。在一些实施例中,步骤410可以由模型接收模块610执行。
在一些实施例中,步骤410所获取的需要部署的模型数据,可以是模型部署平台通过步骤230获取的模型数据。
关于模型数据的更多内容,可以参见步骤230及相关描述,在此不再赘述。
在一些实施例中,模型部署平台可以基于参与方的计算设备的性能确定每个计算设备需要部署的模型数据。
在一些实施例中,当所述计算设备状态变化时,通过所述模型部署平台重新确定所述计算设备需要部署的模型数据。
步骤420,将所述模型数据部署于所述计算设备上。在一些实施例中,步骤420可以由,模型部署模块620执行。
在一些实施例中,流程400还可以包括,参与方发送模型部署情况至所述模型部署平台,以便所述模型部署平台确定模型的部署状态。
关于部署情况的更多内容,可以参见步骤250及相关描述,在此不再赘述。
应当注意的是,上述有关流程200和400的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程200和400进行各种修正和改变。如在一些实施例中,可以不执行步骤240。然而,这些修正和改变仍在本说明书的范围之内。
图5是根据本说明书一些实施例所示的多方安全计算模型部署系统的模块化示意图。
如图5所示,多方安全计算模型部署系统500包括描述文件获取模块510、待部署模型确定模块520和模型分发模块530。
描述文件获取模块510可以用于获取对应于各参与方的第一描述文件。
在一些实施例中,关于第一描述文件的更多内容,可以参见步骤210及其相关描述,此处不再赘述。
待部署模型确定模块520可以用于基于所述第一描述文件确定待部署于各参与方的部分模型。
在一些实施例中,关于待部署于各参与方的部分模型的更多内容,可以参见步骤220及其相关描述,此处不再赘述。
模型分发模块530可以用于:对于每个参与方,基于所述计算设备的性能确定每个所述计算设备需要部署的模型数据。
在一些实施例中,关于模型数据的更多内容,可以参见步骤230及其相关描述,此处不再赘述。
图6是根据本说明书另一些实施例所示的多方安全计算模型部署系统的模块化示意图。
如图6所示,多方安全计算模型部署系统600包括模型接收模块610和模型部署模块620。
模型接收模块610可以用于通过模型部署平台确定每个所述计算设备需要部署的模型数据。
在一些实施例中,关于确定模型数据的更多内容,可以参见步骤410及其相关描述,此处不再赘述。
模型部署模块620可以用于将所述模型数据部署于所述计算设备上。
在一些实施例中,关于模型数据部署于计算设备上的更多内容,可以参见步骤420及其相关描述,此处不再赘述。
应当理解,图5和图6所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,装置及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行装置,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和装置可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的装置及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于系统500、600及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。在一些实施例中,图5中披露的待部署模型确定模块520和模型分发模块530可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
本说明书实施例可能带来的有益效果包括但不限于:(1)通过模型部署平台对模型进行容器化管理,通过生成第一描述文件,使得能够实现自动化模型部署。;(2)通过模型部署平台根据计算设备进行分配模型数据,使得负载均匀且能够支持参与方的异构计算设备,此外,还可以对计算设备进行扩容;(3)通过模型的容器化管理,使得模型之间互相隔离、可以独立控制,保证模型运行的稳定性。
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (13)
1.一种多方安全计算模型的部署方法,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述方法由模型部署平台执行,包括:
获取对应于各参与方的第一描述文件;
基于所述第一描述文件确定待部署于各参与方的部分模型;
对于每个所述参与方,基于所述计算设备的性能确定每个所述计算设备需要部署的模型数据。
2.如权利要求1所述方法,所述对于每个参与方,基于所述计算设备的性能确定所述计算设备需要部署的模型数据,包括:
当所述参与方中的计算设备状态变化时,重新确定所述计算设备需要部署的模型数据。
3.如权利要求1所述方法,其中:
所述模型部署平台为Kubernetes平台。
4.如权利要求1所述方法,所述获取对应于各参与方的第一描述文件,包括:
获取第二描述文件;
至少基于所述第二描述文件,生成对应于各参与方的第一描述文件。
5.如权利要求4所述方法,其中,所述第二描述文件包括:需要部署所述模型的参与方以及所述参与方对应的模型信息。
6.如权利要求1所述方法,包括:
接收各参与方的模型部署情况;
基于所述各参与方的模型部署情况确定模型的部署状态。
7.一种多方安全计算模型的部署系统,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述系统部署于模型部署平台,包括:
描述文件获取模块,用于获取对应于各参与方的第一描述文件;
待部署模型确定模块,用于基于所述第一描述文件确定待部署于各参与方的部分模型;
模型分发模块,用于对于每个参与方,基于所述计算设备的性能确定所述计算设备需要部署的模型数据。
8.一种多方安全计算模型的部署装置,包括处理器;所述处理器用于执行如权利要求1~7任一项所述的方法。
9.一种多方安全计算模型的部署方法,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;该方法由任一参与方执行,包括:
通过模型部署平台确定每个所述计算设备需要部署的模型数据;
将所述模型数据部署于所述计算设备上。
10.如权利要求9所述的方法,所述通过模型部署平台确定每个所述计算设备需要部署的模型数据,包括:
当所述计算设备状态变化时,通过所述模型部署平台重新确定所述计算设备需要部署的模型数据。
11.如权利要求9所述的方法,包括:
发送模型部署情况至所述模型部署平台,以便所述模型部署平台确定模型的部署状态。
12.一种多方安全计算模型的部署系统,所述多方安全计算包括多个参与方,每个所述参与方持有所述模型的一部分,所述参与方包括一个或多个用于部署所述模型的计算设备;所述系统部署于任一参与方,包括:
模型接收模块,用于通过模型部署平台确定每个所述计算设备需要部署的模型数据;
模型部署模块,用于将所述模型数据部署于所述计算设备上。
13.一种多方安全计算模型的部署装置,包括处理器;所述处理器用于执行如权利要求9~11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210390155.5A CN114860266A (zh) | 2022-04-14 | 2022-04-14 | 一种多方安全计算模型的部署方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210390155.5A CN114860266A (zh) | 2022-04-14 | 2022-04-14 | 一种多方安全计算模型的部署方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114860266A true CN114860266A (zh) | 2022-08-05 |
Family
ID=82631155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210390155.5A Pending CN114860266A (zh) | 2022-04-14 | 2022-04-14 | 一种多方安全计算模型的部署方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860266A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115811441A (zh) * | 2023-01-17 | 2023-03-17 | 华控清交信息科技(北京)有限公司 | 一种k8s云平台上的命名空间创建方法、装置及电子设备 |
-
2022
- 2022-04-14 CN CN202210390155.5A patent/CN114860266A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115811441A (zh) * | 2023-01-17 | 2023-03-17 | 华控清交信息科技(北京)有限公司 | 一种k8s云平台上的命名空间创建方法、装置及电子设备 |
CN115811441B (zh) * | 2023-01-17 | 2023-04-25 | 华控清交信息科技(北京)有限公司 | 一种k8s云平台上的命名空间创建方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107145380B (zh) | 虚拟资源编排方法及装置 | |
CN108614726B (zh) | 虚拟机创建方法及装置 | |
CN105354076B (zh) | 一种应用部署方法及装置 | |
CN103226493B (zh) | 多操作系统业务的部署方法和系统 | |
CN110622129A (zh) | 使用软件容器用于加速数据分析应用程序开发和部署的各方面的方法、系统和门户 | |
US8862933B2 (en) | Apparatus, systems and methods for deployment and management of distributed computing systems and applications | |
CN111880936B (zh) | 资源调度方法、装置、容器集群、计算机设备和存储介质 | |
US8185905B2 (en) | Resource allocation in computing systems according to permissible flexibilities in the recommended resource requirements | |
CN109886693B (zh) | 区块链系统的共识实现方法、装置、设备和介质 | |
EP3442201B1 (en) | Cloud platform construction method and cloud platform | |
US20180255137A1 (en) | Unified resource management in a data center cloud architecture | |
CN113067900B (zh) | 智能合约的部署方法及装置 | |
CN112291298B (zh) | 异构系统的数据传输方法、装置、计算机设备和存储介质 | |
CN113938321B (zh) | 可扩展的运维管理系统、方法、电子设备和可读存储介质 | |
CN110188135A (zh) | 文件生成方法及设备 | |
US10761869B2 (en) | Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type | |
CN113127150A (zh) | 云原生系统的快速部署方法、装置、电子设备和存储介质 | |
US11915051B2 (en) | Allocating resources for network function virtualization | |
CN113204353A (zh) | 一种大数据平台组件部署方法及装置 | |
CN110569124A (zh) | 一种任务分配方法和装置 | |
CN116457759A (zh) | 基于分布式容器组的系统内的服务编排 | |
CN114860266A (zh) | 一种多方安全计算模型的部署方法和系统 | |
CN115358401A (zh) | 一种推理服务的处理方法、装置、计算机设备及存储介质 | |
Liu et al. | KubFBS: A fine‐grained and balance‐aware scheduling system for deep learning tasks based on kubernetes | |
US9942083B1 (en) | Capacity pool management |
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 |