本技术属于大数据,尤其涉及一种模型更新方法、装置、设备及计算机存储介质。
背景技术:
1、移动边缘设备的普及使得边缘产生的数据快速增长,同时也促进了现代人工智能、大数据应用的繁荣发展。由于传统的在云端收集大量数据进行集中式模型训练的机制,存在隐私安全性低和数据传输成本高的问题,因此,为了在不泄露隐私的前提下充分利用数据资源,联邦学习方式应运而生。联邦学习方式可以让数据所有者在不共享其原始数据的情况下协同训练全局模型。在联邦学习中,分布式数据所有者使用自己的数据在本地训练全局模型,得到模型更新数据,然后提交给服务器进行模型聚合。服务器将聚合后的模型更新数据用于更新全局模型,并返回给每个节点以进行下一轮的迭代。全局模型的训练过程便可以通过这种方式以分布式和隐私保护的方式迭代完成。
2、但是,参与联邦学习的节点(即数据所有者)通常在硬件条件和数据资源上都受到限制,且存在异质性,这会极大地影响学习性能。例如,由于每个数据所有者硬件性能的限制,往往会收集一些错误标注的低质量数据,导致本地学习建模质量参差不齐。这就导致如果在服务器不加区分地聚合各节点低质量的模型更新数据,会反向恶化全局模型的质量,使得模型学习质量低。
技术实现思路
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、本技术实施例的模型更新方法、装置、设备及计算机存储介质,能够获取多个节点的节点模型数据,得到数据集合;根据所述数据集合中的节点模型数据的分布数据,将达到第一条件的节点模型数据确定为第一数据并将达到第二条件的节点模型数据的第二数据;然后将所述第一数据和第二数据输入预设的分类器,对所述分类器进行训练;当训练的所述分类器达到第三预设条件的情况下,根据所述分类器计算节点模型数据的权重,以通过所述权重更新对应的联邦学习全局模型。这样可以基于多个节点的节点模型数据的分布特点,识别出可用数据(即第一数据)和不符合常态的不可用数据(即第二数据),从而将其分别输入预设的分类器中进行训练,得到符合条件的分类器计算结果,用于全局模型的训练,提高全局模型的计算精度。