一种数据匿名化处理的方法及装置与流程

文档序号:23154268发布日期:2020-12-04 13:49阅读:580来源:国知局
一种数据匿名化处理的方法及装置与流程

本发明涉及数据处理与隐私保护领域,尤其涉及一种数据匿名化处理的方法及装置。



背景技术:

网络安全法、个人信息安全规范等法规中,直接或间接的指出,除经过匿名化处理且无法复原的个人信息外,未经被收集者同意,不得向他人提供个人信息,所述匿名化处理是通过对于个人信息的技术处理,使得个人信息主体无法被识别,且处理后的信息不能被复原的过程。

匿名化处理的个人信息能够应用在科学研究、数据分析之中,为研究个人信息中不同指标之间的关联性提供可能,如,研究薪资状况与地域和年龄的关联性,研究具体疾病与地域之间的关联性。现有技术下,通常采用k-匿名(k-anonymization)的处理方式,对个人信息进行匿名化处理。

但基于现有的k-匿名处理方式处理个人信息时,不区分个人信息中各个影响指标对待研究指标的重要程度,导致处理后的数据丧失可研究性,无法根据匿名化处理的个人数据分析出对待研究指标存在关键性影响的影响指标。

例如,参阅图1a和图1b所示,采用现有的2-匿名化处理方式对图1a所示的原始数据进行处理后,得到图1b中所示意的匿名数据,可见,匿名化处理后将工作单位以及工作城市关联的数据全部进行了隐藏,无法基于匿名化处理后的数据研究工作城市与收入之间的关联性,使得数据失去了可研究性。

有鉴于此,需要一种新的匿名化处理方法,以解决现存的匿名化处理时不区分影响指标对待研究指标的影响程度,导致匿名化处理后的数据丧失可研究性的问题。



技术实现要素:

本发明实施例提供一种数据匿名化处理的方法及装置,用以解决现有技术中存在不区分影响指标对待研究指标的影响程度统一进行简单泛化处理,导致匿名化处理后的数据丧失可研究性的问题。

本发明实施例提供的具体技术方案如下:

第一方面,提出一种数据匿名化处理的方法,包括:

接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,其中,所述用户数据列表中一行对应一条用户数据,一个准标识符属性标签关联的列数据用于表征各条用户数据各自归属的用户的一个属性;

分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码;

计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据;

将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。

可选的,所述确定用户数据列表中与所述目标属性标签关联的目标列数据之前,进一步包括:

基于采集的各条初始用户数据生成初始用户数据列表,其中,所述初始用户数据列表中包括针对每列数据的数据内容配置的属性标签;

删除直接表征用户身份的列数据,以及所述列数据被配置的属性标签,得到处理后的用户数据列表。

可选的,所述分别计算所述各个列数据与所述目标列数据之间的关联系数,包括以下任一种实现方式:

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益,以及将得到的信息增益作为该列数据对所述目标列数据的影响系数;或者,

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益率,以及将得到的信息增益率作为该列数据对所述目标列数据的影响系数;或者,

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的基尼指数,以及将得到的基尼指数作为该列数据对所述目标列数据的影响系数。

可选的,所述基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,包括:

计算处理后的各个列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的列数据作为关键列数据,并确定所述关键列数据关联的关键准标识符属性标签;

按照预设的数据内容排列顺序,对所述用户数据列表中的各个用户数据进行重排序处理;

确定所述关键列数据的数据内容中值,并筛选出所述关键准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第一候选等价组,以及筛选出所述关键准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第二候选等价组;

确定所述第一候选等价组和所述第二候选等价组中至少有一组的用户数据条数低于k条时,直接将所述用户数据列表作为一个等价组。

可选的,确定所述第一候选等价组和所述第二候选等价组中的用户数据条数均超过k条时,包括:

针对所述第一候选等价组和所述第二候选等价组,采用循环迭代的方式执行以下操作,直至基于所述第一候选等价组合所述第二候选等价组生成的全部候选等价组处理完成:

计算一个候选等价组中各个列数据的取值跨度,以及计算所述各个列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的候选关键列数据;

确定所述候选关键列数据关联的准标识符属性标签,按照预设的数据内容排列顺序,对所述一个候选等价组中的各条用户数据进行重排序处理;

确定所述候选关键列数据的数据内容中值,并筛选出所述准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第三候选等价组,以及筛选出所述准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第四候选等价组;

