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

智能模型的训练方法和装置与流程

2023-01-14 20:06:51 来源:中国专利 TAG:


1.本技术涉及通信领域,并且更具体地,涉及一种智能模型的训练方法和装置。


背景技术:

2.人工智能(artificial intelligence,ai)是未来无线通信网络(如物联网)中的一类非常重要的应用。与数据集都统一汇聚到服务器,由服务器执行模型训练的传统集中式智能模型训练的应用不同,现代机器学习提出了联邦学习(federated learning)的方式,联邦学习是一种分布式智能模型训练方法,服务器为多个设备提供模型参数,由该多个设备各自基于各自的数据集执行智能模型训练后,将损失函数的梯度信息反馈给服务器,由服务器基于来自多个设备的梯度信息得到更新的模型参数。联邦学习能够解决集中式机器学习收集数据导致的耗时和大量通信开销问题。同时,由于不用将设备数据发送到服务器,也能够减少隐私安全问题。
3.然而,服务器接收到的梯度信息可能受到传输信道条件影响存在失真的情况,使得目前联邦学习进行模型训练的效率较低。


技术实现要素:

4.本技术提供了一种智能模型的训练方法和装置,能够提高智能模型训练的效率。
5.第一方面,提供了一种智能模型的训练方法,多个参与节点联合执行智能模型的训练,该方法由该多个参与节点中的一个参与节点执行。
6.该方法包括:对该智能模型执行第k次模型训练,得到第一梯度信息;向中心节点发送第一合成梯度信息,该第一合成梯度信息包括该第一梯度信息与残差梯度信息的合成信息,该残差梯度信息用于表征该第k次模型训练之前未传输至中心节点的合成梯度信息的残差估计量,其中,k为正整数。
7.根据上述方案,参与节点可以在一次模型训练后,将训练得到的梯度信息以及由参与节点估计的本次模型训练之前未传输至中心节点的残差梯度信息发送给参与节点。使得中心节点能够获取到残差梯度信息(或者称为补偿的梯度信息),能够提高损失函数的收敛速度,提高模型训练的效率。
8.结合第一方面,在第一方面的某些实现方式中,该残差梯度信息包括由加权系数加权的第二合成梯度信息的残差估计量,该第二合成梯度信息为第k次模型训练之前最近一次向中心节点发送的合成梯度信息。
9.结合第一方面,在第一方面的某些实现方式中,该方法还包括:根据该第二合成梯度信息、该第二合成梯度信息对应的传输功率和该第二合成梯度信息对应的信道信息,确定该第二合成梯度信息的残差估计量。
10.根据上述方案,第二合成梯度信息对应的传输功率和信道信息,估计第二合成梯度信息在传输过程中的损失作为残差估计量,通过第一合成梯度信息传递至中心节点,使得中心节点能够获取到残差梯度信息,能够提高损失函数的收敛速度,提高模型训练的效
率。
11.结合第一方面,在第一方面的某些实现方式中,该第二合成梯度信息具体为第q次模型训练后向该中心节点发送的合成梯度信息,其中,q为小于k的正整数;该加权系数与该第k次模型训练的学习率相关和/或与该第q次模型训练的学习率相关。
12.结合第一方面,在第一方面的某些实现方式中,该第二合成梯度信息为第q次模型训练后向中心节点发送的合成梯度信息,该残差梯度信息还包括n个梯度信息的合成信息,该n个梯度信息为该第q次模型训练之后与该第k次模型训练之前的n次模型训练得到的、且在该第k次模型训练之前未发送给中心节点的梯度信息,其中,k大于q,n=k-q-1,且q为正整数。
13.根据上述方案,残差梯度信息还包括第q次模型训练与第k次模型训练之间的n次模型训练得到的n个梯度信息的合成信息。以便中心节点既能够获取到未反馈的梯度信息又能够获取到前一次合成梯度信息的残差量,能够提高损失函数的收敛速度,提高模型训练的效率。
14.结合第一方面,在第一方面的某些实现方式中,该向中心节点发送第一合成梯度信息,包括:确定该第一合成梯度信息对应的传输功率大于功率阈值;向该中心节点发送该第一合成梯度信息。
15.结合第一方面,在第一方面的某些实现方式中,该方法还包括:若该第一合成梯度信息对应的传输功率小于或等于该功率阈值,不向该中心节点发送该第一合成梯度信息。
16.根据上述方案,在通信开销较大且信道条件较差的情况下不向中心节点发送合成梯度信息。能够减少资源浪费,提高资源利用率。
17.结合第一方面,在第一方面的某些实现方式中,该方法还包括:基于通信代价度量信息、该第一合成梯度信息对应的信道信息以及该第一合成梯度信息,确定该第一合成梯度信息的传输功率,该通信代价度量信息用于表征该一个参与节点与该中心节点之间通信的开销量。
18.结合第一方面,在第一方面的某些实现方式中,该功率阈值与通信代价度量信息成正比和/或该功率阈值与该参与节点的激活功率成正比,该通信代价度量信息用于表征该一个参与节点与该中心节点之间通信的开销量。
19.结合第一方面,在第一方面的某些实现方式中,该方法还包括:接收来自该中心节点的该通信代价度量信息。
20.根据上述方案,参与节点可以从中心节点获取通信代价度量信息,以便参与节点可以基于通信代价度量确定是否向中心节点发送合成梯度信息。
21.结合第一方面,在第一方面的某些实现方式中,该对该智能模型执行第k次模型训练,包括:接收来自该中心节点的模型参数信息;对该智能模型执行第k次模型训练,该智能模型为基于该模型参数信息配置后的模型。
22.第二方面,提供了一种智能模型的训练装置,该装置是参与节点或配置于(或用于)参与节点的模块(如芯片)。
23.该通信装置包括:处理单元,用于对该智能模型执行第k次模型训练,得到第一梯度信息;收发单元,用于向中心节点发送第一合成梯度信息,该第一合成梯度信息包括该第一梯度信息与残差梯度信息的合成信息,该残差梯度信息用于表征该第k次模型训练之前
未传输至中心节点的合成梯度信息的残差估计量,其中,k为正整数。
24.结合第二方面,在第二方面的某些实现方式中,该残差梯度信息包括由加权系数加权的第二合成梯度信息的残差估计量,该第二合成梯度信息为第k次模型训练之前最近一次向中心节点发送的合成梯度信息。
25.结合第二方面,在第二方面的某些实现方式中,该处理单元还用于根据该第二合成梯度信息、该第二合成梯度信息对应的传输功率和该第二合成梯度信息对应的信道信息,确定该第二合成梯度信息的残差估计量。
26.结合第二方面,在第二方面的某些实现方式中,该第二合成梯度信息具体为第q次模型训练后向该中心节点发送的合成梯度信息,其中,q为小于k的正整数;该加权系数与该第k次模型训练的学习率和/或该第q次模型训练的学习率相关。
27.结合第二方面,在第二方面的某些实现方式中,该第二合成梯度信息为第q次模型训练后向中心节点发送的合成梯度信息,该残差梯度信息还包括n个梯度信息的合成信息,该n个梯度信息为该第q次模型训练之后与该第k次模型训练之前的n次模型训练得到的、且在该第k次模型训练之前未发送给中心节点的梯度信息,其中,k大于q,n=k-q-1,且q为正整数。
28.结合第二方面,在第二方面的某些实现方式中,该处理单元还用于确定该第一合成梯度信息对应的传输功率大于功率阈值;该收发单元还用于在该第一合成梯度信息对应的传输功率大于功率阈值的情况下,向该中心节点发送该第一合成梯度信息。
29.结合第二方面,在第二方面的某些实现方式中,该收发单元还用于在该第一合成梯度信息对应的传输功率小于或等于该功率阈值的情况下,不向该中心节点发送该第一合成梯度信息。
30.结合第二方面,在第二方面的某些实现方式中,该处理单元用于基于通信代价度量信息、该第一合成梯度信息对应的信道信息以及该第一合成梯度信息,确定该第一合成梯度信息的传输功率,该通信代价度量信息用于表征该一个参与节点与该中心节点之间通信的开销量。
31.结合第二方面,在第二方面的某些实现方式中,该功率阈值与通信代价度量信息成正比和/或该功率阈值与该参与节点的激活功率成正比,该通信代价度量信息用于表征该一个参与节点与该中心节点之间通信的开销量。
32.结合第二方面,在第二方面的某些实现方式中,该收发单元还用于接收来自该中心节点的该通信代价度量信息。
33.结合第二方面,在第二方面的某些实现方式中,该收发单元还用于接收来自该中心节点的模型参数信息;该处理单元具体用于对该智能模型执行第k次模型训练,该智能模型为基于该模型参数信息配置后的模型。
34.第三方面,提供了一种智能模型的训练装置,包括处理器。该处理器可以实现上述第一方面以及第一方面中任一种可能实现方式中的方法。可选地,该通信装置还包括存储器,该处理器与该存储器耦合,可用于执行存储器中的指令,以实现上述第一方面以及第一方面中任一种可能实现方式中的方法。可选地,该通信装置还包括通信接口,处理器与通信接口耦合。本技术实施例中,通信接口可以是收发器、管脚、电路、总线、模块或其它类型的通信接口,不予限制。
35.在一种实现方式中,该智能模型的训练装置为参与节点。当该智能模型的训练装置为参与节点为参与节点时,该通信接口可以是收发器,或,输入/输出接口。
36.在另一种实现方式中,该智能模型的训练装置为参与节点为配置于参与节点中的芯片。当该智能模型的训练装置为参与节点为配置于参与节点中的芯片时,该通信接口可以是输入/输出接口,该处理器可以是逻辑电路。
37.该输入/输出接口用于用于向中心节点发送第一合成梯度信息,所述第一合成梯度信息包括所述第一梯度信息与残差梯度信息的合成信息,所述残差梯度信息用于表征所述第k次模型训练之前未传输至中心节点的合成梯度信息的残差估计量,其中,k为正整数;该逻辑电路用于用于对所述智能模型执行第k次模型训练,得到第一梯度信息。可选地,该通信装置还包括通信接口,处理器与通信接口耦合。
38.可选地,该收发器可以为收发电路。可选地,该输入/输出接口可以为输入/输出电路。
39.第四方面,提供了一种处理器,包括:输入电路、输出电路和处理电路。该处理电路用于通过该输入电路接收信号,并通过该输出电路发射信号,使得该处理器执行第一方面以及第一方面中任一种可能实现方式中的方法。
40.在具体实现过程中,上述处理器可以为一个或多个芯片,输入电路可以为输入管脚,输出电路可以为输出管脚,处理电路可以为晶体管、门电路、触发器和各种逻辑电路等。输入电路所接收的输入的信号可以是由例如但不限于接收器接收并输入的,输出电路所输出的信号可以是例如但不限于输出给发射器并由发射器发射的,且输入电路和输出电路可以是同一电路,该电路在不同的时刻分别用作输入电路和输出电路。本技术实施例对处理器及各种电路的具体实现方式不做限定。
41.第五方面,提供了一种计算机程序产品,该计算机程序产品包括:计算机程序(也可以称为代码,或指令),当该计算机程序被运行时,使得计算机执行上述第一方面以及第一方面中任一种可能实现方式中的方法。
42.第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行上述第一方面以及第一方面中任一种可能实现方式中的方法。
43.第七方面,提供了一种通信系统,包括前述的多个参与节点和至少一个中心节点。
44.上述第二方面至第七方面中任一方面及其任一方面中任意一种可能的实现可以达到的技术效果,请参照上述第一方面及其第一方面中相应实现可以带来的技术效果描述,这里不再重复赘述。
附图说明
45.图1是适用于本技术实施例的通信系统的一个示意图;
46.图2是本技术实施例提供的智能模型训练方法的一个示意性流程图;
47.图3是本技术实施例提供的智能模型训练方法的另一个示意性流程图;
48.图4是本技术实施例提供的多个参与节点共享传输资源的一个示意图;
49.图5是本技术的通信装置的一例的示意性框图;
50.图6是本技术的通信设备的一例的示意性结构图。
具体实施方式
51.在本技术实施例中,“/”可以表示前后关联的对象是一种“或”的关系,例如,a/b可以表示a或b;“和/或”可以用于描述关联对象存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。为了便于描述本技术实施例的技术方案,在本技术实施例中,可以采用“第一”、“第二”等字样对功能相同或相似的技术特征进行区分。该“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。在本技术实施例中,“示例性的”或者“例如”等词用于表示例子、例证或说明,被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
52.在本技术实施例中,至少一个(种)还可以描述为一个(种)或多个(种),多个(种)可以是两个(种)、三个(种)、四个(种)或者更多个(种),本技术不做限制。
53.下面将结合附图,对本技术中的技术方案进行描述。
54.本技术实施例的技术方案可以应用于各种通信系统,例如:长期演进(long term evolution,lte)系统、lte频分双工(frequency division duplex,fdd)系统、lte时分双工(time division duplex,tdd)、第五代(5th generation,5g)通信系统、未来的通信系统(如第六代(6th generation,6g)通信系统)、或者多种通信系统融合的系统等,本技术实施例不做限定。其中,5g还可以称为新无线(new radio,nr)。
55.图1是适用于本技术实施例的通信系统的示意图。
56.如图1所示,适用于本技术实施例的通信系统可以包括至少一个中心节点,以及至少一个参与节点,如图1所示的参与节点1、2、n,中心节点可以向各个参与节点提供模型参数,各个参与节点基于中心节点提供的模型参数更新模型后,采用本地数据集分别对更新后的模型进行训练。例如,参与节点1采用本地数据集1对模型进行训练,参与节点2采用本地数据集2对模型进行训练,参与节点n采用本地数据集n对模型进行训练。各个参与节点进行模型训练后向中心节点发送本次训练得到的损失函数的梯度信息。中心节点确定来自各个参与节点的梯度信息的聚合梯度信息,并基于聚合梯度信息确定更新后的模型参数,并通知各个参与节点,由各个参与节点执行下一次模型训练。
57.本技术实施例提供的中心节点可以是网络设备,例如,服务器、基站等。中心节点可以是一种部署在无线接入网中能够与参与节点进行直接或间接通信的设备。
58.本技术实施例提供的参与节点可以是终端或终端设备,参与节点可以是一种具有收发功能的设备。参与节点可以被部署在陆地上,包括室内、室外、手持、和/或车载;也可以被部署在水面上(如轮船等),示例性地,参与节点可以是传感器;参与节点还可以被部署在空中(例如飞机、气球和卫星上等)。参与节点可以是用户设备(user equipment,ue)。ue包括具有无线通信功能的手持式设备、车载设备、可穿戴设备或计算设备。示例性地,ue可以是手机(mobile phone)、平板电脑或带无线收发功能的电脑。终端设备还可以是虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、工业控制中的无线终端、无人驾驶中的无线终端、远程医疗中的无线终端、智能电网中的无线终端、智慧城市(smart city)中的无线终端、和/或智慧家庭(smart home)中的无线终端等等。
59.本技术实施例提供的技术方案可以用于在多种场景中,例如,智能零售、智慧家
庭、视频监控(video surveillance)、车辆网(如自动驾驶、无人驾驶等)、以及工业无线传感器网络(industrial wireless sens or network,iwsn)等。但本技术不限于此。
60.在一种实施方式中,本技术提供的技术方案可以应用于智能家庭,实现基于客户需求为客户提供个性化服务。中心节点可以是基站或服务器,参与节点可以是设置在各个家庭中的客户端设备。基于本技术提供的技术方案,客户端设备仅向服务器提供基于本地数据进行模型训练后通过路由器将合成梯度信息,能够在保护客户数据隐私的同时与服务器共享训练结果信息。服务器获取多个客户端设备提供的合成梯度信息的聚合梯度信息,确定更新后的模型参数并通知各个客户端设备,继续智能模型的训练,完成模型训练后客户端设备应用训练后的模型为客户提供个性化服务。
61.在另一种实施方式中,本技术提供的技术方案可以应用于工业无线传感器网络,实现工业智能化。中心节点可以是服务器,参与节点可以是工厂内的多个传感器(例如,可移动智能机器人等),传感器基于本地数据进行模型训练后向服务器发送合成梯度信息,并由服务器获基于传感器提供的合成梯度信息的聚合梯度信息,确定更新后的模型参数并通知各个传感器,继续智能模型的训练,完成模型训练后传感器应用训练后的模型为执行工厂任务,例如,传感器为可移动智能机器人,可以基于训练后的模型获取移动路线,完成工厂搬运任务、快递分拣任务等。
62.为了更好地理解本技术实施例,下面对本文中涉及到的术语做简单说明。
63.1、人工智能ai
64.人工智能ai是让机器具有学习能力,能够积累经验,从而能够解决人类通过经验可以解决的诸如自然语言理解、图像识别和/或下棋等问题。
65.2、神经网络(neural network,nn):作为人工智能的重要分支,是一种模仿动物神经网络行为特征进行信息处理的网络结构。神经网络的结构由大量的节点(或称神经元)相互联接构成。神经网络基于特定运算模型,通过对输入信息进行学习和训练达到处理信息的目的。一个神经网络包括输入层、隐藏层及输出层。输入层负责接收输入信号,输出层负责输出神经网络的计算结果,隐藏层负责特征表达等复杂的功能。隐藏层的功能由权重矩阵和对应的激活函数来表征。
66.深度神经网络(deep neural network,dnn)一般为多层结构。增加神经网络的深度和宽度,可以提高它的表达能力,为复杂系统提供更强大的信息提取和抽象建模能力。神经网络的深度可以表示为神经网络的层数。对于其中一层,神经网络的宽度可以表示为该层包括的神经元的个数。
67.dnn可以有多种构建方式,例如包括但不限于,递归神经网络(recurrent neural network,rnn)、卷积神经网络(convolutional neural network,cnn)以及全连接神经网络等。
68.3、训练(training)或学习
69.训练是指对模型(或称为训练模型)的处理过程。在该处理过程中通过优化该模型中的参数,如加权值,使该模型学会执行某项特定的任务。本技术实施例适用于但不限于以下一种或多种训练方法:监督学习、无监督学习、强化学习、和迁移学习等。有监督学习是利用一组具有已经打好正确标签的训练样本来训练。其中,已经打好正确标签是指每个样本有一个期望的输出值。与有监督学习不同,无监督学习是指一种方法,该方法没有给定事先
标记过的训练样本,自动对输入的数据进行分类或分群。
70.4、推理
71.推理是指利用训练后的模型(训练后的模型可以称为推理模型)执行数据处理。将实际数据输入推理模型进行处理,得到对应的推理结果。推理还可以称为预测或决策,推理结果还可以称为预测结果、或决策结果等。
72.5、联邦学习(federated learning)
73.一种分布式ai训练方法,将ai算法的训练过程放在多个设备上进行,而不是聚合到一个服务器上,能够解决集中式ai训练时收集数据导致的耗时和大量通信开销问题。同时,由于不用将设备数据发送到服务器,也能够减少隐私安全问题。具体过程如下:中心节点向多个参与节点发送ai模型,参与节点基于自己的数据进行ai模型训练,并将自己训练的ai模型以梯度的方式上报给中心节点。中心节点对多个参与节点反馈的梯度信息进行平均或其他运算,得到新的ai模型的参数。中心节点可以将ai模型的更新后的参数发送给多个参与节点,参与节点再次执行对ai模型的训练。不同次联邦学习过程中,中心节点选择的参与节点可能相同,也可能不同,本技术对此不做限定。
74.然而,在联邦学习中,中心节点接收到的梯度信息可能受到传输信道条件影响存在失真的情况,使得目前联邦学习进行模型训练的效率较低。本技术提出可以由参与节点向中心节点补发失真损失的部分梯度信息,使得中心节点能够获取到失真补偿。参与节点可以在一次模型训练后,将本次训练得到的梯度信息以及由参与节点估计的本次模型训练之前未传输至中心节点的残差梯度信息发送给参与节点。使得中心节点能够获取到残差梯度信息(或者称为补偿的梯度信息),能够提高损失函数的收敛速度,提高模型训练的效率。
75.下面结合附图对本技术提供的智能模型训练方法进行说明。
76.实施例一
77.图2是本技术提供的智能模型训练方法的一个示意性流程图。
78.s201,参与节点对智能模型执行第k次模型训练,得到第一梯度信息。
79.可选地,在该参与节点对智能模型执行第k次模型训练之前,该参与节点可以接收来自中心节点的模型参数信息1,第k次模型训练中训练的该智能模型为基于该模型参数信息1配置后的模型。
80.例如,参与节点在接收到该模型参数信息1之前,智能模型可以记作智能模型1,参与节点接收到该模型参数信息1后,基于该模型参数信息1配置智能模型1的参数,得到智能模型2。参与节点对智能模型2执行第k次模型训练。
81.参与节点采用用于训练的数据样本对智能模型进行训练,并计算得到第一梯度信息。
82.例如,参与节点可以在该本地数据集d中获取该第k次模型训练的随机选择数据样本ξk(d),参与节点采用该数据样本对智能模型进行训练,并计算得到第一梯度信息其中,θk为模型参数信息1指示的模型权重。可选地,该本地数据集d可以是该参与节点采集样本数据得到的样本数据集。该第一梯度信息可以简写为
83.例如,在智能家庭场景中,样本数据可以是客户偏好数据,客户端设备基于客户偏好数据对智能模型进行训练,训练后的智能模型能够基于客户需求为客户提供个性化服务。
84.再例如,在工业无线传感器网络中,样本数据可以是传感器采集到的工厂任务对应的可移动路线数据,传感器基于可移动路线数据对智能模型进行训练,训练后的智能模型能够基于工厂任务需求提供最优路线,以便传感器(例如智能机器人)可以基于最优路线完成工厂任务。
85.需要说明的是,以上仅以以上两个场景为例进行了说明,但本技术不限于此。本技术提供的方法还可以应用与其他场景中。
86.s202,该参与节点向中心节点发送第一合成梯度信息,该第一合成梯度信息包括该第一梯度信息与残差梯度信息的合成信息,该残差梯度信息用于表征该第k次模型训练之前未传输至该中心节点的合成梯度信息的残差估计量。
87.其中,k为正整数。相应地,中心节点接收来自参与节点的该第一合成梯度信息。
88.可选地,该残差梯度信息包括由加权系数加权的第二合成梯度信息的残差估计量。该第二合成梯度信息为参与节点对智能模型执行第q次模型训练后参与节点向中心节点发送的合成梯度信息,q为小于k的正整数。参与节点可以在第n次智能模型训练后得到合成梯度信息其中,n为正整数,可以记作:
[0089][0090]
其中,为第n次模型训练得到的梯度信息,an·rn
为残差梯度信息,an为加权系数。
[0091]
可选地,该加权系数an可以为1,或者,该加权系数an可以与第n次模型训练的学习率相关。
[0092]
以下以第k次智能模型训练后得到的该第一合成梯度信息即n=k为例,对残差梯度信息进行说明。
[0093][0094]
其中,ak·rk
为残差梯度信息,即第k次模型训练后得到的第一合成梯度信息中包含的残差梯度信息,该残差梯度信息包括第k次模型训练之前未传输至中心节点的合成梯度信息的残差估计量,具体地,rk中可以包括上述第二合成梯度信息的残差估计量,在该残差梯度信息ak·rk
中,该第二合成梯度信息的残差估计量被加权系数ak加权。
[0095]
下面介绍参与节点获取一个合成梯度信息的残差估计量的方法。
[0096]
参与节点发送合成梯度信息(即第n次智能模型训练后得到的合成梯度信息)的传输功率增益可以记作pn,该参与节点与中心节点之间的信道信息可以记作hn,如信道信息可以是信道衰落。该信道衰落可以是该参与节点基于参考信号进行信道估计得到的或由中心节点反馈的,本技术对此不做限定。则合成梯度信息的等效传输部分可以表示为从而可以基于下式得到合成梯度信息的残差估计量δn。
[0097][0098]
参与节点可以基于式(2)估计第q次智能模型训练后得到的第二合成梯度信息的残差估计量δq为:
[0099][0100]
在本技术实施例中,rk可以包括但不限于以下实施方式一和实施方式二:
[0101]
实施方式一,rk即为第二合成梯度信息的残差估计量δq,即rk=δq。
[0102]
也就是说,rk中包括参与节点执行第k次智能模型训练之前,最近一次发送给中心节点的一个合成梯度信息的残差估计量。在本实施例中,第k次智能模型训练之前,最近一次发送给中心节点的合成梯度信息为第q次智能模型训练后得到的合成梯度信息,即第二合成梯度信息,因此,该rk=δq。
[0103]
可选地,在本实施方式一中,该加权系数ak可以为1,或者,该加权系数ak可以与第k次模型训练的学习率和/或第q次模型训练的学习率相关。
[0104]
例如,该加权系数ak可以为第k次模型训练的学习率ηk与第q次模型训练的学习率ηq的比值但本技术不限于此。
[0105]
一个示例中,第q次模型训练为第k次模型训练的前一次模型训练,即q=k-1,也就是说,参与节点在一次模型训练后向中心节点发送的合成梯度信息中包括前一次模型训练后向中心节点发送的合成梯度信息的残差梯度信息。
[0106]
另一个示例中,第q次模型训练与第k次模型训练之间还包括n次模型训练,即q=k-n-1,该参与节点未向中心节点发送该n次模型训练后得到的梯度信息。也就是说,参与节点在一次模型训练后向中心节点发送的合成梯度信息中包括前一次向中心节点发送的合成梯度信息的残差梯度信息。
[0107]
可选地,在本实施方式一中,若该第二合成梯度信息为该参与节点第一次向中心节点发送的合成梯度信息,(如第q次训练为第一次模型训练,或者,前q-1次模型训练得到的梯度信息均未发送给中心节点)由于不存在上一次向中心节点发送的合成梯度信息(即已发送的合成梯度信息),因此不存在残差估计量,则该第二合成梯度信息仅包括第q次模型训练得到的梯度信息
[0108]
可选地,在本实施方式一中,若该第二合成梯度信息不是该参与节点第一次向中心节点发送的合成梯度信息(也就是说,在第q次模型训练之前该参与节点向中心节点发送过合成梯度信息),则该第二合成梯度信息包括该第q次模型训练得到的梯度信息以及在第q次模型训练之前的最近一次已发送给中心节点的合成梯度信息的残差梯度信息。
[0109]
根据本技术的实施方式一,参与节点合成该第一梯度信息、第二合成梯度信息的残差梯度信息发送给中心节点。以便中心节点可以获取到为前一次接收到的来自该参与节点的合成梯度信息的残差估计量,能够补偿传输过程中的数据失真,提高损失函数的收敛速度、进而提高模型训练的性能。
[0110]
实施方式二,该rk包括第二合成梯度信息的残差估计量δq以及n个梯度信息的合成信息。该n个梯度信息为第k次模型训练与第q次模型训练之间的n次模型训练后得到的、且参与节点未向中心节点发送的n个梯度信息,n=k-q-1。
[0111]
也就是说,rk中包括第k次智能模型训练的前一次智能模型训练(即第k-1次智能模型训练)得到的合成梯度信息的残差估计量,即rk=δ
k-1

