联邦学习审计的数据收集方法、介质、装置及程序产品与流程

文档序号:27621410发布日期:2021-11-29 14:25阅读:154来源:国知局
联邦学习审计的数据收集方法、介质、装置及程序产品与流程

1.本发明涉及数据安全和隐私保护技术领域,具体涉及联邦学习审计的数据收集方法、联邦学习审计的数据收集装置、联邦学习审计装置、程序产品、电子设备及存储介质。


背景技术:

2.随着人工智能和大数据挖掘分析等应用领域的发展,对数据量的需求越来越大。高质量的数据往往来源于经营活动中产生和积累的应用数据,而应用数据往往分散在不同的组织和个体手上,跨行业跨领域的应用数据往往也是分散的。随着数据所有权的重要性、用户隐私和数据安全等受到更多重视,也随着法律法规对数据收集处理提出更严格的约束和要求,掌握应用数据的各个组织或个体往往不愿意或者没有合适手段进行彼此之间的合作,从而很难让各自掌握的应用数据共同发挥作用。这种数据分享和协同合作方面的困境被称之为数据孤岛现象。为了解决跨行业跨组织的数据合作难题,尤其为解决隐私保护及数据安全的问题,提出了联邦学习的概念。联邦学习指的是拥有数据的各个参与方,在不共享受保护的隐私数据且自有数据不传递到外部的前提下,通过加密的方式交换模型相关信息从而实现协同优化联邦学习模型的过程。
3.联邦学习算法从理论上保证了数据隐私的安全性,但是在实际的工业着陆中,仍然需要考虑许多系统级的安全风险,例如在进行联邦学习任务的过程中可能遭遇到不同的故障发生或者通讯干扰的情况,甚至可能存在恶意的参与方以破坏联邦学习任务为目的的恶意攻击和以泄露隐私为目的的恶意攻击。因此在进行联邦学习的过程中,需要收集并审计联邦学习各参与方的传输数据,以确保联邦学习参与方特别是有众多参与方参与的联邦学习任务情况下的通信和计算的安全性。联邦学习的各个参与方需要在彼此之间传输大量的数据,其通信出入口存在巨大的出入通信/流量的需求。在这种情况下,如何高效高速、可靠可信地收集参与方与其他参与方之间的传输数据,以及如何满足不同审计模式下的审计应用获取传输数据在时效方面上的不同诉求,是目前亟需解决的技术难题。


技术实现要素:

