掌桥专利:专业的专利平台
掌桥专利
首页

隐私保护的分布式数据分析方法和系统

文献发布时间:2024-04-18 19:58:21


隐私保护的分布式数据分析方法和系统

技术领域

本申请涉及大数据技术领域,特别是涉及一种隐私保护的分布式数据分析方法和系统。

背景技术

随着大数据的发展,数据的隐私和安全引起了全世界的重视。不管是个人,企业,还是组织,都不希望自己的隐私数据被泄露。为了加强对数据隐私安全的保护,各国开始纷纷出台各类法律法规,希望从法律层面规范和保护数据安全。如:2018年5月,欧盟发布了新法案《通用数据保护条例》(General Data Protection Regulation,GDPR)以加强对用户数据隐私保护和对数据的安全管理。数据使用的限制使得互联网数据分散在不同的企业、组织中,形成了数据孤岛现象,各方数据不能直接共享或者交换。

数据分析有助于人们更加了解数据总体的分布,方便后续对数据的处理,如进行机器学习算法的设计。传统的数据分析方法适用于集中式数据存储的情况,可以直接对数据进行分析,得出数据分析结果。而面对数据孤岛这一现实情况则不能直接处理,需要对数据分析方法进行改进以适用在分布式数据前提下计算多方总体数据的数据分析结果。值得注意的是,在设计分布式数据分析算法时应严格保护各方的本地数据隐私,不可以泄露给其他参与方或者中心服务器。

在多方交互的情况下,数据的均值、方差、极值等数据分析指标由于不受用户隐私保护的影响,可以通过多方在本地计算出本地数据对应的均值,再通过明文传输计算结果整合计算得到多方整体数据的数据分析结果。

但是这种方式并不是适用于所有数据分析方法,如频数分布直方图,四分位距,中位数,众数等。这些数据分析方法对了解数据分布都是非常重要的。然而由于用户隐私保护的影响,频数分布直方图难以得到利用。

发明内容

基于此,有必要针对上述技术问题,提供一种隐私保护的分布式数据分析方法。

本申请隐私保护的分布式数据分析方法,实施在隐私保护的分布式数据分析系统中,所述分布式数据分析系统包括中心服务器和若干本地参与方,所述分布式数据分析方法包括:

各本地参与方将本地数据集的本地最值,发送至所述中心服务器;

所述中心服务器根据所述本地最值,获得全局最值,根据所述全局最值划分为间隔分布的若干个组别;

各本地参与方将所述本地数据集,归类至所述组别内,获得本地频数直方图;

所述中心服务器获得各本地参与方加密后的本地频数直方图,聚合解密后获得全局频数直方图,所述全局频数直方图涵盖的信息包括:所述组别、所述组别的边界、所述组别的频数,所述频数为组别内对应归类的所有本地数据集的数量和;

对所述全局频数直方图进行数据分析,包括:筛选所有组别,获得频数最高所在组别的位置,进而估算获得众数。

可选的,若所述本地数据集为离散型数据,所述分布式数据分析方法包括:改变所述组别数量,进而改变所述组别的宽度。

可选的,所述组别的宽度为离散型数据的单位差距。

可选的,所述本地最值包括本地最大值和本地最小值,所述全局最值包括全局最大值和全局最小值。

可选的,根据所述全局最值划分为间隔分布的若干个组别,具体包括:获得由全局最大值和全局最小值构成的区间,依据输入的组别数量,将所述区间划分为间隔分布的若干个组别。

可选的,各本地参与方将所述本地数据集,归类至所述组别内,获得本地频数直方图,具体包括:

各本地参与方依据所述组别的边界,将所述本地数据集归类至对应的组别内,获得本地频数直方图;

所述本地频数直方图涵盖的信息包括:所述组别、所述边界、所述组别内的本地数据集数量。

可选的,所述中心服务器获得各本地参与方加密后的本地频数直方图,聚合解密后获得全局频数直方图,具体包括:

任意两个本地参与方进行密钥交换;

各本地参与方利用自身交换的所有密钥,加密自身的本地频数直方图;

所述中心服务器接收各本地参与方加密的本地频数直方图,聚合消解所述密钥,获得由各本地频数直方图累加获得的全局频数直方图。

可选的,所述进行数据分析包括:获得给定概率,依据所述全局频数直方图,获得给定概率所对应的目标分位数。

可选的,在累加过程中:

对于其中一个组别,若累加前未达到所述给定概率、累加后超出所述给定概率,则所述目标分位数处于该组别内;

对于其中一个组别,若累加前未达到所述给定概率、累加后达到所述给定概率,则所述目标分位数处于该组别内;

所述目标分位数通过对应组别的下边界和上边界估算获得。

