数据匿名化装置和方法

文档序号:6605637阅读:257来源:国知局
专利名称:数据匿名化装置和方法
技术领域
本发明涉及数据保护技术领域,具体涉及一种数据匿名化装置和方法。
背景技术
随着社会的信息化发展,数据共享变得日益普遍,但是攻击者可能从共享的数据记录的各个条目中得到或推测出个人或组织的私密信息,这给例如个人隐私和组织机密等需要保护的数据造成了安全方面的威胁。一般而言,各种数据记录(例如表形式的数据记录)包含的记录可以大致划分成四类显式标识,例如个人的姓名、身份证号、公司的注册名称等,其能够直接标识对象;准标识,例如个人的年龄、性别、学历、出生地、公司的类别、所在地等,将其与有关外部信息相结合,能够推断出相关对象;敏感信息,例如收入、病史等一般希望保密的信息;以及非敏感信息,这种信息的公开一般不会对对象造成什么影响。为了保护个人和组织的私密信息,在上述四类数据记录中,显式标识和敏感信息一般都是完全隐藏或去除的,例如,在记录中以“*”完全替代。非敏感信息可以完全公开。 对于准标识,可以将其看作数据记录中与有关外部信息相结合能够推断出相关对象的最小记录集合,从而需要对准标识进行保护。但是,如果像显示标识和敏感信息那样,简单地将准标识完全隐藏或去除,则最终得到的数据记录包含的信息将几乎完全损失,因为这种数据记录无法提供任何有用的对象相关信息了。这种数据记录也不再具有任何使用和存在价值了。因此,数据记录保护主要关注于如何在尽量减小信息损失,确保数据记录可用的情况下,保护数据记录中的准标识,防止潜在的攻击威胁。对此,提出了数据匿名化 (anonymization)技术。基本的匿名化技术包括两种1)泛化(generalization),即将多个准标识、属性或属性值用它们的泛化版本替代,例如将“北京”、“上海”等泛化为“中国”; 2)抑制(suppression),即将多个准标识、属性或属性值用例如“*”等字符或符号替代。实际上,抑制可以看作是一种特殊的泛化。在泛化过程中,必然会造成信息的损失。抑制过程会造成信息的完全丢失。为了尽量减小信息损失,提出了多种匿名化方法,其中广泛采用的方法之一是k匿名方法。优化的k匿名方法是在尽量减小信息损失的情况下,针对给定的数据记录,例如表T,考虑到准标识Q来计算出k匿名表AT,在AT中,对于每个记录,至少存在k-Ι个其他记录与该记录相同,即,在AT中,这至少k个记录无法彼此区分。由此,对这至少k-Ι个记录进行了匿名化。k匿名方法中重要的一类是基于聚类的k匿名方法,包括两个基本步骤首先,通过聚类,将数据记录划分到多个组中,每个组至少包括k个记录;然后,对每个组进行泛化, 以使组中的每个记录具有相同的值。这种方法通过聚类,将彼此有关的记录划分到同一个组中,并分别对每个组进行泛化。相比于不应用聚类的全局泛化,这种基于聚类的局部泛化保留了更多信息,减少了信息损失。优化的聚类能够将数据记录适当地分组,从而能够进一步减小信息损失。因此,基于聚类的k匿名方法使得k匿名问题也涉及到聚类问题如何在最小化信息损失的情况下,最合适地划分记录。针对上述问题,现有的基于聚类的k匿名方法一般都采用局部优化方法。非专利文献1提出了一种k匿名的多项式时间近似算法,采用局部优化方法来进行记录划分。专利文献1提出了用于k匿名的动态编程方法,其通过考虑到所有可能的泛化版本,针对任意的度量,找到最优解。非专禾丨J 文献 1 :G. Aggarwal, A. Feder, K. Kenthapadi, R. Motwani, R. Panigrahy, D. Thomas, Α. Zhu, Approximation Algorithms fork-Anonymity, Journal of Privacy Technology,2005.^ M JC M ι :US20100027780A1, Systems and methods foranonymizing personally identifiable information associated withepigenetic information现有方法主要考虑到对信息损失的局部优化来进行记录聚类和泛化。对于给定的数据记录,现有方法[非专利文献1]将该记录中的各个记录作为顶点,自下而上地进行聚类。具体而言,这种自下而上的方法首先将任意一个顶点看做一个子图。对于其中任意包含顶点数目少于k的子图来说,如果顶点U没有指向其他顶点的有向边与其相连,则创建有向边(U,ν),其中ν为与顶点u距离最近的k-Ι个近邻顶点之一(例如,根据属性或属性值计算的距离最近)。这一过程中需要保证没有环的存在,而且任何一个顶点只存在一条指向其他顶点的有向边(但可以有多个其他顶点指向这一顶点)。重复该过程,直到其中的任何有向图中包含的顶点的数目至少为k。然后,去除边的方向,将有向图变为无向图。对于顶点数目大于max{2k-l,3k-5}的图(上述方法获得的任意图都可以看作是一棵树),随机选择该图中的一个顶点X,以Χ作为此树的根节点,进行子树和顶点Χ的合并操作,以使将此图分解为两个大于k的子图。如果不能进行这样的分解,则选择另一顶点y进行同样的操作, 直到能够将此图分解成顶点数目满足条件的两个部分。重复这一过程直到任何一个最终获得的子图所包含的顶点数目少于max {2k-l,3k-5}。上述采用自下而上过程的现有方法中,在树的构建中,对顶点及其近邻的选择是随机的,而没有任何顺序控制机制,在对顶点数目大于max{2k-l,3k-5}的图(也可以称为大树)的分解过程中也没有考虑到信息损失优化问题;并且,这些方法主要考虑到对信息损失的局部优化,而没有考虑到涉及全部记录或顶点的全局优化。这种局部优化虽然在一定程度上能够降低信息损失,但是由于没有考虑到全局情况,无法实现全局优化,这造成的信息损失对于当前要求苛刻的后续数据分析而言仍是不可接受的。因此,需要一种数据匿名化方法,其能够实现全局优化,进一步降低信息损失。

