一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据的隐私保护的方法及装置与流程

2022-06-01 18:10:34 来源:中国专利 TAG:


1.本公开总体上涉及机器学习领域,更具体地涉及一种数据的隐私保护的方法及装置。


背景技术:

2.机器学习技术已应用于大量领域,诸如语音识别、人脸识别、金融风险管控、推荐系统等。机器学习需要使用数据来训练模型。然而,在使用诸如个人数据的数据时,这些数据往往包含一些敏感的隐私信息,诸如姓名、年龄、电话、住址等。因此,在利用机器学习时,需要保护个人数据的隐私安全,并在不泄露个人数据、确保隐私安全的情况下完成机器学习模型的学习和优化等。
3.特别地,对于分布式机器学习,数据提供、模型训练或模型发布往往不是同一实体完成,导致数据和模型需要在多方之间进行传递,进一步增大了数据暴露的风险。当前的分布式机器学习面对的风险包括重构攻击、模型反演攻击、关系推断攻击以及去匿名化攻击等。
4.随着攻击方法越来越多样,相应的隐私保护方法也越来越多样化。当前隐私安全保护技术往往与特定的分布式机器学习技术耦合在一起,这种耦合关系使得分布式机器学习产品的技术迭代更新缓慢,增加了开发难度。而且,现有的隐私安全保护算法需要参与的各方进行交互,达成对某些一致性条件信息(诸如,公钥、私钥、噪声分布的参数等)的共识,才能够进行后续的计算,并且需要将安全代码和机器学习业务代码集成在一起,这大大增加了代码开发的难度和复杂度。
5.当前也存在一些成熟的保护数据的安全系统。jugo系统可以提供多方安全计算、乱码电路等安全措施来保护数据安全,但是该系统没有对分布式机器学习进行适配,无法直接使用。vault系统可以提供一种包括密钥管理、数据加密的系统,但是该系统同样没有考虑分布式机器学习环境中的数据安全。
6.因此,存在对在分布式机器学习环境中对数据进行隐私保护的方法和装置的需要。


技术实现要素:

