首页> 中国专利> 一种个人行为数据匿名化方法及系统

一种个人行为数据匿名化方法及系统

摘要

本发明公开了一种个人行为数据匿名化方法及系统,其通过对用户行为进行建模,计算用户行为出现的先验概率,再根据用户已经公开的行为,对当前可能的行为进行划分和一般化表示,可以保证攻击者即使在已知用户行为习惯和本匿名方法的情况下,仍然不能对隐私信息出现概率的做出更高的推测,降低甚至避免了泄漏个人隐私的风险。

著录项

  • 公开/公告号CN104361123A

    专利类型发明专利

  • 公开/公告日2015-02-18

    原文格式PDF

  • 申请/专利权人 中国科学技术大学;

    申请/专利号CN201410727902.5

  • 发明设计人 孙广中;魏燊;周英华;

    申请日2014-12-03

  • 分类号G06F17/30(20060101);G06F21/60(20130101);

  • 代理机构11260 北京凯特来知识产权代理有限公司;

  • 代理人郑立明;郑哲

  • 地址 230026 安徽省合肥市包河区金寨路96号

  • 入库时间 2023-12-17 03:49:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-03

    授权

    授权

  • 2015-03-25

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20141203

    实质审查的生效

  • 2015-02-18

    公开

    公开

说明书

技术领域

本发明涉及计算机技术领域,一种个人行为数据匿名化方法及系统。

背景技术

随着当今移动技术的飞速发展,移动设备和各类传感器的广泛应用,如手机、手环 及在设备上安装的众多应用都会采集到人们生活中的各类数据。这些数据一方面使人们 的生活更加便捷,另一方面也使得个人信息更多地被服务商收集,增大了隐私泄露的风 险。

当前隐私保护的问题逐渐被人们重视,也出现了许多对数据进行匿名化的方法。这 些方法主要分为两种,一种在移动端,对传输到服务器的数据进行处理;另一种在服务 器端,对收集到的所有数据进行处理。这些方法包括对数据增加噪声、加密、替换、删 除属性或者与伪造数据结合等。

目前,匿名化的方法会对破坏隐私的一方已知的信息做出限制,这样限制攻击者能 力的匿名化方法并不能保证是完全可靠的,另外,有一些对数据的修改也会造成数据实 用性降低。

发明内容

本发明的目的是提供一种个人行为数据匿名化方法及系统,通过对用户行为进行合理 的合并和一般化,确保真实信息不会被泄露,也保证了数据的实用性。

本发明的目的是通过以下技术方案实现的:

一种个人行为数据匿名化方法,该方法包括:

按照时间顺序对用户行为使用一阶马尔科夫链进行建模,获得各个用户行为c发生的 先验概率Pr[Xt=c],Xt表示时刻t发生用户行为c的随机变量;

根据已经发生的用户行为集合并结合一阶马尔科夫链模型计算当前时刻t可能发 生的用户行为集合;

对所述可能发生的用户行为集合进行划分,获得若干组划分后的集合;划分后的每 一组集合中均包含多个子集,再基于下式对每一组集合中的子集进行判断: 筛选出所有子集均可公开的集合;其中,s为用户设定 的隐私集合S中需要保护的用户行为,δ为隐私保护的程度,其值越小保护程度越高, 为包含已经发生的用户行为集合与当前子集的集合;

当发生某一真实用户行为时,选择包含该真实用户行为的子集向外发送,实现个人 行为数据匿名化。

进一步的,所述对所述可能发生的用户行为集合进行划分,获得若干组划分后的集 合,并基于下式进行筛选:获得所有子集均可公开的 集合包括:

枚举所述可能发生的用户行为集合中所有的子集,获得若干组划分后的集合;

再根据隐私行为集合S判断每一子集是否可以公开;其中,满足下式 Pr[Xt=s|o]-Pr[Xt=s]δ,则表示该子集可以公开;

从所述若干组划分后的集合中,筛选所有子集均可公开的集合;

从所述所有子集均可公开的集合中选择实用性最大的集合;其中,一个子集的实用 性为该子集的先验概率除以子集中用户行为的个数,一个集合的实用性为其子集的实用 性之和。

进一步的,集合中的每一子集中包含一个或多个用户行为,若包含多个用户行为, 则所述多个用户行为至少存在一个相同或相似的属性。

一种个人行为数据匿名化系统,该系统包括:

建模模块,用于按照时间顺序对用户行为使用一阶马尔科夫链进行建模,获得各个 用户行为c发生的先验概率Pr[Xt=c],Xt表示时刻t发生用户行为c的随机变量;

用户行为集合获取模块,用于根据已经发生的用户行为集合并结合一阶马尔科夫 链模型计算当前时刻t可能发生的用户行为集合;

集合划分与筛选模块,用于对所述可能发生的用户行为集合进行划分,获得若干组 划分后的集合;划分后的每一组集合中均包含多个子集,再基于下式对每一组集合中的 子集进行判断:筛选出所有子集均可公开的集合;其 中,s为用户设定的隐私集合S中需要保护的用户行为,δ为隐私保护的程度,其值越小 保护程度越高,为包含已经发生的用户行为集合与当前子集的集合;