发明内容
为解决上述问题,本发明提出了一种数据匿名化装置,包括距离计算单元,用于计算多个数据记录中每两个记录之间的距离;全连接图构建单元,用于将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图;边去除单元,用于根据各个边的权重,顺序地去除边,以将记录图划分成多个树, 使得每个树包含至少k个顶点,k是给定的任意自然数;大树分解单元,用于对顶点数目大于业-1的树进行分解,以使分解得到的每个树包含的顶点的数目大于等于k并小于等于业-1 ;泛化单元,用于对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。本发明还提出了一种数据匿名化方法,包括距离计算步骤,计算包含多个数据记录的表中每两个记录之间的距离;全连接图构建步骤,将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图;边去除步骤,根据各个边的权重,顺序地去除边,以将记录图划分成多个树,使得每个树包含至少k个顶点,k是给定的任意自然数;大树分解步骤,对顶点数目大于业-1的树进行分解,以使分解得到的每个树包含的顶点的数目大于等于k并小于等于业-1 ;泛化步骤,对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。在本发明的数据匿名化装置和方法中,采用了自上而下的记录划分/聚类过程, 通过构建全部记录的全连接图并按照一定顺序来去除图中的边,并通过在大树分解过程中也按照一定顺序来去除边以进行分解,不仅考虑到局部优化,还实现了全局优化,进一步降低了信息损失。


通过下面结合