确定所述第三候选等价组和所述第四候选等价组中至少有一组的用户数据条数低于k条时,直接将所述第三候选等价组以及所述第四候选等价组的组合为一个等价组,否则,继续基于所述第三候选等价组和所述第四候选等价组进行上述循环迭代操作。

可选的,进一步包括:

反馈所述至少一个等价组至发送所述目标属性标签信息的数据应用设备,令所述数据应用设备将得到的等价组作为训练数据,生成相应的预测模型。

第二方面,提出一种数据匿名化处理的装置,包括:

接收单元,接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,其中,所述用户数据列表中一行对应一条用户数据,一个准标识符属性标签关联的列数据用于表征各条用户数据各自归属的用户的一个属性;

计算单元,分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码;

划分单元,计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据;

处理单元,将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。

可选的,所述确定用户数据列表中与所述目标属性标签关联的目标列数据之前,所述接收单元进一步用于:

基于采集的各条初始用户数据生成初始用户数据列表,其中,所述初始用户数据列表中包括针对每列数据的数据内容配置的属性标签;

删除直接表征用户身份的列数据,以及所述列数据被配置的属性标签,得到处理后的用户数据列表。

可选的,所述分别计算所述各个列数据与所述目标列数据之间的关联系数时,包括以下任一种实现方式:

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益,以及将得到的信息增益作为该列数据对所述目标列数据的影响系数;或者,

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益率,以及将得到的信息增益率作为该列数据对所述目标列数据的影响系数;或者,

获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的基尼指数,以及将得到的基尼指数作为该列数据对所述目标列数据的影响系数。

可选的,所述基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组时,所述划分单元用于:

计算处理后的各个列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的列数据作为关键列数据,并确定所述关键列数据关联的关键准标识符属性标签;

按照预设的数据内容排列顺序,对所述用户数据列表中的各个用户数据进行重排序处理;

确定所述关键列数据的数据内容中值,并筛选出所述关键准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第一候选等价组,以及筛选出所述关键准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第二候选等价组;

确定所述第一候选等价组和所述第二候选等价组中至少有一组的用户数据条数低于k条时,直接将所述用户数据列表作为一个等价组。

可选的,确定所述第一候选等价组和所述第二候选等价组中的用户数据条数均超过k条时,所述划分单元用于:

针对所述第一候选等价组和所述第二候选等价组,采用循环迭代的方式执行以下操作,直至基于所述第一候选等价组合所述第二候选等价组生成的全部候选等价组处理完成:

计算一个候选等价组中各个列数据的取值跨度,以及计算所述各个列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的候选关键列数据;

确定所述候选关键列数据关联的准标识符属性标签,按照预设的数据内容排列顺序,对所述一个候选等价组中的各条用户数据进行重排序处理;

确定所述候选关键列数据的数据内容中值,并筛选出所述准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第三候选等价组,以及筛选出所述准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第四候选等价组;

确定所述第三候选等价组和所述第四候选等价组中至少有一组的用户数据条数低于k条时,直接将所述第三候选等价组以及所述第四候选等价组的组合为一个等价组,否则,继续基于所述第三候选等价组和所述第四候选等价组进行上述循环迭代操作。

可选的,所述处理单元你进一步用于:

反馈所述至少一个等价组至发送所述目标属性标签信息的数据应用设备,令所述数据应用设备将得到的等价组作为训练数据,生成相应的预测模型。

第三方面,提出一种电子设备,包括:

存储器,用于存储可执行指令;

处理器,用于读取并执行所述存储器中存储的可执行指令,以实现上述任一项所述的数据匿名化处理的方法。

第四方面,提出一种计算机可读的存储介质,当所述存储介质中的指令由电子设备执行时,使得所述电子设备能够执行上述任一项所述的数据匿名化处理的方法。

本发明有益效果如下:

本公开实施例中,接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,再分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码,然后,计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据,再将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。这样,通过计算影响系数和取值跨度,确定了各个列数据对目标列数据的影响程度,进而适应性地进行泛化处理后,能够更多的保留对目标列数据影响较大的列数据,使得匿名化处理后的列数据不丧失可研究性。

附图说明

图1a为本公开实施例中现有的k-匿名处理前的用户数据列表示意图;

图1b为本公开实施例中现有的k-匿名处理后的用户数据列表示意图;

图2为本公开实施例中数据匿名化处理流程示意图;