匿名发送模块,用于当发生某一真实用户行为时,选择包含该真实用户行为的子集 向外发送,实现个人行为数据匿名化。

进一步的,所述集合划分与获取模块包括:

集合划分模块,用于枚举所述可能发生的用户行为集合中所有的子集,获得若干组 划分后的集合;

判断模块,用于根据隐私行为集合S判断每一子集是否可以公开;其中,满足下式 Pr[Xt=s|o]-Pr[Xt=s]δ,则表示该子集可以公开;

集合筛选模块,从所述若干组划分后的集合中,筛选所有子集均可公开的集合;

集合选择模块,用于从所述所有子集均可公开的集合中选择实用性最大的集合;其 中,一个子集的实用性为该子集的先验概率除以子集中用户行为的个数,一个集合的实 用性为其子集的实用性之和。

进一步的,集合中的每一子集中包含一个或多个用户行为,若包含多个用户行为, 则所述多个用户行为至少存在一个相同或相似的属性。

由上述本发明提供的技术方案可以看出,通过对用户行为进行建模,计算用户行为出 现的先验概率,再根据用户已经公开的行为,对当前可能的行为进行划分和一般化表 示,可以保证攻击者即使在已知用户行为习惯和本匿名方法的情况下,仍然不能对隐私 信息出现概率做出更高的推测,降低甚至避免了泄漏个人隐私的风险。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的 附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得 其他附图。

图1为本发明实施例一提供的一种个人行为数据匿名化方法的流程图;

图2为本发明实施例一提供的一种使用一阶马尔科夫链对用户行为建模的示意图;

图3为本发明实施例一提供的一种对行为集合划分的具体方法的流程图;

图4为本发明实施例一提供的一种将行为按属性划分的示意图;

图5为本发明实施例一提供的一种对真实数据集进行实验的结果示意图;

图6为本发明实施例二提供的一种个人行为数据匿名化系统的示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地 描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明的保护范围。

实施例一

图1为本发明实施例一提供的一种个人行为数据匿名化方法的流程图。如图1所示, 该方法主要包括如下步骤:

步骤11、按照时间顺序对用户行为使用一阶马尔科夫链进行建模,获得各个用户行 为c发生的先验概率Pr[Xt=c],Xt表示时刻t发生用户行为c的随机变量。

步骤12、根据已经发生的用户行为集合并结合一阶马尔科夫链模型计算当前时刻 t可能发生的用户行为集合。

步骤13、对所述可能发生的用户行为集合进行划分,获得若干组划分后的集合;划 分后的每一组集合中均包含多个子集,再基于下式对每一组集合中的子集进行判断: 筛选出所有子集均可公开的集合;其中,s为用户设定 的隐私集合S中需要保护的用户行为,δ为隐私保护的程度,其值越小保护程度越高, 为包含已经发生的用户行为集合与当前子集的集合。

此处的集合划分主要是指,将集合中的用户行为划分为多个不相交的子集,根据划 分方式的不同,可以获得若干组划分后的集合。

步骤14、当发生某一真实用户行为时,选择包含该真实用户行为的子集向外发送, 实现个人行为数据匿名化。

为了便于理解,下面结合附图2-5对本发明做进一步的介绍。

如图2所示,为使用一阶马尔科夫链对用户行为建模的示意图。用户不同时刻会进行 不同的活动,其中每个活动状态都代表一个用户行为,从当前时刻的一个状态转移到下 一时刻的状态有不同的概率,概率根据用户历史数据统计出来。一阶表示转移概率只与 上一时刻的状态有关,一个行为的先验概率即从开始状态到该行为的概率。

图2中标注了每一用户行为的转移概率,示例性的,家的先验概率为0.3,饭店的先验 概率为家和饭店的转移,表示为:0.3×0.2+0.7×0.6。

如图3所示,为对可能发生的用户行为集合进行划分的具体步骤的流程图。如图3所 示,其主要包括如下步骤:

步骤31、枚举所述可能发生的用户行为集合中所有的子集,获得若干组划分后的集 合。

示例性的,若可能发生的用户行为集合为{a,b,c},则可以划分为{[a],[b], [c]}、{[a,b],[c]}、{[a],[b,c]}、{[a,c],[b]}等。

其中,每一子集中包含一个或多个用户行为,若包含多个用户行为,则所述多个用 户行为至少存在一个相同或相似的属性;具体来说,可以将不同用户行为构建成一棵语 义树,树的叶节点代表行为,此时只需要考虑树中节点所代表的集合;如图4所示,为将 行为按属性划分的示意图,图4中考虑到的有地点属性等,由于饭店1与外卖对应不同的 地点属性,因而饭店1与外卖不能合并为一个子集{饭店1、外卖},而饭店1、饭店2可以 合并为一子集,并且用饭店来表示。

步骤32、根据隐私行为集合S判断每一子集是否可以公开。

