一种数据处理方法、装置和用于数据处理的装置制造方法及图纸

技术编号:31512909 阅读:25 留言:0更新日期:2021-12-22 23:54
本发明专利技术实施例提供了一种数据处理方法、装置和用于数据处理的装置,用于多方数据融合计算场景中对多个数据方分别持有的特征数据联合进行降维处理。其中的方法包括:确定参与奇异值分解的w个数据方,其中,第i个数据方持有数据矩阵A

【技术实现步骤摘要】
一种数据处理方法、装置和用于数据处理的装置


[0001]本专利技术涉及计算机
,尤其涉及一种数据处理方法、装置和用于数据处理的装置。

技术介绍

[0002]奇异值分解(Singular Value Decomposition,以下简称SVD)是线性代数中重要的分解模型之一,奇异值分解则是特征分解在任意矩阵上的推广。SVD是在机器学习领域广泛应用的算法,可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域。
[0003]对于任意矩阵A,大小为m*n,奇异值分解会将该矩阵A分解为奇异值和奇异向量组合的形式,即A=USV
T
。其中,矩阵U是由左奇异向量构成的矩阵,矩阵V是由右奇异向量构成的矩阵,矩阵S为对角线矩阵,大小为m*n,矩阵S对角线上的元素就是奇异值。矩阵U(大小为m*m)和矩阵V(大小为n*n)均为正交矩阵,即满足UU
T
=I,VV
T
=I,其中上标T表示矩阵的转置,矩阵I为单位矩阵。

技术实现思路

[0004]本专利技术实施例提供一种数据处理方法、装置和用于数据处理的装置,可以实现多方数据融合计算场景中对多个数据方分别持有的特征数据联合进行降维处理,使得多个数据方持有的数据实现共享,可以在更大规模、更高质量的数据集上进行模型的训练,提高模型质量。
[0005]为了解决上述问题,本专利技术实施例公开了一种数据处理方法,用于多方数据融合计算场景中对多个数据方分别持有的特征数据联合进行降维处理,所述方法包括:确定参与奇异值分解的w个数据方,其中,第i个数据方持有数据矩阵A
i
,i取值为1~w,w>1,各数据方的数据矩阵具有相同的列数,给定参数包括p、q和k,p为过采样数,q为迭代轮数,k为奇异值个数;基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果。
[0006]可选地,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:所述w个数据方分别将自身的数据矩阵加密后上传至密文计算平台;所述密文计算平台,基于所述给定参数,在密文基础上对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果。
[0007]可选地,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:基于每个数据方持有的数据矩阵,计算每个数据方的单方矩阵;根据每个数据方的单方矩阵,计算多方联合矩阵,并对所述多方联合矩阵进行QR
分解,得到初始联合正交矩阵;基于所述初始联合正交矩阵和每个数据方的数据矩阵,进行q轮的迭代操作,得到目标联合正交矩阵;根据所述目标联合正交矩阵和每个数据方的数据矩阵,计算每个数据方的低维矩阵;根据每个数据方的低维矩阵,生成低维拼接矩阵,并对所述低维拼接矩阵进行奇异值分解,得到对角线矩阵;从所述对角线矩阵中选出最大的k个元素作为分解结果。
[0008]可选地,所述w个数据方中包括1个主动方和w

