一种面向关联规则挖掘的隐私数据保护方法

文档序号:6604689阅读:231来源:国知局
专利名称:一种面向关联规则挖掘的隐私数据保护方法
技术领域
本发明涉及数据挖掘中隐私数据的保护技术,具体涉及一种面向关联规则挖掘的 隐私数据保护方法。
背景技术
随着网络、数据库存储以及高性能处理器等技术的飞速发展,数据库中存储的数 据呈爆炸式增长。日前,数据库系统可以很好地实现数据查询、删除和统计等功能,0LAP也 能较好地进行数据的分析等工作,但这些技术并不支持对数据背后重要信息的挖掘,无法 发现数据中隐藏的关系和规则,从而导致出现了”数据爆炸,知识贫乏”的现象。另外,20世 纪下半叶发展起来的专家系统,也遇到了 “知识获取”这一瓶颈问题。在此背景下,强有力 数据分析工具的需求推动了数据挖掘技术的产生。数据挖掘技术可以帮助人们从大量的数据中智能地、自动地抽取隐含的、事先未 知的,具有潜在价值的知识或信息,它不仅被许多研究人员看作是数据库系统和机器学习 等方面的一个重要研究课题,而且被许多产业界人士看作是一个能带来巨大回报的重要领 域,从数据库中发现出来的规则和知识可以用在信息管理、查询响应、决策支持、过程控制 等诸多方面。在数据挖掘产生巨大财富的同时,随之产生的就是隐私泄露问题,据一份Web用 户的权威调查表明,17 %的被调查者表示会拒绝透露涉及到自己隐私的任何信息,27 %的 被调查者表示会经认真考虑后,决定是否会给予涉及到自己隐私的信息,而56 %的被调查 者表示,如果数据收集机构或数据使用者可以确保个人隐私信息得到有效保护,他们是可 以提供涉及到自己隐私的信息。从上述调查结果可以看出,如果无法保证被调查者的隐私, 所收集到的数据往往和真实的数据之间存在很大的差异甚至无法完成数据的收集工作,如 果在这些错误的数据上进行数据挖掘,那么得到的结果必然是不准确的甚至是完全错误 的。然而,可喜的是人们并没有因噎废食,在数据挖掘能够提供的益处面前,只要数据采集 机构或使用者采取措施来保证个人的隐私,大部分数据拥有着还是愿意提供自己的隐私数 据,隐私保护程度的高低将直接关系到是否能够获得足够真实的信息,从而影响到挖掘结 果的可靠有用性。因而,如何在数据挖掘的过程中解决好隐私保护的问题已经成为数据挖 掘领域中的一个研究热点,隐私保护数据挖掘技术的研究具有十分重要的理论和现实意 义。在1995年召开的第一届KDD会议上,基于隐私保护的数据挖掘就成为一个专门的 研究主题。1999年,RakeshAgrawal在KDD99上作了一场精彩的有关隐私保护数据挖掘主 题演讲,并将其作为未来的研究重点之一。自此以后,隐私保护数据挖掘越来越得到人们的 高度重视,各种新方法和新技术层出不穷。隐私保护关联规则挖掘是隐私保护数据挖掘中最活跃的研究方向之一,一般情况 下,它包含两个方面的问题,一是数据库中敏感关联规则的保护,所谓敏感关联规则是指数 据拥有者不愿公开的关联规则,这些规则的不法使用可能会威胁到数据拥有者的权益。二是隐私数据的保护,隐私数据是指数据拥有者不愿公开的数据项,它可能包括姓名、身份证 号、银行帐号、住址、工资等。本发明专利主要解决第二个问题。对于此问题,目前常用的方 法是采取数据干扰技术,即通过数据变换或在数据中增加噪声等方法来对原始数据进行干 扰,关联规则挖掘是在干扰后的数据集上进行的,因而,该类方法很有可能会影响到关联规 则挖掘结果的可用性和有效性,即有可能挖掘出一些原始数据库中本来不存在的且有误导 作用的规则,丢失一些原始数据库中存在的且非常有用的规则,从而失取了关联规则挖掘 本身的价值。其实,隐私数据是相对的,是与载体相关联的,更换了或脱离了载体,数据就有 可能失去其物理意义或敏感性,因此,我们可以通过交换事务之间项目所对应的值来实现 隐私数据的保护。本发明给出了一种基于项目交换技术的隐私数据保护方法,该方法既可以实现对 隐私数据的有效保护,又能确保关联规则挖掘结果的有效可行性。