图3为本公开实施例中进行处理的用户数据列表示意图;

图4为本公开实施例中重排序后的用户数据列表示意图;

图5为本公开实施例中对泛化处理后的用户数据列表示意图;

图6为本公开实施例中处理设备与数据应用方的交互示意图;

图7为本公开实施例中数据匿名化处理的装置的逻辑结构示意图;

图8为本公开实施例中数据匿名化处理的装置的实体结构示意图。

具体实施方式

针对现有技术中存在的不区分影响指标对待研究指标的影响程度统一进行简单泛化处理,导致匿名化处理后的数据丧失可研究性的问题,本公开提出一种数据匿名化处理的方法,将接受到的目标属性标签关联的列数据作为待研究指标,将无法直接指示用户身份的,各个准标识符属性标签各自关联的列数据作为各个影响指标,分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码,计算所述各个列数据的取值跨度,进而基于得到的影响系数和取值跨度将所述用户数据列表划分为至少一个等价组,并针对各个等价组中的内容进行泛化处理,其中,一个等价组中的用户数据的条数至少为k,进而针对性的对各个等价组中的各个列数据进行泛化处理。

需要说明的是,本公开实施例中,将保留所述目标数据列中的全部原始内容,不进行泛化处理,且执行基于数据匿名化处理的处理设备可以是服务器,或者是处理能力足够强大的终端,本公开在此不进行具体限定。

处理设备接收目标属性标签信息后,在用户数据列表中,确定所述目标属性标签关联的目标列数据,其中,所述用户数据列表是基于保存的各条用户数据生成的,所述目标属性标签对应关联有具有研究意义的列数据,如,薪资数据、消费记录数据,以及医疗数据等等,所述准标识符属性标签关联有无法直接指示用户身份的列数据,如,出生日期数据、性别数据、身高数据、民族数据、婚姻状况数据等等。

进一步的,本公开实施例中,借鉴于k-匿名的处理方式,并对原有的k-匿名处理方式进行了改进,实现在符合匿名化处理要求的基础上,对所述目标列数据影响越大的准标识符属性标签关联的列数据,处理程度越弱,以实现尽量保留影响程度大的准标识符属性标签关联的列数据内容,以供后续针对所述目标列数据进行研究和分析。

需要说明的是,本公开实施例中按照实际的处理需要,合理选择k-匿名处理中的参数k,其中,所述参数k限定了进行匿名化处理时生成的等价组中包含的用户数据条数的最小值,参数k的取值越大,后续进行泛化处理时能够保留的有效信息越少,匿名化处理后的各个列数据的可研究性越低,通常根据实际的需要对所述参数k进行适应性配置,如,配置为3等等,本公开对参数k的取值不进行过多限定,在此不再赘述。

下面结合附图,对本公开优选的实施例进行进一步详细说明:

参阅图2所示,下面对数据匿名化处理过程进行说明:

步骤201:接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,其中,所述用户数据列表中一行对应一条用户数据,所述一个准标识符属性标签关联的列数据用于表征各条用户数据各自归属的用户的一个属性。

处理设备接收目标属性标签信息后,确定用户数据列表中与所述目标属性标签信息关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,其中,所述用户数据列表中一行对应一条用户数据,所述一个准标识符属性标签关联的列数据用于表征各条用户数据各自归属的用户的一个属性。

需要说明的是,本公开实施例中,所述处理设备确定基于用户数据列表进行操作之前,首先基于采集的各条初始用户数据生成初始用户数据列表,其中,所述初始用户数据列表中包括针对每列数据的数据内容配置的属性标签,然后,删除直接表征用户身份的列数据,以及所述列数据被配置的属性标签,得到处理后的用户数据列表。其中,一条初始用户数据包括与各个属性标签所关联的数据内容,所述准标识符属性标签包含在所述各个属性标签中,所述直接表征用户身份的列数据包括但不限于姓名数据、身份证号数据、手机号数据等等。

这样,在确定目标属性标签后,在预先建立的用户数据列表中确定目标属性标签关联的目标列数据,以及确定可能对所述目标列数据造成影响的各个准标识符属性标签关联的列数据。

步骤202:分别计算各个准标识符属性标签各自关联的列数据对目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码。

处理设备确定目标属性标签关联的目标列数据,以及确定各个准标识符属性标签各自关联的列数据后,分别计算各个准标识符属性标签各自关联的列数据对目标列数据的影响系数,具体的,所述处理设备可以采用以下任意一种方式,计算各个列数据对所述目标列数据的影响系数。