本申请还提供一种隐私保护的分布式数据分析系统,包括中心服务器和若干本地参与方,所述本地参与方存储有本地数据集,所述分布式数据分析系统实施有如本申请所述的隐私保护的分布式数据分析方法。

本申请隐私保护的分布式数据分析方法和系统至少具有以下效果:

本申请通过本地最值获得全局最值,进而划分获得各个组别,参与方将各自的本地频数直方图加密后发送至中心服务器,此时中心服务器无法获得各参与方的本地频数直方图,而能够获得全局频数分布直方图。全局频数分布直方图保护了各方的隐私,并可用于分析数据分布,评估数据质量和分布差异。

本申请获得的全局频数直方图虽然无法获得准确的众数值,但同样符合统计学意义,能够用于评估不同客户端的数据特征和分布相似度。

附图说明

图1为本申请一实施例中隐私保护的分布式数据分析方法的流程示意图;

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。

本申请还提供一种隐私保护的分布式数据分析系统,包括中心服务器和若干本地参与方,本地参与方存储有本地数据集,分布式数据分析系统实施本申请各实施例的隐私保护的分布式数据分析方法,包括:

步骤S100,各本地参与方将本地数据集的本地最值,发送至中心服务器;

步骤S200,中心服务器根据本地最值,获得全局最值,根据全局最值划分为间隔分布的若干个组别;

步骤S300,各本地参与方将本地数据集,归类至组别内,获得本地频数直方图;

步骤S400,中心服务器获得各本地参与方加密后的本地频数直方图,聚合解密后获得全局频数直方图,进行数据分析。

本地参与方和中心服务器均包括各自的计算机设备。各计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种隐私保护的分布式数据分析方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

各本地参与方(简称为参与方)拥有本地数据集,且由于隐私及保密性需求各参与方之间不能共享本地数据给其他参与方,在此基础上各参与方想要得到所有参与方本地数据组成的总数据集的数据分析结果。假设共有n个参与方,参与方C

本申请一实施例中提供一种隐私保护的分布式数据分析方法,实施在隐私保护的分布式数据分析系统中,分布式数据分析方法包括步骤S100~步骤S400。

其中:

步骤S100,各本地参与方将本地数据集的本地最值,发送至中心服务器。具体地,本地最值包括本地最大值和本地最小值。

步骤S200,中心服务器根据本地最值,获得全局最值,根据全局最值划分为间隔分布的若干个组别。具体地,全局最值包括全局最大值和全局最小值。

根据全局最值划分为间隔分布的若干个组别,具体包括:获得由全局最大值和全局最小值构成的区间,依据输入的组别数量,将区间划分为间隔分布的若干个组别。

步骤S300,各本地参与方将本地数据集,归类至组别内,获得本地频数直方图。在步骤S300中,各本地参与方将本地数据集,归类至组别内,获得本地频数直方图,具体包括:各本地参与方依据组别的边界,将本地数据集归类至对应的组别内,获得本地频数直方图。本地频数直方图涵盖的信息包括:组别、组别的边界、组别内的本地数据集数量。组别的边界即组别两边的边界,可用于表示分组间距。

对于步骤S100~步骤S300详细解释如下:整个过程的技术目的可理解为如何在保障参与方隐私的前提下进行初步分组,即对各参与方本地数据集整体形成的全局数据进行分组,也可以理解为分箱,需要先确定全局数据的全局最值,由于本地最值不受用户隐私保护的影响,或者说本地最值的暴露不会影响到隐私数据。可以通过参与方在本地计算出本地数据集对应的本地最值,明文传输计算结果给中心服务器,并通过中心服务器进行聚合以得出全局最值。

这个过程形式化地描述为,对于参与方C

