技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于纵向联邦学习的参与方对齐样本生成系统  >  正文

一种基于纵向联邦学习的参与方对齐样本生成系统

  • 国知局
  • 2024-12-06 12:15:45

本发明属于数据生成填补,涉及一种基于纵向联邦学习的参与方对齐样本生成系统。

背景技术:

1、在纵向联邦学习场景下,某些参与方样本较多,而另一些参与方样本较少,样本对齐后,基于多方的联合对齐样本数量将会参照样本较少的参与方,即可视为联合对齐样本在这些参与方中出现了数据缺失。这将导致对齐后的样本无法支持纵向联邦场景下机器学习模型基于大量样本训练的需要。现有的数据生成填补方法大部分都是针对集中式的数据,即单方数据样本进行生成填补,而对于纵向联邦学习场景下的多方数据集的缺失,利用现有数据生成填补方法结合纵向联邦学习只能解决多方数据集缺失的其中一种情况,即各参与方对齐数据样本的缺失,无法解决上述联合对齐样本在样本较少的参与方出现的数据缺失问题。

技术实现思路

1、有鉴于此,本发明的目的在于提供基于纵向联邦学习的参与方对齐样本生成系统。

2、为达到上述目的,本发明提供如下技术方案:

3、一种基于纵向联邦学习的参与方对齐样本生成系统,包括:

4、多方属性相关性矩阵构建模块:用于将多个参与方的样本数据集进行对齐,并计算各参与方之间每个属性的相关性,构建多方属性相关性矩阵;

5、属性对对应关系建立模块:用于根据多方属性相关性矩阵,分别从对齐样本数据集的各方中找出具有强相关性的属性对,建立该属性对中两个属性列所有取值间的对应关系;

6、缺失值生成模块:用于根据对应关系,建立两个属性列取值的关联规则,对参与方属性列的缺失值进行生成;

7、生成对抗填补模块:将参与方数据样本和生成的属性列缺失值输入基于变分自编码器的生成对抗填补模型,对参与方剩余属性列的缺失值进行生成填补,获得完整的多方联合对齐样本数据集。

8、进一步,对于所述参与方包括拥有大量样本数据的a方和少量样本数据的b方,以及a方和b方均信任的协调方c方的情况下,所述多方属性相关性矩阵构建模块构建多方属性相关性矩阵的步骤如下:

9、s11:a方和b方各自构建己方样本数据集进行数据预处理,得到a方数据集da,共有da个样本数据;b方数据集db,共有db个样本数据;

10、s12:对a方和b方数据集da和db按照其样本id进行样本加密对齐,得到db个对齐样本,剩余的da-db个样本为未对齐样本;a方的对齐数据集为未对齐数据集为和共同构成了a方数据集表示a方数据集第i个样本,i=1,…,da,表示a方第i个样本的第m个属性,其中m=1,…,a;a方参与对齐数据集样本个数未对齐数据集样本个数b方的对齐数据集为表示b方数据集第i个样本,i=1,…,db,表示b方第i个样本的第n个属性,其中n=1,…,b,b方参与对齐数据集样本个数

11、s13:利用对齐数据集和从中获取a方所有样本的第m个属性的集合表示a方第i个样本的第m个属性,i=1,…,db;从中获取b方所有样本第n个属性的集合表示b方第i个样本的第n个属性,i=1,…,db;根据斯皮尔曼相关性系数计算a方第m个属性和b方第n个属性之间的属性相关性

12、s14:迭代步骤s13,计算a方所有属性与b方所有属性之间的相关性系数其中m=1,…,a,n=1,…,b,得到多方属性相关性矩阵m:

13、

14、进一步,步骤s11所述数据预处理包括冗余数据处理、缺失值处理、异常值处理以及数据标准化处理;

15、所述冗余数据处理具体包括:通过数据记录中的某些字段判断数据是否重复,对于重复数据,只保留其中一个,将其他重复数据从数据集中删除,同时保留原始数据的备份以便需要时进行回溯和对比分析;

16、所述缺失值处理具体包括:对数据中的每个特征进行缺失率统计,对于缺失特征数目大于总体样本特征规模一半的数据视为无效数据,进行剔除;其余数据根据数据分布,采用特定方法进行填充,其中包括众数填充、均值填充、中位数填充和插值法填充;

17、所述异常值处理具体包括:根据实际情况,使用标准差、四分位数范围方法确认异常值的阈值;利用箱线图、散点图、直方图或密度图工具对数据进行可视化分析,发现超出阈值的数据;选择用中位数或均值代替异常值的方法对异常值进行处理,处理完之后再次检查数据集,确保异常值已被处理且数据集的基本特征没有发生重大变化;

18、所述数据标准化处理具体包括:将已有特征按照数据类型分为连续型特征和离散型特征,对连续型特征采用最大-最小标准化进行处理,对离散型特征采用独热编码进行处理。

19、进一步,在步骤s13中,a方第m个属性和b方第n个属性相关性系数的具体计算流程如下:

