本技术涉及联邦学习,尤其涉及一种参与方选择方法、装置、设备及存储介质。
背景技术:
1、出于保护用户隐私的考虑,联邦学习约束了参与方之间的数据交流。由于参与方之间各自的数据产生环境、用户行为习惯甚至硬件条件的不同,非独立同分布(non-independent and identically distributed,non-iid)数据普遍存在于联邦学习应用场景中。对non-iid数据的常见处理方式是构造一种参与方选择方法,即在训练中通过选择那些对联邦模型有帮助的参与方参与训练。但是现有的参与方选择方法仅基于参与方训练损失,以及局部模型和全局模型的差异来选择参与方,这种选择方法的评估机制较为片面,从而导致最终得到的训练模型的性能较差。
技术实现思路
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、第一更新单元,用于将所述每个第一参与方设备的第一质量指标更新至所述第二质量指标。
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、本技术实施例的参与方选择方法,包括根据多个参与方设备中每个参与方设备的第一质量指标,从所述多个参与方设备中选取第一训练轮次的多个第一参与方设备;向所述多个第一参与方设备发送全局模型;接收每个所述第一参与方设备发送的本地模型和所述第一训练轮次的多个质量评估值,所述多个质量评估值包括:训练损失值、全局数据分布和本地数据分布的差异值、所述全局模型和所述本地模型的差异值,所述本地模型为所述第一参与方设备基于所述本地数据对所述全局模型进行训练后得到的模型;根据所述每个第一参与方设备发送的所述第一训练轮次的多个质量评估值,将所述每个第一参与方设备的第一质量指标更新至第二质量指标;基于所述每个第一参与方设备的第二质量指标,以及所述多个参与方设备中除所述多个第一参与方设备之外的其他参与方设备的第一质量指标,从所述多个参与方设备中选取第二训练轮次的第二参与方设备。该方法从多个方面评估参与方设备的质量,从而有助于在联邦学习中选择最有助于模型训练的参与方设备,提高最终得到的训练模型的性能。
1.一种参与方选择方法,其特征在于,所述方法包括:
2.根据权利要求1所述的参与方选择方法,其特征在于,所述根据多个参与方设备中每个参与方设备的第一质量指标,从所述多个参与方设备中选取第一训练轮次的多个第一参与方设备,包括:
3.根据权利要求1所述的参与方选择方法,其特征在于,所述根据多个参与方设备中每个参与方设备的第一质量指标,从所述多个参与方设备中选取第一训练轮次的多个第一参与方设备,包括:
4.根据权利要求1所述的参与方选择方法,其特征在于,所述根据所述每个第一参与方设备发送的所述第一训练轮次的多个质量评估值,将所述每个第一参与方设备的第一质量指标更新至第二质量指标,包括:
5.根据权利要求1所述的参与方选择方法,其特征在于,所述训练损失值基于交叉熵损失计算得到;
6.根据权利要求1所述的参与方选择方法,其特征在于,所述全局模型和本地模型的差异值为所述全局模型的预测层参数和所述本地模型的预测层参数的差异值。
7.一种参与方选择装置,其特征在于,所述参与方选择装置包括:
8.一种参与方选择设备,其特征在于,所述参与方选择设备包括收发机和处理器,所述处理器用于:
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的参与方选择方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的参与方选择方法的步骤。