a、获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益,以及,将得到的信息增益作为该列数据对所述目标列数据的影响系数。

具体的,处理设备针对各个准标识符属性标签关联的各个列数据,分别执行以下操作,直至所有的列数据处理完毕:计算一个列数据与所述目标列数据之间的信息熵,得到所述一个列数据对所述目标列数据的影响系数。具体的,处理设备针对各个准标识符属性标签关联的各个列数据,分别执行以下操作,直至所有的列数据处理完毕:采用现有的计算信息增益的方式,计算一个列数据与所述目标列数据之间的信息增益,得到所述一个列数据对所述目标列数据的影响系数。

例如,参阅图3所示,目标属性标签为“收入”,准标识符属性标签包括有“性别”、“年龄”,以及“教育”。采用现有的信息熵计算公式,分别计算(收入、性别)、(收入、年龄),以及(收入、教育)的信息熵作为各自的影响系数,以计算(收入、性别)之间的影响系数为例,月入>=10k的男性为2人,女性2人,月入<10k的男性3人,女性1人,女性占当前总人数的3/8,男性占当前总人数的5/8,月入>=10k的女性占女性总数的2/3,月入<10k的女性占女性总数的1/3,月入>=10k的男性占男性总数的2/5,月入<10k的男性占男性总数的3/5,月入≥10k和月入<10k,占总样本个数的比例均为1/2,“收入”的信息熵为“性别男”的信息熵性别女的信息熵故得到的信息增益为:ent(收入)-5/8ent(性别=“男”)-3/8ent(性别=“女”)=0.048875。即,得到性别对收入的影响系数为0.048875,同理可得到年龄对收入的影响系数为0.4056375,教育对收入的影响系数为0.75。

b、获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的信息增益率,以及将得到的信息增益率作为该列数据对所述目标列数据的影响系数。

本公开的一些实施例中,处理设备将列数据与目标列数据之间的信息增益率作为所述列数据对所述目标列数据的影响系数,其中,信息增益率的计算为现有的成熟技术,在此不再赘述。

c、获取各个准标识符属性标签各自关联的列数据,并分别计算各个列数据与所述目标列数据之间的基尼指数,以及将得到的基尼指数作为该列数据对所述目标列数据的影响系数。

本公开的一些实施例中,处理设备针对各个准标识符属性标签关联的各个列数据,分别执行以下操作,直至所有的列数据处理完毕:采用现有的计算基尼指数的方式,计算一个列数据与所述目标列数据之间的基尼指数,得到所述一个列数据对所述目标列数据的影响系数。

需要说明的是,由于基尼指数的计算是现有的成熟技术,本公开实施例中,在此不再对基尼指数的计算过程进行赘述。

进一步的,所述处理设备基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码。

具体的,按照预先指定的数字化编码规则,将数据内容为文本型的各个列数据编码为数字型,以便于后续进行统一化处理。

例如,继续参阅图3所示,准标识符属性标签“教育”和“性别”所关联的列数据中数据内容为文本,故“教育”和“性别”为文本型列数据,针对“教育”所关联的列数据中的文本内容,将文本内容进行数字化编码,示意性的,将“教育”内容为小学及以下编码为10,将初中编码为20,将高中编码为30,将大学编码为40,将研究生编码为50,将博士生编码为60;以及将“性别”内容为“男”编码为01,将“女”编码为02。

这样,通过计算影响系数,能够初步判断各个列数据对目标列数据的影响程度,通过对文本型列数据进行数字化编码处理,能够统一各个列数据的内容类型,便于后续进行统一的操作。

步骤203:计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据。

处理设备对各个准标识符属性标签各自关联的列数据中,根据各个列数据中的数据内容,将所述各个列数据划分为文本型列数据和数字型列数据,并在将数据内容为文本的列数据进行数字化编码处理后,依次计算处理后的各个列数据的取值跨度,所述取值跨度具体为该列数据的数据内容中最大取值与最小取值之间的差值。

例如,继续步骤202的举例进行说明,对于图3来说,准标识符属性标签“教育”关联的取值跨度为:50(研究生)-20(初中)=30,“年龄”关联的取值跨度为40-25=15,“性别”关联的取值跨度为:02(女)-01(男)=1。

进一步的,所述处理设备基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组。