7.在下文中给出了关于本公开的简要概述,以便提供关于本公开的一些方面的基本理解。但是,应当理解的是,这个概述并不是关于本公开的穷举性概述。它并不是意图用来确定本公开的关键性部分或重要部分,也不是意图用来限定本公开的范围。其目的仅仅是以简化的形式给出关于本公开的某些概念,以此作为稍后给出的更详细描述的前序。
8.根据本公开的第一方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的方法,该方法在与多个代理进程端通信的服务进程端处执行,该方法包括:从多个代理进程端中的代理进程端接收请求;响应于该请求,确定该代理进程端的身份;基于身份,确定与该代理进程端对应的安全策略;基于安全策略,利用与该安全策略相关联的配置
信息来生成该代理进程端的安全信息,其中,配置信息存储在该服务进程端处并且是由多个代理进程端中的一个或多个代理进程端预先定义的;以及将安全信息发送给该代理进程端,其中,安全信息用于对多个代理进程端中要由该代理进程端传送的信息进行隐私保护。
9.根据本公开的第二方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的装置,该装置被布置在与多个代理进程端通信的服务进程端处,该装置包括:访问控制模块,被配置为:从多个代理进程端中的代理进程端接收请求,以及响应于请求,确定该代理进程端的身份;安全策略引擎模块,被配置为:基于身份,确定与该代理进程端对应的安全策略;基于安全策略,利用与该安全策略相关联的配置信息来生成该代理进程端的安全信息,其中,配置信息存储在该服务进程端处并且是由多个代理进程端中的一个或多个代理进程端预先定义的;以及将安全信息发送给该代理进程端,其中,安全信息用于对多个代理进程端中要由该代理进程端传送的信息进行隐私保护。
10.根据本公开的第三方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的非瞬态计算机可读存储介质,其上存储有程序,其特征在于,当该程序由计算机执行时,使该计算机执行根据第一方面的方法。
11.根据本公开的第四方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的计算装置,包括存储器和处理器,该存储器与该处理器通信耦合,该存储器中存储有程序,该程序当由处理器执行时,使得该处理器执行根据第一方面的方法。
12.根据本公开的第五方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现根据第一方面的方法。
13.本公开提出的装置和方法适用于在机器学习环境中对数据进行隐私保护,并且具有以下特征中的至少一个或多个:提供多种不同安全机制,保证分布式机器学习的不同阶段数据的安全;提供统一化安全接口,简化多种安全机制的复杂性,操作简单;提供角色隔离机制,权限控制访问,隔离不同用户的权限和任务;实现客户端代理机制,客户端代理完成实际的逻辑处理,完成数据保护、转发过程;实现机器学习生命周期分割管理,实现全生命周期安全保护。
14.通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。
附图说明
15.构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
16.参照附图,根据下面的详细描述,可以更清楚地理解本公开,其中:
17.图1示出了根据本公开的实施例的用于分布式机器学习的隐私安全保护系统的示意图;
18.图2示出了根据本公开的实施例的用于分布式机器学习的服务进程端的流程的示意图;
19.图3示出了根据本公开的实施例的用于分布式机器学习的代理进程端的流程的示意图;以及
20.图4示出了根据本公开的实施例的用于在多个代理进程端之间传送的数据的隐私保护的方法的流程图。
具体实施方式
21.参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
22.分布式机器学习通常可以涉及三个过程:数据收集、模型训练和模型发布。这三个过程可以涉及三方:数据提供方、机器学习模型训练方以及机器学习模型发布方。这种体系中,数据提供方可以将自己的数据提供给提供算力的训练方,机器学习模型训练方可以进行相应的模型训练,并且可以将模型传送给发布方进行模型的校验和发布。数据提供方、机器学习模型训练方以及机器学习模型发布方往往不是相同的,数据和模型需要在多方之间进行流动和发布,从而带来数据和模型被暴露的风险。特别是在数据提供方提供的数据是包括隐私信息的个人数据时,这种暴露的危害是较为严重的。
23.因此,需要一种能够提供隐私安全保护的系统,该系统通过用户预先定义的或者默认的安全策略参数,代替传统隐私安全保护算法中需要多方完成共识交互的过程,减少多方之间的通信消息以及对代码的侵入性,以尽量低侵入性的方法保护分布式机器学习中的数据安全。
24.图1示出了根据本公开的实施例的用于分布式机器学习的隐私安全保护系统的示意图。该系统中的一个或多个组件例如可以部署在k8s环境中,借助k8s实现应用的部署、规划和更新。
25.该分布式系统可以采用master/worker模式,并且对应地包括服务进程端和代理进程端。master部分可以部署服务进程,负责接收和分配任务。该服务进程可以通过spring boot框架快速实现。worker部分可以部署代理进程。代理进程端和服务进程端的交互可以通过位于服务进程端的restful api实现。
26.服务进程端可以包括restful api模块101、路径路由选择模块102、配置信息管理模块103、安全策略引擎模块104和权限管理模块105。
27.restful api模块101可以被配置为使用java语言基于spring boot框架开发微服务接口,以供代理进程端调用以便向服务进程端发出请求。
28.路径路由选择模块102可以被配置为进行路由选择,以从配置信息管理、安全信息生成和权限管理中选择所需要的服务。
29.用于配置信息管理的服务可以由配置信息管理模块103执行。配置信息管理模块103可以被配置为管理各种安全策略的配置信息,并且可以包括配置信息验证模块106和配置信息生成模块107。配置信息可以是可以由用户(即,代理进程端)配置的用于生成针对不同安全策略的安全信息的参数。
30.安全策略可以通过加密、数据抖动、多方安全计算等技术中的一种或多种来对数
据和/或模型进行隐私保护。作为非限制性的示例,安全策略可以包括以下方法中的一种或多种:
31.1)加密技术:加密技术可以由数据提供方用于对要提供的数据进行加密,经加密的数据可以被传送给机器学习模型训练方以及机器学习模型发布方以进行模型的训练和发布。常见的加密技术包括同态加密、乱码电路、密钥共享技术等。加密技术需要参与的各方协调一致生成密钥加密的参数(诸如,公钥、私钥等),该参数可以被用于对本地数据进行加密以及最后对计算的结果进行解密。
32.2)数据抖动技术:数据抖动技术可以通过向原始数据、中间结果或经训练的模型添加噪声来保护数据和模型的安全性。常见的数据抖动技术包括差分隐私保护技术。差分隐私保护技术需要参与方预先设置生成噪声的函数的参数,然后可以由函数随机生成噪声,该噪声可以被添加到原始数据、中间结果或经训练的模型中保护数据和模型的隐私。
33.3)数据切片技术:数据切片技术可以通过将数据切分为多个数据切片(例如,k个代理进程端参与数据切片,则可以将数据切分为k个数据切片),并且在多方之间交换数据切片并进行相应的处理,从而实现对数据的隐私保护。
34.4)多方安全计算技术:多方安全计算技术可以用于多方拥有各自的隐私数据的情况,在不泄露多方各自的数据的情况下计算出公共的结果。多方安全计算技术往往可以结合一些其他的安全技术,诸如不经意传输和乱码电路等。在使用不经意传输时,需要发送消息和接收消息的两方可以就传输消息所需的密钥的一些参数达成一致。
35.相应地,例如,对于同态加密的安全策略,配置信息可以指示生成密钥所使用的加密算法、密码长度、用户域名等。例如,对于差分隐私的安全策略,配置信息可以指示生成噪声所使用的函数等。例如,对于数据切片的安全策略,配置信息可以指示对数据进行切分的规则以及经切分之后的数据切片的在不同用户之间的交换规则等。例如,对于多方安全计算的安全策略,配置信息可以指示参与的各方使用的函数等。
36.配置信息验证模块106可以被配置为验证由用户(诸如,数据提供方115、机器学习模型训练方118和机器学习模型发布方121)设置的配置信息是否符合预先设定的规则。例如,对于同态加密的安全策略,可以设置两个随机的大质数p和q用来生成需要的公钥、私钥;对于差分隐私的安全策略,生成噪声所服从的分布参数,例如,在选择拉普拉斯噪声的情况下需要参数λ和μ;对于数据切片的安全策略,可以不需要设置配置信息,该安全策略需要的代理进程端的数量k可以由服务进程端统计;以及,对于多方安全计算的安全策略,可以设置乱码电路所需要的计算函数表达式。
37.配置信息生成模块107可以被配置为将验证通过的配置信息存储到存储器中。该存储器可以位于服务进程端本地,例如,存储在配置信息管理模块103中,或者存储在服务进程端中的另外的存储器中。可以是传统的mysql数据库,也可以是诸如etcd之类的分布式键-值存储器。etcd天然的高可用特征有利于保证系统的高可用性。
38.并且,配置信息生成模块107还可以根据安全方法引擎104所采用的安全策略而检索对应的配置信息,并且将检索到的配置信息传送到安全方法引擎模块104,以用于生成安全信息。
39.在根据本公开的实施例中,可以根据需要(例如,根据用户的身份)来采用如上所述的安全策略中的一种或多种。相应地,配置信息生成模块107可以检索所采用的安全策略
对应的配置信息。
40.用于安全信息生成的服务可以由安全策略引擎模块104执行。安全策略引擎模块104可以被配置为根据发起请求的代理进程端的身份选择安全策略。具体而言,安全策略引擎模块104可以被配置为从配置信息管理模块103请求与发出请求的代理进程端相应的配置信息,并根据配置信息生成相应的用于保护数据和/或模型的安全信息,诸如密钥、噪声等。
41.安全策略引擎模块104可以包括安全策略适配器模块108,该安全策略适配器模块108可以被配置为根据发起请求的代理进程端的身份选择相应的对数据和/或模型进行隐私保护的安全策略。例如,发起请求的代理进程端的身份可以通过包括在请求中的字段来识别。
42.例如,如图1所示,对于数据提供方115,安全策略适配器模块108可以采用同态加密、差分隐私和多方安全计算等策略中的一种或多种。对于机器学习模型训练方118,安全策略适配器模块108可以采用同态加密、差分隐私、数据切片和多方安全计算中的一种或多种。对于机器学习模型发布方121,安全策略适配器模块108可以采用差分隐私等策略。
43.进一步地,在根据本公开的实施例中,安全策略适配器模块108还根据发起请求的代理进程端的身份和系统中其它代理进程端所采用的安全策略来选择用于该发起请求的代理进程端的安全策略。例如,对于机器学习模型训练方118,安全策略适配器模块108还将考虑,如果数据提供方115采用同态加密或差分隐私的策略,则为机器学习模型训练方118选择同态加密、差分隐私和数据切片中的任何一种或多种策略;但是,如果数据提供方115采用多方安全计算的策略,则为机器学习模型训练方118选择多方安全计算的策略。
44.安全策略适配器模块108还可以被配置为根据所选择的安全策略调用同样包括在安全策略引擎模块104中的同态加密适配器模块109、差分隐私适配器模块110、数据切片适配器模块111、多方安全计算适配器模块112中的对应的模块。这些模块可以被配置为根据相应的安全策略,基于配置信息,生成用于保护数据的安全信息。
45.例如,对于同态加密适配器模块109,安全信息可以是根据配置信息生成的同态加密的密钥,诸如公钥和私钥,其中,加密需要的密钥可以被发送到对应的代理进程端,解密需要的密钥可以被保存在服务进程端。
46.例如,对于差分隐私适配器模块110,安全信息可以是根据配置信息由函数随机生成噪声。
47.例如,对于数据切片适配器模块111,安全信息可以是参与数据切片的代理进程端的数量k。代理进程端可以将数据或模型(例如,模型的特征向量)切分为k个切片,并将其中k-1个切片分别分发给其余k-1个代理进程端
48.例如,对于多方安全计算适配器模块112,安全信息可以是数据对应的乱码电路的输入标签。多方安全计算适配器模块112可以将计算函数转化为布尔电路,针对电路中的每个门进行加密处理,并将乱码真值表分发到计算方(例如,机器学习模型训练方)。接下来,通过不经意传输从服务器获取自己数据对应的乱码电路的输入标签并且该输入标签发送给计算方。这里每条数据对应一个标签,可以轮询或者随机发送给不同的计算方,由单个计算方计算出局部结果后,再由全部计算方计算出全局计算结果。。
49.用于权限管理的服务可以由权限管理模块105执行。权限管理模块105可以被配置
为对访问权限进行管理和授权。权限管理模块105可以被配置为验证用户是否为合法用户,并且确认用户是否有访问信息的权限,授权用户访问,确保用户私有信息安全。如果用户不是合法用户,或者用户没有访问信息的权限,则可以作为异常情况记录在异常日志中,并且可以向发出请求的代理进程端进行反馈以及进行进一步的处理。
50.代理进程端可以包括数据提供方115、机器学习模型训练方118和机器学习模型发布方121。
51.数据提供方115可以被配置为向机器学习模型训练方118提交数据。数据提供方115可以包括i/o模块116和安全模块117。
52.机器学习模型训练方118可以被配置为从数据提供方115接收数据,利用接收到的数据进行机器学习模型的训练。机器学习模型训练方118还可以配置为将经训练的机器学习模型转发到机器学习模型发布方121。例如,机器学习模型训练方118可以将经训练的机器学习模型保存到服务进程端,并由服务进程端传递到机器学习模型发布方121。机器学习模型训练方118可以包括i/o模块119和安全模块120。
53.机器学习模型发布方121可以被配置为从机器学习模型训练方118(例如,经由服务进程端)接收经训练的机器学习模型,并且发布接收到的机器学习模型。机器学习模型发布方121可以包括i/o模块122和安全模块123。
54.数据提供方115、机器学习模型训练方118和机器学习模型发布方121的i/o模块可以被配置为实现数据的读写、转发等。数据提供方115、机器学习模型训练方118和机器学习模型发布方121的安全模块可以被配置为各种安全策略模块的实现接口。
55.值得注意的是,图1中所示的系统的各个组件并非必需的,而是可以根据具体实施例选择其中一个或多个组件。例如,系统可以不包括权限管理模块105。服务进程端在接收到来自代理进程端的请求后,不进行合法性的验证,直接根据其身份确定相应的配置信息和安全策略。又例如,图1中示出的同态加密适配器109、差分隐私适配器110、数据切片适配器111和多方安全计算适配器112及其与数据提供方、及其学习模型训练方和机器学习模型发布方的对应性仅仅是示例性的,不旨在排除其他用于隐私保护的安全策略以及安全策略与具体代理进程端的对应性。机器学习领域的相关技术人员将认识到,可以使用其它安全策略并根据需要将其与各种代理进程端进行匹配。又例如,虽然图1中同时示出了数据提供方115、机器学习模型训练方118和机器学习模型发布方121三种代理进程端,但相关技术人员能够认识到,在一些具体实施例中可以只让其中一种或多种代理进程端使用本公开的方法来进行隐私保护,而对于其余各方代理进程端不使用隐私保护或者可以使用除了本公开所例示的其他隐私保护安全策略。
56.图2示出了根据本公开的实施例的用于分布式机器学习的服务进程端的流程的示意图。
57.如图2中所示,在利用restful api模块101从代理进程端(诸如,数据提供方115、机器学习模型训练方118或机器学习模型发布方121)接收到请求之后,首先,在201处,可以由权限管理模块105执行访问控制,确定发起请求的用户是否是合法的代理进程端。接着,在202处,可以由权限管理模块105执行授权控制,确定代理进程端的身份,诸如数据提供方、机器学习模型训练方或机器学习模型发布方,以便于根据身份确定发起请求的代理进程端的权限。接着,在203处,可以由安全方法引擎模块104根据权限管理模块105确定的代
理进程端的身份或者直接从请求中的特定字段识别的代理进程端的身份来执行安全策略适配。可以调用安全策略适配器108选择与代理进程端的身份相应的对数据和/或模型进行隐私保护的安全策略。根据对安全策略的选择结果,可以调用同态加密适配器模块109、差分适配器模块110、数据切片适配器模块111或多方安全计算适配器112的多个适配器模块中的相应一个或多个。被调用的适配器模块利用从配置信息管理模块103请求的配置信息生成安全信息,其中,配置信息对应于安全策略。生成的安全信息可以在安全策略适配203处经由restful api模块101发送到相应的代理进程端,以供代理进程端对数据和/或模型进行隐私保护。在204处,可以执行异常日志处理。具体而言,记录在访问控制201、授权控制202以及安全策略适配203处出现的异常情况的日志可以经由restful api模块101反馈到相应的代理进程端,以供代理进程端进行相应的后续处理。
58.图3示出了根据本公开的实施例的用于分布式机器学习的代理进程端的流程的示意图。
59.如图3中所示,在代理进程端以离线或者在线的方式向服务进程端发出请求,并且从服务进程端接收到返回的安全信息之后,代理进程端可以利用安全信息对数据和/或模型进行隐私保护。
60.数据提供方115可以被配置为接收原始数据,向服务进程端发出安全策略请求,从服务进程端接收到返回的安全信息,根据安全信息对原始数据进行隐私保护,以及将安全的经隐私保护的数据传送给机器学习模型训练方118。图3中示出为单个数据提供方115,但是用于机器学习的系统可以包括多个数据提供方115,该多个数据提供方115可以各自为机器学习模型的训练提供不同的训练数据。
61.数据提供方115可以包括i/o模块116和安全模块117,其中,安全模块117可以是各种安全策略模块的实现接口。对于数据提供方115,从服务进程端接收到返回的安全信息可以与同态加密安全策略或多方安全计算安全策略相关联。例如,可以根据安全信息的内容判断对应的策略。相应地,安全方法模块可以为同态加密模块301、多方安全计算模块302或差分隐私模块307。同态加密模块301可以被配置为根据从服务进程端接收的安全信息对原始数据进行同态加密。多方安全计算模块302可以被配置为根据从服务进程端接收的安全信息对原始数据进行多方安全计算。差分隐私模块307可以被配置为根据从服务进程端接收的安全信息在原始数据或经训练的模型中加入噪声。
62.机器学习模型训练方118可以被配置为从数据提供方115接收经隐私保护的数据,利用该经隐私保护的数据训练机器学习模型,向服务进程端发出安全策略请求,从服务进程端接收到返回的安全信息,并且利用安全信息对机器学习模型进行隐私保护,以及将经隐私保护的机器学习模型传送给机器学习模型发布方121或者服务进程端。图3中示出为单个机器学习模型训练方118,但是用于机器学习的系统可以包括多个机器学习模型训练方118,该多个机器学习模型训练方118可以各自进行机器学习模型的训练。
63.在根据本公开的实施例中,训练得到的机器学习模型特征向量除了被传送给机器学习模型发布方121之外,还可以被传送到服务进程端并且保存在服务进程端本地,以供转发到机器学习模型发布方121或者供下一轮模型训练使用。
64.机器学习模型训练方118可以包括i/o模块119和安全模块120,其中安全模块120可以是各种安全策略模块的实现接口。对于机器学习模型训练方118,安全信息可以与同态
加密安全策略、差分隐私安全策略或数据切片安全策略相关联,相应地,安全方法模块可以为同态加密模块303、差分隐私模块304、数据切片模块305或多方安全模块308。同态加密模块303可以被配置为根据从服务进程端接收的安全信息对机器学习模型的数据进行同态加密。差分隐私模块304可以被配置为根据从服务进程端接收的安全信息在机器学习模型的数据中加入噪声。数据切片模块305可以被配置为根据从服务进程端接收的安全信息将机器学习模型的数据进行切分和处理。例如,数据切片模块305可以应用于用于机器学习的系统包括多个机器学习模型训练方118的情况。数据切片模块305可以根据从服务进程端接收的安全信息将机器学习模型训练方118接收到的数据进行切分,并且在多个机器学习模型训练方118之间交换数据切片,将交换得到的数据切片与本地的数据切片进行组合,并且利用组合得到的数据进行模型训练。多方安全模块308可以根据从服务进程端接收到的安全信息进行多方安全计算。
65.机器学习模型发布方121可以被配置为从机器学习模型训练方118或者服务进程端接收安全的经隐私保护的机器学习模型,向服务进程端发出安全策略请求,从服务进程端接收到返回的安全信息,利用安全信息对要发布的机器学习模型进行隐私保护,并且发布经隐私保护的要发布的机器学习模型。
66.机器学习模型发布方121可以包括i/o模块122和安全模块123,其中安全模块123可以是各种安全策略模块的实现接口。对于机器学习模型发布方121,安全信息可以与差分隐私策略相关联,相应地,安全策略模块可以为差分隐私模块306。差分隐私模块306可以被配置为根据从服务进程端接收的安全信息对要发布的机器学习模型(具体而言,该机器学习模型的特征向量)进行加噪保护。
67.需要指出,在接收到相应安全信息后,各个安全策略模块(例如同态加密301、多方安全302、同态加密303、差分隐私304、数据切片305和差分隐私306等)基于该安全信息对数据和/或模型进行隐私保护的具体算法是相关领域技术人员已知的,在此不做赘述。
68.图4示出了根据本公开的实施例的用于在多个代理进程端之间传送的数据的隐私保护的方法的流程图,该方法在与多个代理进程端通信的服务进程端处执行。
69.在s401处,可以从多个代理进程端中的代理进程端接收请求。
70.在s402处,可以响应于该请求确定该代理进程端的身份。例如,可以从请求中包括的字段识别代理进程端的身份。
71.在s403处,可以基于身份确定与该代理进程端对应的安全策略。身份和安全策略的对应可以参见图1及相关描述。
72.在s404处,可以基于安全策略利用与该安全策略相关联的配置信息来生成该代理进程端的安全信息。
73.在s405处,可以将安全信息发送给该代理进程端。
74.综上所述,根据本公开的第一方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的方法,该方法在与多个代理进程端通信的服务进程端处执行,该方法包括:从多个代理进程端中的代理进程端接收请求;响应于该请求,确定该代理进程端的身份;基于身份,确定与该代理进程端对应的安全策略;基于安全策略,利用与该安全策略相关联的配置信息来生成该代理进程端的安全信息,其中,配置信息存储在该服务进程端处并且是由多个代理进程端中的一个或多个代理进程端预先定义的;以及将安全信息发送给
该代理进程端,其中,安全信息用于对多个代理进程端中要由该代理进程端传送的信息进行隐私保护。
75.在一些实施例中,多个代理进程端包括数据提供方、机器学习模型训练方和机器学习模型发布方。
76.在一些实施例中,多个代理进程端中的代理进程端为数据提供方,安全信息用于对要由该数据提供方传送给机器学习模型训练方用于模型训练的数据进行隐私保护;并且与作为数据提供方的该代理进程端对应的安全策略包括同态加密策略和多方安全计算策略。
77.在一些实施例中,多个代理进程端中的代理进程端为机器学习模型训练方,安全信息用于对由该机器学习模型训练方利用从数据提供方接收到的数据经由模型训练而得到的、要传送给模型发布方的机器学习模型进行隐私保护;并且与作为机器学习模型训练方的该代理进程端对应的安全策略包括同态加密策略、差分隐私策略和数据切片策略。
78.在一些实施例中,从机器学习模型训练方接收并保存机器学习模型的特征向量。
79.在一些实施例中,多个代理进程端中的代理进程端为机器学习模型发布方,安全信息用于对由该机器学习模型发布方从服务进程端或者机器学习模型训练方接收的、要由机器学习模型发布方发布的机器学习模型进行隐私保护;并且与作为机器学习模型发布方的该代理进程端对应的安全策略包括差分隐私策略。
80.在一些实施例中,配置信息能够由该代理进程端设置;该方法还包括:验证该代理进程端设置的配置信息是否符合预先设定的规则;以及如果该配置信息符合预先设定的规则,则将该配置信息存储在该服务进程端本地。
81.在一些实施例中,多个代理进程端包括多个数据提供方和多个机器学习模型训练方,多个数据提供方提供不同的数据,多个机器学习模型训练方利用不同的数据分别进行模型训练。
82.根据本公开的第二方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的装置,该装置被布置在与多个代理进程端通信的服务进程端处,该装置包括:访问控制模块,被配置为:从多个代理进程端中的代理进程端接收请求,以及响应于请求,确定该代理进程端的身份;安全策略引擎模块,被配置为:基于身份,确定与该代理进程端对应的安全策略;基于安全策略,利用与该安全策略相关联的配置信息来生成该代理进程端的安全信息,其中,配置信息存储在该服务进程端处并且是由多个代理进程端中的一个或多个代理进程端预先定义的;以及将安全信息发送给该代理进程端,其中,安全信息用于对多个代理进程端中要由该代理进程端传送的信息进行隐私保护。
83.在一些实施例中,多个代理进程端包括数据提供方、机器学习模型训练方和机器学习模型发布方。
84.在一些实施例中,多个代理进程端中的代理进程端为数据提供方,安全信息用于对要由该数据提供方传送给机器学习模型训练方用于模型训练的数据进行隐私保护;并且与作为数据提供方的该代理进程端对应的安全策略包括同态加密策略和多方安全计算策略。
85.在一些实施例中,多个代理进程端中的代理进程端为机器学习模型训练方,安全信息用于对由该机器学习模型训练方利用从数据提供方接收到的数据经由模型训练而得
到的、要传送给模型发布方或者服务进程端的机器学习模型进行隐私保护;并且与作为机器学习模型训练方的该代理进程端对应的安全策略包括同态加密策略、差分隐私策略和数据切片策略。
86.在一些实施例中,从机器学习模型训练方接收并保存机器学习模型的特征向量。
87.在一些实施例中,多个代理进程端中的代理进程端为机器学习模型发布方,安全信息用于对由该机器学习模型发布方从服务进程端或者机器学习模型训练方接收的、要由机器学习模型发布方发布的机器学习模型进行隐私保护;并且与作为机器学习模型发布方的该代理进程端对应的安全策略包括差分隐私策略。
88.在一些实施例中,配置信息能够由该代理进程端设置;该装置还包括配置信息管理模块,该配置信息管理模块被配置为:验证该代理进程端设置的配置信息是否符合预先设定的规则;以及如果配置信息符合预先设定的规则,则将该配置信息存储在该服务进程端本地。
89.在一些实施例中,多个代理进程端包括多个数据提供方和多个机器学习模型训练方,多个数据提供方提供不同的数据,多个机器学习模型训练方利用不同的数据分别进行模型训练。
90.根据本公开的第三方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的非瞬态计算机可读存储介质,其上存储有程序,其特征在于,当该程序由计算机执行时,使该计算机执行根据本公开的第一方面的方法。
91.根据本公开的第四方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的计算装置,包括存储器和处理器,该存储器与该处理器通信耦合,该存储器中存储有程序,该程序当由处理器执行时,使得该处理器执行根据本公开的第一方面的方法。
92.根据本公开的第五方面,提供了一种用于在多个代理进程端之间传送的数据的隐私保护的计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现根据第一方面的方法。
93.根据本公开的用于在多个代理进程端之间传送的数据的隐私保护的方法和装置可以具有如下优点:
94.实现对机器学习的全生命周期管理,保证机器学习各个阶段的数据以及模型安全;
95.实现安全模块模块化设计,方便安全算法的扩展;
96.实现安全隔离机制,基于角色的用户权限隔离,保证用户应用运行的独立性;
97.保证低侵入性,机器学习算法代码不需要做出改变;以及
98.实现统一的隐私安全保护算法接口,用户不必知道算法实现的细节。
99.提供本公开的主题作为用于执行本公开中描述的特征的装置、系统、方法和程序的示例。但是,除了上述特征之外,还可以预期其他特征或变型。可以预期的是,可以用可能代替任何上述实现的技术的任何新出现的技术来完成本公开的部件和功能的实现。
100.另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
101.类似地,虽然在附图中以特定次序描绘了操作,但是这不应该被理解为要求以所示的特定次序或者以顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献