[0112][0113]
在本实施方式中,由于第q次模型训练至第k次模型训练之间的n次模型训练后未向中心节点发送合成梯度信息,则该n次模型训练对应的传输功率增益pi=0,其中,i=k-1,...,k-n,则由于p
k-1
=0,则即:
[0114][0115]
继续推导可以得到:
[0116][0117]
其中,r
k-n
=δ
k-n-1=δq,rk可以记作:
[0118][0119]
因此,基于式(3),该rk包括第二合成梯度信息的残差估计量δq与n个梯度信息的合成信息。
[0120]
一个示例中,每次智能模型训练对应的加权系数an,可以为1,n为正整数。则当an=1时,rk可以如下式,即rk可以包括第q次模型训练之后与第k次模型训练之前的n次模型训练得到的梯度信息与第q次模型训练后得到的第二合成梯度信息的残差估计量的和值。
[0121][0122]
另一个示例中,该加权系数an可以与第n次模型训练的学习率和/或第n-1次模型训练的学习率相关。
[0123]
例如,该加权系数ak可以为第k次模型训练的学习率ηk与第k-1次模型训练的学习率η
k-1
的比值但本技术不限于此。
[0124]
可选地,在本实施方式二中,若该第二合成梯度信息为第一次向中心节点发送的合成梯度信息。
[0125]
一种情况中,第q次模型训练为第一次模型训练,即q=1则该第二合成梯度信息仅包括该第1次模型训练得到的梯度信息
[0126]
另一种情况中,第q次模型训练不是第一次模型训练,第q次模型训练之前的q-1模型训练后得到的合成梯度信息未发送给中心节点,即q>1,则该第二合成梯度信息中包括第q次模型训练得到的梯度信息以及前q-1次模型训练后得到的q-1个梯度信息的合成信息,由于前q-1次得到的合成梯度信息均未发送给中心节点,因此,pi=0,i=1,...,q-1,则该情况下第二合成梯度信息可以表示为:
[0127]
其中,
[0128]
可选地,在本实施方式二中,若该第二合成梯度信息不是第一次向中心节点发送的合成梯度信息,也就是说,在第q次模型训练之前该参与节点向中心节点发送过合成梯度信息,则该第二合成梯度信息包括第q次模型训练得到的梯度信息以及q次模型训
练之前的残差梯度信息,如第q次模型训练之前最近一次向中心节点发送的合成梯度信息为第三合成梯度信息,该第三合成梯度信息为第m次模型训练后得到的,则该q次模型训练之前的残差梯度信息包括由加权系数加权的第三合成梯度信息的残差估计量以及第m次模型训练之后至第q次模型训练之前的q-m-1次模型训练后得到的q-m-1个梯度信息的合成信息。则该可选地实施方式中第二合成梯度信息可以表示为:
[0129]
其中,
[0130]
可选地,中心节点或执行联邦学习的多个参与节点可以基于策略,确定是否在一次模型训练后向中心节点发送梯度信息。
[0131]
一种实施方式中,由中心节点基于策略,确定至少一个参与节点,该至少一个参与节点在模型训练后向中心节点发送梯度信息,并通知该多个参与节点是否发送梯度信息。该多个参与节点接收到来自中心节点的通知后,确定是否向中心节点发送梯度信息。
[0132]
例如,中心节点的策略可以是基于数据重要度和/或中心节点与参与节点之间的信道条件等度量,确定被调度发送梯度信息的参与节点。中心节点通知该多个参与节点是否被调度,该多个参与节点中被调度的参与节点在下一次模型训练后向中心节点发送合成梯度信息。未被调度的参与节点在下一次模型训练后不向中心节点发送合成梯度信息,将存储模型训练后得到的梯度信息。
[0133]
另一种实施方式中,由参与节点基于策略,确定模型训练后是否向中心节点发送梯度信息。
[0134]
例如,参与节点可以基于合成梯度信息的传输功率确定是否向中心节点发送合成该梯度信息。比如,当传输功率大于功率阈值时,参与节点可以向中心节点发送该合成梯度信息;当传输功率小于或等于功率阈值时,参与节点可以不向中心节点发送该合成梯度信息。可以实现参与节点基于自主判断确定是否向中心节点发送合成梯度信息。能够减少数据失真问题。在该示例中,参与节点向中心基点发送该第一合成梯度信息前,参与节点确定该第一合成梯度信息的传输功率大于功率阈值。
[0135]
根据本实施方式二的方案,在参与节点执行第k次模型训练之前,参与节点执行的n次模型训练得到的n个梯度信息未向中心节点发送。参与节点合成该第一梯度信息、第二合成梯度信息的残差梯度信息以及未向中心节点发送的n个梯度信息,发送给中心节点。以便中心节点既能够获取到未反馈的梯度信息又能够获取到前一次合成梯度信息的残差量,能够提高损失函数的收敛速度、进而提高模型训练的性能。
[0136]
实施例二
[0137]
本技术实施例二提供了一种参与节点基于策略,确定模型训练后是否向中心节点发送梯度信息的方法。需要说明的是,实施例二中与实施例一中相同的部分可以参考实施例一终中的描述,为了简要,在此不再赘述。
[0138]
参与节点在第k次模型训练后,计算第一合成梯度信息的传输功率,若该传输功率大于功率阈值,则参与节点向中心节点发送该第一合成梯度信息;若该传输功率小于或等于功率阈值,则参与节点不向中心节点发送该第一合成梯度信息。
[0139]
可选地,该功率阈值与参与节点的激活功率成正比。其中,参与节点的激活功率是指在一次传输中除用于传输信号(或信息)消耗的功率外该参与节点消耗的其他功率。例如,激活参与节点准备传输信号的过程成中消耗的功率。
[0140]
例如,该功率阈值为通信代价度量γ与该参与节点的激活功率p
on
的乘积,则该功率阈值可以记作γ
·
p
on
。其中,通信代价度量用于表征该参与节点与中心节点之间通信的开销量。γ越大对合成梯度信息的传输功率的要求越高,使得信道条件较差的参与节点向中心节点不发送合成梯度信息的可能性越大,能够基于通信代价度量在通信开销较大的情况下减少信道条件较差的参与节点发送合成梯度信息。能够减少资源浪费,提高资源利用率。
[0141]
可选地,中心节点向参与节点发送该通信代价度量(price metric),相应地,参与节点接收来自中心节点的该通信代价度量。
[0142]
例如,中心节点可以基于网络的当前负载情况、联合训练的当前损失值、来自多个参与节点的梯度信息的统计信息和数据集的先验分布信息中的一项或多项,计算通信代价度量,并通知各个参与节点。
[0143]
可选地,上述参与节点基于比较传输功率与传输功率阈值大小的方式判断是否向中心节点发送合成梯度信息可以表示为下式,具体参与节点基于比较传输功率与传输功率阈值大小,确定传输功率是否为0。
[0144][0145]
其中,|x|表示复数x的振幅,||x||2表示x的l2范数(l
2-norm),
ⅱⅱ
(a)是事件a的指示函数,如果a为真,
ⅱⅱ
(a)为1,否则为0。
[0146]
即当时,参与节点向中心节点发送第一合成梯度信息,传输功率增益为
[0147]
当时,传输功率pk=0,参与节点不向中心节点发送第一合成梯度信息。
[0148]
可选地,本实施例二可以与实施例一结合实施。
[0149]
例如,本实施例二应用于实施例一中的实施方式二时,上述rk可以记作:
[0150][0151]
当式(1)中的加权系数为1时,由于第q次模型训练至第k次模型训练之间的n次模型训练后得到的合成梯度信息未发送给中心节点,也就是说,在这n次模型训练后,参与节点基于式(5)计算得到的传输功率增益均为0,其中,p
k-1
=0带入式(6)则基于式(1)可以得到:则有:
[0152][0153]
则继续推导可以得到:
[0154][0155]
其中,r
k-n
=δ
k-n-1
=δq,与式(4),在加权系数为1的情况下,得到的rk相同。
[0156]
需要说明的是,在本实施例二中,式(1)中的该加权系数也可以不为1,例如,该加权系数ak可以为第k次模型训练的学习率ηk与第k-1次模型训练的学习率η
k-1
的比值但本技术不限于此。
[0157]
根据本技术实施例二提供的方案,参与节点基于通信代价度量,在通信开销较大且信道条件较差的情况下不向中心节点发送合成梯度信息。能够减少资源浪费,提高资源利用率。另外,参与节点向中心节点发送合成梯度信息,以便中心节点既能够获取到未反馈的梯度信息(如残差梯度信息和/或之前训练中未发送的梯度信息),能够提高损失函数的收敛速度、进而提高模型训练的性能。
[0158]
实施例三
[0159]
图3是本技术提供的智能模型训练方法的另一个示意性流程图。如图3中,参与节点1、2、3和中心节点执行联邦学习,由参与节点1、2、3执行智能模型的训练,由中心节点确定每次智能模型训练的模型权重。需要说明的是,图3以3个参与节点参与联邦学习为例进行说明,但本技术对参与节点的个数不做限定,可以是至少一个参与节点和中心节点进行联邦学习。例如,图3所示的智能模型训练方法可以应用于图1所示的系统中。
[0160]
s301,中心节点向参与联合训练的参与节点发送通信代价度量γ。
[0161]
相应地,参与节点1、2、3接收来自中心节点的通信代价度量γ。
[0162]
例如,中心节点可以基于网络的当前负载情况、联合训练的当前损失值、来自多个参与节点的梯度信息的统计信息和数据集的先验分布信息中的一项或多项,计算通信代价度量,并通知各个参与节点。
[0163]
s302,中心节点向参与联合训练的参与节点发送模型参数信息θk。
[0164]
该模型参数信息k用于参与节点调整智能模型的参数。例如,该模型参数信息k包括智能模型的权重。
[0165]
相应地,参与节点1、2、3接收来自中心节点的该模型参数信息θk。
[0166]
需要说明的是,本技术对中心节点执行上述s301和s302的先后顺序不做限定,上述通信代价度量γ和模型参数信息k可以承载在同一消息中(即s301、s302可以为同一步骤),也可以承载在不同消息中分别发送。
[0167]
例如,通信代价度量可以由中心节点周期性地发送给参与节点。参与节点采用最近一个周期内更新的通信代价度量,确定传输功率增益等。
[0168]
s303,参与节点1、2、3根据该模型参数信息θk,调整智能模型的参数。
[0169]
s304,参与联合训练的参与节点执行第k次模型训练,并判断是否向中心节点发送合成梯度信息。
[0170]
参与节点1、2、3执行第k次模型训练后,得到合成梯度信息。参与节点1、2、3可以基于上述实施例一或实施例二提供的方法得到合成梯度信息,但本技术不限于此。
[0171]
如参与节点1、2、3得到的合成梯度信息分别为合成梯度信息1、合成梯度信息2和
合成梯度信息3。参与节点1、2、3可以判断是否向中心节点发送合成梯度信息。
[0172]
例如,参与节点可以计算合成梯度信息的传输功率以确定是否向中心节点发送合成梯度信息,比如根据上述式(4)判断传输功率增益是否为0,以确定是否向中心节点发送合成梯度信息。
[0173]
本实施例中,参与节点1、3确定中心节点发送合成梯度信息,参与节点2确定不向中心节点发送合成梯度信息。
[0174]
s305,参与节点1、3向中心节点发送合成梯度信息1、合成梯度信息3。
[0175]
s306,中心节点获取合成梯度信息1、3聚合而成的聚合信息。
[0176]
一种实施方式中,参与节点1、3分别向中心节点发送合成梯度信息,中心节点分别接收到合成梯度信息1、合成梯度信息3后,聚合合成梯度信息1和合成梯度信息3,得到聚合信息。
[0177]
例如,参与节点1、3分别在不同时间资源和/或频率资源上向中心节点发送梯度信息1、合成梯度信息3。
[0178]
另一种实施方式中,中心节点为参与节点分配一个由参与节点共享的传输资源。参与节点均在该传输资源上传输合成梯度信息。
[0179]
该实施方式能够实现当多个参与节点在该传输资源上均发送多个合成梯度信息时,该多个合成梯度信息在无线信道中被聚合。中心节点在该传输资源上接收、得到聚合信息。该方式也可以成为空中聚合、空中叠加或空中计算,本技术对此不做限定。
[0180]
可选地,该传输资源上可以包括聚合导频符号(或称为公共导频符号),中心节点可以具体根据该聚合导频符号估计聚合信道的信道信息,再根据信道信息以及该传输资源上接收到的接收信号,得到聚合信息,该聚合信息可以称为无偏梯度估计信息。
[0181]
例如图4所示,中心节点为参与节点分配一块无线资源块作为合成梯度信息的传输资源,参与节点1、3在该无线资源块上分别发送合成梯度信息1、合成梯度信息3,使得合成梯度信息1、合成梯度信息3在无线资源块上实现空中聚合,中心节点在该无线资源块上接收空中聚合后的聚合信息,具体地,中心节点根据该无线资源块中包含的共享导频符号估/计信道信息,在根据信道信息以及该传输资源上接收到的接收信号,得到聚合信息。
[0182]
s307,中心节点基于聚合信息,得到模型参数信息θ
k 1