需要说明的是,本公开实施例中,得到的各个影响系数和取值跨度,可以以向量的形式表征,生成影响系数向量组和取值跨度向量组,其中,所述影响系数向量组和所述取值跨度向量组中,相对位置相同的两个数据对应同一个列数据。

所述处理设备首先计算各个处理后的列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的列数据作为关键列数据,并确定所述关键列数据关联的关键准标识符属性标签,再按照预设的数据内容排列顺序,对所述用户数据列表中的各个用户数据进行重排序处理。

需要说明的是,本公开实施例中,所述预设的数据内容排列顺序具体可以为数据内容递增或递减的顺序,当对所述用户数据列表中的各个用户数据进行重排序处理时,若所述关键列数据中存在多个取值相同的数据内容,即对应一个取值的关键列数据上的数据内容对应有多条用户数据,则可按照预先制定的排序策略进行处理,如,随机排列所述关键准标识符属性标签关联的数据内容相同的各个用户数据。

本公开实施例中,基于影响系数和取值跨度的乘积结果作为筛选关键列数据的原因是意图综合影响系数和取值跨度对目标列数据的影响,在等价组的最小数据条数固定时,对于取值跨度而言,取值跨度越大,能够划分的等价组的数目越多,对于影响系数而言,影响系数越大,对应的列数据对目标列数据的影响越强,综合考虑等价组的划分情况以及列数据能够产生的影响情况,才能够实现适应性地对列数据进行匿名化处理。

例如,继续以步骤202和203的举例进行说明,准标识符属性标签“教育”关联的影响系数为0.75,取值跨度为30,乘积结果为22.5;“性别”关联的影响系数为0.048875,取值跨度为1,乘积结果为0.048875;“年龄”关联的影响系数为0.4056375,取值跨度为15,乘积结果为6.0845625,可见,乘积结果最大为6.0845625,其关联的准标识符属性标签为“教育”。进而按照“教育”所关联的数据内容递减的顺序,对图3中涉及到的各条用户数据进行重排序处理,得到图4所示意的重排序结果。

进而,所述处理设备确定所述关键列数据的数据内容中值,并筛选出所述关键准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第一候选等价组,以及筛选出所述关键准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第二候选等价组。并在确定所述第一候选等价组和所述第二候选等价组中至少有一组的用户数据条数低于k条时,直接将所述用户数据列表作为一个等价组。

需要说明的是,本公开实施例中,划分出的各个等价组中,每个等价组至少包括有k条用户数据,其中,对于一条用户数据来说,包括有后续需要进行匿名化处理的各个准标识符属性标签关联的各个列数据,以及不需要进行匿名化处理的目标列数据。

例如,继续上述的举例进行说明,“教育”对应的列数据中,数据内容中值为40(大学),故将用户数据列表初步划分为:编码5、6、7、8对应的用户数据为第一候选等价组,编号2、4、1、3所对应的用户数据为第二候选等价组,每个等价组中用户数据的条数为4条,此时,当参数k的取值为5,则,大于任一候选等价组的数据条数,故将所述第一候选等价组和所述第二候选等价组合并为一个等价组。

需要说明的是,当确定所述第一候选等价组和所述第二候选等价组中的用户数据条数均超过k条时,针对所述第一候选等价组和所述第二候选等价组,再次进行等价组的拆分处理。

具体的,所述处理设备针对所述第一候选等价组和所述第二候选等价组,采用循环迭代的方式执行以下操作,直至基于所述第一候选等价组合所述第二候选等价组生成的全部候选等价组处理完成:

s1:计算一个候选等价组中各个列数据的取值跨度,以及计算所述各个列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的候选关键列数据。

具体的,针对一个候选等价组,重复执行上述步骤203所涉及到的操作,计算在所述一个候选等价组的范围内,各个列数据的取值跨度,进而基于步骤202计算得到的影响系数,计算各个类数据关联的影响系数和取值跨度的乘积结果,筛选出取值最大的候选关键列数据。

s2:确定所述候选关键列数据关联的准标识符属性标签,按照预设的数据内容排列顺序,对所述一个候选等价组中的各条用户数据进行重排序处理。

具体的操作过程已经在上述流程中进行了详细说明,在此不再赘述。

s3:确定所述候选关键列数据的数据内容中值,并筛选出所述准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第三候选等价组,以及筛选出所述准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第四候选等价组。