1个被动方,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:每个数据方基于持有的数据矩阵,分别在本地计算自身的单方矩阵,每个被动方将自身的单方矩阵发送至所述主动方;所述主动方根据每个数据方的单方矩阵,计算多方联合矩阵,并对所述多方联合矩阵进行QR分解,得到初始联合正交矩阵,所述主动方将所述初始联合正交矩阵发送至每个被动方;每个数据方基于所述初始联合正交矩阵和自身的数据矩阵,协同进行q轮的迭代操作,得到目标联合正交矩阵;每个数据方根据所述目标联合正交矩阵和自身的数据矩阵,分别在本地计算自身的低维矩阵,每个数据方将自身的低维矩阵发送至密文计算平台;所述密文计算平台根据每个数据方的低维矩阵,生成低维拼接矩阵,并对所述低维拼接矩阵进行奇异值分解,得到对角线矩阵,所述密文计算平台将所述对角线矩阵发送至所述主动方;所述主动方从所述对角线矩阵中选出最大的k个元素作为分解结果。
[0009]可选地,对于所述w个数据方,第i个数据方的单方矩阵为:Y
i
=A
i
G
i
,G
i
为对第i个数据方的数据矩阵A
i
计算得到的均匀分布矩阵,G
i
的大小为n
i
*(k+p),n
i
为A
i
的行数;多方联合矩阵为:;第i个数据方的低维矩阵为:B
i
=Q
T
A
i
,Q为目标联合正交矩阵;低维拼接矩阵为:B=[B1,B2,...,B
w
]。
[0010]可选地,所述基于所述初始联合正交矩阵和每个数据方的数据矩阵,进行q轮的迭代操作,得到目标联合正交矩阵,包括:在第j轮迭代中,根据上一轮得到的初始联合正交矩阵和每个数据方持有的数据矩阵,计算每个数据方的第j轮单方矩阵;根据每个数据方的第j轮单方矩阵,生成第j轮拼接矩阵,并对所述第j轮拼接矩阵进行QR分解,得到所述第j轮拼接矩阵的正交矩阵;基于所述第j轮拼接矩阵的正交矩阵,计算每个数据方的第j轮更新矩阵;根据每个数据方的第j轮更新矩阵,计算第j轮多方联合矩阵,并对所述第j轮多方联合矩阵进行QR分解,得到参与下一轮迭代的初始联合正交矩阵;在第j=q轮迭代执行完成时,得到目标联合正交矩阵。
[0011]可选地,所述每个数据方基于所述初始联合正交矩阵和自身的数据矩阵,协同进行q轮的迭代操作,得到目标联合正交矩阵,包括:在第j轮迭代中,每个数据方根据上一轮得到的初始联合正交矩阵和自身的数据矩阵,分别在本地计算自身的第j轮单方矩阵,每个数据方将自身的第j轮单方矩阵发送至密文计算平台;所述密文计算平台根据每个数据方的第j轮单方矩阵,生成第j轮拼接矩阵,并对所述第j轮拼接矩阵进行QR分解,得到所述第j轮拼接矩阵的正交矩阵,所述密文计算平台将所述第j轮拼接矩阵的正交矩阵发送至每个数据方;每个数据方基于所述第j轮拼接矩阵的正交矩阵,分别在本地计算自身的第j轮更新矩阵,每个被动方将自身的第j轮更新矩阵发送至所述主动方;所述主动方根据每个数据方的第j轮更新矩阵,计算第j轮多方联合矩阵,并对所述第j轮多方联合矩阵进行QR分解,得到参与下一轮迭代的初始联合正交矩阵,所述主动方将所述参与下一轮迭代的初始联合正交矩阵发送至每个被动方;在第j=q轮迭代执行完成时,得到目标联合正交矩阵。
[0012]可选地,对于w个数据方,第i个数据方的第j轮单方矩阵为:,Q为上一轮得到的初始联合正交矩阵;第j轮拼接矩阵为:C = [C1,C2,

,C
w
];第i个数据方的第j轮更新矩阵为D
i
,D1= A1*Q[:n1,:],D
t
= A
t
*Q[n1:

:n
t
,:],1<t<w,D
w
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,用于多方数据融合计算场景中对多个数据方分别持有的特征数据联合进行降维处理,所述方法包括:确定参与奇异值分解的w个数据方,其中,第i个数据方持有数据矩阵A
i
,i取值为1~w,w>1,各数据方的数据矩阵具有相同的列数,给定参数包括p、q和k,p为过采样数,q为迭代轮数,k为奇异值个数;基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果。2.根据权利要求1所述的方法,其特征在于,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:所述w个数据方分别将自身的数据矩阵加密后上传至密文计算平台;所述密文计算平台,基于所述给定参数,在密文基础上对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果。3.根据权利要求1所述的方法,其特征在于,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:基于每个数据方持有的数据矩阵,计算每个数据方的单方矩阵;根据每个数据方的单方矩阵,计算多方联合矩阵,并对所述多方联合矩阵进行QR分解,得到初始联合正交矩阵;基于所述初始联合正交矩阵和每个数据方的数据矩阵,进行q轮的迭代操作,得到目标联合正交矩阵;根据所述目标联合正交矩阵和每个数据方的数据矩阵,计算每个数据方的低维矩阵;根据每个数据方的低维矩阵,生成低维拼接矩阵,并对所述低维拼接矩阵进行奇异值分解,得到对角线矩阵;从所述对角线矩阵中选出最大的k个元素作为分解结果。4.根据权利要求1所述的方法,其特征在于,所述w个数据方中包括1个主动方和w

