一种面向差分隐私保护的频繁项集挖掘方法技术

技术编号:20485958 阅读:32 留言:0更新日期:2019-03-02 19:24
本发明专利技术公开了一种面向差分隐私保护的频繁项集挖掘方法,包括以下步骤:计算出所有项集的支持度,从中挑选出频繁项集;统计数据集中各条事务的长度,计算出截断长度L后截断数据集;计算频繁项集包含项的个数上限m和频繁项个数λ,根据λ值构造频繁项组成的集合F;构造最大频繁项集MFI集合B及候选项集集合C;使用集合B对集合C中的项集进行加噪;使用初始MFI集合B计算得到各个候选项集的支持度之后,计算与真实支持度的误差之和E;在B中搜索B、B,用B取代B并且更新误差和E的值;当误差和不再减小时停止迭代并输出结果。本发明专利技术可以很好地防止发布频繁项集会造成的个人隐私泄露,同时截断数据集的操作也有效地提高了挖掘结果的可用性。

【技术实现步骤摘要】
一种面向差分隐私保护的频繁项集挖掘方法
本专利技术涉及一种面向差分隐私保护的频繁项集挖掘方法,属于信息安全

技术介绍
随着云计算和大数据的快速发展,数据挖掘技术在一些深入的研究和应用中取得了长足的进步。频繁项集挖掘是数据挖掘的核心问题之一,其目标是发现数据集中频繁出现的项集,在现实生活中的应用十分广泛。尽管能提供有价值的信息,但是不作处理的发布频繁项集可能会造成很严重的个人隐私泄露。如何在保护个人隐私的同时尽可能提高发布频繁项集的可用性已经成为数据挖掘领域亟待解决的问题之一。随着隐私保护技术的提出与发展,差分隐私保护方法成为目前一种热门的隐私保护技术。差分隐私通过噪声机制实现,即向输出结果中添加随机噪声来保护数据安全,添加的噪声越大,数据越安全,然而,数据的可用性越低,反之亦然。目前已经有了多种满足差分隐私的频繁项集挖掘算法(如PrivBasis算法、PrivSuper算法等),但是这些算法只适用于处理低维数据集,在处理高维数据集时会因为敏感度过高的问题添加较多的噪声,从而导致挖掘结果可用性不高。
技术实现思路
本专利技术所要解决的问题就是针对
技术介绍
中的不足之处,提出一种面向差分隐私保护的频繁项集挖掘方法,本专利技术可以很好地防止发布频繁项集会造成的个人隐私泄露,同时截断数据集的操作也有效地提高了挖掘结果的可用性。为了解决上述问题,采用如下技术方案:本专利技术的一种面向差分隐私保护的频繁项集挖掘方法,包括以下步骤:步骤1:基于预设的数据集D={T1,T2…Tm},项集域A={i1,i2…in},即数据集D中出现过的所有项组成的集合;使用Apriori算法计算出所有项集的支持度,从中挑选出频繁项集;步骤2:统计数据集中各条事务的长度并计算截断长度L,根据所述截断长度L截断数据集;步骤3:计算频繁项集包含项的个数上限m和频繁项个数λ,根据λ值构造频繁项组成的集合F;步骤4:构造最大频繁项集MFI集合B及候选项集集合C;步骤5:使用最大频繁项集集合B对候选项集集合C中的项集进行加噪;步骤6:使用初始最大频繁项集集合B计算得到各个候选项集的支持度,计算与真实支持度的误差之和E;遍历集合B,寻找Bi、Bj∈B,Bi、Bj是B中的两个最大频繁项集;合并Bi、Bj后的集合为B′,若使用B′对候选项集进行加噪产生的误差和小于E,则用B′取代B并且更新误差之和E的值;当误差之和不再减小时停止迭代并输出结果。步骤2中,所述截断长度L的统计向量{z1,z2…zn},zi为数据集中长度为i的事务的个数,i=1,……,n,对向量添加噪声其中,所述噪声函数为双边几何分布,ε为隐私预算;双边几何分布概率密度函数如下:将所述截断长度L设置为满足式(3)的值步骤2中,根据所述截断长度L截断数据集具体方法如下:遍历数据集D,对任意事务Ti∈D,|Ti|表示Ti包含项的个数,若|Ti|>L,则只保留Ti中支持度前L大的项,剔除其余的项;若|Ti|≤L,则不对Ti进行变动。步骤3中,计算向量yi(D)表示长度为i的项集中支持度最大的取值,τ表示第k频繁项集的支持度,使用打分函数为-|yi(D)-τ|的指数机制从中挑选出m的值;计算向量{x1(D),x2(D)…xn(D)},xi(D)表示第i频繁项的支持度,使用打分函数为-|xi(D)-τ|的指数机制从[1,2...n]中挑选出λ的值;所有项按支持度由大到小排序,前λ个项组成集合F。上述指数机制描述如下:设定输出域为O,r表示从输出域中所选择的输出项,定义一个打分函数u(D,r),用来衡量输出结果为r时的准确度,则算法K输出为r的概率表示如下:其中,Δu表示打分函数的敏感度,ri表示输出域O中的一个输出项。步骤4具体步骤如下:初始化所述最大频繁项集MFI集合B和候选项集集合C为空集,再定义一个空集S;先将F中的所有项添加到集合C中,接着以深度遍历的方式从F中挑选项,并将挑选出的项添加到集合S中构成新集合S‘;若S‘仍然是频繁的,继续从F中挑选项;若不是,将S添加到MFI集合B中,并将S的子集添加到集合C中,回溯到上一个结点。步骤5具体方法如下:对候选项集的支持度添加满足Laplace概率分布的噪音,挑选出加噪后支持度前k大的项集;加噪过程如下:每个最大频繁项集Bi将数据集里的事务分配给个互不相交的桶,每一个桶对应Bi的一个子集,表示为其中表示包含对应子集的项且不包含Bi中其他项的事务的个数,对桶的计数添加Laplace噪音,如式(5)所示:其中,噪声函数为拉普拉斯分布,ε为隐私预算,|B|为最大频繁项集的个数。上述拉普拉斯分布的概率密度函数如下:其中,x表示所有可能的取值,P(x)为所有取值的概率;使用加噪后桶的计数计算候选项集的支持度。用a,b,c分别表示三个项,则(a,b)的支持度是由{a,b,c},两个桶的计数值相加得到;其中(a,b)表示a和b组成的项集,{a,b,c}表示同时包含a、b、c的事务的个数,表示包含a、b且不包含c的事务的个数。上述误差之和E的计算公式如下:S(Ci)表示项集Ci的真实支持度,S′(Ci)表示项集Ci加噪后的支持度。本专利技术为保证top-k频繁项集挖掘算法的安全性,通过对项集支持度添加适当的噪声,采用基于差分隐私保护的频繁项集挖掘算法,并证明算法满足ε-差分隐私条件。本专利技术采用上述技术方案,与现有技术相比,具有以下技术效果:本专利技术首先计算真实频繁项集及其支持度,然后根据项的真实支持度对数据集进行截断,从而降低数据集的维度,接着构造候选项集并对其支持度添加满足Laplace概率分布的随机噪声,最后挑选出加噪后支持度前k大的项集;本专利技术在保护个人隐私的同时具有较好的可用性。本专利技术先对事务数据集进行截断以降维,将事务中的项按支持度从大到小进行排序,剔除支持度较小的项,从而降低发布的频繁项集的支持度误差,在满足ε-差分隐私条件的同时具有较好的可用性;本专利技术方法简单、易操作且不限制数据集大小和属性。附图说明图1是本专利技术提供的实验中使用的用于测试差分隐私频繁项集挖掘算法性能的数据示意图;图2是本专利技术提供的面向隐私保护的频繁项集挖掘方法的流程图。具体实施方式下面结合附图对本专利技术的技术方案的实施作进一步的详细描述,应理解这些实例仅用于说明本专利技术而不用于限制本专利技术的范围,在阅读了本专利技术之后,本领域技术人员对本专利技术的各种等价形式的修改均落于本申请所附权利要求所限定的范围。本专利技术方法简单、易操作,且理论证明其满足ε-差分隐私条件,可有效地对数据集进行降维,从而减少需要添加的噪声,提高结果的可用性,并保护隐私。方法适用于不同规模和不同维度的数据集的数据发布和隐私保护。参见图2,具体实施方式如下所示:步骤1:使用PUMS(PublicUseMicrodataSample)的人口普查数据pumsb,样本数为16280,样本平均长度为50.5,项集域大小为2088。遍历数据集得到真实频繁项集及其支持度,前20个如下所示,其中“{}”内的表示项集,“:”后跟的数字表示该项集的支持度。R1=[{7072}:13204]R6=[{84}:11908]R11=[{168,161,84}:11834]R16=[{161,84,4502}:11340]R2=[{197}:13136]R7=[本文档来自技高网...

【技术保护点】
1.一种面向差分隐私保护的频繁项集挖掘方法,其特征在于,包括以下步骤:步骤1:基于预设的数据集D={T1,T2…Tm},项集域A={i1,i2…in},使用Apriori算法计算出所有项集的支持度,从中挑选出频繁项集;步骤2:统计数据集中各条事务的长度并计算截断长度L,根据所述截断长度L截断数据集;步骤3:计算频繁项集包含项的个数上限m和频繁项个数λ,根据λ值构造频繁项组成的集合F;步骤4:构造最大频繁项集MFI集合B及候选项集集合C;步骤5:使用最大频繁项集集合B对候选项集集合C中的项集进行加噪;步骤6:使用初始最大频繁项集集合B计算得到各个候选项集的支持度,计算与真实支持度的误差之和E;遍历集合B,寻找Bi、Bj∈B,Bi、Bj是B中的两个最大频繁项集;合并Bi、Bj后的集合为B′,若使用B′对候选项集进行加噪产生的误差和小于E,则用B′取代B并且更新误差之和E的值;当误差之和不再减小时停止迭代并输出结果。

【技术特征摘要】
1.一种面向差分隐私保护的频繁项集挖掘方法,其特征在于,包括以下步骤:步骤1:基于预设的数据集D={T1,T2…Tm},项集域A={i1,i2…in},使用Apriori算法计算出所有项集的支持度,从中挑选出频繁项集;步骤2:统计数据集中各条事务的长度并计算截断长度L,根据所述截断长度L截断数据集;步骤3:计算频繁项集包含项的个数上限m和频繁项个数λ,根据λ值构造频繁项组成的集合F;步骤4:构造最大频繁项集MFI集合B及候选项集集合C;步骤5:使用最大频繁项集集合B对候选项集集合C中的项集进行加噪;步骤6:使用初始最大频繁项集集合B计算得到各个候选项集的支持度,计算与真实支持度的误差之和E;遍历集合B,寻找Bi、Bj∈B,Bi、Bj是B中的两个最大频繁项集;合并Bi、Bj后的集合为B′,若使用B′对候选项集进行加噪产生的误差和小于E,则用B′取代B并且更新误差之和E的值;当误差之和不再减小时停止迭代并输出结果。2.根据权利要求1所述的面向差分隐私保护的频繁项集挖掘方法,其特征在于,步骤2中,所述截断长度L的统计向量{z1,z2…zn},zi为数据集中长度为i的事务的个数,i=1,……,n,对向量添加噪声其中,所述噪声函数为双边几何分布,ε为隐私预算;双边几何分布概率密度函数如下:将所述截断长度L设置为满足式(3)的值3.根据权利要求2所述的面向差分隐私保护的频繁项集挖掘方法,其特征在于,步骤2中,根据所述截断长度L截断数据集具体方法如下:遍历数据集D,对任意事务Ti∈D,|Ti|表示Ti包含项的个数,若|Ti|>L,则只保留Ti中支持度前L大的项,剔除其余的项;若|Ti|≤L,则不对Ti进行变动。4.根据权利要求3所述的面向差分隐私保护的频繁项集挖掘方法,其特征在于,步骤3中,计算向量yi(D)表示长度为i的项集中支持度最大的取值,τ表示第k频繁项集的支持度,使用打分函数为-|yi(D)-τ|的指数机制从中挑选出m的值;计算向量{x1(D),x2(D)…xn(D)},xi(D)表示第i频繁项的支持度,使用打分函数为-|xi(D)-τ|的指数机制从[1,2...n]中挑选出λ的值;所有项按支持度由大到小排序,前λ个项...

【专利技术属性】
技术研发人员:杨庚蒋辰白云璐徐亚红
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏,32

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

1