一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于联邦学习的模型训练方法、装置、设备和介质与流程

2021-12-14 21:25:00 来源:中国专利 TAG:


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.图1是本技术的一个实施例可以应用于其中的示例性系统架构图;
31.图2是根据本技术的基于联邦学习的模型训练方法的一个实施例的流程图;
32.图3是根据本技术的基于联邦学习的模型训练方法的另一个实施例的流程图;
33.图4是根据本技术的基于联邦学习的模型训练方法的一个应用场景的示意图;
34.图5是根据本技术的基于联邦学习的模型训练装置的一个实施例的结构示意图;
35.图6是根据本技术的基于联邦学习的模型训练装置的一个实施例的结构示意图;
36.图7是用来实现本技术实施例的基于联邦学习的模型训练方法的基于联邦学习的模型训练设备的框图。
具体实施方式
37.以下结合附图对本技术的示范性实施例做出说明,其中包括本技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本技术的范围和精神。同
样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
38.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
39.图1示出了可以应用本技术的基于联邦学习的模型训练方法或基于联邦学习的模型训练装置的实施例的示例性系统架构100。
40.如图1所示,系统架构100可以包括数据端101、102、103,网络104和业务端105。网络104用以数据端101、102、103和业务端105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
41.数据端101、102、103中可以存储有不同维度的数据,业务端105中可以存储有数据对应的标签。该系统架构100可以应用于基于联邦学习的模型训练场景,在该场景下,需要将不同的数据端中存储的不同维度的数据进行聚合,共同训练模型,并且在这一过程中需要保护各个数据端中的数据隐私。举例来说,数据端101中存储的数据可以为用户群在a维度下的用户特征,数据端102中存储的数据可以为用户群在b维度下的用户特征,数据端103中存储的数据可以为用户群在c维度下的用户特征,业务端105中存储有该用户群对应的用户标签。在基于联邦学习进行模型训练的场景下,可以聚合用户群在a维度、b维度以及c维度下的用户特征,训练模型,以此得出的模型能够输出更精准的用户分类信息。
42.在本实现方式中,利用系统架构100进行模型训练的过程中,需要由数据端101、102、103分别通过网络104向业务端105发送进行数据压缩处理后的压缩数据,其中,压缩数据可以为随机训练数据端101、102、103中的模型时,各个数据端中的模型输出的压缩后的数据。业务端105可以接收数据端101、102、103分别发送的进行数据压缩处理后的压缩数据,并基于压缩数据和多个第一训练标签,分别确定出数据端101中的模型的优化方向、数据端102中的模型的优化方向以及数据端103中的模型的优化方向,并将优化方向发送给数据端101、102、103。数据端101、102、103在接收到优化方向之后,可以基于优化方向训练数据端101、102、103中的模型,得到数据端101中训练好的模型、数据端102中训练好的模型以及数据端103中训练好的模型。此时,完成了对数据端101、102、103中的模型的训练。
43.进一步的,数据端101、102、103可以分别基于训练好的模型向业务端105发送训练数据,其中,训练数据包括数据端101中训练好的模型输出的数据、数据端102中训练好的模型输出的数据以及数据端103中训练好的模型输出的数据。业务端105可以接收训练数据,并基于训练数据和预设的第二训练标签,对整合模型进行训练,得到训练好的整合模型。其中,第一训练标签和第二训练标签可以为相同的标签,也可以为不同的标签,本实施例对此不做限定。
44.需要说明的是,数据端101、102、103可以是硬件,也可以是软件。当数据端101、102、103为硬件时,可以实现成多个数据端组成的分布式数据端集群,也可以实现成单个数据端。当数据端101、102、103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
45.需要说明的是,业务端105可以是硬件,也可以是软件。当业务端105为硬件时,可以实现成多个业务端组成的分布式业务端集群,也可以实现成单个业务端。当业务端105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
46.需要说明的是,本技术实施例所提供的基于联邦学习的模型训练方法可以由数据端101、102、103执行,也可以由业务端105执行。相应地,基于联邦学习的模型训练装置可以设置于数据端101、102、103中,也可以设置于业务端105中。在此不做具体限定。
47.应该理解,图1中的数据端、网络和业务端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的数据端、网络和业务端。
48.继续参考图2,示出了根据本技术的基于联邦学习的模型训练方法应用于业务端的一个实施例的流程200。本实施例的基于联邦学习的模型训练方法,包括以下步骤:
49.步骤201,在专家经验标签库中获取第一训练标签集合和第二训练标签,专家经验标签库包括多个基于专家经验设置的训练标签,第一训练标签集合中包括多个不同的第一训练标签。
50.在本实施例中,数据端可以是存储有数据的设备,业务端可以是存储有数据标签的设备。基于联邦学习的模型训练方法的执行主体(如图1所示的业务端)中设有专家经验标签库。在进行模型训练时,可以根据训练需求从专家经验标签库中选取需要的训练标签,作为第一训练标签集合和第二训练标签。其中,第一训练标签集合中的第一训练标签可以和第二训练标签相同,也可以和第二训练标签不同,本实施例对此不做限定。
51.需要说明的是,业务端可以为至少一个数据端中的某一数据端对应的设备,业务端也可以为独立于至少一个数据端的其它设备,本实施例中对此不做限定。
52.步骤202,对于各个数据端,在第一训练标签集合中确定该数据端对应的第一训练标签,并基于该数据端对应的第一训练标签,对该数据端中的模型进行训练。
53.在本实施例中,执行主体能够在第一训练标签集合中确定与每个数据端对应的第一训练标签,基于每个数据端发送给执行主体的数据和该数据端对应的第一训练标签,对数据端中的模型进行训练。
54.在本实施例的一些可选的实现方式中,基于该数据端对应的第一训练标签,对该数据端中的模型进行训练,包括:获取该数据端中的模型进行数据压缩处理后输出的压缩数据;基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向,以使该数据端中的模型根据优化方向进行训练。
55.本实现方式中,执行主体能够接收至少一个数据端(如图1所示的数据端)分别发送的进行数据压缩处理后输出的压缩数据,并根据各个数据端对应的第一训练标签,向各个数据端返回相应的优化方向。其中,不同的第一训练标签可以对应着不同的训练方向。并且不同的数据端上可以存储有不同维度的数据。每一数据端中具有本地的模型,模型的形式可以为深度神经网络等深度学习模型,也可以为决策树等传统机器学习模型,本实施例对此不做限定。其中,数据端发送的数据即是至少一个数据端中各个数据端的模型输出的数据。
56.进一步的,上述的优化方向用于描述整合数据和训练目标之间的误差值,比如协同器的训练目标是使得数据端的模型输出的值是目标数值,在接收到数据端的模型发送的数据之后,可以将该数据和目标数值进行比较,确定出误差值,比如该数据为目标数值加三,确定误差值为正三,此时对应的模型优化方向为使得数据端的模型输出的数值朝向减三的方向。上述至少一个协同器中每个协同器可以整合至少一个数据端分别发送的压缩数据,得到每个协同器对应的整合数据。再基于每个协同器对应的第一训练标签,以及每个协
同器对应的整合数据,确定出上述至少一个数据端中各个数据端的模型的优化方向。其中,各个协同器可以对应着不同维度的第一训练标签,从而实现对至少一个数据端中各个数据端的模型进行多维度的模型训练。此时,至少一个数据端中各个数据端可以接收到多个协同器返回的模型优化方向,并基于多个模型优化方向进行模型训练,能够提高模型训练的精准度。
57.在本实施例的一些可选的实现方式中,基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向,包括:响应于确定该数据端中的模型未训练好,基于各个数据端中其它数据端训练好的模型、压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
58.本实现方式中,针对至少一个数据端中的模型进行模型训练时,至少一个数据端中的各个数据端的模型并不一定是完全同步进行训练的,可能存在某些模型已训练好且某些模型还未训练好的情况,针对这一情况,可以响应于该数据端中的模型未训练好,利用其它数据端中已训练好的模型辅助对该数据端中的模型进行训练。也即是,基于其它数据端中已训练好的模型、该数据端发送的压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。又或者,在对至少一个数据端中的模型进行模型训练之前,可以设置各个模型进行训练的优先级,在进行训练时,先训练优先级高的模型,得出训练好的模型,在训练优先级低的模型时,可以结合已训练好的优先级高的模型、数据端发送的压缩数据和第一训练标签集合,确定未训练好的模型的优化方向。这一过程能够使用已训练好的模型辅助训练未训练好的模型,从而可以提高未训练好的模型的训练速度。其中,使用已训练好的模型辅助训练未训练好的模型可以基于迁移学习技术实现,迁移学习是深度学习在计算机视觉任务和自然语言处理任务中将预训练的模型作为新模型的起点的方法。
59.在本实施例的一些可选的实现方式中,基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向,包括:响应于确定该数据端未掉线且未出现延迟,基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
60.本实现方式中,在模型训练的过程中,业务端中会整合至少一个数据端中各个数据端分别发送的压缩数据,如果此时一个或者多个数据端出现了掉线或者延迟现象,可以确定出该数据端中的模型异常运行,此时业务端本轮训练可以不整合该数据端中的模型发送的压缩数据,本轮训练不对该数据端中的模型进行训练,而是基于其它正常运行的数据端中的模型发送的压缩数据和第一训练标签集合,确定在至少一个数据端中正常运行的模型的优化方向。也即是,在本轮训练中不向出现掉线或延迟的数据端返回相应的优化方向。这一过程能够较大程度的解耦参与训练的至少一个数据端,提高了模型训练的健壮性。
61.可选的,在业务端确定出各个数据端本轮训练的优化方向之后,可以将优化方向发送给相应的数据端,以使至少一个数据端中每个数据端基于相应的模型优化方向分别训练模型。重复执行上述步骤202,直至数据端中的模型收敛,得到至少一个数据端中各个数据端中训练好的模型。这一过程完成了对至少一个数据端中本地模型的训练,后续可以基于已训练好的至少一个数据端中的模型训练业务端中的整合模型。
62.在本实施例的一些可选的实现方式中,基于压缩数据和该数据端对应的第一训练
标签,向该数据端中的模型返回相应的优化方向,包括:确定该数据端对应的至少一个同组数据端;获取各个同组数据端发送的压缩处理后的同组数据;利用该数据端对应的协同器,整合同组数据和压缩数据,得到整合数据;基于整合数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
63.本实现方式中,业务端中可以包括至少一个协同器,协同器具有对应的第一训练标签。其中,至少一个协同器中的每个协同器用于整合至少一个数据端中的各个数据端发送的压缩数据。每个协同器具有相应的第一训练标签,每个协同器对应的第一训练标签的数量可以为一个,也可以为大于一个的数目,对此本实施例中不做限定。不同的协同器中的第一训练标签可以对应着不同维度的训练目标,例如不同的协同器的训练目标可以为针对不同属性的分类,每个协同器的训练目标是为了针对该协同器对应的属性进行分类,不同的协同器针对的属性不同。举例来说,假设具有3个数据端并且业务端具有3个协同器,此时,每个协同器均可以整合3个数据端发送的压缩数据。并且每个协同器还具有相应的第一训练标签,此时,利用各个协同器整合数据端发送的压缩数据,能够基于不同的训练标签训练数据端中的模型。由于不同的协同器对应的第一训练标签可以是不同维度的训练标签,因而采用协同器整合数据端发送的压缩数据,能够实现对数据端中的模型的多维度训练。进一步的,每个协同器可以负责整合一组数据端发送的压缩数据,上述的至少一个同组数据端和上述的该数据端可以为同一个协同器负责整合的数据端。
64.在本实施例的一些可选的实现方式中,各个数据端基于本地的模型生成数据压缩后的压缩数据的方式具体可以为:数据端随机训练模型,向模型输入随机数据,使得模型输出压缩数据。其中,压缩数据可以为随机数据进行数据压缩之后得到的数据。利用数据端的模型压缩数据能够提高压缩数据的信息熵,确保了数据传输的隐私性。并且这一过程无需使用加解密算法,降低了维护数据安全的复杂度。
65.步骤203,获取各个数据端根据训练好的模型发送的训练数据。
66.在本实施例中,在数据端中的模型满足收敛条件,得到训练好的模型之后,各个数据端可以分别向业务端发送训练好的模型输出的训练数据,业务端可以接收至少一个数据端分别基于训练好的模型发送的训练数据。
67.在本实施例的一些可选的实现方式中,获取各个数据端根据训练好的模型发送的训练数据,包括:在各个数据端中确定未掉线且未出现延迟的目标数据端;获取目标数据端根据训练好的模型发送的训练数据。
68.在本实现方式中,数据端中的模型满足收敛条件,得到训练好的模型之后,如果确定某个数据端出现掉线或者延迟,在对整合模型进行训练时则不使用该数据端,因此,仅需获取未掉线且未出现延迟的目标数据端发送的训练数据。
69.步骤204,根据训练数据和第二训练标签,对整合模型进行训练,以使训练好的整合模型对各个数据端发送的数据进行整合。
70.在本实施例中,业务端可以基于训练数据和第二训练标签对整合模型进行训练。
71.在本实施例的一些可选的实现方式中,根据训练数据和第二训练标签,对整合模型进行训练,包括:从训练数据中选取样本数据,并执行以下训练步骤:将样本数据输入初始模型,得到初始模型输出的输出结果;基于输出结果和第二训练标签,确定初始模型的损失函数的损失值;响应于损失值满足预设收敛条件,将初始模型作为训练好的整合模型。
72.其中,初始模型为初始的整合模型,可以从训练数据中选取样本数据作为初始模型的输入数据,得到初始模型输出的输出结果,基于输出结果和第二训练标签,确定初始模型的损失函数的损失值,其中,损失值计算公式如下:
73.l(ρ
i
,f
i
,y)=arg min((y

f(ρ
i
,f
i
)))
74.其中,l(ρ
i
,f
i
,y)指的是损失函数的损失值,ρ
i
指的是超参数,fi指的是训练数据,y指的是第二训练标签。其中,超参数ρ
i
用于调节各个fi的重要程度。f指的是用于整合各个f
i
的整合方式,具体可以为求和等方式,本实施例对此不做限定。并且在各个f
i
具有对应的超参数ρ
i
的情况下,f可以为将各个f
i
与相应的超参数ρ
i
进行加权求和的计算方式。通过f可以得到整合模型本轮训练的预测值,用y减去该预测值,则可以得到本轮训练损失函数的损失值。
75.通过将每轮训练的训练数据、超参数和训练标签代入上述损失值计算公式,可以计算得到初始模型的损失函数的损失值。重复进行多轮训练,直至损失值满足预设收敛条件,将损失值满足预设收敛条件的初始模型确定为整合模型。
76.在本实施例的一些可选的实现方式中,还可以执行以下步骤:响应于损失值不满足预设收敛条件,调整初始模型中的相关参数,并在训练数据中重新选取样本数据,继续执行上述训练步骤。
77.其中,如果损失值不满足预设收敛条件,可以调整初始模型中的相关参数,并在训练数据中重新选取样本数据,开始多轮训练,继续执行训练步骤。
78.本技术上述实施例提供的基于联邦学习的模型训练方法,可以结合专家经验标签库中基于专家经验设置的多个训练标签,进行模型训练。这一过程融入专家经验,基于多个训练标签实现对模型的多维度训练,能够提升模型训练效果。此外,以在训练数据端中的模型时,每轮训练只需要业务端返回模型优化方向,也即是仅需一次信息交互,而在训练业务端中的整合模型时,每轮训练也仅需获取数据端中已训练好的模型输出的数据,一次信息交互即可完成模型训练。采用这种模型训练方法,能够减少业务端与数据端之间的通信次数,从而降低了模型训练复杂度。
79.继续参见图3,示出了根据本技术的基于联邦学习的模型训练方法应用于数据端的一个实施例的流程300。该基于联邦学习的模型训练方法,包括以下步骤:
80.步骤301,将原始数据输入待训练的模型,得到待训练的模型输出的压缩处理后的压缩数据。
81.本实施例中,原始数据可以为随机训练模型时向模型输入的输入数据。其中,原始数据可以为高维数据,在将原始数据输入模型之后,模型可以对原始数据进行数据压缩,得到模型输出的压缩处理后的压缩数据。其中,压缩数据可以为将高维数据进行数据压缩,得到的一维数据。其中,将一维的压缩数据发送给业务端,使得业务端难以从压缩数据中推导出原始数据的信息,提高了数据安全性。可选的,可以基于深度学习模型或者传统机器学习模型等方式进行数据压缩,本实施例对此不做限定。其中,压缩数据可以为一维数据。
82.步骤302,将压缩数据发送给业务端,以使业务端根据压缩数据返回优化方向。
83.在本实施例中,由于数据端的数目可以大于一个,因而在存在数据端掉线或者数据端延迟导致该数据端本轮训练未将压缩数据发送给业务端的情况下,在本轮训练的过程中,业务端可以忽视该数据端,整合其他数据端发送的压缩数据,并向其他数据端中的模型
返回优化方向。
84.步骤303,根据优化方向训练待训练的模型,得到训练好的模型。
85.在本实施例中,数据端可以基于业务端返回的优化方向,调整数据端中的模型的参数,利用调整参数后的模型再输出压缩数据,直至数据端中的模型收敛,得到训练好的模型。
86.步骤304,获取训练好的模型输出的训练数据。
87.在本实施例中,在完成对业务端中的模型训练之后,可以向训练好的模型输入数据,数据可以为预先存储的数据,在向训练好的模型输入数据之后,可以得到训练好的模型输出的训练数据。其中,训练数据可以是经过数据压缩后的数据。
88.步骤305,将训练数据发送给业务端,以使业务端基于训练数据训练整合模型。
89.在本实施例中,数据端在训练好本地的模型之后,可以向训练好的本地的模型输入数据,得到训练好的模型输出的训练数据,训练数据可以作为业务端训练整合模型的输入数据,使得业务端基于训练数据实现对整合模型的训练。
90.继续参见图4,图4是根据本实施例的基于联邦学习的模型训练的一个应用场景的示意图。在图4的应用场景中具有a组数据端中的各个模型401、b组数据端中的各个模型402以及c组数据端中的各个模型403。a组数据端中的各个模型401可以向业务端中的协同器d404发送压缩数据,b组数据端中的各个模型402可以向业务端中的协同器e405发送压缩数据,c组数据端中的各个模型403可以向业务端中的协同器f406发送压缩数据。需要说明的是,a组数据端中的各个模型401可以为多个数据端中的每一数据端中的模型。同理,b组数据端中的各个模型402与c组数据端中的各个模型403也可以为多个数据端中的每一数据端中的模型。协同器d404可以接收a组数据端中的各个模型401发送的压缩数据,并基于协同器d404对应的第一训练标签,确定出a组数据端中的各个模型401的优化方向,并将优化方向返回给相应的数据端中的模型,以使数据端中的模型基于优化方向进行训练,最终得到训练好的模型。同理,协同器e405和协同器f406也可以基于接收到的压缩数据分别向b组数据端中的各个模型402和c组数据端中的各个模型403返回相应的优化方向,以使数据端中的模型基于优化方向进行训练,最终得到训练好的模型。其中,各个协同器对应有相应的第一训练标签,不同的协同器的第一训练标签可以为不同的维度的标签。同时,协同器d404、协同器e405和协同器f406可以在整合相应组数据端中的各个模型以确定各个模型的优化方向的过程中,基于本轮训练的数据整合结果以及第一训练标签对协同器自身模型进行训练,最终得到训练好的协同器。
91.在a、b、c组数据端中的各个模型训练好之后,可以基于训练好的模型得到训练数据,并分别将训练数据发送给协同器d404、协同器e405和协同器f406,以使协同器d404、协同器e405和协同器f406将训练数据作为整合模型407的输入数据,基于整合模型407的输入数据和预设的第二训练标签对整合模型407进行训练,得到训练好的整合模型。在这一过程中,可以预先设定融合专家经验的第一训练标签和第二训练标签,第一训练标签和第二训练标签可以相同,也可以不同。专家经验标签库中包含了预先设置的融合专家经验的多个训练标签,基于在专家经验标签库中获取第一训练标签集合和第二训练标签,能够选取融合专家经验的训练标签,使用这种训练标签进行模型训练,效果更好。基于第一训练标签集合和第二训练标签分别训练数据端中的模型和整合模型,能够实现基于不同的训练标签,
实现多维度的模型训练。此外,a、b、c组数据端中的各个模型可以将高维数据压缩成一维数据传送给业务端,保证了数据安全,并且无需基于密码学实现加密传输,降低了模型训练复杂度。相较于基于密码学进行加密传输所导致的频繁通信,采用数据压缩替代加密处理,能够减少加解密过程带来的频繁通信,降低了数据端与业务端的通信次数,从而降低了参与模型训练的各方的耦合程度,能够对参与模型训练的各方进行一定程度的解耦。
92.进一步参考图5,作为对上述各图所示方法的实现,本技术提供了一种基于联邦学习的模型训练装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
93.如图5所示,本实施例的基于联邦学习的模型训练装置500包括:标签获取单元501、第一模型训练单元502、数据获取单元503和第二模型训练单元504。
94.标签获取单元501,被配置成在专家经验标签库中获取第一训练标签集合和第二训练标签,专家经验标签库包括多个基于专家经验设置的训练标签,第一训练标签集合中包括多个不同的第一训练标签;第一模型训练单元502,被配置成对于各个数据端,在第一训练标签集合中确定该数据端对应的第一训练标签,并基于该数据端对应的第一训练标签,对该数据端中的模型进行训练;数据获取单元503,被配置成获取各个数据端根据训练好的模型发送的训练数据;第二模型训练单元504,被配置成根据训练数据和第二训练标签,对整合模型进行训练,以使训练好的整合模型对各个数据端发送的数据进行整合。
95.在本实施例的一些可选的实现方式中,第一模型训练单元502进一步被配置成:获取该数据端中的模型进行数据压缩处理后输出的压缩数据;基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向,以使该数据端中的模型根据优化方向进行训练。
96.在本实施例的一些可选的实现方式中,第一模型训练单元502进一步被配置成:响应于确定该数据端中的模型未训练好,基于各个数据端中其它数据端训练好的模型、压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
97.在本实施例的一些可选的实现方式中,第一模型训练单元502进一步被配置成:响应于确定该数据端未掉线且未出现延迟,基于压缩数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
98.在本实施例的一些可选的实现方式中,数据获取单元进一步被配置成:在各个数据端中确定未掉线且未出现延迟的目标数据端;获取目标数据端根据训练好的模型发送的训练数据。
99.在本实施例的一些可选的实现方式中,第一模型训练单元502进一步被配置成:确定该数据端对应的至少一个同组数据端;获取各个同组数据端发送的压缩处理后的同组数据;利用该数据端对应的协同器,整合同组数据和压缩数据,得到整合数据;基于整合数据和该数据端对应的第一训练标签,向该数据端中的模型返回相应的优化方向。
100.在本实施例的一些可选的实现方式中,第二模型训练单元504进一步被配置成:从训练数据中选取样本数据,并执行以下训练步骤:将样本数据输入初始模型,得到初始模型输出的输出结果;基于输出结果和第二训练标签,确定初始模型的损失函数的损失值;响应于损失值满足预设收敛条件,将初始模型作为训练好的整合模型。
101.在本实施例的一些可选的实现方式中,第二模型训练单元504进一步被配置成:响
应于损失值不满足预设收敛条件,调整初始模型中的相关参数,并在训练数据中重新选取样本数据,继续执行训练步骤。
102.应当理解,基于联邦学习的模型训练装置500中记载的单元501至单元504分别与参考图2中描述的方法中的各个步骤相对应。由此,上文针对基于联邦学习的模型训练方法描述的操作和特征同样适用于装置500及其中包含的单元,在此不再赘述。
103.进一步参考图6,作为对上述各图所示方法的实现,本技术提供了一种基于联邦学习的模型训练装置的一个实施例,该装置实施例与图3所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
104.如图6所示,本实施例的基于联邦学习的模型训练装置600包括:数据处理单元601、数据发送单元602、第三模型训练单元603、数据获取单元604和数据发送单元605。
105.数据处理单元601,被配置成将原始数据输入待训练的模型,得到待训练的模型输出的压缩处理后的压缩数据;数据发送单元602,被配置成将压缩数据发送给业务端,以使业务端根据压缩数据返回优化方向;第三模型训练单元603,被配置成根据优化方向训练待训练的模型,得到训练好的模型;数据获取单元604,被配置成获取训练好的模型输出的训练数据;数据发送单元605,进一步被配置成将训练数据发送给业务端,以使业务端基于训练数据训练整合模型。
106.在本实施例的一些可选的实现方式中,压缩数据为一维数据。
107.根据本技术的实施例,本技术还提供了一种基于联邦学习的模型训练设备和一种可读存储介质。
108.下面参考图7,其示出了根据本技术实施例的基于联邦学习的模型训练设备(例如图1中的业务端或数据端)700的框图。图7示出的数据端/业务端仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。基于联邦学习的模型训练设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本技术的实现。
109.如图7所示,该基于联邦学习的模型训练设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在基于联邦学习的模型训练设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个基于联邦学习的模型训练设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。
110.存储器702即为本技术所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本技术所提供的基于联邦学习的模型训练方法。本技术的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本技术所提供的基于联邦学习的模型训练方法。
111.存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非
瞬时计算机可执行程序以及模块,如本技术实施例中的基于联邦学习的模型训练方法对应的程序指令/模块(例如,附图5所示的标签获取单元501、第一模型训练单元502、数据获取单元503和第二模型训练单元504,或者附图6所示的数据处理单元601、数据发送单元602、第三模型训练单元603、数据获取单元604和数据发送单元605)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行基于联邦学习的模型训练设备的各种功能应用以及数据处理,即实现上述方法实施例中的基于联邦学习的模型训练方法。
112.存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据基于联邦学习的模型训练设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至执行用于存储数据的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
113.基于联邦学习的模型训练设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
114.输入装置703可接收输入的数字或字符信息,以及产生与执行用于存储数据的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
115.此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
116.这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
117.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来
将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
118.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
119.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端

服务器关系的计算机程序来产生客户端和服务器的关系。
120.根据本技术实施例的技术方案,提供一种基于联邦学习的模型训练方法,能够提升模型训练效果。
121.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本技术公开的技术方案所期望的结果,本文在此不进行限制。
122.上述具体实施方式,并不构成对本技术保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本技术的精神和原则之内所作的修改、等同替换和改进等,均应包含在本技术保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献