1个被动方,所述基于所述给定参数,对所述w个数据方的数据矩阵联合进行随机奇异值分解,得到分解结果,包括:每个数据方基于持有的数据矩阵,分别在本地计算自身的单方矩阵,每个被动方将自身的单方矩阵发送至所述主动方;所述主动方根据每个数据方的单方矩阵,计算多方联合矩阵,并对所述多方联合矩阵进行QR分解,得到初始联合正交矩阵,所述主动方将所述初始联合正交矩阵发送至每个被动方;每个数据方基于所述初始联合正交矩阵和自身的数据矩阵,协同进行q轮的迭代操作,得到目标联合正交矩阵;每个数据方根据所述目标联合正交矩阵和自身的数据矩阵,分别在本地计算自身的低维矩阵,每个数据方将自身的低维矩阵发送至密文计算平台;所述密文计算平台根据每个数据方的低维矩阵,生成低维拼接矩阵,并对所述低维拼接矩阵进行奇异值分解,得到对角线矩阵,所述密文计算平台将所述对角线矩阵发送至所述主动方;所述主动方从所述对角线矩阵中选出最大的k个元素作为分解结果。
5.根据权利要求3或4所述的方法,其特征在于,对于所述w个数据方,第i个数据方的单方矩阵为:Y
i
=A
i
G
i
,G
i
为对第i个数据方的数据矩阵A
i
计算得到的均匀分布矩阵,G
i
的大小为n
i
*(k+p),n
i
为A
i
的行数;多方联合矩阵为:;第i个数据方的低维矩阵为:B
i
=Q
T
A
i
,Q为目标联合正交矩阵;低维拼接矩阵为:B=[B1,B2,...,B
w
]。6.根据权利要求3所述的方法,其特征在于,所述基于所述初始联合正交矩阵和每个数据方的数据矩阵,进行q轮的迭代操作,得到目标联合正交矩阵,包括:在第j轮迭代中,根据上一轮得到的初始联合正交矩阵和每个数据方持有的数据矩阵,计算每个数据方的第j轮单方矩阵;根据每个数据方的第j轮单方矩阵,生成第j轮拼接矩阵,并对所述第j轮拼接矩阵进行QR分解,得到所述第j轮拼接矩阵的正交矩阵;基于所述第j轮拼接矩阵的正交矩阵,计算每个数据方的第j轮更新矩阵;根据每个数据方的第j轮更新矩阵,计算第j轮多方联合矩阵,并对所述第j轮多方联合矩阵进行QR分解,得到参与下一轮迭代的初始联合正交矩阵;在第j=q轮迭代执行完成时,得到目标联合正交矩阵。7.根据权利要求4所述的方法,其特征在于,所述每个数据方基于所述初始联合正交矩阵和自身的数据矩阵,协同进行q轮的迭代操作,得到目标联合正交矩阵,包括:在第j轮迭代中,每个数据方根据上一轮得到的初始联合正交矩阵和自身的数据矩阵,分别在本地计算自身的第j轮单方矩阵,每个数据方将自身的第j轮单方矩阵发送至密文计算平台;所述密文计算平台根据每个数据方的第j轮单方矩阵,生成第j轮拼接矩阵,并对所述第j轮拼接矩阵进行QR分解,得到所述第j轮拼接矩阵的正交矩阵,所述密文计算平台将所述第j轮拼接矩阵的正交矩阵发送至每个数据方;每个数据方基于所述第j轮拼接矩阵的正交矩阵,分别在本地计算自身的第j轮更新矩阵,每个被动方将自身的第j轮更新矩阵发送至所述主动方;所述主动方根据每个数据方的第j轮更新矩阵,计算第j轮多方联合矩阵,并对所述第j轮多方联合矩阵进行QR分解,得到参与下一轮迭代的初始联合正交矩阵,所述主动方将所述参与下一轮迭代的初始联合正交矩阵发送至每个被动方;在第j=q轮迭代执行完成时,得到目标联合正交矩阵。8.根据权利要求6或7所述的方法,其特征在于,对于w个数据方,第i个数据方的第j轮单方矩阵为:,Q为上一轮得到的初始联合正交矩阵;第j轮拼接矩阵为:C = [C1,C2,

,C
w
];第i个数据方的第j轮更新矩阵为D
i
,D1= A1*Q[:n1,:],D
t
= A
t
*Q[n1:

:n
t
,:],1<t<w,D
w
= A
w
*Q[n
w
:,:];第j轮多方联合矩阵为:。9.根据权利要求1所述的方法,其特征在于,所述w个数据方的数据矩阵分别对应相同样本集在不同特征维度上的样本数据。
10.一种数据处理装置,其特征在于,用于多方数据融合计算场景中对多个数据方分别持有的特征数据联合进行降维处理,所述装置包括:数据确定模块,用于确定参与奇异值分解的w个数据方,其中,第i个数据方持有数据矩阵A
i
,i取值为1~w,w>1,各数据方的数据矩阵具有相同的列数,给定参数包括p、q和k,p为过采样数,q为迭代轮数,k为奇异值个数;联合计算模块...

【专利技术属性】
技术研发人员:陈智隆翟同庆郝天一
申请(专利权)人:华控清交信息科技北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1