本发明涉及通信,特别是涉及一种多客户端数据隐私处理方法、系统、设备、介质及产品。
背景技术:
1、随着智能终端设备的快速普及,大量的个人信息数据被各种网络平台所采集。传统的机器学习通常将客户端的信息数据都收集到中心服务器,易导致客户端的隐私数据遭到泄露。为了对数据的隐私起到保护作用,选用联邦学习框架对数据进行处理应用而生。
2、在相关技术方案中,一般采取建立一个或多个全局模型的方式对非独立同分布的用户数据进行联邦学习。例如:使用联邦损失表面的几何特性对用户群体聚类,并在每个类别内进行联邦学习,这种方法通过客户端梯度更新的余弦相似度来衡量用户分布之间的相似度;或者,先建立多个模型(每个模型代表一个类别),每一轮训练过程中用户将数据带入这些模型,得到多个本地损失函数,此用户被归类到损失函数最小的模型的类别中,这种方法通过损失函数的大小衡量用户分布的相似情况;或者,先利用用户数据的一些统计特征对用户聚类,把属于同一类别的用户数据看做是独立同分布的,在每个类别内建立一个全局模型进行训练。上述方式均是通过间接的手段衡量两个用户分布的相似度,这样在处理数据时不能准确识别到具有相似分布的用户,会存在效率过低的问题。
技术实现思路
1、本发明的目的是提供一种多客户端数据隐私处理方法、系统、设备、介质及产品,可以直接衡量多客户端数据分布之间的相似性,在每个类别中直接进行联邦学习会更加高效,同时保护客户端的隐私信息。
2、为了解决上述技术问题,本发明提供一种多客户端数据隐私处理方法,所述方法包括:
3、每个客户端对自身数据进行秘密共享和标准化处理,并使用主成分分析方法对标准化后的数据进行秘密共享和变换处理;
4、每个客户端将经过变换处理后的数据进行排序,并从排序后的数据中按照设定间隔抽取设定数量的数据;
5、每个客户端将抽取的数据拆分为第一矩阵和第二矩阵,并将第一矩阵发送至第一服务器,将第二矩阵发送至第二服务器,以使所述第一服务器和所述第二服务器采用秘密共享的方式并使用瓦瑟斯坦距离结合马氏距离对所有客户端进行隐私聚类;
6、在所有客户端隐私聚类后,不同类别内的客户端分别进行联邦学习的隐私计算。
7、第一方面,在本发明提供的上述多客户端数据隐私处理方法中,每个客户端对自身数据进行秘密共享和标准化处理,包括:
8、每个客户端获取自身所有数据的和值,并将自身所有数据的和值拆分成第一和值和第二和值,将自身的数据个数拆分成第一个数和第二个数,将第一和值和所述第一个数发送至所述第一服务器,将第二和值和所述第二个数发送至第二服务器,以使所述第一服务器计算得到数据总和的第一秘密共享值,数据总个数的第二秘密共享值,所述第二服务器计算得到数据总和的第三秘密共享值,数据总个数的第四秘密共享值,并将计算出的所述第一秘密共享值,所述第二秘密共享值,所述第三秘密共享值和所述第四秘密共享值发送至每个客户端;
9、每个客户端根据所述第一秘密共享值,所述第二秘密共享值,所述第三秘密共享值和所述第四秘密共享值得到数据总和以及数据总个数,并计算得到数据均值;
10、每个客户端根据所述数据均值计算本地部分方差,并将所述本地部分方差拆分成第一本地部分方差和第二本地部分方差,将所述第一本地部分方差发送至所述第一服务器,将所述第二本地部分方差发送至第二服务器,以使所述第一服务器计算得到所述第一本地部分方差的第五秘密共享值,所述第二服务器计算得到所述第二本地部分方差的第六秘密共享值并发送至每个客户端;
11、每个客户端根据所述第五秘密共享值和所述第六秘密共享值计算得到数据标准差,并对自身的数据进行标准化。
12、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,每个客户端采用下述公式获取自身所有数据的和值,并将自身所有数据的和值拆分成第一和值和第二和值,将自身的数据个数拆分成第一个数和第二个数:
13、;
14、;
15、;
16、其中,为第个客户端的所有数据的和值,的形式表示向量,的形式表示第个客户端的数据的第行转化为列向量的形式,表示第个客户端的数据的第行第1列的值,表示第个客户端的数据的第行第列的值,,为第个客户端的数据个数,为所有数据的维数,表示求和符号,表示转置,为第一和值,为第二和值,为所述第一个数,为所述第二个数。
17、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算得到数据总和的第一秘密共享值:
18、;
19、其中,为所述第一秘密共享值,为客户端的总个数,为第个客户端中第一和值的秘密共享值;
20、采用下述公式计算得到数据总个数的第二秘密共享值:
21、;
22、其中,为所述第二秘密共享值,为第个客户端中第一个数的秘密共享值;
23、采用下述公式计算得到数据总和的第三秘密共享值:
24、;
25、其中,为所述第三秘密共享值,为第个客户端中第二和值的秘密共享值;
26、采用下述公式计算得到数据总个数的第四秘密共享值:
27、;
28、其中,为所述第四秘密共享值,为第个客户端中第二个数的秘密共享值。
29、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式得到数据总和以及数据总个数:
30、;
31、;
32、其中,为数据总和,为数据总个数;
33、采用下述公式计算得到数据均值:
34、;
35、其中,为数据均值。
36、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算本地部分方差,并将所述本地部分方差拆分成第一本地部分方差和第二本地部分方差:
37、;
38、;
39、;
40、其中,为第个客户端的本地部分方差,为第个客户端的本地部分方差的第个分量,,为第个客户端的数据在第1行第列的值,为第个客户端的数据在第行第列的值,为数据平均值的第个分量,为所述第一本地部分方差,为所述第二本地部分方差。
41、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算得到所述第一本地部分方差的第五秘密共享值:
42、;
43、其中,为所述第五秘密共享值,为第个客户端的第一本地部分方差的秘密共享值;
44、采用下述公式计算得到所述第二本地部分方差的第六秘密共享值:
45、;
46、其中,为所述第六秘密共享值,为第个客户端的第二本地部分方差的秘密共享值。
47、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算得到数据标准差:
48、;
49、;
50、其中,为所述数据标准差,为数据方差,为数据方差的第个分量。
51、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式对自身的数据进行标准化:
52、;
53、;
54、;
55、其中,为第个客户端的数据在第行第列的值经标准化后得到的数据,为第个客户端的数据在第行第列的值,为所述数据标准差的第个分量,为第个客户端标准化后的第条数据,为第个客户端标准化后的数据。
56、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,使用主成分分析方法对标准化后的数据进行秘密共享和变换处理,包括:
57、每个客户端计算本地协方差矩阵,并将所述本地协方差矩阵拆分成第一协方差矩阵和第二协方差矩阵,将所述第一协方差矩阵发送至所述第一服务器,将所述第二协方差矩阵发送至所述第二服务器,以使所述第一服务器计算得到所述第一协方差矩阵的第一共享值,所述第二服务器计算得到所述第二协方差矩阵的第二共享值,所述第二服务器将所述第二共享值发送至所述第一服务器;所述第一服务器计算得到总体协方差矩阵,并对所述总体协方差矩阵进行奇异值分解,选取若干个最大特征值并发送至所述第二服务器,对应的特征向量发送至每个客户端;
58、每个客户端根据选取的特征向量对标准化后的数据进行变换处理。
59、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算本地协方差矩阵,并将所述本地协方差矩阵拆分成第一协方差矩阵和第二协方差矩阵:
60、;
61、;
62、其中,为所述本地协方差矩阵,为所有客户端的数据总个数,为第个客户端标准化后的第条数据,,为第个客户端的数据个数,为第个客户端标准化后的数据,表示转置,为所述第一协方差矩阵,为所述第二协方差矩阵。
63、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算得到所述第一协方差矩阵的第一共享值:
64、;
65、其中,为所述第一共享值;
66、采用下述公式计算得到所述第二协方差矩阵的第二共享值:
67、;
68、其中,为所述第二共享值;
69、采用下述公式计算得到总体协方差矩阵,并对所述总体协方差矩阵进行奇异值分解:
70、;
71、;
72、其中,为所述总体协方差矩阵,是对角矩阵,满足,是正交矩阵;选取的前行发送至每个客户端。
73、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式根据选取的特征向量对标准化后的数据进行变换处理:
74、;
75、;
76、其中,为第个客户端对标准化后的第条数据进行变换处理后得到的数据,为第个客户端对标准化后的数据进行变换处理后得到的数据。
77、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,每个客户端将经过变换处理后的数据进行排序,并从排序后的数据中按照设定间隔抽取设定数量的数据,包括:
78、第个客户端将变换处理后的数据中的第个分量进行排序;
79、分别抽取第个值,其中,,为所述设定数量;
80、若抽取后的值为,第个客户端抽取的所有值为:
81、;
82、其中,为第个客户端抽取的所有值,为抽取的所有值的维数,,,为所有数据的维数;
83、采用下述公式将抽取的数据拆分为第一矩阵和第二矩阵:
84、;
85、其中,为第一矩阵,为第一矩阵中的元素,为第二矩阵,为第二矩阵中的元素。
86、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,所述第一服务器和所述第二服务器采用秘密共享的方式并使用瓦瑟斯坦距离结合马氏距离对所有客户端进行隐私聚类,包括:
87、选择多个客户端的数据作为聚类中心,并将存在于所述第一服务器中多个聚类中心对应的第一矩阵的第七秘密共享值和存在于所述第二服务器中多个聚类中心对应的第二矩阵的第八秘密共享值进行记录;
88、在所述第一服务器和所述第二服务器之间,对第一矩阵与所述第七秘密共享值的差值中的每个元素,以及第二矩阵与所述第八秘密共享值的差值中的每个元素进行乘法秘密共享,所述第一服务器得到第一乘法秘密共享结果,所述第二服务器得到第二乘法秘密共享结果;
89、所述第一服务器根据所述第一乘法秘密共享结果得到每个客户端数据与每个聚类中心之间的由瓦瑟斯坦距离结合马氏距离而得到的第一目标距离;
90、所述第二服务器根据所述第二乘法秘密共享结果得到每个客户端数据与每个聚类中心之间的由瓦瑟斯坦距离结合马氏距离而得到的第二目标距离,并发送至所述第一服务器;
91、所述第一服务器根据所述第一目标距离和所述第二目标距离,得到每个客户端数据与每个聚类中心之间的最终目标距离;
92、将每个客户端归到与所述最终目标距离最近的聚类中心所在的类,并发送至第二服务器;
93、更新聚类中心点;
94、重复执行计算所述第一目标距离,所述第二目标距离和所述最终目标距离,以及更新聚类中心点的步骤,直至所有聚类中心点不再发生变化。
95、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式将存在于所述第一服务器中多个聚类中心对应的第一矩阵的第七秘密共享值和存在于所述第二服务器中多个聚类中心对应的第二矩阵的第八秘密共享值进行记录,包括:
96、;
97、;
98、其中,为所述第一服务器中第个聚类中心对应的第一矩阵的第七秘密共享值,为中的元素;为所述第二服务器中第个聚类中心对应的第二矩阵的第八秘密共享值,为中的元素。
99、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式计算得到所述第一目标距离:
100、;
101、其中,为所述第一目标距离,是对角矩阵第个对角元素,为所述第一乘法秘密共享结果;
102、采用下述公式计算得到所述第二目标距离:
103、;
104、其中,为所述第二目标距离,为所述第二乘法秘密共享结果。
105、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,采用下述公式得到每个客户端数据与每个聚类中心之间的最终目标距离:
106、;
107、其中,为第个客户端数据与第个聚类中心之间的最终目标距离。
108、另一方面,在本发明提供的上述多客户端数据隐私处理方法中,更新聚类中心点,包括:
109、所述第一服务器采用下述公式更新第类中心点的秘密共享值:
110、;
111、其中,为属于第类的客户端索引的集合,表示集合元素的个数,为所述第一服务器的第类中心点的秘密共享值;
112、所述第二服务器采用下述公式更新第类中心点的秘密共享值:
113、;
114、其中,为所述第二服务器的第类中心点的秘密共享值。
115、为了解决上述技术问题,本发明还提供一种多客户端数据隐私处理系统,所述系统包括多个客户端,第一服务器和第二服务器;
116、每个客户端,用于对自身数据进行秘密共享和标准化处理,并使用主成分分析方法对标准化后的数据进行秘密共享和变换处理;还用于将经过变换处理后的数据进行排序,并从排序后的数据中按照设定间隔抽取设定数量的数据;将抽取的数据拆分为第一矩阵和第二矩阵,并将第一矩阵发送至所述第一服务器,将第二矩阵发送至所述第二服务器;
117、所述第一服务器和所述第二服务器,用于采用秘密共享的方式并使用瓦瑟斯坦距离结合马氏距离对所有客户端进行隐私聚类;
118、不同类别内的客户端,用于分别进行联邦学习的隐私计算。
119、为了解决上述技术问题,本发明还提供一种多客户端数据隐私处理设备,所述设备包括:
120、存储器,用于存储计算机程序;
121、处理器,用于执行所述计算机程序时实现上述多客户端数据隐私处理方法的步骤。
122、为了解决上述技术问题,本发明还提供一种非易失性存储介质,所述非易失性存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述多客户端数据隐私处理方法的步骤。
123、为了解决上述技术问题,本发明还提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述多客户端数据隐私处理方法的步骤。
124、从上述技术方案可以看出,本发明所提供的一种多客户端数据隐私处理方法,该方法包括:每个客户端对自身数据进行秘密共享和标准化处理,并使用主成分分析方法对标准化后的数据进行秘密共享和变换处理;每个客户端将经过变换处理后的数据进行排序,并从排序后的数据中按照设定间隔抽取设定数量的数据;每个客户端将抽取的数据拆分为第一矩阵和第二矩阵,并将第一矩阵发送至第一服务器,将第二矩阵发送至第二服务器,以使第一服务器和第二服务器采用秘密共享的方式并使用瓦瑟斯坦距离结合马氏距离对所有客户端进行隐私聚类;在所有客户端隐私聚类后,不同类别内的客户端分别进行联邦学习的隐私计算。
125、本发明的有益效果在于,本发明提供的上述多客户端数据隐私处理方法,先对客户端自身的数据进行秘密分享和标准化处理,可以减少计算误差,保护客户端的隐私信息,然后使用主成分分析方法对标准化后的数据进行秘密分享和变换处理,这样只使用主成分便于后续计算,对数据起到降维作用,且避免客户端原始数据的泄露,之后对排序抽取的数据拆分并发送至服务器,在服务器对所有客户端进行隐私聚类的过程中,使用瓦瑟斯坦距离结合马氏距离以直接的方式衡量多客户端数据分布之间的相似性,并且在其过程中采用秘密共享的方式实现客户端向服务器发送的隐私信息的一系列计算,进一步对客户端的隐私信息进行了保护,并且在所有客户端聚类完成之后,每个类别内的客户端的数据可被认为是独立同分布的,因而在每个类别中直接进行联邦学习会更加高效,并且该联邦学习能够进行一些个性化的预测,整个多客户端数据处理过程提高了非独立同分布的数据的处理效率,确保了处理过程中数据的安全性。
126、此外,本发明还针对多客户端数据隐私处理方法提供了相应的多客户端数据隐私处理系统、多客户端数据隐私处理设备、非易失性存储介质及产品,与上述提到的多客户端数据隐私处理方法具有相同或相对应的技术特征,效果同上。