s4:确定所述第三候选等价组和所述第四候选等价组中至少有一组的用户数据条数低于k条时,直接将所述第三候选等价组以及所述第四候选等价组的组合为一个等价组,否则,继续基于所述第三候选等价组和所述第四候选等价组循环执行上述s1-s3限定的操作。

例如,假设参数k取值为3,对用户数据列表进行第一次等价组划分后,得到的第一候选等价组和第二候选等价组中用户数据的条数均为7条,进行第二次拆分得到候选等价组时,针对第一候选等价组和第二候选等价组进行,分别得到用户数据条数为(3、4),(5、2)的四个候选等价组,由于2<k则将用户数据条数为5和2的候选等价组合并为一个等价组,针对用户条数为3和4的候选等小组进行第三次等价组拆分,得到(1、2),(3、1)的4个等价组,则将用户数据条数为1和2的候选等价组合并为一个等价组,则将用户数据条数为3和1的候选等价组合并为一个等价组,最终拆分得到的等价组的个数为3个,分别包括的用户数据条数为3、4、7。

这样,在综合考虑数据列对应的取值跨度和影响系数,确定对目标数据列影响最大的关键列数据,进而基于所述关键列数据中数据内容的中值,通过不断对包含的用户数据个数大于k的候选等价组的二划分,使得对于所述关键列数据来说,数据内容相似的用户数据更容易被划分在一个等价组,进而在后续泛化处理时,泛化程度更小,有利于保留用于进行数据分析的用户数据,使得对目标列数据影响最大的所述关键列数据的处理程度最轻。

步骤204:将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。

处理设备基于用户数据列表生成至少一个等价组后,将得到的各个等价组中,进行数字化编码的各个文本型列数据进行解编码处理,恢复文本型列数据中的文本内容,并对所述各个等价组中的准标识符属性标签关联的列数据进行泛化处理。

具体的,针对等价组中的一个数字型列数据,计算该数字型列数据的平均值,作为该数字型列数据的泛化值,针对文本型列数据,则筛选出取值频次达到设定阈值前n种文本内容,作为该文本型数据的泛化值。

例如,基于图4所示意的两个等价组,生成图5所示的泛化处理结果,例如,参数k取值为4,对应的设定阈值为β*k,β取0.5,n为2,对于“性别”关联的列数据中,确定取值频次大于等于设定阈值2的,前2个“性别”关联的列数据中的数据作为对应的泛化值,对于“教育”,与上述过程类似;对于“年龄”,将计算得到的平均值作为泛化值,得到如图5所示意的匿名化处理结果。

这样,基于本公开提出的数据匿名化处理方式,使得进行泛化处理后的用户数据列表中,能够保留更多的数据特性,使得数据不丧失可研究性,且能够通用至高维列数据的处理中。

基于上述技术内容,本公开实施例中,参阅图6提出一种两方数据共享与计算框架结构,包括处理设备和数据应用设备,所述处理设备完成对用户数据列表中的用户数据的匿名化处理后,所述处理设备反馈所述至少一个等价组至发送所述目标属性标签信息的数据应用设备,令所述数据应用设备将得到的等价组作为训练数据,生成相应的预测模型,进而所述数据应用设备将训练完成的所述预测模型发送至所述处理设备,以供所述处理设备的预测使用。

下面结合实施一,对具体的实现交互过程进行说明:

实施例一、

s1:处理设备接收数据应用设备发送的目标属性标签信息。

s2:处理设备对用户数据列表进行匿名化处理,得到匿名化处理后的至少一个等价组。

具体的,处理设备基于目标属性标签,对用户数据列数进行匿名化处理,得到至少一个匿名化处理后的等价组,其中,每个等价组中至少包括k条用户数据,所述用户数据中包括未进行泛化处理的所述目标属性标签关联的目标列数据,以及进行泛化处理后的准标识符属性标签关联的列数据。具体的实现过程已将在图2所示的流程中进行详细说明,在此不再赘述。

s3:处理设备将至少一个等价组发送至数据应用方。

s4:数据应用方将等价组中包括的数据内容作为训练样本,训练得到预测模型。

数据应用设备接收处理设备发送的至少一个等价组后,将获得的准标识符属性标签关联的列数据和目标属性标签关联的目标列数据作为样本数据,训练能够基于所述准标识符属性标签关联的列数据,预测所述目标属性标签关联的目标列数据的预测模型。