发明内容
本发明的目的在于针对现有隐私数据保护方法可能会影响到关联规则挖掘结果 的可用性和有效性等问题,提出了一种新颖的面向关联规则挖掘的隐私数据保护方法,该 方法既可以实现对隐私数据的有效保护,同时又不会产生过多的负面影响。本发明提出的“面向关联规则挖掘的隐私数据保护方法”包括以下步骤(1)隐私数据项的确定根据数据拥有者的意图确定要隐藏的隐私数据项。(2)隐私数据项的修改对原事务数据库中的事务进行分组,每k条记录为一组,不足部分补足。假设原事 务数据库中有n条事务,分组数为m,则m A:"|,每一组对应一个k位数ai,i = 1,2,..., m。隐私数据项的修改如下①随机产生两个k位的正整数h和b2 ;②给每一组的 赋值,a,的第j位对应于第i组组内的第j个事务,其值即为该 事务隐私数据项所对应的值,如事务包含隐私数据项则为1,否则为0,i = 1,2,. . .,m,j = 1,2, ,k ;③执行 and bl0rb2,and为逻辑”与”操作,or为逻辑”或”操作,设其结果为
o现在公开的是a/,而不是 仅根据a/是不可能推出或猜出 的值的,就是知道 1^、132及%’,而不知所执行的操作类型,也是不可能推出或猜出%的值的,从而有效保护或 隐藏了隐私数据项。(3)事务的整型化将事务数据库中的各事务用相应的二进制数表示,各位位值即为该事务所对应的 数据项,设对应的二进制数为R/,i = l,2,...,n。(4)数据的传输传输整型化后的事务。(5)数据的恢复执行ai,and f or E,令 ,,= ,and b^ or b;,根据,,修改R」,,修改后的值记为 Rj”,i = 1, 2, . . . , m, j = 1,2,…,n。(6)频繁项目集的生成设最小支持度阈值为minsup,项目集c的支持数记为count (c),支持度记为 sup (C),频繁项目集生成分为两小步候选频繁项目集的产生、候选频繁项目集支持数的计算。①候选频繁项目集的产生由频繁项目集Lk_i生成候选频繁k_项目集Ck方法包括下列步骤a对于Lh中的任意两个不同项目集x禾口 y ;b 设 xoy = x or y,统计 xoy 中 1 的总数 countx。r(l);c如果CoimtM (1)的值为k,执行下列步骤
i设置一个计数器count ;i i for (i = 0 ; i 彡 m ; i++) do beginiii z = 01b ;iv h = xoy xor z ;// xor 为异或操作符v if (h G L(,,_!)) then count = count+1 ;vi z 向左移一位,i = i+1,转(ii);vii如果count的值为m,则将xoy加入Ck中;d 转(a);②候选频繁项目集支持数的计算设D,= {R,,R2”,......,Rn” },候选频繁项目集 items 的支持数 count (items)
计算方法包括下列两步a for each transaction t G D,b if (t or items = = t) then count (items) = count (items) +1 ;(7)关联规则的产生设最小置信度阈值为minconf,AR为关联规则集,关联规则产生的方法如下①for all人k G L(k彡2)//人k为频繁k_项目集②for all subset c:毛 // a h 为 X k 的非空真子集③β=入 k_ a h ;⑤ AR = AR U { a h — ^ };⑥ end ;⑦ end;本发明上述的面向关联规则挖掘的隐私数据保护方法用随机产生的两个无符号 整数对数据拥有者所要保护的数据项进行随机置换,用户所看到的或网上所传输的将是置 换后的数据,要想根据置换后的数据推测出原始数据几乎是不可能的。在进行关联规则挖 掘之前,将数据库中的各事务用相应的二进制数表示,各位值即为该事务所对应的数据项, 并采用一定的方法恢复置换后的数据,确保关联规则挖掘有正确的输入数据。挖掘出所有 的频繁项目集是本发明的最终目的,也是本发明的核心内容,如果不能有效甚至无法挖掘出原始事务数据库中的频繁项目集,最好的隐私保护方法也将是徒劳的。对于恢复后的事 务数据库,本发明研究并提出了一种基于二进制形式的关联规则挖掘方法,该方法包括候 选频频繁项目集的生成及其支持数的计算方法。本发明主要有以下两个方面的有益效果。(1)在隐私数据项的保护方面本发明提出了一种新颖的隐私数据项保护方法,该方法只需对相关数据执行”与” 和”或”操作,一方面,本发明所采用方法可以有效地保护隐私数据项,根据所公开数据是无 法导出或猜出真实数据的;另一方面,本发明所采用方法可以确保包含隐私数据项的关联 规则仍然有效,克服了现有隐私数据保护方法所带来的两个缺陷,一是可能挖掘出一些原 始数据库中本来不存在的且有误导作用的关联规则,二是丢失一些原始数据库中存在的且 非常有用的关联规则。(2)在关联规则挖掘方面针对修改后的事务数据库,即进行了隐私保护操作后的数据,本发明提出了一种 基于二进制形式的候选项目集生成及其支持度计算方法,该方法只需对操作对象执行一 些”或”、,,与,,、,,异或”、,,非”等逻辑运算操作。本发明所采用方法除了能发现所有的关联 规则外,与现有关联规则挖掘方法相比,不但能显著降低算法的实现难度,而且能进一步提 高了算法的执行效率。