20、s131:协调方c方生成密钥对,所述密钥对包括公钥和私钥,利用非对称加密对公钥进行加密,并将加密后的公钥发送至a方和b方;

21、s132:a方获得从c方发送过来的加密公钥,进行解密操作,获得解密后的公钥;针对a方第m个属性集合循环遍历a方第m个属性集合中的所有样本的第m个属性值其中i=1,…,db,利用解密后的公钥对每个属性值进行加密,并且将加密后得每个属性值发送给c方;

22、s133:b方获得从c方发送过来的加密公钥,进行解密操作,获得解密后的公钥;针对b方第n个属性集合循环遍历的每个属性值其中i=1,…,db,利用解密后的公钥对每个属性值进行加密,并且将加密后得每个属性值发送给c方;

23、s134:协调方c方采用私钥对加密后的a方第m个属性所对应的每个属性值和b方第n个属性所对应的每个属性值进行解密,得到解密后的a方第m个属性所对应的每个属性值和b方第n个属性所对应的每个属性值

24、s135:对a方第m个属性集合所对应的每个属性值进行从小到大排序,对b方第n个属性集合所对应的每个属性值进行从小到大排序,依次计算与之间的差值di,其中

25、s136:根据差值di进行斯皮尔曼相关性系数计算,得到相关性系数计算公式如下:

26、

27、其中num为总的样本数,即num=db。

28、进一步,所述属性对对应关系建立模块包括根据多方属性相关性矩阵m,找出其中最大的相关性系数假设该相关性系数分别由a方第m个属性和b方第n个属性计算得到,则认为a方属性和b方属性具有强相关性,可组成一组强相关性属性对同时将重新设为0;根据该属性对循环遍历和中所有属性列取值和其中i=1,…,db,建立属性中各取值与属性的取值之间的对应关系r,具体包括以下步骤:

29、s21:循环遍历相关性矩阵m中的每一个值,找出当前矩阵中最大的相关性系数根据找出具有强相关性的一组属性对同时重新将的值设为0;

30、s22:根据属性对循环遍历和中所有属性列取值和建立属性中各取值与属性的取值之间的对应关系表r。

31、进一步,步骤s22中,设属性总共包含s个属性取值,其中第k个取值为mk,k=1,2,…,s,属性总共包含t个属性取值,其中第q个取值为nq,q=1,2,…,t。建立与属性取值之间的对应关系表r的具体流程如下:

32、s221:协调方c方初始化一个空的对应关系表r={},用来存储属性中的每个取值与属性的取值之间的对应关系,同时c方生成密钥对,所述密钥对包括公钥和私钥,利用非对称加密对公钥进行加密,并将加密后的公钥发送至a方和b方;

33、s222:a方和b方各自循环遍历属性和并且同时将对应的属性值和通过加密的公钥进行加密发送给c方;

34、s223:c方记录当分别为m1、m2、…、ms时,对应的属性取值;同时c方记录和各取值之间的多对多的关系表,记为r。

35、进一步,所述缺失值生成模块根据对应关系r,建立和两个属性列中各取值的关联规则;循环遍历a方未对齐数据集中第m个属性中的每个样本值其中i=db+1,…,da,利用关联规则,为a方未对齐数据集中第m个属性中的每个样本值生成对应的b方缺失数据集中第n个属性中的样本值具体包括以下步骤:

36、s31:利用apriori算法通过对应关系表r,建立和两个属性列中的关联规则;

37、s32:循环遍历a方未对齐数据集中每个样本在第m个属性集合中的值利用关联规则,为b方缺失数据集生成与a方对应的样本值在b方第n个属性集合的样本值

38、进一步,步骤s31建立和两个属性列中各取值的关联规则具体流程如下:

39、s311:a方遍历属性记录属性取值为mk的样本个数countmk,k={1,2,…,s},并将countmk加密发送给c方;b方遍历属性集合根据与的关系表r,记录mk对应中的各属性取值的样本个数,并加密发送给c方;

40、s312:c方计算各属性取值的样本个数占总样本个数countmk的比率计算公式如下:

41、

42、其中k={1,2,…,s},q={1,2,…,t}。

43、s313:同理,按照所述步骤s311与s312,计算所有属性取值与在对应关系表r中各属性取值的样本占比建立属性与的关联规则rule,表示如下:

44、

45、其中表示mk对应的nv的样本个数占mk总样本个数countmk的比率,表示mk对应的nq的样本个数占mk总样本个数countmk的比率。

46、进一步,循环执行所述属性对对应关系建立模块和缺失值生成模块h轮,每轮循环找出当前相关性最强一组属性对建立该组属性对各属性取值之间的对应关系,利用每轮的对应关系建立当前属性对之间的关联规则;根据属性列之间的关联规则,对b方缺失数据集中与a方属性具有相关性大于γ的属性列进行生成,其中γ为人为给定的阈值;循环迭代轮数h等于a、b两方相关性大于γ的属性列对数。