[0183]
例如,中心节点得到的聚合信息记作中心节点基于该聚合信息和模型参数信息θk,得到新的模型参数信息
[0184]
s308,中心节点向参与联合学习的参与节点发送模型参数信息θ
k 1

[0185]
相应地,参与节点1、2、3接收来自中心节点的该模型参数信息θ
k 1

[0186]
中心节点可以将更新后的通信代价度量与该模型参数信息θ
k 1
承载在同一消息中发送给参与节点1、2、3。但本技术不限于此,如前文所述通信代价度量可以不与模型参数信息承载在同一消息中,或者,中心节点以一定的周期周期性地发送通信代价度量。
[0187]
根据实施例三的方案,中心节点可以向参与节点发送通信代价度量,能够基于通信代价度量在通信开销较大的情况下减少信道条件较差的参与节点发送合成梯度信息。减少资源浪费,提高资源利用率。另外,参与节点向中心节点发送合成梯度信息,以便中心节点既能够获取到未反馈的梯度信息(如残差梯度信息和/或之前训练中未发送的梯度信
息),能够提高损失函数的收敛速度、进而提高模型训练的性能。
[0188]
以上,结合图2、图3详细说明了本技术实施例提供的方法。以下详细说明本技术实施例提供的装置。为了实现上述本技术实施例提供的方法中的各功能,各网元可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
[0189]
图5是本技术实施例提供的智能模型的训练装置的示意性框图。如图5所示,该智能模型的训练装置500可以包括处理单元510和收发单元520。
[0190]
在一种可能的设计中,该智能模型的训练装置500可对应于上文方法实施例中的参与节点,或者配置于(或用于)参与节点中的芯片,或者是其他能够实现参与节点执行的方法的装置、模块、电路或单元等。
[0191]
应理解,该智能模型的训练装置500可对应于本技术实施例的方法200、300中的参与节点,该智能模型的训练装置500可以包括用于执行图2、图3中的方法200、300中第一设备执行的方法的单元。并且,该智能模型的训练装置500中的各单元和上述其他操作和/或功能分别为了实现图2、图3中的方法200、300的相应流程。
[0192]
当该智能模型的训练装置500用于实现上述方法实施例中的参与节点执行的相应流程时,该处理单元510,对该智能模型执行第k次模型训练,得到第一梯度信息;用于收发单元520,用于向中心节点发送第一合成梯度信息,该第一合成梯度信息包括该第一梯度信息与残差梯度信息的合成信息,该残差梯度信息用于表征该第k次模型训练之前未传输至中心节点的合成梯度信息的残差估计量,其中,k为正整数。
[0193]
还应理解,该智能模型的训练装置500为配置于(或用于)参与节点中的芯片时,该智能模型的训练装置500中的收发单元520可以为芯片的输入/输出接口或电路,该智能模型的训练装置500中的处理单元510可以为芯片中的逻辑电路。
[0194]
在另一种可能的设计中,该智能模型的训练装置500可对应于上文方法实施例中的中心节点,例如,或者配置于(或用于)中心节点中的芯片,或者是其他能够实现中心节点执行的方法的装置、模块、电路或单元等。
[0195]
应理解,该智能模型的训练装置500可对应于根据本技术实施例的方法200、300中的中心节点,该智能模型的训练装置500可以包括用于执行图2、图3中的方法200、300中中心节点执行的方法的单元。并且,该智能模型的训练装置500中的各单元和上述其他操作和/或功能分别为了实现图2、图3中的方法200、300的相应流程。
[0196]
还应理解,该智能模型的训练装置500为配置于(或用于)中心节点中的芯片时,该智能模型的训练装置500中的收发单元520可以为芯片的输入/输出接口或电路,该智能模型的训练装置500中的处理单元510可以为芯片中的逻辑电路。可选地,智能模型的训练装置500还可以包括存储单元530,该存储单元530可以用于存储指令或者数据,处理单元510可以执行该存储单元中存储的指令或者数据,以使该智能模型的训练装置实现相应的操作。
[0197]
应理解,该智能模型的训练装置500中的收发单元520为可通过通信接口(如收发器或输入/输出接口)实现,例如可对应于图6中示出的通信设备600中的收发器610。该智能模型的训练装置500中的处理单元510可通过至少一个处理器实现,例如可对应于图6中示
device,pld)或其他集成芯片。
[0209]
根据本技术实施例提供的方法,本技术还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码由一个或多个处理器执行时,使得包括该处理器的装置执行图2、图3所示实施例中的方法。
[0210]
本技术实施例提供的技术方案可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、终端设备、核心网设备、机器学习设备或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,dvd))、或者半导体介质等。
[0211]
根据本技术实施例提供的方法,本技术还提供一种计算机可读存储介质,该计算机可读存储介质存储有程序代码,当该程序代码由一个或多个处理器运行时,使得包括该处理器的装置执行图2、图3所示实施例中的方法。
[0212]
根据本技术实施例提供的方法,本技术还提供一种系统,其包括前述的一个或多个第一设备。还系统还可以进一步包括前述的一个或多个第二设备。
[0213]
可选地,第一设备可以是网络设备或终端设备,第二设备可以是与第一设备通过无线链路进行通信的设备。
[0214]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0215]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0216]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献