图1是本发明实施例的流程2是本发明实施例的关联规则挖掘流程图
具体实施例方式设数据库DB如表1所示,最小支持度阈值为50 %,隐私数据项为A,这里仅考虑布 尔型属性,对于数量属性,其基本思路完全相同,如A表示工资时,0可以表示小于某阈值的 工资,1可以表示不小于该阈值的工资,如需将A分成4个区间,我们可以将属性A拆成两个 布尔型属性,以此类推。表1 数据库DB 具体执行步骤如下(1)修改隐私数据项A,即表1中的第一列,设参与修改的扰乱值为bp b2,= 01101011,b2 = 00100110,b^=10010100, ^"=11011001,1^ 和 b2 是不公开的。数据库DB中各记录数据项A的值为11011101,记为a,执行a’=aand bi orb2 = 11011101 and 01101011 or 00100110 = 01101111,修改数据库 DB 中各记录的第一列值, 修改后的数据库如表2所示,现在公开的是数据库DB’,而不是数据库DB,仅根据DB’是不 可能推出数据库DB的,根据bp b2&DB’,而不知所执行的操作类型,也是不可能推出数据 库DB的,从而隐私数据项A得到了保护或隐藏。表2修改后数据库DB, (2)将数据库DB,中的各记录用二进制数表示,即R/ = 01101100,R2,= 11100100,R/ = 10110001,R4,= 01001010,R5,= 11100010,R6,= 11101010,R/ = 10110101,R8’ = 11001001。(3)执行操作a,and^"or^"= 01101111 and llOllOOlor 10010100 = 11011101, 根据此结果修改R/ (i = 1,2,. . ,8),得:队”=11101100,R2”= 11100100,R3”= 00110001, R4” = 11001010,R5” = 11100010,R6” = 11101010,R/,= 00110101,R8” = 11001001。
(4)频繁1-项目集k的生成分别统计R, R8”相应位中” 1”的个数,得 Li = {10000000,01000000,00100000, 00001000}。(5)根据频繁1-项目集k生成候选频繁2-项目集C2C2 = {11000000,10100000,10001000,01100000,01001000,00101000}。(6)频繁2-项目集L2的确定分别计算(2中各项目集的支持数,例如对于R/’来讲,由于11101 lOOorl 1000000 = R/,,因而 R/’支持项目集 11000000 ;对于 R2”来讲,由于 11100100orl0001000 乒 11100100, 因而R2”不支持项目集10001000。如此多次操作,分别得到C2中各元素的支持数为6、4、 4、4、4、2。因而,L2= {11000000,10100000,10001000,01100000,01001000}。(7)根据频繁2-项目集L2生成候选频繁3-项目集C3C3 = {11100000,11001000}。(8)频繁3-项目集L3的确定类似于第(6)步中支持数的计算方法,分别计算C3中各元素的支持数,其值分别 为4、4。因而,L3= {11100000,11001000}。(9)根据频繁3-项目集生成候选频繁3-项目集C4C4 =①。由于C4为空集,整个过程结束。由此可见,L = Q U L2 U L3 = {10000000,01000000,00100000,00001000, 11000000,10100000,10001000,01100000,01001000,11100000,11001000},即 L = {{A}, {B},{C},{E},{A, B},{A, C},{A, E},{B,C},{B,E},{A, B,C},{A, B,E}}。可以验证数据 库 DB 中所有的频繁项目集即为{{A},{B},{C},{E},{A,B},{A,C},{A,E},{B,C},{B,E}, {A,B,C},{A,B,E}},两者是完全一致的。因此,本发明不但保护了隐私数据项,而且不会丢 失原数据库中已有的频繁项目集或关联规则,也不会产生原数据库中不存在的频繁项目集 或关联规则。
权利要求
一种面向关联规则挖掘的隐私数据保护方法,包括以下步骤(1)隐私数据项的确定根据数据拥有者的意愿确定要隐藏的隐私数据项;(2)隐私数据项的修改对原事务数据库中的事务进行分组,每k个事务为一组,不足部分补足,k视具体情况而定,分组数为正整数m,每一组对应一个k位数ai,i=1,2,...,m;①随机产生两个k位的正整数b1和b2;②给每一组的ai赋值,ai的第j位对应于第i组组内的第j个事务,其值即为该事务隐私数据项所对应的值,如事务包含隐私数据项则为1,否则为0,i=1,2,...,m,j=1,2,...,k;③执行ai and b1orb2,and为逻辑”与”操作,or为逻辑”或”操作,设其结果为ai‘。(3)事务的整型化将事务数据库中的各事务用相应的二进制数表示,各位位值即为该事务所对应的数据项,设对应的二进制数为Ri’,i=1,2,...,n;(4)数据传输用二进制数进行数据的传输(5)隐私数据项的恢复执行ai andor其中分别为对b2、b1执行逻辑”非”操作后的结果;令ai”=aiandor根据ai”修改Rj’,修改后的值记为Rj”,i=1,2,...,m,j=1,2,...,n;(6)关联规则的挖掘对恢复后的事务数据库,采用基于二进制形式的关联规则挖掘方法,确定频繁项目集,由频繁项目集得出关联规则。FSA00000179664300011.tif,FSA00000179664300012.tif,FSA00000179664300013.tif,FSA00000179664300014.tif,FSA00000179664300015.tif,FSA00000179664300016.tif
2.根据权利要求1所说的关联规则挖掘中隐私数据的保护方法,其特征在于,步骤(6) 中所说的关联规则挖掘分为两步候选频繁项目集的生成、候选频繁项目集支持数的计算。
全文摘要
本发明涉及一种关联规则挖掘中隐私数据的保护方法,该方法通过随机产生两个无符号整数,对数据拥有者所要保护的数据项进行随机置换,在进行关联规则挖掘之前,将数据库中各事务用相应的二进制数表示,各位位值即为该事务所对应的数据项,并采用一定的方法恢复置换后的数据,确保关联规则挖掘有正确的输入数据;对于恢复后的事务数据库,采用基于二进制形式的关联规则挖掘方法来确定事务数据库中的关联规则。该方法包括候选频繁项目集的生成及其支持数的计算方法。本发明所采用方法除了能发现所有的关联规则外,与现有的关联规则挖掘方法相比,不但降低了算法的执行难度,而且能进一步提高算法的执行效率。
文档编号G06F17/30GK101872361SQ201010209518
公开日2010年10月27日 申请日期2010年6月25日 优先权日2010年6月25日
发明者孙蕾, 朱玉全, 欧吉顺, 陈耿 申请人:镇江金全软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1