本发明实施例中,考虑用户预先设置的隐私行为集合S(该集合中包含一个或多个用 户设定的需要保护的用户行为,记为用户行为s);判断每一子集a是否可以公开,通过 比较公开该子集a后用户行为s的后验概率与用户行为s的先验概率之差是否小于等于预设 的隐私保护的程度δ,表示为:其中,Pr[Xt=s]表 示发生用户行为s的先验概率,为公开该子集a后用户行为s的后验概率, 为包含已经发生的用户行为集合与当前子集a的集合。

示例性的,例如从起始状态会转移到4个行为a,b,c,d,每个先验概率都为0.25, δ设为0.25,其中c和d为需要保护的用户行为。基于式子 来判断是否可以公开,对于包含需要保护的用户行为d的 子集{a,d},若公开该子集则表示只有用户行为a与d可能出现,二者的后验概率之和为 1;由于二者的先验概率相同,因此,公开该子集后用户行为a和d的后验概率均为0.5, 又已知用户行为d先验概率为0.25,则有0.5-0.25≤0.25,即该子集{a,d}满足公开条 件。

步骤33、从所述若干组划分后的集合中,筛选所有子集均可公开的集合。

基于步骤32的方式进行筛选,可以获得一个或多个所有子集均可公开的集合。

步骤34、从所述所有子集均可公开的集合中选择实用性最大的集合。

优选的,若获得了多个所有子集均可公开的集合,则根据比较每一集合的实用性, 选出实用性最大的集合。

本发明实施例中定义一个子集的实用性为该子集的先验概率(所有用户行为的先验 概率之和)除以子集中用户行为的个数;一个集合的实用性为其子集的实用性之和。

本发明实施例中,使用集合划分的原因是为了让多个用户行为匿名化后都对应到同 一的子集。即使攻击者在已知本方法的情况下仍不能破坏隐私。例如,按照图3所示的方 式进行集合划分后,当发生要求保护的个人行为时向服务器发送包含用户c的子集[b, c],并在发生个人行为b时,也发送子集[b,c],这样,可以降低甚至避免了泄漏个人隐私 的风险。

另一方面,还基于本发明提供的个人行为数据匿名化方法进行了实验,实验结果如 图5所示。本次实验中随机选取100名同学的校园刷卡记录进行匿名化。实验1为不考虑属 性直接合并用户行为,其平均结果为0.77,可以当作实用性的上界;实验2为只公开或不 公开用户行为,其结果为0.54,可以当作实用性的下界;实验3为考虑属性的用户行为合 并,其结果为0.70.结果表明,根据属性对用户行为进行合并仅略微降低了实用性,并不 会对实用性造成太大的影响。

本发明实施例所提供的技术方案与现有技术相比,具有以下有益效果:

1)考虑用户行为习惯对当前行为的影响,更有效地保护隐私行为;

2)考虑攻击者的能力,在已知本方法的情况下仍不能破坏隐私;

3)考虑到不同行为的属性信息,保证匿名化后数据的实用性。

实施例二

图6为本发明实施例二提供的一种个人行为数据匿名化系统的示意图。如图6所示, 该系统主要包括:

建模模块61,用于按照时间顺序对用户行为使用一阶马尔科夫链进行建模,获得各 个用户行为c发生的先验概率Pr[Xt=c],Xt表示时刻t发生用户行为c的随机变量;

用户行为集合获取模块62,用于根据已经发生的用户行为集合并结合一阶马尔科 夫链模型计算当前时刻t可能发生的用户行为集合;

集合划分与筛选模块63,用于对所述可能发生的用户行为集合进行划分,获得若干 组划分后的集合;划分后的每一组集合中均包含多个子集,再基于下式对每一组集合中 的子集进行判断:筛选出所有子集均可公开的集合; 其中,s为用户设定的隐私集合S中需要保护的用户行为,δ为隐私保护的程度,其值越 小保护程度越高,为包含已经发生的用户行为集合与当前子集的集合;

匿名发送模块64,用于当发生某一真实用户行为时,选择包含该真实用户行为的子 集向外发送,实现个人行为数据匿名化。

进一步的,所述集合划分与获取模块63包括:

集合划分模块631,用于枚举所述可能发生的用户行为集合中所有的子集,获得若干 组划分后的集合;

判断模块632,用于根据隐私行为集合S判断每一子集是否可以公开;其中,满足下 式Pr[Xt=s|o]-Pr[Xt=s]δ,则表示该子集可以公开;

集合筛选模块633,从所述若干组划分后的集合中,筛选所有子集均可公开的集合;

集合选择模块634,用于从所述所有子集均可公开的集合中选择实用性最大的集合; 其中,一个子集的实用性为该子集的先验概率除以子集中用户行为的个数,一个集合的 实用性为其子集的实用性之和。

进一步的,集合中的每一子集中包含一个或多个用户行为,若包含多个用户行为, 则所述多个用户行为至少存在一个相同或相似的属性。

需要说明的是,上述系统中包含的各个功能模块所实现的功能的具体实现方式在前 面的各个实施例中已经有详细描述,故在这里不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模 块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模 块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分 功能。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以 通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理 解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一 个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得 一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施 例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替 换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的 保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号