一种伪列数据的生成方法、装置、设备和介质与流程

文档序号:33393065发布日期:2023-03-08 11:58阅读:72来源:国知局
一种伪列数据的生成方法、装置、设备和介质与流程

1.本技术涉及数据安全技术领域,特别是涉及一种伪列数据的生成方法、装置、设备和计算机可读存储介质。


背景技术:

2.在大数据时代,数据成为越来越宝贵的资源,其包含着巨大的社会价值和经济价值。随着网络数据共享和数据交换需求的不断增多,近年来,数据泄漏的现象时有发生。泄露溯源是从源头上根治数据泄露问题的关键。溯源一方面可以帮助企业了解内部安全管理与技术措施的薄弱环节,另一方面对实施犯罪行为的泄露者可以起到心理威慑的作用,从而有效减少类似事件的发生。
3.数据水印可以通过水印算法对原始数据植入水印标记,保证分发数据正常使用,水印数据具有高可用性、高透明无感、高隐蔽性,不易被外部发现破解。在发现信息泄露的第一时间,可从泄露的数据中提取水印标识,通过读取水印标识编码,精准定位泄露单位及责任人,实现数据泄露精准追责定责,提高了数据传递的安全性和可追溯能力。
4.对于存储在数据库中的结构化数据来说,常见的数据水印算法有添加伪行、添加伪列,脱敏水印以及添加不可见字符等。其中,添加伪列是指在对一些输出数据添加水印时,人为构造增加一列或几列,并在其中植入水印的技术。
5.目前的伪列水印算法的实现方式主要有两种,第一种方式是人工在所支持的数据类型当中选择伪列类型,然后构造该伪列类型的数据。第二种方式是从所支持的数据类型中随机选择。随机选择的方式可以是根据每列数据的类型,使用对应的内置字典中的内容对整列数据进行构造,或者是根据每列数据类型的构成规则,使用内部生成逻辑随机构造各列伪造数据。这两种实现方式具有较强的随机性,未对后续数据分析场景做任何考虑,会引入对机器学习分类任务有影响的噪声,造成模型分类效果差,甚至不可用的问题。
6.可见,如何降低伪列数据对机器学习分类的影响,是本领域技术人员需要解决的问题。


技术实现要素:

7.本技术实施例的目的是提供一种伪列数据的生成方法、装置、设备和计算机可读存储介质,可以降低伪列数据对机器学习分类的影响。
8.为解决上述技术问题,本技术实施例提供一种伪列数据的生成方法,包括:
9.基于机器学习的分类任务,确定分类标签;
10.按照设定的伪列数据列数,选取与所述分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型;
11.依据所述伪列类型对应的数据生成规则,构造伪列数据。
12.可选地,所述按照设定的伪列数据列数,选取与所述分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型包括:
13.利用关联算法确定出与所述原始数据中各类数据满足相关性要求的待选数据类型;
14.根据所述伪列数据列数,从所述待选数据类型中筛选出与所述分类标签满足非相关性要求的伪列类型。
15.可选地,所述依据所述伪列类型对应的数据生成规则,构造伪列数据包括:
16.在所述伪列类型对应的数据属于数值属性数据的情况下,在各所述分类标签下按照相同范围的均匀分布采样方式,从所述数值属性数据对应的数值范围内选取数值数据,以生成伪列数据。
17.可选地,所述依据所述伪列类型对应的数据生成规则,构造伪列数据包括:
18.在所述伪列类型对应的数据属于类别属性数据的情况下,在各所述分类标签下使用等概率采样的方式,从所述类别属性数据对应的类别集合中选取类别数据,以生成伪列数据。
19.可选地,所述依据所述伪列类型对应的数据生成规则,构造伪列数据包括:
20.在所述伪列类型对应的数据属于业务类型数据的情况下,将所述业务类型数据划分为数值属性数据和类别属性数据;
21.按照所述数值属性数据对应的数据生成规则,生成数值数据;
22.按照所述类别属性数据对应的数据生成规则,生成类别数据;
23.将所述数值数据和所述类别数据组合作为伪列数据。
24.可选地,在所述依据所述伪列类型对应的数据生成规则,构造伪列数据之后还包括:
25.将所述伪列数据嵌入水印后插入到所述原始数据中。
26.可选地,所述将所述伪列数据嵌入水印后插入到所述原始数据中包括:
27.对所述伪列数据嵌入水印;
28.将嵌入水印后的伪列数据按照均匀分布的方式添加到所述原始数据中。
29.本技术实施例还提供了一种伪列数据的生成装置,包括确定单元、选取单元和构造单元;
30.所述确定单元,用于基于机器学习的分类任务,确定分类标签;
31.所述选取单元,用于按照设定的伪列数据列数,选取与所述分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型;
32.所述构造单元,用于依据所述伪列类型对应的数据生成规则,构造伪列数据。
33.可选地,所述选取单元包括类型确定子单元和筛选子单元;
34.所述类型确定子单元,用于利用关联算法确定出与所述原始数据中各类数据满足相关性要求的待选数据类型;
35.所述筛选子单元,用于根据所述伪列数据列数,从所述待选数据类型中筛选出与所述分类标签满足非相关性要求的伪列类型。
36.可选地,所述构造单元用于在所述伪列类型对应的数据属于数值属性数据的情况下,在各所述分类标签下按照相同范围的均匀分布采样方式,从所述数值属性数据对应的数值范围内选取数值数据,以生成伪列数据。
37.可选地,所述构造单元用于在所述伪列类型对应的数据属于类别属性数据的情况
下,在各所述分类标签下使用等概率采样的方式,从所述类别属性数据对应的类别集合中选取类别数据,以生成伪列数据。
38.可选地,所述构造单元用于在所述伪列类型对应的数据属于业务类型数据的情况下,将所述业务类型数据划分为数值属性数据和类别属性数据;按照所述数值属性数据对应的数据生成规则,生成数值数据;按照所述类别属性数据对应的数据生成规则,生成类别数据;将所述数值数据和所述类别数据组合作为伪列数据。
39.可选地,还包括插入单元;
40.所述插入单元,用于将所述伪列数据嵌入水印后插入到所述原始数据中。
41.可选地,所述插入单元包括嵌入子单元和添加子单元;
42.所述嵌入子单元,用于对所述伪列数据嵌入水印;
43.所述添加子单元,用于将嵌入水印后的伪列数据按照均匀分布的方式添加到所述原始数据中。
44.本技术实施例还提供了一种电子设备,包括:
45.存储器,用于存储计算机程序;
46.处理器,用于执行所述计算机程序以实现如上述伪列数据的生成方法的步骤。
47.本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述伪列数据的生成方法的步骤。
48.由上述技术方案可以看出,基于机器学习的分类任务,确定分类标签;其中,原始数据中每行数据有其对应的一个分类标签。分类标签可以看作是分类任务所对应的分类结果。为了降低伪列数据对机器学习造成的影响,在构造伪列数据时,可以选取与分类标签相关性较弱或者不具有相关性的数据类型构造伪列数据,这样即使在原始数据中添加了伪列数据,由于其与分类标签相关性较弱,因此可以极大的降低对机器学习分类造成的影响。并且为了避免伪列数据被直接发现,还需要保证伪列数据的类型与原始数据中包含的各列数据的类型之间具有一定的相关性。因此在本技术中,可以按照设定的伪列数据列数,选取与分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型。不同类型的列数据有其各自对应的数据生成规则。依据伪列类型对应的数据生成规则,可以构造伪列数据。在该技术方案中,在构造伪列数据时充分考虑了与机器学习相关的分类标签,降低了伪列数据对机器学习分类的影响。并且综合考虑了原始数据中包含的各列数据的类型,避免了由于和原始数据中各列数据过于偏离,导致伪列数据被直接发现,提升了伪列数据的隐蔽性和可用性。
附图说明
49.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
50.图1为本技术实施例提供的一种伪列数据的生成方法的流程图;
51.图2为本技术实施例提供的一种伪列数据的生成装置的结构示意图;
52.图3为本技术实施例提供的一种电子设备的结构图。
具体实施方式
53.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
54.本技术的说明书和权利要求书及上述附图中的术语“包括”和“具有”,以及与“包括”和“具有”相关的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
55.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
56.接下来,详细介绍本技术实施例所提供的一种伪列数据的生成方法。图1为本技术实施例提供的一种伪列数据的生成方法的流程图,该方法包括:
57.s101:基于机器学习的分类任务,确定分类标签。
58.其中,原始数据中每行数据有其对应的一个分类标签。
59.分类标签可以看作是分类任务所对应的分类结果。分类标签可以包含至少两种类型。
60.例如,分类任务为基于是否贷款将数据进行分类,在信贷数据中可以指定“是否贷款”作为分类标签。分类标签包含“贷款”和“不贷款”两种类型。
61.s102:按照设定的伪列数据列数,选取与分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型。
62.如果伪列数据太多,会极大的影响原始数据的分布情况,并且容易被发现是伪列数据。因此,在本技术实施例中,可以预先设定好伪列数据列数。在配置伪列数据列数时,为了减少噪声的引入以及确保水印数据的隐蔽性,伪列数据列数可以设置为1列或2列。
63.在本技术实施例中,可以利用关联算法确定出与原始数据中各类数据满足相关性要求的待选数据类型。根据伪列数据列数,从待选数据类型中筛选出与分类标签满足非相关性要求的伪列类型。
64.非相关性要求可以是按照待选数据类型与分类标签的相关性从高到低的顺序排列,从而选出相关性最低的伪列数据列数的伪列类型。在实际应用中,可通过历史经验或者各行业数据利用关联算法例如 aprior生成关联规则,然后根据原始数据中各列的类型推荐待选数据类型。
65.例如,原始数据的各列分别为“姓名”,“性别”,“年龄”,“住址”、“年收入”等,那么通过关联算法推荐出“联系方式”作为待选数据类型,并且“联系方式”与分类标签“是否贷款”之间的相关性较弱,因此可以将“联系方式”作为伪列类型,联系方式一般采用手机号,可以基于手机号的生成方式,伪造出与原始数据中行数相同的手机号作为伪列数据。
66.s103:依据伪列类型对应的数据生成规则,构造伪列数据。
67.伪列类型可以有多种,不同类型的列数据所对应的数据生成规则不同。按照类型划分,常见类型的列数据可以包括数值属性数据、类别属性数据和业务类型数据。
68.其中,数值属性数据即数据为数值形式且数值不具有规律性,例如,年收入、身高
等。
69.类别属性数据为数量有限的固定类型,例如,省、市、区等。
70.业务类型数据为按照排布规则生成的数据,例如,身份证、手机号等。
71.以数值属性数据为例,在伪列类型对应的数据属于数值属性数据的情况下,在各分类标签下按照相同范围的均匀分布采样方式,从数值属性数据对应的数值范围内选取数值数据,以生成伪列数据。
72.以分类标签为“是否贷款”为例,原始数据包含100行数据,则需要将“年龄”这一列数据伪造出100个年龄值。假设属于“贷款”这一分类标签的年龄设置的均为“40岁”,则属于“不贷款”这一分类标签的年龄也需要均设置为“40岁”,从而降低“年龄”这一列数据对“是否贷款”这一分类任务造成的影响。
73.以类别属性数据为例,在伪列类型对应的数据属于类别属性数据的情况下,在各分类标签下使用等概率采样的方式,从类别属性数据对应的类别集合中选取类别数据,以生成伪列数据。
74.以分类标签为“是否贷款”为例,类别属性的目标列数据为“省份”,假设属于“贷款”的“省份”设置了a省、b省和c省,其占比为1:1:2,则属于“不贷款”的“省份”也需要设置成a省、b省和 c省,并且占比为1:1:2,从而降低“省份”这一列数据对“是否贷款”这一分类任务造成的影响。
75.以业务类型数据为例,在伪列类型对应的数据属于业务类型数据的情况下,将业务类型数据划分为数值属性数据和类别属性数据;按照数值属性数据对应的数据生成规则,生成数值数据;按照类别属性数据对应的数据生成规则,生成类别数据;将数值数据和类别数据组合作为伪列数据。
76.以业务类型的列数据为“手机号”为例,前3位是网络识别号、 4-7位是地区编码(hlr归属位置寄存器)、8-11位是用户号码(随机分配)。其中,前3位属于类别属性数据,4-7位是地区编码属于类别属性数据,8-11位属于数值属性数据。对于手机号而言,8-11位可以采用随机分配的方式生成。
77.业务类型的单个列数据的组成可以划分为数值属性数据和类别属性数据,其具体伪造方式可以参见上述介绍的数值属性数据和类别属性数据的伪造方式,在此不再赘述。
78.由上述技术方案可以看出,基于机器学习的分类任务,确定分类标签;其中,原始数据中每行数据有其对应的一个分类标签。分类标签可以看作是分类任务所对应的分类结果。为了降低伪列数据对机器学习造成的影响,在构造伪列数据时,可以选取与分类标签相关性较弱或者不具有相关性的数据类型构造伪列数据,这样即使在原始数据中添加了伪列数据,由于其与分类标签相关性较弱,因此可以极大的降低对机器学习分类造成的影响。并且为了避免伪列数据被直接发现,还需要保证伪列数据的类型与原始数据中包含的各列数据的类型之间具有一定的相关性。因此在本技术中,可以按照设定的伪列数据列数,选取与分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型。不同类型的列数据有其各自对应的数据生成规则。依据伪列类型对应的数据生成规则,可以构造伪列数据。在该技术方案中,在构造伪列数据时充分考虑了与机器学习相关的分类标签,降低了伪列数据对机器学习分类的影响。并且综合考虑了原始数据中包含的各列数据的类型,避免了由于和原始数据中各列数据过于偏离,导致伪列数据被直接发现,提升了伪
列数据的隐蔽性和可用性。
79.在构造出伪列数据之后,可以将伪列数据嵌入水印后插入到原始数据中。
80.在具体实现中,可以先对伪列数据嵌入水印;然后将嵌入水印后的伪列数据按照均匀分布的方式添加到原始数据中。
81.举例说明,假设原始数据包含10列,伪列数据有2列,则可以在原始数据中每5列数据的位置插入1列伪列数据。
82.除了按照均匀分布的方式将伪列数据添加至原始数据外,也可以将伪列数据直接插入到原始数据的列尾处,在本技术实施例中,对于伪列数据的插入方式不做限定。
83.图2为本技术实施例提供的一种伪列数据的生成装置的结构示意图,包括确定单元21、选取单元22和构造单元23;
84.确定单元21,用于基于机器学习的分类任务,确定分类标签;
85.选取单元22,用于按照设定的伪列数据列数,选取与分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型;
86.构造单元23,用于依据伪列类型对应的数据生成规则,构造伪列数据。
87.可选地,选取单元包括类型确定子单元和筛选子单元;
88.类型确定子单元,用于利用关联算法确定出与原始数据中各类数据满足相关性要求的待选数据类型;
89.筛选子单元,用于根据伪列数据列数,从待选数据类型中筛选出与分类标签满足非相关性要求的伪列类型。
90.可选地,构造单元用于在伪列类型对应的数据属于数值属性数据的情况下,在各分类标签下按照相同范围的均匀分布采样方式,从数值属性数据对应的数值范围内选取数值数据,以生成伪列数据。
91.可选地,构造单元用于在伪列类型对应的数据属于类别属性数据的情况下,在各分类标签下使用等概率采样的方式,从类别属性数据对应的类别集合中选取类别数据,以生成伪列数据。
92.可选地,构造单元用于在伪列类型对应的数据属于业务类型数据的情况下,将业务类型数据划分为数值属性数据和类别属性数据;按照数值属性数据对应的数据生成规则,生成数值数据;按照类别属性数据对应的数据生成规则,生成类别数据;将数值数据和类别数据组合作为伪列数据。
93.可选地,还包括插入单元;
94.插入单元,用于将伪列数据嵌入水印后插入到原始数据中。
95.可选地,插入单元包括嵌入子单元和添加子单元;
96.嵌入子单元,用于对伪列数据嵌入水印;
97.添加子单元,用于将嵌入水印后的伪列数据按照均匀分布的方式添加到原始数据中。
98.图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
99.由上述技术方案可以看出,基于机器学习的分类任务,确定分类标签;其中,原始数据中每行数据有其对应的一个分类标签。分类标签可以看作是分类任务所对应的分类结
果。为了降低伪列数据对机器学习造成的影响,在构造伪列数据时,可以选取与分类标签相关性较弱或者不具有相关性的数据类型构造伪列数据,这样即使在原始数据中添加了伪列数据,由于其与分类标签相关性较弱,因此可以极大的降低对机器学习分类造成的影响。并且为了避免伪列数据被直接发现,还需要保证伪列数据的类型与原始数据中包含的各列数据的类型之间具有一定的相关性。因此在本技术中,可以按照设定的伪列数据列数,选取与分类标签满足非相关性要求,并且与原始数据中各类数据满足相关性要求的伪列类型。不同类型的列数据有其各自对应的数据生成规则。依据伪列类型对应的数据生成规则,可以构造伪列数据。在该技术方案中,在构造伪列数据时充分考虑了与机器学习相关的分类标签,降低了伪列数据对机器学习分类的影响。并且综合考虑了原始数据中包含的各列数据的类型,避免了由于和原始数据中各列数据过于偏离,导致伪列数据被直接发现,提升了伪列数据的隐蔽性和可用性。
100.图3为本技术实施例提供的一种电子设备的结构图,如图3所示,电子设备包括:存储器20,用于存储计算机程序;
101.处理器21,用于执行计算机程序时实现如上述实施例伪列数据的生成方法的步骤。
102.本实施例提供的电子设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
103.其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称 cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21 可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器 21还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
104.存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的伪列数据的生成方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、 linux等。数据203可以包括但不限于伪列数据列数、伪列类型对应的数据生成规则等。
105.在一些实施例中,电子设备还可包括有显示屏22、输入输出接口 23、通信接口24、电源25以及通信总线26。
106.本领域技术人员可以理解,图3中示出的结构并不构成对电子设备设备的限定,可以包括比图示更多或更少的组件。
107.可以理解的是,如果上述实施例中的伪列数据的生成方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电可擦除可编程 rom、寄存器、硬盘、可移动磁盘、cd-rom、磁碟或者光盘等各种可以存储程序代码的介质。
108.基于此,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述伪列数据的生成方法的步骤。
109.以上对本技术实施例所提供的一种伪列数据的生成方法、装置、设备和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
110.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
111.以上对本技术所提供的一种伪列数据的生成方法、装置、设备和计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1