一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于混淆主键的特征数据交换方法和系统与流程

2022-04-13 17:19:29 来源:中国专利 TAG:


1.本发明涉及数据分析领域,尤其涉及一种基于混淆主键的特征数据交换方法和系统。


背景技术:

2.在数据分析或机器学习领域,所涉及到的数据往往是结构化的。在结构化的数据中通常有一个主键(id)唯一标识一个对象,而对象的各种属性通过不同的字段来表示,这些字段又称为对象的特征数据。在很多情况下,要让机器学习得到足够好的模型需要收集到对象足够多的特征数据,而这些数据又可能分布在不同的所有方数据库的系统内,并且各个所有方数据库是通过相同的主键来标识同一个对象的。本发明提出一种方法和系统在各数据所有方之间交换对象的特征数据。


技术实现要素:

3.本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种基于混淆主键的特征数据交换方法和系统。
4.为了实现本发明的上述目的,本发明提供了一种基于混淆主键的特征数据交换方法,包括如下步骤:
5.s1,获取第一数据库a中实体对象特征数据,以及第二数据库b的实体对象特征数据,其中数据库b中的特征数据是机器学习算法需要进行预测的目标特征;
6.s2,通过使用特征数据交换和机器学习,将第二数据库b中目标特征数据在第一数据库a的特征数据中进行训练,从而产生机器学习模型在第一数据库a中对其他实体对象的目标特征进行预测,并且在此过程中双方不需要交换实体对象的具体特征数据和唯一标识信息。
7.优选的,所述s1包括:
8.s1-1,第一数据库a中实体对象数据为{id,x1,x2,x3,...,xn},其中id是实体对象唯一标识,x为实体对象的特征;
9.s1-2,第二数据库b中实体对象数据{id,y},其中id是实体对象唯一标识,y为实体对象的特征,是机器学习模型需要进行预测的目标特征;
10.优选的,所述s2包括:
11.s2-1,在第二数据库中获取实体对象数据形成对象唯一标识集合,在集合中设置自由度;
12.s2-2,根据选择的自由度,将唯一标识集合进行混淆替换处理,混淆替换完成后发送至第一数据库a;
13.s2-3,在第一数据库a中根据替换规则进行逆向处理,得到新的唯一标识集合d;
14.s2-4,通过新的唯一标识集合d在第一数据库a中的查询出对象特征数据,生成特征矩阵,对特征矩阵进行矢量化映射,生成混淆后的特征矩阵。
15.优选的,所述s2-1包括:
16.对象标识id是由i位字符组成的,用k1,k2,k3...ki表示;ki的取值范围是一个字符的集合,集合里面的元素的个数叫做ki的自由度设为ti。
17.优选的,所述s2-2包括:
18.在第二数据库b中从k`1,k`2,k`3...k`i中选取若干位集合{k`z1,k`z2,...,k`zj},并且将这些位上的字符替换成预先协定好的占位符生成混淆后的id字符串p(id`),传送给第一数据库a。
19.优选的,所述s2-3包括:
20.第一数据库a收到p(id`),将z1,z2...zj位的占位符遍历式替换成对应位的字符集中的所有元素,得到一个id的集合,d={id1,id2....ids},其中s=tzi*tz2*...tzj。
21.优选的,所述s2-4包括:
22.s2-a,在第一数据库a中查询自己的实体对象特征数据,查找到新的集合d中所有的id在己方的特征数据,生成第一特征矩阵;
23.s2-b,第一数据库a选择映射函数:map(x):xi-》fi,其中f为标量数字,对第一特征矩阵中的特征数据x进行矢量化映射形成第二特征矩阵;
24.s2-c,对第二特征矩阵进行检查,除了id以外,其他任何f或者f的组合都不能唯一对应一行数据,如果不能满足该条件执行条件指令;
25.s2-d,第一数据库a将第二特征矩阵传送给第二数据库b,map(x)保存在第一数据库;
26.s2-e,第二数据库b收到第二特征矩阵以后执行,如果发现除了id以外有f或者f的组合能够唯一对应一行数据,删除该行数据;
27.s2-f,第二数据库b通过收到的第二特征矩阵中的id查询本地数据,获取目标特征y,选择map(y):yi-》hi,并且将目标特征hi按照对于的id拼接到第二特征矩阵中,并且删除id列,生成第三特征矩阵。
28.优选的,还包括:
29.s2-g,第二数据库b中没有查询到的id,就忽略;第二数据库b将生成的第三特征矩阵传送给第一数据库a;
30.s2-h,第一数据库a就用第三特征矩阵进行机器学习模型训练,并且使用map(x)对新的样本进行映射转换,并有训练好的机器学习模型进行预测;
31.s2-i,当第三特征矩阵的数据的样本不足时,进行多轮特征数据交换,从而得到足够多的训练样本。
32.优选的,所述s2-c中条件指令包括:
33.(1)修改map(x)函数,减少f的区分度;
34.(2)删除区分度比较高的列,某一列的f,对于每个id都有一个唯一值,就删除这一列f。
35.本发明还公开一种基于混淆主键的特征数据交换系统,包括:
36.id编码模块,用于将id数据按照id格式和占位符协议对id进行混淆编码。
37.id解码模块,用于将混淆后的id,按照id格式和占位符协议对id进行解码。
38.map函数存储模块,用于存储每次交换构造的map(x)函数和map(y)函数。
39.map函数运行模块,用于计算map函数对特征矩阵进行变换。
40.数据查询模块,用于查询对象特征数据库。
41.数据存储模块,用于存储对象特征数据。
42.通信模块,用于向对方传输数据,并且接收对方回传的数据。
43.机器学习运算模块,用于机器学习模型的训练和运算。
44.综上所述,由于采用了上述技术方案,本发明的有益效果是:
45.对两个数据库中的行为数据进行分类提取,通过设置行为的限定条件,通过行为的特征矩阵判断从而提取两个数据库中行为的重叠部分,提取相应的特征数据。
46.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
47.本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
48.图1是本发明系统示意图;
49.图2是本发明方法流程图。
具体实施方式
50.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
51.如图1和2所示,数据对象主键是由一系列字符组成的,即使对象主键并非字符而是一系列二进制位的数组,也可以通过如base64或十六进制编码的方式将对象主键编码成某个字符集的字符。
52.假设a,b是数据双方,都拥有对象类型e的相关数据,且双方都有对象的唯一标识id。
53.a拥有的数据是{id,x1,x2,x3,....xn},其中x表示e的特征。如果将e定义为车,x为相应id之下包含e的属性数据,如行驶里程;
54.b拥有的数据是{id,y},其中y表示e的特征,是一个分类特征,往往作为机器学习的目标变量(或预测变量)。,例如该车最近是否修理过;
55.a需要使用e的数据训练机器模型,并且需要使用b拥有的目标变量y。b不能泄露自己的数据中y关联的id信息比如修理场不想透露自己最近修理了哪些具体的车),且a也不希望泄露具体特征数据(汽车制造厂也不希望透露一些汽车具体的配置信息)。可以采取以下步骤来交换特征数据并且完成机器学习模型训练。
56.1、假设,在第一数据库和第二数据库中获取对象标识主键id是由i位字符组成的,用k1,k2,k3...ki表示;ki的取值范围是一个字符的集合,集合里面的元素的个数叫做ki的自由度设为ti。例如,设ki是属于{0,1,2,3,4,5,6,7,8,9}中的一个字符,那么ki的自由度为10。
57.2、在第二数据库中从k`1,k`2,k`3...k`i中选取若干位行为集合{k`z1,k`
z2,...,k`zj}。并且将这些位上的字符替换成预先协定好的占位符生成混淆后的id字符串p(id`),传送给第一数据库a。
58.3、第一数据库a收到p(id`),将z1,z2...zj位的占位符遍历式替换成对应位的字符集中的所有元素,得到一个id的集合,d={id1,id2....ids},其中s=tzi*tz2*...tzj;
59.4、在第一数据库中查询自己的行为数据,查找到d中所有的id在自己行为数据中特征,生成第一特征矩阵
60.w1={
61.id1,x11,x12,x13...x1n
62.id2,x21,x22,x23...x2n
63.....
64.ids,xs1,xs2,xs3....xsn
65.}
66.如果用户标识数据id在第一数据库a中不存在的,那么此id及其特征就不在第一特征矩阵w1中。
67.5、在第一数据库a中将第一特征矩阵w1中的x进行矢量化映射,map(x):xi-》fi其中f为标量数字。经此转换第一特征矩阵w1为第二特征矩阵
68.w2={
69.id1,f11,f12,f13...f1n
70.id2,f21,f22,f23...f2n
71.....
72.ids,fs1,fs2,fs3....fsn
73.}
74.6、对w2矩阵进行检查,使除了id以外,其他任何f或者f的组合都不能唯一对应一行数据(即对于任意一个f1,f2,f3...fn,在矩阵中都能找到至少两个id),如果不能满足这个条件执行如下步骤:
75.(1)修改map(x)函数,减少f的区分度,例如多个x值映射到同一个f;
76.(2)删除区分度比较高的列,某一列的f,对于每个id都有一个唯一值,就删除这一列f。
77.7、第一数据库a将w2传送给第二数据库b,map(x)函数本地保存。
78.8、第二数据库b收到w2以后执行(步骤8一样的检查),如果发现除了id以外有f或者f的组合能够唯一对应一个样本,那么就删除该行数据。
79.9、第二数据库b通过收到的id查询本地数据,取得y,选择map(y):yi-》hi,并且将拼接到w2中,并且删除id列,生成第三特征矩阵
80.w3={
81.f11,f12,....f1n,h1
82.f21,f22,....f2n,h2
83.......
84.fs1,fs2,....fsn,hn
85.}
86.10、第二数据库b中没有查询到的id,就忽略。b将生成的矩阵w3传送给a
87.11、第一数据库a就用w3进行机器学习模型训练,并且使用该模型和map(x)对新的样本进行预测。
88.12、当w3的数据的样本不足时,可以进行多轮特征交换,得到足够多的行为样本。
89.本发明还公开一种基于混淆主键的特征数据交换系统,包括:
90.id编码模块,用于将id数据按照id格式和占位符协议对id进行混淆编码。
91.id解码模块,用于将混淆后的id,按照id格式和占位符协议对id进行解码。
92.map函数存储模块,用于存储每次交换构造的map(x)函数和map(y)函数。
93.map函数运行模块,用于计算map函数对特征矩阵进行变换。
94.数据查询模块,用于查询对象特征数据库。
95.数据存储模块,用于存储对象特征数据。
96.通信模块,用于向对方传输数据,并且接收对方回传的数据。
97.机器学习运算模块,用于机器学习模型的训练和运算。
98.通过对机器学习运算模块月通信模块的交互过程中,对第一数据库a和第二数据库b进行数据交换,对id格式与占位符机型交换定义,从而通过行为的特征矩阵判断从而提取两个数据库中行为的重叠部分,提取相应的特征数据。
99.尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献