本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中图1示出了根据本发明优选实施例的数据匿名化装置的框图;图2示出了图1数据匿名化装置中大树分解单元的框图;图3示出了根据本发明优选实施例的数据匿名化方法的流程图;图4示出了图3数据匿名化方法中大树分解步骤的详细过程;图5是用于描述本发明优选实施例中记录的全连接图构建过程的示意图;图6是用于描述本发明优选实施例中引入顺序控制机制的边去除过程的示意图;图7是用于描述本发明优选实施例中大树分解过程的示意图;图8示出了本发明优选实施例的最终记录划分的结果。
具体实施例方式以下参照附图,对本发明的示例实施例进行详细描述,本发明不限于下述示例实施例。为了清楚描述本发明的基本思想,附图中仅示出了与本发明的技术方案密切相关的部件、功能或步骤,并且以下描述中省略了对已知技术、功能、部件或步骤的具体描述。图1示出了根据本发明优选实施例的数据匿名化装置1的框图。数据匿名化装置1对多个数据记录进行匿名化,以得到数据记录的匿名版本。在本文中,“数据记录”、“记录”、“记录条目,,及其类似术语具有相同的含义,可以互换使用。在本发明优选实施例中,数据匿名化装置1主要考虑包含例如准标识之类的数据记录,采用k匿名方法(k为给定自然数),从例如包括多个数据记录的表T,通过泛化方案产生k匿名表AT,以避免基于准标识的隐私泄露,同时最小化由此造成的信息损失。如背景技术部分所述,显式标识和敏感信息是直接隐藏或去除的,非敏感信息不需要保护。准标识可以看作数据记录中与有关外部信息相结合能够推断出相关对象的最小记录集合,需要受到保护。准标识可以是多维的,包含多种属性,例如,可以记为Q= {Al,A2,...Am},Al, A2,. . .,Am代表准标识的各个属性。准标识也可以记为Q = {Rec ID, A1,A2, ... Am}或Q ={Rec ID,Al-valuel,A2_valuel,. . . Am-valuem}等形式,其中 RecID 表示该准标识在整个数据记录中的索引,value表示相应属性的属性值。以下,“数据记录”、“记录”、“记录条目”及其类似术语主要是指准标识的记录。但是,本发明不限于此,而是可以应用于对于其他任何数据记录的匿名化保护。此外,虽然以k匿名方法为例进行描述,但是本发明可以应用于任何基于聚类的数据匿名化方法。数据记录可以具有多种形式,例如列表、表等。数据记录可以存储在记录存储单元20中,如图所示,该记录存储单元20可以是由数据匿名化装置1可访问的独立单元,但是其也可以属于数据匿名化装置1的一部分。数据匿名化装置1包括距离计算单元10, 用于计算多个数据记录中每两个记录之间的距离;全连接图构建单元12,用于将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建所有记录的全连接图;边去除单元14,用于根据各个边的权重,顺序地去除边,以将全连接图划分成多个树,使得每个树包含至少k个顶点;大树分解单元16,用于对顶点数目大于业-1的每个树进行分解,以使分解得到的每个树包含的顶点的数目大于等于k并小于等于业-1 ;泛化单元18,用于对每个最终获得的树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。距离计算单元10可以根据记录存储单元存储的各个记录本身的名称、属性或属性值等,计算各个记录之间的距离。例如,可以采用规定的准则,对各个记录的名称、属性等进行量化,使用量化值来计算记录之间的距离,例如采用公知的欧式距离计算方法。可选地,所计算的距离可以存储在距离存储单元(图中未示出)中。全连接图构建单元12构建包含所有记录的全连接图,即,任意两条记录之间都存在一条边。如上所述,本发明采用自上而下的记录划分/聚类过程,而不是现有自下而上方法中以每个记录为基础来构建的过程。因此,在本发明中引入了该全连接图,其包含了任意两条记录之间的距离,通过对该全连接图进行划分或分解,自上而下地将所有记录划分到不同子图或树(每个子图都可以看作一棵树)中。可选地,所构建的全连接图可以存储在相应的存储单元(图中未示出)中。边去除单元14根据各个边的权重,将各个边排序,并按照权重从大到小的顺序来去除边。这样,与现有方法中随机选择顶点的近邻来构建树不同,本发明在此引入了顺序控制机制,在确保局部优化的同时,也考虑到了全局优化问题。例如,对于“硕士”、“博士”、“工程师”这三个记录,按照规定准则,“硕士”与“博士”之间的距离最小,“硕士”与“工程师” 之间的距离次小,“博士”与“工程师”之间的距离最大。那么,在去除边的过程中,首先就去除“博士”与“工程师”之间的边,然后再去除“硕士”与“工程师”之间的边,而保持“硕士” 与“博士”之间的边,从而将包含“硕士”和“博士”的子图或树与“工程师”分离开来。在顺序地去除边的过程中,如果满足以下条件之一,则边去除单元14执行边去除
1)该边是桥(即,当去除该边时,会将包含该边的图分裂成两个子图),并且去除该边得到的每个子图均包含至少k个顶点;2)该边不是桥(即,当去除该边时,不会将包含该边的图分裂成两个子图)。稍后将参照具体示例和附图来示出边去除单元14的操作过程。可选地,边去除单元14的输出结果可以存储在边去除结果存储单元(图中未示出)中。经过边去除单元14的操作,得到的一些树包含的顶点数目可能大于业-1,这种树被称为大树。需要对大树进行分解,以使最终得到的每个子树的顶点数目大于等于k且小于等于业-1。根据本发明优选实施例的大树分解过程可以采用两种实现方式1)采用任何适合的现有方法来实现,本文中省略了对这种分解过程的具体描述,以避免使本发明不清楚;2)不像现有方法中随机合并的方式,而是再次考虑到信息损失的全局优化问题,引入类似于边去除过程中使用的顺序控制机制。下面主要描述大树分解过程的实现方式2)。图2示出了图1数据匿名化装置1中大树分解单元16的框图。大树分解单元16 包括k中心节点检测单元160、子树距离计算单元162、子树全连接图构建单元164、子树全连接图边去除单元166和合并单元168。根据本发明优选实施例,在分解大树时,引入了 k中心顶点。k中心顶点是如下定义的当该顶点被去除时,得到的每个子树(也可以看作子图)包含至多k-Ι个顶点。本文中引入如下引理顶点数目大于业-1的每个树有且只有一个k中心顶点。证明假设顶点数目大于业-1的一个大树中存在两个如上定义的k中心顶点vl, v2,那么,去除vl和v2之间的边,得到的每个子树都包括至多k-Ι个顶点。那么,该大树应该包括至多业-2个顶点,这与假设的该树的顶点数目矛盾。因此,证明了上述引理。k中心节点检测单元160检测顶点数目大于业-1的每个大树的k中心顶点,并将与检测到的k中心顶点连接的所有边去除,得到不包含k中心顶点的多个子树或子图。子树距离计算单元162计算每个子树的中心,并计算每两个子树中心之间的距离。根据本发明优选实施例,由于去除了 k中心顶点,得到的每个子树包含至多k-Ι个顶点。 因此,不需要再对每个子树进行分解。因此,在分解大树的过程中,可以将每个子树看作一个整体,使用子树的中心来代表相应的子树。子树的中心可以采用该子树包含的各个顶点对应的记录的量化值或属性值的均值、中间值或其他任何合适的度量。两个子树中心之间的距离也可以采用任何合适的公知方法来计算,例如欧式距离计算方法等。如上所述,根据本发明优选实施例,在大树分解过程中,也引入了自上而下的划分 /聚类过程,来确保全局优化。因此,大树分解单元16通过以子树整体为顶点的子树全连接图构建单元164,将所计算的每个子树中心作为顶点,将所有顶点两两连接,来构建以子树整体为顶点点的全连接图。在该图中,使用子树的大小(即,该子图中包含的顶点的数目) 作为相应顶点的权重,使用两个子树中心之间的距离作为相应顶点之间的边的权重。同样,在大树分解过程中,也引入了顺序去除机制。与上述边去除单元14的操作类似,子树全连接图边去除单元166根据各个边的权重,顺序地去除边,以将子树划分成多个部分,使得每个部分包含的顶点的权重之和大于等于k并小于等于业-1。子树全连接图边去除单元166根据各个边的权重,将各个边排序,并按照权重从大到小的顺序来去除边。在顺序地去除边的过程中,如果满足以下条件之一,则子树全连接图边去除单元166执行边去除
1)该边是桥(即,当去除该边时,会将包含此边的图分裂成两个部分),并且去除该边得到的每个部分包含的顶点的权重之和至少为k ;2)该边不是桥,(即,当去除该边时,不会将包含此边的图分裂成两个部分)。稍后将参照具体示例和附图来示出子树全连接图边去除单元166的操作过程。子树全连接图边去除单元166的操作完成之后,还需要将剩余的k中心顶点合并到合适的部分中。为此,合并单元168将k中心顶点合并到距离其最近的部分中。如果合并后该部分包含的顶点的权重之和等于业,则将该部分进一步分解成两个部分,使得每个部分包含的顶点的权重之和等于k。大树分解单元16得到的各个子树、以及先前由边去除单元14得到的顶点数目不大于业-1的树共同构成了记录划分/聚类的结果,每个结果树包含的顶点数目或记录数目大于等于k且小于等于业-i。可选地,这些结果树可以存储在记录划分存储单元(图中未示出)中。泛化单元18对每个结果树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。泛化单元18可以采用公知的泛化方法,例如对于多个数值,可以泛化为它们的最小公倍数,例如将2、4、10泛化为20 ;对于多个市级地区名称,可以泛化为省级地区名称,例如将“成都”、“绵阳”、“乐山”泛化为“四川”。一般而言,对于不同的属性,就这些属性泛化到它们所属的最低类别,从而确保了这些属性不能彼此区分,同时最小化了信息损失。可选地,泛化单元18的输出结果可以以多种形式存储在匿名记录存储单元(图中未示出)中,例如以匿名表、匿名列表等形式存储。以上描述了根据本发明优选实施例的数据匿名化装置1。图3示出了根据本发明优选实施例的数据匿名化装置1进行的数据匿名化方法300的流程图。在步骤302,计算包含多个数据记录的表中每两个记录之间的距离。在步骤304,将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图。在步骤306,根据各个边的权重,顺序地去除边,以将全连接图划分成多个树,使得每个树包含至少k个顶点。在步骤308,对顶点数目大于业-1的每个大树进行分解,以使分解后的每个子树包含的顶点的数目大于等于k并小于等于业-1。在步骤310,对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。图4示出了图3数据匿名化方法300中大树分解步骤308的详细过程400。在步骤402,检测顶点数目大于业-1的每个大树的k中心顶点,并将与检测到的k中心顶点相连接的所有边去除,得到不包含k中心顶点的多个子树。在步骤404,计算每个子树的中心, 并计算每两个子树中心之间的距离。在步骤406,将所计算的每个子树中心作为顶点,将所有顶点两两连接,并使用子树的大小作为相应顶点的权重,使用子树中心之间的距离作为相应顶点之间的边的权重,来构建以子树整体为顶点的全连接图。在步骤408,根据各个边的权重,顺序地去除边,以将子树全连接图划分成多个部分,使得每个部分包含的顶点的权重之和大于等于k并小于等于业-1。在步骤410,将k中心顶点合并到距离其最近的部分中,如果合并后该部分包含的顶点的权重之和等于业,则将该部分进一步分解成两个部分, 使得每个部分包含的顶点的权重之和等于k。为了更加清楚地阐述本发明优选实施例,下面结合图5-8,描述根据本发明优选实施例的具体示例。该具体示例仅仅用于描述本发明优选实施例,本发明不限于此。
例如,存在10 个数据记录的表,T = [Q0, Ql, ... , Q9],Qi = {Al,A2,· · ·,Am},i
={0,2,. .,9},m为自然数;需要对该10个数据记录进行匿名化,生成k( = 2)匿名表。首先,距离计算单元10可以采用欧式距离计算方法,计算Qi之间的距离。然后, 全连接图构建单元12进行全连接图构建。图5示出了根据本发明优选实施例的全连接图构建的示意图。如图5所示,左侧是代表记录的多个顶点,将这些顶点两两连接,得到右侧的全连接图。为方便说明,假设两个顶点之间的边的长度代表了该边的权重,即,相应两个记录之间的距离。接着,边去除单元14按照权重从大到小的顺序,根据上述条件,执行边去除操作。 图6示出了根据本发明优选实施例的引入顺序控制机制的边去除过程的示意图。从图中可以看出,Q3与Q8之间的边edge38的长度最大,即代表权重最大;QO与Q4之间的边edge04 次之;....;Q8与Q9之间的边edge89最短。首先,边去除单元14判断边edge38是否满足上述两个条件。由于边edge38不是桥,因此去除边edge38。接着,边去除单元14判断边edge04是否满足上述两个条件。由于边edge04也不是桥,因此去除边edge04。如此继续,当继续到QO与Q 1之间的边edgeOl 时,边去除单元14判断边edgeOl是否满足上述两个条件。由于边edgeOl的去除会导致图被完全分裂成两个部分或子图,边edgeOl属于桥,因此需要判断得到的两个部分的顶点数目是否至少为k。如图所示,去除边edgeOl得到的两个部分所包含的顶点数目分别为6和 4。因此,边去除单元14去除边edgeOl。当继续到QO与Q9之间的边edge09时,边去除单元14判断边edge09是否满足上述两个条件。由于边edge09的去除会导致全连接图的该部分进一步被完全分裂成两个部分,因此需要判断得到的两个部分的顶点数目是否至少为k。 如图所示,去除边edge09得到的两个部分所包含的顶点数目分别为1和5,从而不满足条件,边去除单元14不会去除边edge09。由此,依图6所示最终得到右下侧的划分结果CQ1, CQ2, CQ3 禾口 CQ4。CQ2-4分别包含2个顶点,因此不需要再分解。CQl包含4个顶点Q0,Q7,Q8和Q9, 大于业(=幻-1。因此,大树分解单元16对其进行大树分解。图7示出了根据本发明优选实施例的大树分解过程的示意图。首先,检测单元160检测出k中心顶点。如图所示,大树 CQl的k中心顶点为Q9。去除Q9的所有边,得到各个分离的子树。在本示例中,如图7第二幅子图所示,由于k = 2,所以每个子树只包括一个顶点,这也是为了方便说明。但是,在其他情况下,每个子树也可以包括多个顶点。由于每个子树只包括一个顶点,因此计算单元162可以直接将该顶点的代表值作为子树中心,并计算各个子树中心之间的距离。子树全连接图构建单元164将除了 k中心顶点之外的每个子树中心连接,得到包括所有子树的全连接图,如图7第三幅子图所示。子树全连接边去除单元166根据上述两个条件,按照边的权重(即,图中边的长度),去除了 QO 和Q7之间的边,并且无法再去除其他任何边,如图7第四幅子图所示。合并单元168将Q9 合并到左侧部分,得到包含4个顶点的部分,如图7第五幅子图所示。因此,合并单元168 去除Q7与Q8之间的边,得到分别包含2个顶点的两个树,如图7第六幅子图所示。图8示出了根据本发明优选实施例的具体实例的最终记录划分结果,利用根据本发明优选实施例的k( =》匿名方法,记录Q0-Q9分成了 5个组,每组包括2个记录。这样, 泛化单元18就可以针对每组记录进行泛化,得到k匿名表AT = [AQ0,AQ 1,......,AQ4],其中AQi分别是对应组的记录的泛化值。以上描述了根据本发明优选实施例的数据匿名化装置和方法。在以上的描述中, 仅以示例的方式,示出了本发明的优选实施例,但并不意味着本发明局限于上述步骤和单元结构。在可能的情形下,可以根据需要对步骤和单元进行调整、取舍和组合。此外,某些步骤和单元并非实施本发明的总体发明思想所必需的元素。因此,本发明所必需的技术特征仅受限于能够实现本发明的总体发明思想的最低要求,而不受以上具体实例的限制。至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。
权利要求
1.一种数据匿名化装置,包括距离计算单元,用于计算多个数据记录中每两个记录之间的距离; 全连接图构建单元,用于将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图;边去除单元,用于根据各个边的权重,顺序地去除边,以将记录图划分成多个树,使得每个树包含至少k个顶点,k是给定的自然数;大树分解单元,用于对顶点数目大于业-1的树进行分解,以使分解得到的每个树包含的顶点的数目大于等于k并小于等于业-1 ;泛化单元,用于对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。
2.根据权利要求1所述的装置,其中,边去除单元根据各个边的权重,将各个边排序, 并按照权重从大到小的顺序来去除边。
3.根据权利要求1所述的装置,其中,在顺序地去除边的过程中,如果满足以下条件之_,则边去除单元执行边去除1)该边为桥,并且去除该边后得到的每个部分均包含至少k个顶点;2)该边不为桥;其中,如果去除该边会将包含该边的图分裂成两个部分,则该边为桥, 如果去除该边不会将包含该边的图分裂成两个部分,则该边不为桥。
4.根据权利要求1所述的装置,其中,大树分解单元进一步包括k中心顶点检测单元,用于检测顶点数目大于业-1的树的k中心顶点,并将与检测到的 k中心顶点相连接的所有边去除,得到不包含k中心顶点的多个子树,其中,k中心顶点是如下顶点当该顶点被去除时,得到的每个子树包含至多k-Ι个顶点;子树距离计算单元,用于计算每个子树的中心,并计算每两个子树中心之间的距离; 子树全连接图构建单元,用于将所计算的每个子树中心作为顶点,将所有顶点两两连接,并使用子树的大小作为相应顶点的权重,使用子树中心之间的距离作为相应顶点之间的边的权重,来构建子树全连接图,其中,子树的大小是该子树中包含的记录顶点的数目;子树全连接图边去除单元,用于根据各个边的权重,顺序地去除边,以将子树全连接图划分成多个部分,使得每个部分包含的顶点的权重之和大于等于k并小于等于业-1 ;以及合并单元,用于将k中心顶点合并到距离其最近的部分中,如果合并后该部分包含的顶点的权重之和等于业,则将该部分进一步分解成两个部分,使得每个部分包含的顶点的权重之和等于k。
5.根据权利要求4所述的装置,其中,子树全连接图边去除单元根据各个边的权重,将各个边排序,并按照权重从大到小的顺序来去除边。
6.根据权利要求4所述的装置,其中,在顺序地去除边的过程中,如果满足以下条件之一,则子树全连接图边去除单元执行边去除1)该边为桥,并且去除该边后得到的每个部分包含的顶点的权重之和至少为k;2)该边不为桥;其中,如果去除该边会将包含该边的图分裂成两个部分,则该边为桥, 如果去除该边不会将包含该边的图分裂成两个部分,则该边不为桥。
7.一种数据匿名化方法,包括距离计算步骤,计算包含多个数据记录的表中每两个记录之间的距离; 全连接图构建步骤,将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图;边去除步骤,根据各个边的权重,顺序地去除边,以将记录图划分成多个树,使得每个树包含至少k个顶点,k是给定的自然数;大树分解步骤,对顶点数目大于业-1的树进行分解,以使分解得到的每个树包含的顶点的数目大于等于k并小于等于业-1 ;泛化步骤,对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。
8.根据权利要求7所述的方法,其中,在边去除步骤中,根据各个边的权重,将各个边排序,并按照权重从大到小的顺序来去除边。
9.根据权利要求7所述的方法,其中,在边去除步骤中,如果满足以下条件之一,则执行边去除1)该边为桥,并且去除该边后得到的每个部分均包含至少k个顶点;2)该边不为桥;其中,如果去除该边会将包含该边的图分裂成两个部分,则该边为桥, 如果去除该边不会将包含该边的图分裂成两个部分,则该边不为桥。
10.根据权利要求7所述的方法,其中,大树分解步骤进一步包括k中心顶点检测步骤,检测顶点数目大于业-1的每个树的k中心顶点,并将与检测到的 k中心顶点相连接的所有边去除,得到不包含k中心顶点的多个子树,其中,k中心顶点是如下顶点当该顶点被去除时,得到的每个子树包含至多k-Ι个顶点;子树距离计算步骤,计算每个子树的中心,并计算每两个子树中心之间的距离; 子树全连接图构建步骤,将所计算的每个子图中心作为顶点,将所有顶点两两连接,并使用子树的大小作为相应顶点的权重,使用子树中心之间的距离作为相应顶点之间的边的权重,来构建以子树为顶点的全连接图,其中,子树的大小是该子树中包含的记录顶点的数目;子树全连接图边去除步骤,根据各个边的权重,顺序地去除边,以将子树全连接图划分成多个部分,使得每个部分包含的顶点的权重之和大于等于k并小于等于业-1 ;以及合并步骤,将k中心顶点合并到距离其最近的部分中,如果合并后该部分包含的顶点的权重之和等于业,则将该部分进一步分解成两个部分,使得每个部分包含的顶点的权重之和等于k。
11.根据权利要求10所述的方法,其中,在子树全连接图边去除步骤中,根据各个边的权重,将各个边排序,并按照权重从大到小的顺序来去除边。
12.根据权利要求10所述的方法,其中,在子树全连接图边去除步骤中,如果满足以下条件之一,则执行边去除1)该边为桥,并且去除该边后得到的每个部分均包含至少k个顶点;2)该边不为桥;其中,如果去除该边会将包含该边的图分裂成两个部分,则该边为桥,如果去除该边不会将包含该边的图分裂成两个部分,则该边不为桥。
全文摘要
本发明提出了一种数据匿名化装置和方法,包括距离计算单元,用于计算多个数据记录之间的距离;全连接图构建单元,用于将每个记录作为顶点,将所有顶点两两连接,并使用记录之间的距离作为相应顶点之间的边的权重,来构建包含所有记录的全连接图;边去除单元,用于根据各个边的权重,顺序地去除边,以将全连接图划分成多个树,使得每个树包含至少k个顶点;大树分解单元,用于对顶点数目大于2k-1的树进一步分解,以使分解后的每个子树包含的顶点的数目大于等于k并小于等于2k-1;泛化单元,用于对最终获得的每个树中所有顶点对应的记录进行泛化,使得无法区分该树中的各个记录。本发明的数据匿名化装置和方法采用全局优化机制,进一步降低了信息损失。
文档编号G06F21/00GK102314565SQ20101022256
公开日2012年1月11日 申请日期2010年7月2日 优先权日2010年7月2日
发明者刘博 , 李建强, 赵彧 申请人:日电(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1