具体的,数据应用设备得到的至少一个等价组,将等价组中的准标识符属性标签关联的列数据和目标属性标签关联的目标列数据作为样本数据,训练预测模型,以实现能够基于所述准标识符属性标签关联的列数据,预测所述目标属性标签关联的目标列数据,具体训练过程可分为以下过程:

a、对获得的各个准标识符属性标签关联的列数据进行独热(one-hot)编码,将样本数据集归一化为向量形式,以及将目标列数据作为学习的真实值。

b、选择机器学习算法,搭建预测模型,所述机器学习算法包括但不限于决策树算法、人工神经网络算法、支持向量机(supportvectormachine,svm)算法、逻辑(logistic)回归算法、自适应提升(adaboost)算法。

c、将向量形式的样本数据输出搭建的预测模型中,进行训练。

s5:数据应用设备将得到的预测模型发送至处理设备。

具体的,数据应用设备将得到的预测模型发送至处理设备后,使得所述处理设备后续能够根据得到的预测模型实现基于新用户的准标识符属性标签关联信息,预测新用户对应的目标属性标签关联的信息。

这样,处理设备能够根据实际的训练需要,针对目标属性标签进行适应性的匿名化处理,使得匿名化处理后的用户数据列表中能够保留更多的数据特性,且适用机器学习的内在特性,为机器学习提供可使用的样本数据,在数据共享合规的前提下实现了数据的有效利用,降低数据共享成本的同时促进了数据的流通。

基于同一发明构思,参阅图7所示,本公开实施例提出一种数据匿名化处理的装置,包括,接收单元701,计算单元702,划分单元703,处理单元704,其中,

所述接收单元701,接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,其中,所述用户数据列表中一行对应一条用户数据,一个准标识符属性标签关联的列数据用于表征各条用户数据各自归属的用户的一个属性;

所述计算单元702,分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码;

所述划分单元703,计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据;

所述处理单元704,将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。

可选的,所述基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组时,所述划分单元703用于:

计算各个处理后的列数据关联的影响系数和取值跨度的乘积结果,筛选出乘积结果最大的列数据作为关键列数据,并确定所述关键列数据关联的关键准标识符属性标签;

按照预设的数据内容排列顺序,对所述用户数据列表中的各个用户数据进行重排序处理;

确定所述关键列数据的数据内容中值,并筛选出所述关键准标识符属性标签关联的数据内容,不超过所述数据内容中值的用户数据,生成第一候选等价组,以及筛选出所述关键准标识符属性标签关联的数据内容,超过所述数据内容中值的用户数据,生成第二候选等价组;

确定所述第一候选等价组和所述第二候选等价组中至少有一组的用户数据条数低于k条时,直接将所述用户数据列表作为一个等价组。

基于同一发明构思,参阅图8所示,本公开实施例提出一种电子设备,包括存储器801和处理器802,其中,所述处理器用于读取所述存储器中存储的计算机指令,并执行上述操作。

基于同一发明构思,本公开实施例中基于数据匿名化处理的实施例中提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备执行时,使得所述电子设备能够执行上述数据匿名化处理的方法。

综上所述,本公开实施例中,接收目标属性标签信息,确定用户数据列表中与目标属性标签关联的目标列数据,以及确定无法直接指示用户身份的各个准标识符属性标签,再分别计算所述各个准标识符属性标签各自关联的列数据对所述目标列数据的影响系数,并基于各个列数据中的数据内容,将所述各个列数据分类为数字型列数据和文本型列数据,以及将所述文本型列数据进行数字化编码,然后,计算处理后的各个列数据的取值跨度,并基于得到的所述处理后的各个列数据关联的影响系数和取值跨度,将所述用户数据列表划分为至少一个等价组,其中,一个等价组中至少包括k条用户数据,再将各个等价组中进行数字化编码的各个文本型列数据进行解编码处理,并将一个等价组中数字型列数据取值的平均值,作为对该数字型列数据匿名化处理的泛化值,以及筛选出文本型列数据中取值频次达到设定阈值的前n种文本内容,作为对所述文本型列数据匿名化处理的泛化值,其中,n为整数。这样,通过计算影响系数和取值跨度,确定了各个列数据对目标列数据的影响程度,进而适应性地进行泛化处理后,能够更多的保留对目标列数据影响较大的列数据,使得匿名化处理后的列数据不丧失可研究性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1