Max=max(Max

其中max(*)为求最大值函数。同理可以通过下式求出全局最小值Min:

Min=min(Min

其中min(*)为求最小值函数。

中心服务器S计算完全局极值后将结果发送给每个参与方。设全局分组个数为m,则各参与方计算分组间距为:

各参与方按分组间距ε对全局最小值Min和全局最大值Max的值进行等距分组,这样各参与方都会得到一个一样的分组结果,形成多个组别,并且分组的边界也是一样的。之后每个参与方根据分组结果对本地数据集中的每条数据进行划分归类,并记录每个组别下的数据个数。具体地,参与方C

步骤S400,中心服务器获得各本地参与方加密后的本地频数直方图,聚合解密后获得全局频数直方图,进行数据分析。全局频数直方图涵盖的信息包括:组别、组别的边界、组别的频数,频数为组别内对应归类的所有本地数据集的数量和。

全局频数分布直方图可以直接刻画出本地数据集的分布形式,尤其当分组间距很小的时候,基本上可以还原出原始数据集的分布,所以本地频数分布直方图是不能直接传递给中心服务器的。加密解密过程例如可以采用密钥交换和消解等方式完成。

在本地频数分布直方图上传时,由于全局的组别和组别的边界是所有参与方以及中心服务器已知的,因此各参与方只需上传每个分组的频数即可,而频数只能是非负整数,采用密码学方法进行加密时不需要放缩等影响精度的操作,所以说本地参与方频数分布直方图聚合成全局频数直方图是无损聚合。

至步骤S400结束,本实施例通过本地最值获得全局最值,进而划分获得各个组别,参与方将各自的本地频数直方图加密后发送至中心服务器,此时中心服务器无法获得各参与方的本地频数直方图,而能够获得全局频数分布直方图。全局频数分布直方图保护了各方的隐私,并可用于分析数据分布,评估数据质量和分布差异。

步骤S400,包括步骤S410,中心服务器获得各本地参与方加密后的本地频数直方图;步骤S420,聚合解密后获得全局频数直方图;步骤S430,进行数据分析。

步骤S410~步骤S420,具体包括:(1)任意两个本地参与方进行密钥交换。(2)各本地参与方利用自身交换的所有密钥,加密自身的本地频数直方图。(3)中心服务器接收各本地参与方加密的本地频数直方图,聚合消解密钥,获得由各本地频数直方图累加获得的全局频数直方图。

为了实现在保护各方隐私的前提下,通过本地频数分布直方图得到全局频数分布直方图,本实施例核心密码学方法Diffie-Hellman密钥交换方法来实现隐私保护。

密钥交换方法:为任意两个参与方创建共享密钥。DH密钥交换算法的目的是让相互通信的Alice和Bob拥有一个只有A和B知道的私钥。DH密钥交换算法包括以下步骤:

(1)首先,Alice和Bob在

(2)Alice和Bob各自生成一个随机数,A和B是Alice和Bob的私钥。

(3)Alice和Bob分别计算

(4)Alice和Bob各自将公钥发送给对方。

(5)Alice收到Bob发送的公钥G

显然s

具体来说,参与方C

通过上式的计算,参与方C

可以看到中心服务器会在聚合后消掉密钥,对聚合结果没有影响。中心服务器完成所有组别的数据个数的聚合后即可得到全局频数分布直方图Hist。步骤S400符合了安全多方计算的要求,可以在保护各方隐私的前提下完成计算法任务。中心服务器接受到的是经过加密处理后的本地频数分布直方图,但中心服务器依旧可以在不解密的前提下完成其计算功能,也就是聚合本地频数分布直方图得到全局频数分布直方图。

基于前文已经完成了在保护各参与方数据隐私的前提下得到全局数据集D的频数分布直方图Hist,接下来将通过全局频数分布直方图计算其他全局数据分析结果。

在一个实施例中,隐私保护的分布式数据分析方法的步骤S430包括获得目标分位数,具体为:获得给定概率,依据全局频数直方图,获得给定概率所对应的目标分位数。具体包括:按边界的大小顺序,依次累加各组别的频数,直到获得目标分位数。

在累加过程中:对于其中一个组别,若累加前未达到给定概率、累加后达到给定概率,则目标分位数处于该组别内。对于其中一个组别,若累加前未达到给定概率、累加后超出给定概率,则目标分位数处于该组别内。目标分位数通过对应组别的下边界和上边界估算获得。具体内容可详见下文Q

在步骤S420的保护各方隐私的基础上,本实施例利用步骤S420中获得的全局频数分布直方图,进一步获得目标分位数。例如获得分位数,中位数,四分位数,四分位距。

具体地,对于给定概率p(p∈(0,1)),通过全局频数直方图Hist求解给定概率p所对应的分位数(记为p-分位数)的算法主要是一个遍历累加的过程。从Hist最小值边界开始,也就是第一个组别(h

其中m为全局频数分布直方图Hist的组别数量,

其中L

此时可以确定p-分位数在第j+1组别中,通过下式计算该分位数的值:

上述基于全局频数分布直方图Hist的分位数估算算法可以限定误差上界为ε/2。对于第一种情况,说明准确的分位数的值在第j个组别中,我们选择该组别中间值作为该分位数的值,该值距该组别上下界均小于等于ε/2,所以误差一定在ε/2以内。但需要注意,必须是满足该条件的第一个组别,也可以理解为满足该条件中j的最小值。这是由于当j满足该条件而后续组别值为0时后续组别也会满足该条件,但是如果选择后续组别值作为该分为数结果则误差会更大,不满足误差上界为ε/2。

对于第二种情况,说明准确的分位数的值在第j+1个组别中,选择该组别的中间值作为该分位数值满足误差上界为ε/2。

分布式数据分析方法还包括,改变组别数量,进而改变组别的宽度。通过组别宽度的调整,能够调整获得分位数的精度,进而更好地完成评估。

中位数为p=0.5时的分位数值,而四分位数为三个分位点,分别为p=0.25,p=0.5和p=0.75的分为数值。也可以来理解为中位数和四分位数都是p为某一特殊值的分位数,具体求解方法与求分位数的方法一致,只需将p替换为指定值,具体计算方法这里不赘述。四分位距只需先根据上述分位数算法求解出p=0.75时分位数减去p=0.25时分位数即可。

中位数可以弥补平均数在偏态分布中不足之处,根据平均数的计算方法数据中任何一个数值的改变都会影响最终计算结果,如有一个数值出现了极大的离群变化,则平均值就可能失效,相比之下,中位数有着更好的鲁棒性。

在得到频数分布直方图的前提下,利用频数分布直方图可获得分位数的参考指标。分位数有着非常广泛的应用场景,多用于了解数据的分布,在分布式且需要保护各方隐私的场景下,分位数同样应用广泛,如:在联邦学习中可以用分布式隐私保护分位数来评估不同客户端的数据质量和分布差异,从而优化模型训练和更新的策略。在金融领域,可以用分布式隐私保护分位数来估计不同机构或个人的信用风险和收入水平,从而提供更合理的贷款和投资服务。在医疗领域,可以用分布式隐私保护分位数来分析不同医院或患者的诊断结果和治疗效果,从而提高医疗质量和效率。

在一个实施例中,隐私保护的分布式数据分析方法的步骤S430包括获得众数,具体为:在全局频数直方图中筛选所有组别,获得频数最高所在组别的位置,进而估算获得众数。

在连续概率分布中,众数是指概率密度函数有最大值的数据(峰值),如果不采用通过频数分布直方图估算众数这种形式,而是直接统计数据中出现次数最多的数,则由于连续概率分布中很难有完全相同的数或者偶尔出现相同的数从而导致求解的众数统计意义不大。

本实施例中,在中心服务得到全局频数分布直方图Hist后,可以通过全局频数分布直方图Hist找到全局众数Mode所在组别,即Hist中值最大的组别。根据下式估算全局众数Mode的值。

本实施例虽然众数是估算获得的,但本实施例中进行估算的结果,同样具有统计意义。在离散概率分布中,众数是指概率质量函数有最大值的数据,也就是最容易取到的数据,这种情况下即为出现次数最多的数据。在这种情况下如果本文方法想得到最准确的众数结果也是可以做到的,对于离散型数据来说确定了最大值和最小值两个边界则可以穷举出范围内所有的可能取值,这时只需将每个组别限定为每个离散值即可,也就是说该组别的频数值是该离散值出现的次数,这样就可以通过频数分布直方图准确度求出离散概率分布的准确众数值,本实施例,在连续概率分布中统计意义尤为明显。

估算众数Mode的方式包括:

其中L

进一步地,若本地数据集为离散型数据,分布式数据分析方法包括:改变组别数量,进而改变组别的宽度。优选地,组别的宽度为离散型数据的单位差距。

对于离散型数据,组别的宽度若采用离散型数据的“一个单位”的单位差距时,可以用来精确地获得众数。当然,也可以基于算力水平,采用估算方式调节精度。

在步骤S420的保护各方隐私的基础上,本实施例利用步骤S420中获得的全局频数分布直方图,进一步获得了众数。对于分布式隐私保护众数来说也有很多的应用场景,如:在联邦学习中,可以用分布式隐私保护众数来评估不同客户端的数据特征和分布相似度,从而优化模型训练和更新的策略。在社交网络中,可以用分布式隐私保护众数来分析不同用户或群体的兴趣和偏好,且不会暴露每个用户的隐私,从而提供更个性化的推荐服务。在医疗领域,可以用分布式隐私保护众数来统计不同医院或患者的常见疾病和治疗方案,从而提高医疗质量和效率。

应该理解的是,虽然步骤S100~步骤S400的各个步骤按顺序依次撰写,但是这些步骤并不是必然按照撰写的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各步骤中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本申请各实施例中针对数据孤岛前提下的分布式数据分析困难问题,提出了隐私保护的分布式数据分析方法。通过隐私保护对参与方的本地频数分布直方图进行加密以保护参与方的数据隐私安全,并且在中心服务器聚合各参与方的本地频数分布直方图,从而得到全局频数分布直方图进而推算出全局中位数,众数等一系列数据分析结果,可应用于多个领域的大数据分析。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。不同实施例中的技术特征体现在同一附图中时,可视为该附图也同时披露了所涉及的各个实施例的组合例。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 一种基于差分隐私的分布式隐私保护频繁项集挖掘方法及系统
  • 基于隐私保护的遥测数据分析系统及方法
技术分类

06120116483358