47、进一步,所述生成对抗填补模块包括构建面向纵向联邦的基于变分自编码器(vae)的生成对抗填补模型,将da、和由所述属性对对应关系建立模块和缺失值生成模块循环执行h轮后生成的属性列放入填补模型中进行训练,对参与方剩余属性列的缺失值进行生成填补,获得完整的多方联合对齐样本数据集,具体包括以下步骤:

48、s41:a方和b方各自构建己方的底层子模型,其中包括各方的生成器模型和判别器模型c方构建顶层判别器模型用于对a、b两方的数样本进行联合判定;

49、s42:a、b双方的底层生成器模型由一个变分自编码器组成,包括编码器、编码向量和解码器,其双方底层输入包括各方数据样本、各方掩码向量以及噪声样本,双方对输入数据做如下处理:

50、(1)a方掩码向量b方掩码向量a方和b方时,代表该位置的数据缺失;当时,代表数据完整;a方特征数据的编码向量为a方剩余缺失样本数据向量

51、

52、即其中"⊙"表示向量间的元素级乘法;

53、b方特征数据的编码向量为a方剩余缺失样本数据向量

54、

55、即其中"⊙"表示向量间的元素级乘法;

56、(2)a方和b方分别对噪声样本za和噪声样本zb进行编码,并用编码后的结果对缺失样本进行填充,得到z‘a和z’b,

57、s43:a、b、c三方的判别模型由三个全连接网络构成,a、b两方各自对己方生成模型的生成数据进行处理以满足判别器的输入;

58、s44:a方将生成数据缺失数据与掩码向量做元素级乘法得到判别模型的输入数据,用表示,即b方将生成数据缺失数据与掩码向量做元素级乘法得到判别模型的输入数据,用表示,即

59、s45:a、b两方底层损失函数的包含三部分:生成样本中观测变量与生成变量间的误差损失生成样本输入判别器中得到的判别损失以及变分自编码器的kl散度损失其中a、b双方重建损失表示为:

60、

61、双方判别损失表示为:

62、

63、其中为a方对掩码矩阵进行随机采样得到的提示矩阵,为b方对掩码矩阵进行随机采样得到的提示矩阵;

64、kl散度损失表示为:

65、

66、其中和表示为a、b双方方编码器产生的潜在向量的以z‘a、z‘b为条件的数据分布;为标准正态分布;σa、σb是编码器输出的潜在向量的均值;ua、ub是编码器输出的潜在向量的方差;

67、分别得到a方、b方各自的总损失如下:

68、

69、其中α为超参数,为c方判别器损失,计算如下:

70、

71、s46:将数据集da、和生成的属性列缺失值放入填补模型中进行训练,对参与方剩余属性列的缺失值进行生成填补,获得完整的多方联合对齐样本数据集。

72、进一步,所述步骤s46具体包括以下步骤:

73、s461:c方初始化顶部判别器网络,a、b双方初始化各自的底部生成器网络和底部判别器网络;

74、s462:a、b方固定生成器训练判别器,具体包括:a、b双方采用同一批次的掩码向量、真实数据和随机噪声;经过数据编码、噪声填充以及向量拼接操作后输入至双方生成器得到生成数据样本与a、b双方分别对掩码矩阵进行随机采样得到各自的提示矩阵与进行向量拼接操作后输入至双方判别器网络得到双方数据的特征表示为与将与发送至c方后,c方进行向量拼接并输入至c方判别器网络得到生成数据的判别结果a、b双方将真实数据输入至双方各自的判别器网络后得到与将与发送至c方后,c方进行向量拼接并输入至c方判别器网络得到真实数据的判别结果经过计算,通过adam优化器更新c方判别器网络参数以及a、b双方判别器参数,计算公式如下:

75、

76、其中e代表期望值,和xmiss~pr分别代表集合和xmiss集合服从pg、pr概率分布;

77、s463:a、b双方固定判别器训练生成器,具体包括:双方采样同一批次的真实数据、掩码向量和随机噪声;经过数据编码、噪声填充以及向量拼接等操作后输入至双方生成器得到生成数据样本与a、b双方分别对掩码矩阵进行随机采样得到各自的提示矩阵与进行向量拼接操作后输入至双方判别器网络得到生成数据的判别结果;a、b双方计算各自的均方误差损失通过同态加密发送至服务端进行损失聚合,得到总损失其中α为超参数。通过adam优化器更新a、b双方生成器网络。

78、本发明的有益效果在于:本发明提出了一种基于纵向联邦学习的参与方对齐样本生成系统,针对纵向联邦学习场景下,某些参与方样本较多,而另一些参与方样本较少,从而导致对齐后的样本无法支持纵向联邦场景下机器学习模型基于大量样本训练的需要的问题,结合纵向联邦学习、关联规则分析以及生成填补网络,对样本较少的参与方进行数据生成,以构建高质量的多方联合样本数据集,满足和提升纵向联邦场景下机器学习模型的训练效果。

79、本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

本文地址:https://www.jishuxx.com/zhuanli/20241204/340305.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。