4.本发明提供联邦学习审计的数据收集方法、联邦学习审计的数据收集装置、联邦学习审计装置、程序产品、电子设备及存储介质。通过从应用层收集联邦学习中的传输数据,不仅极大地提高数据收集效率,而且确保了所收集的传输数据的可信度。同时可满足参与方的审计应用在不同审计模式下的数据使用诉求,有利于整体的兼容性。
5.第一方面,提供一种联邦学习审计的数据收集方法,所方法包括:从第一参与方的应用层网关获取所述第一参与方与其他参与方之间与联邦学习相关的传输数据;其中,所述第一参与方的应用层网关通过应用层路由转发节点与所述其他参与方的应用层网关连接;根据下游所绑定的审计应用的审计模式,将所述传输数据相应存储至与所述审计模式对应的存储单元,以供所述审计应用从对应的存储单元获取所述传输数据。
6.可选的实施例中,所述传输数据包括:控制流信息、算法流信息、数据流信息中的
至少一种;所述控制流信息与所述第一参与方所参与的联邦学习任务相关;所述算法流信息与联邦学习算法相关,所述联邦学习算法对应所述联邦学习任务中的算法模块对应的算法;所述数据流信息与所述第一参与方所参与的联邦学习算法的通信数据相关。
7.可选的实施例中,所述根据下游所绑定的审计应用的审计模式,将所述传输数据相应存储至与所述审计模式对应的存储单元,以供所述审计应用从对应的存储单元获取所述传输数据,包括:所述审计应用的审计模式包括实时审计模式和事后审计模式;若下游所绑定的审计应用的审计模式为实时审计模式,则将该审计应用对应的传输数据存储至缓冲区,以供所述审计应用在接收到数据读取指令后,从所述缓冲区读取该审计应用对应的传输数据;若下游所绑定的审计应用的审计模式为事后审计模式,则将该审计应用对应的传输数据存储至时序数据库或者区块链,以供所述审计应用在需要使用所述传输数据的情况下,从所述时序数据库或者区块链读取该审计应用对应的传输数据。
8.可选的实施例中,在实时审计模式下的审计应用从所述缓冲区读取该审计应用对应的传输数据之后,所述方法还包括:确定是否对所述缓冲区设定数据持久化,若是,则将所述缓冲区中的传输数据存储至所述时序数据库或者区块链。
9.可选的实施例中,所述从第一参与方的应用层网关获取所述第一参与方与其他参与方之间的传输数据,包括:当且仅当所述第一参与方开启控制流审计,则从所述应用层网关获取所述第一参与方与其他参与方之间的所述控制流信息;当且仅当所述第一参与方开启算法流审计,则从所述应用层网关获取所述第一参与方与其他参与方之间的所述算法流信息;当且仅当所述第一参与方开启数据流审计,则从所述应用层网关获取所述第一参与方与其他参与方之间所述数据流信息;其中,所述控制流审计用于校验所述传输数据的控制流信息;所述算法流审计用于检验所述传输数据的算法流信息;所述数据流审计用于校验所述传输数据的数据流信息。
10.可选的实施例中,在从第一参与方的应用层网关获取所述第一参与方与其他参与方之间的传输数据之前,所述方法还包括:获取所述第一参与方的审计级别,并根据所述审计级别确定:所述第一参与方是否开启所述控制流审计;所述第一参与方是否开启所述数据流审计;所述第一参与方是否开启所述算法流审计。
11.可选的实施例中,所述控制流信息预先设定通过一元调用进行传输,所述从所述应用层网关获取所述第一参与方与其他参与方之间的所述控制流信息,包括:从所述应用层网关抓取所述一元调用的单个响应对象,从而获得所述第一参与方与其他参与方之间的所述控制流信息。
12.可选的实施例中,所述算法流信息和/或所述数据流信息预先设定通过流式调用进行传输,从所述应用层网关抓取所述第一参与方与其他参与方之间的所述算法流信息和/或所述数据流信息,包括:从所述应用层网关抓取所述流式调用的多个响应对象,且对所述多个响应对象中的多个子算法流信息进行拼装处理,和/或,对所述多个响应对象中的多个子数据流信息进行拼装处理;其中所述多个响应对象和所述多个子算法流信息一一对应,所述多个响应对象和所述多个子数据流信息一一对应;获得所述第一参与方与其他参与方之间的所述算法流信息和/或所述数据流信息。
13.第二方面,提供一种联邦学习审计的数据收集装置,所述数据收集装置包括:数据收集模块,用于从第一参与方的应用层网关抓取所述第一参与方与其他参与方之间与联邦
学习相关的传输数据;其中,所述第一参与方的应用层网关通过应用层路由转发节点与所述其他参与方的应用层网关连接;数据存储模块,用于根据下游所绑定的审计应用的审计模式,将所述传输数据相应存储至与所述审计模式对应的存储单元,以供所述审计应用从对应的存储单元获取所述传输数据;
14.第三方面,提供一种计算机可读存储介质,该计算机存储介质保存计算机指令,该计算机指令被处理装置执行时,使得所述处理装置执行根据第一方面任一实施例中描述的联邦学习审计的数据收集方法的步骤。
15.第四方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面任一实施例中描述的联邦学习审计的数据收集方法的步骤。
16.第五方面,提供一种电子设备,所述电子设备包括:存储器、处理器以及存储在存储器上的用于实现联邦学习审计的数据收集方法的程序,所述存储器用于存储所述邦学习审计的数据收集方法的程序;所述处理器用于执行所述联邦学习审计的数据收集方法的程序,以实现如第一方面任一实施例中描述的所述联邦学习审计的数据收集方法的步骤。
17.第六方面,提供一种联邦学习审计装置,所述联邦学习审计装置包括:第二方面描述的联邦学习审计的数据收集装置;以及数据分析模块,用于根据所述第一参与方的审计级别而开启控制流审计、算法流审计以及数据流审计中的一种或者多种,审计所述联邦学习审计的数据收集装置所收集的传输数据并生成审计结果。
18.本发明所提供的技术方案,通过从应用层收集联邦学习中的传输数据,不仅极大地提高数据收集效率,而且确保了所收集的传输数据的可信度。同时可满足参与方的审计应用在不同审计模式下的数据使用诉求,有利于整体的兼容性。
附图说明
19.为了更清楚地说明本公开实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是本发明实施例提供的一种联邦学习各参与方之间的网络拓扑示意图;
21.图2是本发明实施例提供的一种联邦学习审计的数据收集系统架构图;
22.图3是本发明实施例提供的一种联邦学习审计的数据收集方法流程图;
23.图4是本发明实施例提供的一种联邦学习审计的数据收集装置的结构框图;
24.图5是本发明实施例提供的一种联邦学习审计装置的结构框图。
具体实施方式
25.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
26.在联邦学习场景中,特别是有众多参与方参与的联邦学习任务情况下,为确保联邦学习各参与方的通信和计算的安全性,我们需要收集并审计联邦学习各参与方的传输数据,但联邦学习各参与方通信出入口存在巨大的出入通信/流量的需求。如何高效高速、可
靠可信地收集各参与方之间的传输数据,以及如何满足不同审计模式下的审计应用获取传输数据在时效方面上的不同诉求,是本发明实施例需要解决的技术难题。
27.为解决前述技术难题,本发明实施例提供了联邦学习审计的数据收集方法、以及相关的装置、程序产品、电子设备、存储介质。其中所述联邦学习审计的数据收集方法包括:从第一参与方的应用层网关获取第一参与方与其他参与方之间与联邦学习相关的传输数据;然后根据下游所绑定的审计应用的审计模式,将获取到的传输数据相应存储至与所绑定审计应用的审计模式对应的存储单元,以供下游所绑定的审计应用从对应的存储单元获取相应的传输数据。其中,上述第一参与方的应用层网关通过应用层路由转发节点与其他参与方的应用层网关连接。如此,选定在第一参与方应用层网关进行传输数据收集,不仅极大地提高数据收集效率,而且确保了所收集的传输数据的可信度。同时根据下游所绑定的审计应用的审计模式对收集到的传输数据进行不同的存储方式,可满足参与方的审计应用在不同审计模式下的数据使用诉求,有利于整体的兼容性。
28.本发明实施例可用于以下应用场景,包括但是不限于,多方安全计算、与联邦学习有关的机器学习模型训练、数据安全、隐私保护或者应用隐私计算框架或算法的其它应用场景等。
29.本技术实施例可以依据具体应用环境进行调整和改进,此处不做具体限定。
30.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术的实施例进行描述。
31.请参阅图1,图1示出了本发明实施例提供的联邦学习各参与方之间的网络拓扑示意图。在本发明实施例中,为每个参与方配置一个应用层网关,负责与之连接的参与方与其他参与方之间的数据传输,包括接收数据与发送数据。在涉及多个参与方的情况下,传输数据从一个参与方的应用层网关转发至另一个参与方的应用层网关,还需在两者之间部署应用层路由中转节点,应用层路由中转节点与各个参与方的应用层网关连接,各参与方的应用层网关与应用层路由中转节点连接后可以构成星型网络拓扑,其中位于星型网络拓扑中心位置的应用层路由中转节点的数量可以为一个或多个,具体根据实际情况进行部署,当联邦学习的参与方数量较多时,部署多个应用层路由中转节点可以分担数据中转负载,同时提高中转效率。当然在仅涉及两个参与方的情况,可以通过一个应用层网关即可完成数据转发。在一些实施例中,各参与方的应用层网关与应用层路由中转节点连接后还可以构成其他网络拓扑结构,例如树形结构、环型结构、总线型结构、分布式结构、网状结构等,本发明对此不作具体限定。
32.图1示出网络拓扑为星型拓扑结构,涉及了联邦学习的六个参与方,每个参与方分别连接一个应用层网关,例如参与方a、参与方b、参与方c、参与方d、参与方e和参与方f,分别与应用层网关a、应用层网关b、应用层网关c、应用层网关d、应用层网关e和应用层网关f连接。同时在网络拓扑的中心位置部署了三个应用层路由转发节点,以实现将传输数据从其中一个参与方转发至另一个参与方的应用层网关。
33.需要说明的,通常的数据收集方法主要存在以下两种方式:
34.第一种方式,从端上收集数据的方式,如在程序代码中直接导入数据库,或者添加重定向到文件等方式获取传输数据,从而获取完整数据,保证数据的完整性,并且数据不需要通过复杂的预处理就可以直接存储。但是这种方法容易被本地恶意进程绕过或者破坏,
本地恶意进程可能会向其他参与方发送不符合要求的错误数据,而向审计应用发送符合要求的正确数据以绕过审计应用的情况,从而导致数据可信度降低。
35.第二种方式,从中转设备处收集数据,如从交换机、路由器等网络层或者传输层设备中抓取数据,从而保证数据不会被端上的恶意进程修改,这种方法所收集到数据可信度得到保障。但是也带来大量的数据重组以及数据丢失等问题,极大地增加了数据收集装置的工作负载,并且在联邦学习、隐私计算、多方安全计算等应用场景下,数据传输量会随着参与方数量的增加而极剧上升,数据重组和数据丢失的问题会随数据传输量的上升显得尤其突出。
36.区别与以上两种通常的数据收集方式,本发明实施例提供从应用层收集数据的方法,在各个参与方上部署应用层网关,即每个参与方相应连接一个应用层网关,当涉及多个参与方时,还在各参与方的应用层网关之间部署应用层路由转发节点,以实现多个应用层网关之间的数据转发。然后将联邦学习审计的数据收集装置与参与方所连接的应用层网关绑定,绑定后即可实现从应用层网关抓取传输数据。一方面,应用层网关与参与方相对独立,因此可以直接避免传输数据被参与方篡改而无法发现的情况,从而提高了所抓取到的传输数据的可信度;另一方面,应用层网关由于部署在osi(open system interconnection,开放式系统互联)七层模型中的第七层,即应用层,应用层上的数据传输不需要进行数据重组,也不存在数据丢失严重问题,极大地减轻了数据收集装置的工作负载,其效果会随联邦学习参与方数量增加也显得尤其明显;再一方面,现有联邦学习方案中,各个参与方采用维护路由表方式实现数据转发,其路由表也会随着参与方数量的增加显得越来越复杂,而本发明实施例在应用层上构建网络拓扑,各参与方无需维护复杂的路由表,同时简化了各参与方的数据转发的开发难度,另一方面简化了数据转发方式,也确保了数据安全性。
37.下面请参阅图2,图2是本发明实施例提供的一种联邦学习审计的数据收集系统架构图。如图所示,数据收集装置从与之所绑定的应用层网关收集传输数据,收集到传输数据后根据下游所绑定的审计应用的审计模式存储至相应的存储单元。例如如果下游所绑定的审计应用的审计模式为实时审计模式,则将该审计应用对应的传输数据存储至缓冲区;如果下游所绑定的审计应用的审计模式为事后审计模式,则将该审计应用对应的传输数据存储至时序数据库或者区块链。由于实时审计模式的审计应用要求对数据进行实时审计,即要求数据读写响应速度要求足够及时,因此数据收集装置抓取到实时审计应用对应的传输数据后即存储至缓冲区,当缓冲区存储了足够多的传输数据后,则触发实时审计应用从该缓冲区读取传输数据。其中缓冲区可以是位于内存的存储空间,其响应速度较快。在一些实施例中,缓冲区可以为内存的消息队列,且可以采用生产者与消费者模式,这里数据收集装置即为生产者,实时审计应用即为消费者,通过消息队列来解决了生产者数据收集装置的生产速度和消费者实时审计应用的消费速度不一致问题,从而平衡了生产者和消费者的处理能力,实现了生产者和消费者不需直接进行通信,而是通过缓冲区解耦合,也满足了实时审计模式下的审计应用的诉求。而事后审计模式的审计应用要求对数据在事后需要审计的情况下进行审计,其开始审计的时间节点由事后审计模式的审计应用决定,对于数据收集装置而言是未知的,因此数据收集装置不适合将与所述事后审计模式的审计应用对应的传输数据存储至位于内存存储空间的缓冲区,而应存储至时序数据库或者区块链。当事后审
计应用被启动或者需要进行审计时,则从时序数据库或者区块链中读取与之对应的传输数据,从而实现事后审计应用进行事后审计,满足了事后审计的诉求。因此通过上述方式,可满足参与方的审计应用在不同审计模式下的数据使用诉求,有利于整体的兼容性。
38.在联邦学习场景中,传输数据包括控制流信息、算法流信息、数据流信息三种类型,其中控制流信息与第一参与方所参与的联邦学习任务相关,算法流信息与联邦学习任务中的联邦学习算法相关,数据流信息与第一参与方所参与的联邦学习算法中的通信数据相关。本发明实施例的数据收集装置可以根据需要从应用层网关获取上述三种类型中的一种或者任意多种组合,并且以上三种类型的传输数据的审计也可以配置为实时审计和事后审计两种模式,若该类型的传输数据被配置为实时审计,则该类型的传输数据会被存储至缓冲区;若该类型的传输数据被配置为事后审计,则该类型的传输数据会被存储至时序数据库或者区块链。例如控制流信息的审计可以根据第一参与方需求被配置为实时审计或者事后审计,当控制流信息被数据收集装置从应用层网关获取后,如控制流信息被配置为实时审计,则数据收集装置会将控制流信息存储至缓冲区,如控制流信息被配置为事后审计,则数据收集装置会将控制流信息存储至时序数据库。类似的,算法流信息、数据流信息也可以被配置为实时审计或者事后审计,其相应的数据存储方式与控制流信息类似,为了简洁,这里不再赘述。
39.下面参阅图3,图3是本发明实施例提供的一种联邦学习审计的数据收集方法流程图,如图所示,该方法100包括以下步骤。
40.步骤s102、从第一参与方的应用层网关抓取所述第一参与方与其他参与方之间与联邦学习相关的传输数据。
41.其中,第一参与方的应用层网关是预先配置的,当仅涉及两个参与方的情况,可以通过一个应用层网关完成数据转发;当涉及多个参与方的情况,每个参与方需要配置一个应用层网关,各应用层网关通过应用路由转发节点连接从而完成数据转发,各参与方的应用层网关与路由转发节点连接后所构成的网络拓扑可以为星型网络拓扑,关于该星型网络拓扑的相关细节可参考上述图1所描述的网络拓扑,为了简洁,在此不再赘述。
42.在一些具体的实施例中,如采用联邦学习fate(federated ai technology enabler)框架,其应用层网关或者应用层路由转发节点可以通过基于fate框架中的exchange转发节点实现,exchange转发节点兼顾了应用层网关和应用层路由的功能。
43.在一些实施例中,通过将传输数据拆分或者解析成控制流信息、算法流信息、数据流信息以及其它信息,并相应地分别针对控制流信息、算法流信息以及数据流信息的校验或者检验来提供控制流审计、算法流审计以及数据流审计,可以建立起不同层次的审计级别。应当理解的是,控制流信息、算法流信息和数据流信息彼此之间有不同的范畴,也针对不同的需求,各自所面对的通信和计算的安全性方面的风险来源也不相同,因此可以将相应的控制流审计、算法流审计以及数据流审计理解为彼此独立的三种审计机制。例如,某个参与方的控制流审计反馈了该参与方当前调用了错误的算子运算模块,但是算法流审计反馈了被调用的算子运算模块所执行的算法流程符合要求;再例如某个参与方的控制流审计和算法流审计均反馈为不含有错误或者恶意信息,但是数据流审计反馈了当前数据包的数据格式是错误的。通过控制流审计、算法流审计以及数据流审计这三种审计机制的组合,则可以得到相应的审计级别,每个审计级别对应一种组合以及与该组合相应的计算资源和存
储资源方面的需求。应当理解的是,这三种审计机制,只有在相应审计机制被开启或者包括该审计机制的组合或审计级别被开启时,才会进行相应的审计机制也就是进行相应的数据收集和数据分析。所述数据收集装置从第一参与方的应用层网关抓取第一参与方与其他参与方之间的传输数据之前,会获取第一参与方的审计级别,并根据所述审计级别判断所述第一参与方是否开启所述算法流审计、是否开启所述数据流审计,以及是否开启所述算法流审计。
44.如此,通过上述三种审计机制的彼此独立的功能开启或者关闭,可以控制流审计、算法流审计以及数据流审计这三种审计机制的组合并且建立起不同层次的审计级别。例如,可以设定审计级别从低到高依次为0、1、2、3,并且各个审计级别对应的组合为:审计级别为0时对应不审计也就是控制流审计、算法流审计以及数据流审计的功能均为关闭状态;审计级别为1时对应只开启控制流审计功能而算法流审计以及数据流审计的功能均为关闭状态;审计级别为2时对应开启控制流审计功能和算法流审计功能而数据流审计的功能为关闭状态;审计级别为3时对应控制流审计、算法流审计以及数据流审计的功能均为开启状态。当且仅当第一参与方开启控制流审计时,数据收集装置则从该第一参与方的应用层网关抓取该第一参与方与其他参与方之间的控制流信息;当第一参与方没有开启控制流审计时,数据收集装置不会从该第一参与方的应用层网关抓取所述控制流信息;当且仅当第一参与方开启算法流审计,数据收集装置则从该第一参与方的应用层网关抓取该第一参与方与其他参与方之间的算法流信息;当第一参与方没有开启算法流审计时,数据收集装置不会从该第一参与方的应用层网关抓取所述算法流信息;当且仅当该第一参与方开启数据流审计,数据收集装置则从该第一参与方的应用层网关抓取该第一参与方与其他参与方之间数据流信息;当第一参与方没有开启数据流审计时,数据收集装置不会从该第一参与方的应用层网关抓取所述数据流信息。
45.如此,通过设定不同层次的审计级别,并根据审计级别来配置开启或者关闭相应的审计机制的功能,并配备相应的资源,可以满足不同参与方各自的对通信和计算的安全性方面的变化的多样化的诉求。应当理解的是,审计级别的具体划分和设定方式,可以根据实际需求而定,在此不做具体限定。在各种可能的审计级别的具体划分和设定方式中,一般设定最低的审计级别如审计级别为0时,意味着不开启任何审计机制或者说控制流审计、算法流审计以及数据流审计均未关闭状态。审计级别也可以理解为审计权限,也就是当前可以执行审计功能的权限。不同的参与方可以有不同的审计级别或者不同的审计权限。例如,一个参与方的审计级别可以为1,这意味着只开启控制流审计功能;而另一个参与方的审计级别可以为2,这意味着开启控制流审计功能和算法流审计功能。如此,通过不同的审计级别和设定各自独立的审计机制,可以满足每个参与方因自身需求和资源不同而产生的对通信和计算的安全性方面变化的多样化的诉求,有利于灵活调整系统整体的安全性。
46.为便于所述数据收集装置更高效高速地从应用层网关中区分出控制流信息、算法流信息和数据流信息,本发明实施例提供如下实现方式:可以预先在各个参与方约定控制流信息通过一元调用方式进行传输,而约定算法流信息和数据信息通过流式调用方式进行传输,进一步的,该一元调用可以为grpc(google remote procedure call,google远程过程调用)一元调用,流式调用可以为grpc流式调用。因此,数据收集装置从应用层网关抓取到的一元调用的单个响应对象,即可从单个响应对象中获得控制流信息;数据收集装置从
所述应用层网关抓取所述流式调用的多个响应对象,从所述多个响应对象中可以获取多个子算法流信息,其中多个响应对象与多个子算法流信息一一对应,通过对多个子算法流信息拼装处理即可以获得所述算法流信息;同样的,从所述多个响应对象中也可以获取多个子数据流信息,其中多个响应对象与多个子数据流信息一一对应,通过对多个子数据流信息拼装处理即可以获得所述数据流信息。为进一步区分算法流信息和数据流信息,可以根据多个响应对象中的数据标签进行区分。以上区方式,不需要将传输数据抓取至本地后再判断传输数据所属类型,而直接根据数据的传输方式即可以基本判断该传输数据的所属类型,极大地提升了数据分类的处理效率。
47.当然为兼容更多的联邦学习框架,一些联邦学习可能不存在上述的不同的调用方式,因此在本发明实施例中,还提供另一种传输数据的区分方式,即在各第一参与方之间事先约定元数据标签,每种类型的传输数据在进行传输之前都会附上相应的数元数据标签加以区分,例如控制流信息附上控制流标签,算法流信息附上算法流标签,数据流信息附上数据流信息。当数据收集装置从应用层网关抓取到传输数据后,根据其元数据标签即可以进行区分控制流信息、算法流信息和数据流信息。
48.步骤s104、根据数据收集器所绑定的审计应用的审计模式,将传输数据相应存储至与审计模式对应的存储单元,以供审计应用从对应的存储单元获取传输数据。
49.若下游所绑定的审计应用的审计模式为实时审计模式,则将该审计应用对应的传输数据存储至缓冲区,以供该审计应用在接收到数据读取指令后,从缓冲区读取该审计应用对应的传输数据;若下游所绑定的审计应用的审计模式为事后审计模式,则将该审计应用对应的传输数据存储至时序数据库或者区块链,以供该审计应用在需要使用的情况下,从时序数据库或者区块链读取该审计应用对应的传输数据。关于步骤s104数据存储方式的相关细节可参考上述图2所描述的联邦学习审计的数据收集系统架构中对数据存储的相关细节,为了简洁,在此也不再赘述。
50.而需要进一步补充的是,在一些实施例中,对于存储在缓冲区的传输数据,本发明实时例还可供第一参与方选择是否将数据持久化。实时审计下模式下的审计应用从缓冲区存储单元读取该审计应用对应的传输数据之后,还需要确定第一参与方是否对缓冲区设定数据持久化,若是,则将缓冲区中的传输数据存储至时序数据库或者区块链。
51.本发明实施例选定在第一参与方应用层网关进行传输数据收集,不仅极大地提高数据收集效率,而且确保了所收集的传输数据的可信度。同时根据下游所绑定的审计应用的审计模式对收集到的传输数据进行不同的存储方式,可满足第一参与方的审计应用在不同审计模式下的数据使用诉求,有利于整体的兼容性。
52.下面请参阅图4,图4是本发明实施例提供的一种联邦学习审计的数据收集装置的结构框图,其中该联邦学习审计的数据收集装置400包括:
53.数据收集模块402,用于从第一参与方的应用层网关抓取所述第一参与方与其他参与方之间与联邦学习相关的传输数据;其中,所述第一参与方的应用层网关通过应用层路由转发节点与所述其他参与方的应用层网关连接。
54.数据存储模块404,用于根据下游所绑定的审计应用的审计模式,将所述传输数据相应存储至与所述审计模式对应的存储单元,以供所述审计应用从对应的存储单元获取所述传输数据。
55.可选的,所述传输数据包括:控制流信息、算法流信息、数据流信息中的一种或者任意多种组合;所述控制流信息与所述第一参与方所参与的联邦学习任务相关;所述算法流信息与联邦学习算法相关,所述联邦学习算法对应所述联邦学习任务中算法模块对应的算法;所述数据流信息与所述第一参与方所参与的联邦学习算法的通信数据相关。
56.可选的,所述数据存储模块404具体用于,若下游所绑定的审计应用的审计模式为实时审计模式,则将该审计应用对应的传输数据存储至缓冲区,以供所述审计应用在接收到数据读取指令后,从所述缓冲区读取该审计应用对应的传输数据;若下游所绑定的审计应用的审计模式为事后审计模式,则将该审计应用对应的传输数据存储至时序数据库或者区块链,以供所述审计应用在事后需要使用的情况下,从所述时序数据库或者区块链读取该审计应用对应的传输数据。
57.可选的,所述数据存储模块404还用于,确定所述第一参与方是否对所述缓冲区存储单元设定数据持久化,若是,则将所述缓冲区中的传输数据存储至所述时序数据库或者区块链。
58.可选的,所述数据收集模块402具体用于,当且仅当所述第一参与方开启控制流审计,则从所述应用层网关抓取所述第一参与方与其他参与方之间的所述控制流信息;当且仅当所述第一参与方开启算法流审计,则从所述应用层网关抓取所述第一参与方与其他参与方之间的所述算法流信息;当且仅当所述第一参与方开启数据流审计,则从所述应用层网关抓取所述第一参与方与其他参与方之间所述数据流信息;其中,所述控制流审计用于校验所述传输数据的控制流信息;所述算法流审计用于检验所述传输数据的算法流信息;所述数据流审计用于校验所述传输数据的数据流信息。
59.可选的,所述数据收集模块402还用于,在从第一参与方的应用层网关抓取所述第一参与方与其他参与方之间的传输数据之前,获取所述第一参与方的审计级别,并根据所述审计级别确定:所述第一参与方是否开启所述算法流审计;所述第一参与方是否开启数据流审计;所述第一参与方是否开启所述算法流审计。
60.可选的,所述数据收集模块402具体用于,从所述应用层网关抓取所述一元调用的单个响应对象,从而获得所述第一参与方与其他参与方之间的所述控制流信息;其中所述控制流信息预先设定通过一元调用进行传输。
61.可选的,所述数据收集模块402具体用于,从所述应用层网关抓取所述流式调用的多个响应对象,且对所述多个响应对象中的多个子算法流信息进行拼装处理,和/或,对所述多个响应对象中的多个子数据流信息进行拼装处理;其中所述多个响应对象和所述多个子算法流信息一一对应,所述多个响应对象和所述多个子数据流信息一一对应;获得所述第一参与方与其他参与方之间的所述算法流信息和/或所述数据流信息;其中,所述算法流信息和/或所述数据流信息预先设定通过流式调用进行传输。
62.应理解的,该数据收集装置可以作为联邦学习应用层网关上的插件从而不影响具体第一参与方上对联邦学习相关软件或服务的运行,也可以作为具体第一参与方的硬件平台的插件或者整合成为其一部分。这些可以根据实际应用场景和需求调整,在此不做具体限定。
63.其中,该联邦学习审计的数据收集装置400的各个功能模块的具体实现相关细节可以参考上述图1、图2、图3所描述的相关细节,在此不再赘述。
64.下面请参阅图5,图5是本发明实施例提供的一种联邦学习审计装置的结构框图。该联邦学习审计装置500包括:图4装置实施例描述的数据收集装置;以及数据分析模块502。
65.其中数据分析模块502,用于根据所述第一参与方的审计级别而开启控制流审计、算法流审计以及数据流审计中的一种或者多种,从而审计所述数据收集装置所收集的传输数据并生成审计结果。
66.应当理解的是,图5所示的联邦学习审计装置500可以作为联邦学习应用层网关上的插件从而不影响具体第一参与方上对联邦学习相关软件或服务的运行,也可以作为具体第一参与方的硬件平台的插件或者整合成为其一部分,也可以作为独立于联邦学习任务的第一参与方之外的审计装置。这些可以根据实际应用场景和需求调整,在此不做具体限定。
67.本技术还提供一种电子设备,具体可以为联邦学习数据收集设备,包括:处理器,存储器,通信总线。其中,通信总线用于实现处理器和存储器之间的连接通信。存储器可以是高速ram存储器,也可以是稳定的存储器(non

volatile memory),例如磁盘存储器。存储器可选的还可以是独立于前述处理器的存储设备。
68.作为一种计算机存储介质的存储器中可以包括操作系统、网络通信模块以及联邦学习审计的中数据收集程序。操作系统是管理和控制联邦学习审计数据收集设备硬件和软件资源的程序,支持联邦学习审计的数据收集程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器内部各组件之间的通信,以及参与联邦学习审计数据收集方法中其它硬件和软件之间通信。
69.联邦学习审计的数据收集设备中,处理器用于执行存储器中存储的联邦学习审计的数据收集程序,实现上述任一项所述的联邦学习审计的数据收集方法的步骤。本技术联邦学习审计的数据收集设备具体实施方式与上述联邦学习审计的数据收集方法各实施例基本相同,在此不再赘述。
70.本技术提供的具体实施例可以用硬件,软件,固件或固态逻辑电路中的任何一种或组合来实现,并且可以结合信号处理,控制和/或专用电路来实现。本技术具体实施例提供的设备或装置可以包括一个或多个处理器(例如,微处理器,控制器,数字信号处理器(dsp),专用集成电路(asic),现场可编程门阵列(fpga)等),这些处理器处理各种计算机可执行指令从而控制设备或装置的操作。本技术具体实施例提供的设备或装置可以包括将各个组件耦合在一起的系统总线或数据传输系统。系统总线可以包括不同总线结构中的任何一种或不同总线结构的组合,例如存储器总线或存储器控制器,外围总线,通用串行总线和/或利用多种总线体系结构中的任何一种的处理器或本地总线。本技术具体实施例提供的设备或装置可以是单独提供,也可以是系统的一部分,也可以是其它设备或装置的一部分。
71.本技术提供的具体实施例可以包括计算机可读存储介质或与计算机可读存储介质相结合,例如能够提供非暂时性数据存储的一个或多个存储设备。计算机可读存储介质/存储设备可以被配置为保存数据,程序器和/或指令,这些数据,程序器和/或指令在由本技术具体实施例提供的设备或装置的处理器执行时使这些设备或装置实现有关操作。计算机可读存储介质/存储设备可以包括以下一个或多个特征:易失性,非易失性,动态,静态,可读/写,只读,随机访问,顺序访问,位置可寻址性,文件可寻址性和内容可寻址性。在一个或
多个示例性实施例中,计算机可读存储介质/存储设备可以被集成到本技术具体实施例提供的设备或装置中或属于公共系统。计算机可读存储介质/存储设备可以包括光存储设备,半导体存储设备和/或磁存储设备等等,也可以包括随机存取存储器(ram),闪存,只读存储器(rom),可擦可编程只读存储器(eprom),电可擦可编程只读存储器(eeprom),寄存器,硬盘,可移动磁盘,可记录和/或可重写光盘(cd),数字多功能光盘(dvd),大容量存储介质设备或任何其他形式的合适存储介质。
72.本技术还提供一种程序产品,所述程序产品为计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的联邦学习审计的数据收集方法的步骤。本技术计算机程序产品具体实施方式与上述图3联邦学习审计的数据收集方法的各实施例基本相同,在此不再赘述。
73.以上是本技术实施例的实施方式,应当指出,本技术具体实施例描述的方法中的步骤可以根据实际需要进行顺序调整、合并和删减。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。可以理解的是,本技术实施例以及附图所示的结构并不构成对有关装置或系统的具体限定。在本技术另一些实施例中,有关装置或系统可以包括比具体实施例和附图更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。本领域技术人员将理解,在不脱离本技术具体实施例的精神和范围的情况下,可以对具体实施例记载的方法和设备的布置,操作和细节进行各种修改或变化;在不脱离本技术实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1