CN116032431A - 针对分布式学习的通信压缩方法以及相关设备 - Google Patents

针对分布式学习的通信压缩方法以及相关设备 Download PDF

Info

Publication number
CN116032431A
CN116032431A CN202310125280.8A CN202310125280A CN116032431A CN 116032431 A CN116032431 A CN 116032431A CN 202310125280 A CN202310125280 A CN 202310125280A CN 116032431 A CN116032431 A CN 116032431A
Authority
CN
China
Prior art keywords
layer
parameter
parameter block
target
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310125280.8A
Other languages
English (en)
Other versions
CN116032431B (zh
Inventor
夏文
吴东磊
杨潍豪
李诗逸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Graduate School Harbin Institute of Technology
Original Assignee
Shenzhen Graduate School Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Graduate School Harbin Institute of Technology filed Critical Shenzhen Graduate School Harbin Institute of Technology
Priority to CN202310125280.8A priority Critical patent/CN116032431B/zh
Publication of CN116032431A publication Critical patent/CN116032431A/zh
Application granted granted Critical
Publication of CN116032431B publication Critical patent/CN116032431B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请实施例公开了针对分布式学习的通信压缩方法以及相关设备,用于提升通信效率。本申请实施例方法包括:将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同;从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与所述每层对应的备选参数块的第一范数的期望值相同;将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。

Description

针对分布式学习的通信压缩方法以及相关设备
技术领域
本申请实施例涉及分布式学习领域,尤其涉及针对分布式学习的通信压缩方法以及相关设备。
背景技术
目前主流的联邦学习通信压缩技术主要采用参数稀疏化、量化、索引编码等压缩技术来降低模型传输过程中的通信开销。稀疏化用于在整个模型中选出一部分变化较大的数据作为待传输的备选参数(浮点数)。量化用于对这些备选参数进行更少位数的表示,从而减少浮点数的通信开销。索引编码用于进一步压缩备选参数位置信息所需要的通信开销。
经过稀疏化后的待同步参数受到模型量化技术和位置编码算法的处理之后,真正参与联邦学习训练的参数值的可压缩性很大(约16~32倍),然而,用于标记具体的待同步参数的位置索引的可压缩性相对较小(约2~3倍)。
这导致每轮训练传输给聚合设备的数据(参数值以及对应的位置索引)中,参数值与位置索引所占的通信开销往往不够合理。尽管二者都通过了进一步的压缩操作,但是最终大部分的通信开销用于传输对模型训练无用的位置索引,因此传输效率相对低下。
发明内容
本申请实施例提供了针对分布式学习的通信压缩方法以及相关设备,用于提升数据传输效率。
本申请实施例第一方面提供一种针对分布式学习的通信压缩方法,包括:
将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同;
从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与所述每层对应的备选参数块的第一范数的期望值相同;
将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
在一种具体实现方式中,所述将目标神经网络中每层的参数划分为至少一个备选参数块,包括:
若所述目标神经网络中的任一层包含四个维度,则从通道维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的通道数量与所述任一层对应的下一层的通道数量的乘积;
若所述目标神经网络中的任一层包含两个维度,则从所述两个维度中的任一维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一维度的数量;
若所述目标神经网络中的任一层包含一个维度,则将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的参数数量。
在一种具体实现方式中,所述从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块,包括:
根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据第一缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,所述从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块,包括:
根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于所述第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的一筛参数块;
根据第二概率公式,计算每层对应的每个一筛参数块的第二概率;
基于所述第二概率以及所述预设条件,从每层对应的多个一筛参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,所述根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应,包括:
根据以下公式计算每层对应的每个备选参数块的第一概率:
Figure BDA0004081989670000031
其中,
Figure BDA0004081989670000032
表示所述目标神经网络的任一层对应的第i个备选参数块的第一概率,ti表示所述任一层对应的第i个备选参数块,T表示所述任一层对应的每个备选参数块组成的集合。
在一种具体实现方式中,所述根据第二概率公式,计算每层对应的每个一筛参数块的第二概率,包括:
根据以下公式计算每层对应的每个一筛参数块的第二概率:
Figure BDA0004081989670000033
其中,
Figure BDA0004081989670000034
表示所述目标神经网络的任一层对应的第j个一筛参数块的第二概率,
Figure BDA0004081989670000035
表示所述任一层对应的第j个一筛参数块,T1表示所述任一层对应的每个一筛参数块组成的集合。
在一种具体实现方式中,所述根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据以下公式计算每层对应的目标参数块中,每个目标参数对应的目标量级:
Figure BDA0004081989670000036
其中,
Figure BDA0004081989670000037
表示所述目标神经网络的任一层对应的第k个目标参数块对应的目标量级,T1表示所述任一层对应的一筛参数块组成的集合,T表示所述任一层对应的目标参数块组成的集合,mk表示所述任一层对应的第k个目标参数块包含的目标参数的数量;
根据预设量化条件,确定每个目标参数对应的保留符号值;
将所述每个目标参数对应的目标量级以及所述每个目标参数对应的保留符号值的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
在一种具体实现方式中,所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
将每层对应的参数块数量除以所述每层对应的每个目标参数块的商,确定为所述每层对应的每个目标参数块对应的目标量级;
将每个目标参数以及所述每个目标参数对应的目标量级的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
本申请实施例第二方面提供一种训练装置,包括:
划分单元,用于将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同;
确定单元,用于从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述确定单元,还用于基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与所述每层对应的备选参数块的第一范数的期望值相同;
发送单元,用于将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
在一种具体实现方式中,所述划分单元,具体用于若所述目标神经网络中的任一层包含四个维度,则从通道维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的通道数量与所述任一层对应的下一层的通道数量的乘积;
若所述目标神经网络中的任一层包含两个维度,则从所述两个维度中的任一维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一维度的数量;
若所述目标神经网络中的任一层包含一个维度,则将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的参数数量。
在一种具体实现方式中,所述确定单元,具体用于根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述确定单元,具体用于根据第一缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,所述确定单元,具体用于根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于所述第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的一筛参数块;
根据第二概率公式,计算每层对应的每个一筛参数块的第二概率;
基于所述第二概率以及所述预设条件,从每层对应的多个一筛参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述确定单元,具体用于根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,所述确定单元,具体用于根据以下公式计算每层对应的每个备选参数块的第一概率:
Figure BDA0004081989670000051
其中,
Figure BDA0004081989670000052
表示所述目标神经网络的任一层对应的第i个备选参数块的第一概率,ti表示所述任一层对应的第i个备选参数块,T表示所述任一层对应的每个备选参数块组成的集合。
在一种具体实现方式中,所述确定单元,具体用于根据以下公式计算每层对应的每个一筛参数块的第二概率:
Figure BDA0004081989670000061
其中,
Figure BDA0004081989670000062
表示所述目标神经网络的任一层对应的第j个一筛参数块的第二概率,
Figure BDA0004081989670000063
表示所述任一层对应的第j个一筛参数块,T1表示所述任一层对应的每个一筛参数块组成的集合。
在一种具体实现方式中,所述确定单元,具体用于根据以下公式计算每层对应的目标参数块中,每个目标参数对应的目标量级:
Figure BDA0004081989670000064
其中,
Figure BDA0004081989670000065
表示所述目标神经网络的任一层对应的第k个目标参数块对应的目标量级,T1表示所述任一层对应的一筛参数块组成的集合,T表示所述任一层对应的目标参数块组成的集合,mk表示所述任一层对应的第k个目标参数块包含的目标参数的数量;
根据预设量化条件,确定每个目标参数对应的保留符号值;
将所述每个目标参数对应的目标量级以及所述每个目标参数对应的保留符号值的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
在一种具体实现方式中,所述确定单元,具体用于将每层对应的参数块数量除以所述每层对应的每个目标参数块的商,确定为所述每层对应的每个目标参数块对应的目标量级;
将每个目标参数以及所述每个目标参数对应的目标量级的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
本申请实施例第三方面提供一种训练装置,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行第一方面所述的方法。
本申请实施例第四方面提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面所述的方法。
本申请实施例第五方面提供一种计算机存储介质,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如第一方面所述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:因为划分备选参数块时,保证了每层对应的多个备选参数块中每个备选参数块的位置索引相同。所以,在将每层对应的至少一个备选参数块以及对应的位置索引发送至聚合装置时,若任一层需要传输N个备选参数块,则这N个备选参数块包含的备选参数对应的相对位置索引均相同,因此,这N个备选参数块仅需传输任一备选参数块的位置索引,或者说仅需传输相应层所对应的位置索引,从而在相同通信量的情况下可以传递更多的参数和更少的位置索引,极大地提升了通信效率以及训练效率。
附图说明
图1为本申请实施例公开的通信压缩方法的一种流程示意图;
图2为本申请实施例公开的参数块划分和范数计算的一种流程示意图;
图3为本申请实施例公开的选择选择目标参数块的一种流程示意图;
图4为本申请实施例公开的待同步参数块压缩的一种流程示意图;
图5为本申请实施例公开的训练装置的一个结构示意图;
图6为本申请实施例公开的训练装置的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
近年来,全球进入了大数据时代,数据量呈爆炸式的增长。与此同时,构建的人工智能模型的参数量也随之急剧增加,以此来满足学习巨量数据和复杂的学习任务的需求。随着人们隐私保护意识的提高,联邦学习在人工智能领域发挥了重要的作用。然而,联邦学习中的参与方与中央服务器需要不断交换大量模型参数,通信时间、通信量、传送数据的总比特数较大,造成了较高的通信开销;其次,联邦学习越来越多地部署在通信带宽有限、电量有限的移动设备上,大量的移动客户端增加了连接受限的客户端掉队的概率,而有限的网络带宽又带来了更长的通信时间,因此通信开销和通信效率成为了联邦学习的关键瓶颈之一,研究如何降低联邦学习的通信开销变得十分必要。
传统的基于参数稀疏化的通信压缩方案主要存在三个问题:(1)经过稀疏化后的待同步参数受到模型量化技术和位置编码算法的处理之后,待同步参数与位置索引所占的通信开销往往不够合理。原因是真正参与联邦学习训练的参数值的可压缩性很大(约16-32倍),因此所占的通信开销很小。然而,用于标记具体的待同步参数的额日向hi索引的可压缩性相对较小(约2-3倍),因此占据的通信开销很相对参数值而言较大。虽然二者都进过了进一步的压缩操作,但是最终大部分的通信开销用于传输对模型训练无用的索引,因此传输效率相对低下。(2)稀疏化技术依赖于基于排序的Top-K算法来寻找变化最大的前k个元素。然而,主流的排序方法的计算复杂度相对来说比较大(一般是O(nlogk)),因此即使通信压缩能够缩短通信时间,但是额外的计算开销很容易抵消掉由通信压缩所带来的时间方面的收益。(3)在传统的Top-K稀疏化算法中,由于选出来上传的是变化较大的参数,因此丢失了变化较小的参数的信息,这会降低模型收敛的速度。因此传统的Top-K稀疏化方法里面还包括一个残差积累的步骤,它会将那些未被上传的数据信息(一般称为残差)保留在本地内存中,作为该客户端下一轮联邦学习时的信息补偿(加回到原来对应的位置)。由于残差的大小是和整个模型一样大的,因此这部分额外的开销会对于很多移动端的资源受限设备(例如物联网设备,智能手机)的内存资源造成了性能瓶颈。
为了解决上述现有技术地缺陷,本申请实施例提供了针对分布式学习的通信压缩方法以及相关设备,用于提升通信效率。
请参阅图1,本申请实施例提供一种针对分布式学习的通信压缩方法,应用于训练装置,包括以下步骤:
101、将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同。
将本方案通过研究神经网络的结构化特性,提出一种网络分块切割的方案,在训练装置完成每轮的本地训练后,将选择变化大的参数所在的参数块,并将参数块中所包含的所有参数即作为本轮的待同步参数。需要说明的是,为了减少位置索引所占的通信开销,划分参数块时应当注意,划分参数块后每层对应的每个备选参数块包含的备选参数对应的相对位置索引应一致。换句话说就是,目标神经网络的同一层(对应的每个备选参数块)包含的每个备选参数在其所属的备选参数块中的相对位置都是固定的。
在一些具体实现方式中,本步骤可以通过以下方式实现:若目标神经网络中的任一层包含四个维度,则从通道维度将任一层的参数划分为N个备选参数块,其中N为任一层的通道数量与任一层对应的下一层的通道数量的乘积;若目标神经网络中的任一层包含两个维度,则从两个维度中的任一维度将任一层的参数划分为N个备选参数块,其中N为任一维度的数量;若目标神经网络中的任一层包含一个维度,则将任一层的参数划分为N个备选参数块,其中N为任一层的参数数量。
具体的,由于神经网络可以看做是一种多层推理结构,且每一层中各参数的相对位置是固定的。利用这种性质,我们设计了一种索引共享策略来对神经网络的每一层进行切分。然而,由于不同网络的不同层的结构都可能存在维度和大小方面的差异,因此本方案把神经网络的层归纳为3类。其中对于具有4个维度的卷积层(N*W*H*C),我们将该层内的每个二维卷积核作为一个参数块(W*H);对于具有2个维度的层,例如全连接层和LSTM层(I*O),我们可以将该层看成是一个二维参数矩阵,并将该矩阵内的每一行看成是一个参数块;对于只有1个维度的层(例如bias和bn层),由于这种层本身就可以看成是一个向量,且向量中的每个元素都依附于前一层,因此我们将每个元素看成是一个数据块。比如,对于具有4个维度的卷积层(N*W*H*C)假设其为128*3*3*64。其中64为前一层的特征图的通道数(可以形象的理解为厚度),3*3为这一层的卷积核的尺寸(长*宽),128为这一层所构建的特征图的数量(即下一层特征图的通道数),以通道维度对该卷积核进行划分,可以获得128乘以64个二维卷积核。
另外,对于四维和二维的层中,由于每个数据块内所有参数的位置关系都是固定的,因此一个索引可以反映整个参数块内所有参数的位置信息。这种方式等价于提升了待同步参数和位置索引的比例关系,从原来的1:1变成了N:1。比如,对于一个5*5的矩阵而言,随机上传其中的10个参数,还需要告诉服务器这10个参数的位置索引(也就是要花20个单位的传输代价)。但是如果仅上传其中两行到服务器(依然是10个参数),由于行内的所有元素都上传了,且行内元素的相对位置是固定的,那么只需要告诉服务器上传了哪两行,因此索引数量从10减少到了2。
102、从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块。
为每层选择的目标参数块(即每层对应的目标参数块),可以是随机选择的(仅做数量限制而不做选择对象的限制),也可以是根据第一概率和/或第二概率确定的(可以保证包含的参数量大的参数块被选择为目标参数块的概率更高),此处不作具体限定。
103、基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与每层对应的备选参数块的第一范数的期望值相同。
为了保证选择目标参数块后,每层对应的目标参数块与每层对应的备选参数块的量级一致,本申请实施例还会对每个目标参数块中的目标参数进行缩放处理(即步骤103所执行的操作),得到对应的待同步参数块,以保证以实现待同步参数块在数值上的统计无偏特性。
104、将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
根据步骤101可知,同一层内每个待同步参数块对应的位置索引相同,即同一层内任一待同步参数块对应的位置索引可以认为是该层对应的位置索引。因为每层都需要发送待同步参数块,因此,直接将每个待同步参数块以及每层对应的位置索引发送给聚合装置即可完成本轮次本地训练的参数上传。
可以理解的是,只要目标神经网络的网络结构不变,则每层划分得到的备选参数块就不会变动,因此前述步骤101可以在任一轮次本地训练开始之前执行,或者在任一轮次本地训练完成之后执行,此处不作具体限定。
需要说明的是,本申请实施例所指的分布式学习可以是联邦学习也可以是分布式随机梯度下降(SGD,stochastic gradient descent),此处不作具体限定。
本申请实施例中,因为划分备选参数块时,保证了每层对应的多个备选参数块中每个备选参数块的位置索引相同。所以,在将每层对应的至少一个备选参数块以及对应的位置索引发送至聚合装置时,若任一层需要传输N个备选参数块,则这N个备选参数块的位置索引均相同,因此,这N个备选参数块仅需传输任一备选参数块的位置索引,或者说仅需传输相应层所对应的位置索引,从而在相同通信量的情况下可以传递更多的参数和更少的位置索引,极大地提升了通信效率以及训练效率。
在一些具体实现方式中,步骤102以及步骤103可以通过以下方式实现:根据第一概率公式,计算每层对应的每个备选参数块的第一概率,第一概率公式与第一范数对应;基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:根据第一缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
其中,每个备选参数块第一概率可以是基于对应的一范数、对应的无穷范数或者对应的随机采样概率(若第N层包含a个参数块,则每个参数块被选中的随机采样概率均为1/a)确定的,本实施例不作限定。具体的,当获得每个备选参数块的第一概率后,因为第一概率一定小于1的特性,可以随机生成每个备选参数块对应的一筛随机参数(任一一筛随机参数的大小一定小于1),并比较备选参数块对应的第一概率以及该备选参数块对应的一筛随机参数的大小,若对应的一筛随机参数大于等于对应的第一概率,则将对应的备选参数块确定为目标参数块;若对应的一筛随机参数小于对应的第一概率,则不执行将对应的备选参数块确定为目标参数块的操作。
更进一步的,1)若是完全随机采样,则每个参数块对应的第一概率应当为其对应的随机采样概率。
同时,相应的待同步参数块,可以通过以下方式确定:将每层对应的参数块数量除以所述每层对应的每个目标参数块的商,确定为所述每层对应的每个目标参数块对应的目标量级;将每个目标参数以及所述每个目标参数对应的目标量级的积,确定为所述每个目标参数对应的待同步参数;按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
具体的,假设共有n个备选参数块,此时每个备选参数块被采中的概率为1/n,为了保持一范数的期望不变,需要对参数块内元素(或者说参数块内参数)进行缩放,缩放的倍数为其所属备选参数块对应的第一概率的倒数,也就是n。其中m是该参数块所包含的元素个数(例如3*3的参数块,m=9。或矩阵某一行长度为100的向量,m=100)。也就是,以n为目标量级,将每个目标参数乘以对应的目标量级后得到对应的待同步参数,然后将目标参数块中每个目标参数替换为对应的待同步参数,便可以获得该目标参数块对应待同步参数块。
2)若是基于一范数的随机采样,则每个参数块对应的第一概率可以根据以下公式计算:
Figure BDA0004081989670000121
其中,
Figure BDA0004081989670000122
表示目标神经网络的任一层对应的第i个备选参数块的第一概率,ti表示任一层对应的第i个备选参数块,T表示任一层对应的每个备选参数块组成的集合。
同时,相应的待同步参数块,可以参照1)中的方式确定。也就是,对参数块内元素(或者说参数块内参数)进行缩放,缩放的倍数为其所属备选参数块对应的第一概率的倒数,也就是
Figure BDA0004081989670000123
也就是,以
Figure BDA0004081989670000124
为目标量级,将每个目标参数乘以对应的目标量级后得到对应的待同步参数,然后将目标参数块中每个目标参数替换为对应的待同步参数,便可以获得该目标参数块对应待同步参数块。
3)若是基于正无穷范数的随机采样,则每个参数块对应的第一概率可以根据以下公式计算:
Figure BDA0004081989670000131
其中,
Figure BDA0004081989670000132
表示目标神经网络的任一层对应的第j个一筛参数块的第一概率,
Figure BDA0004081989670000133
表示任一层对应的第j个一筛参数块,T1表示任一层对应的每个一筛参数块组成的集合。
同时,相应的待同步参数块,参照1)中的方式确定。也就是,对参数块内元素(或者说参数块内参数)进行缩放,缩放的倍数为其所属备选参数块对应的第一概率的倒数,也就是
Figure BDA0004081989670000134
也就是,以
Figure BDA0004081989670000135
为目标量级,将每个目标参数乘以对应的目标量级后得到对应的待同步参数,然后将目标参数块中每个目标参数替换为对应的待同步参数,便可以获得该目标参数块对应待同步参数块。
可以理解的是,前述步骤103中确定出的待同步参数块除了可以是根据待同步参数组成的,还存在其他方式。为了进一步压缩通信开销,考虑到同一目标参数块中的每个目标参数均需要乘以对应的目标量级(同一目标参数块中每个目标参数对应的目标量级,就是其所属目标参数块对应的目标量级)才可以得到目标参数,直接将每个目标参数块以及每个目标参数块对应的目标量级作为该目标参数块对应的待同步参数块。具体的每个待同步参数可以有聚合装置根据每个目标参数块以及每个目标参数块对应的目标量级的乘积算得。
在另一些具体实现方式中,步骤102以及步骤103还可以通过以下方式实现:根据第一概率公式,计算每层对应的每个备选参数块的第一概率,第一概率公式与第一范数对应;基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的一筛参数块;根据第二概率公式,计算每层对应的每个一筛参数块的第二概率;基于第二概率以及预设条件,从每层对应的多个一筛参数块中选择至少一个参数块,确定为每层对应的目标参数块;基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
具体的,首先根据对应的第一概率,从每层对应的备选参数块中选择至少一个参数块作为一筛参数块。然后根据对应的第二概率,从每层对应一筛参数块中选择部分参数块作为目标参数块。其中,根据对应的第一概率以及预设条件确定每层的一筛参数块,以及根据对应的第二概率以及预设条件确定每层的目标参数块,的具体实现方式可以参照前述相关实施例,此处不再赘述。
需要说明的是,若第一概率是基于一范数计算得到,则第二概率是基于正无穷范数计算得到;若第一概率是基于正无穷范数计算得到,则第二概率是基于一范数计算得到,具体的,第一概率和第二概率的计算公式可以参照前述相关实施例。
进一步的,1)若第一概率是基于一范数计算得到且第二概率是基于正无穷范数计算得到,则相应的待同步参数块,可以通过以下方式确定:根据以下公式(即第二缩放公式)计算每层对应的目标参数块中,每个目标参数对应的目标量级:
Figure BDA0004081989670000141
其中,
Figure BDA0004081989670000142
表示目标神经网络的任一层对应的第k个目标参数块对应的目标量级,T1表示任一层对应的一筛参数块组成的集合,T表示任一层对应的目标参数块组成的集合,mk表示任一层对应的第k个目标参数块包含的目标参数的数量;根据预设量化条件,确定每个目标参数对应的保留符号值;将每个目标参数对应的目标量级以及每个目标参数对应的保留符号值的积,确定为每个目标参数对应的待同步参数;按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
其中,若目标参数为正数,则目标参数对应的保留符号值为1;若目标参数为负数,则目标参数对应的保留符号值为-1,此处不作限定。进一步的,与前述相关实施例类似,为了进一步压缩通信开销,考虑到同一目标参数块中的每个目标参数对应的保留符号值均需要乘以对应的目标量级(同一目标参数块中每个目标参数对应的目标量级,就是其所属目标参数块对应的目标量级)才可以得到目标参数,直接将每个目标参数块中每个目标对应的保留符号值以及每个目标参数块对应的目标量级作为该目标参数块对应的待同步参数块。具体的每个待同步参数可以有聚合装置根据每个目标参数块以及每个目标参数块对应的目标量级的乘积算得。相较于使用多个字节保存每个目标参数块对应的待同步参数,仅使用一个字节保存每个目标参数对应的保留符号值、以及所属目标参数块对应的目标量级作为待同步参数块,大大减少了待同步参数块所占用的通信资源。
2)若第一概率是基于正无穷范数计算得到且第二概率是基于一范数计算得到,则对应的相应的待同步参数块,可以参照前述相关实施例确定。
在前述实施例的基础上,为了更进一步地实现减少通信开销,前述步骤104具体可以通过以下方式实现:对每层对应的位置索引执行LZMA无损编码,获得每层对应的目标位置索引;将每层对应的待同步参数块以及每层对应的目标位置索引发送至聚合装置。
前面描述了本申请实施例的通信压缩方案的多种具体实施例,下面在联邦学习的具体场景下,描述本申请实施例的通信压缩方案。
为了改善现有技术方案中位置索引所占用的大量的通信消耗,本方案通过研究神经网络的结构化特性,提出一种网络分块切割的方案,将仅选择变化大的参数改变为选择变化大的参数所在的参数块(如图2所示),其中这些参数块中所包含的所有参数即作为本方案待发送的待同步参数。
具体来说,由于神经网络可以看做是一种多层推理结构,且每一层中各参数的相对位置是固定的。利用这种性质,我们设计了一种索引共享策略来对神经网络的每一层进行切分。然而,由于不同网络的不同层的结构都可能存在维度和大小方面的差异,因此本方案把神经网络的层归纳为3类。其中对于具有4个维度的卷积层(N*W*H*C),我们将该层内的每个二维卷积核作为一个参数块(W*H);对于具有2个维度的层,例如全连接层和LSTM层(I*O),我们可以将该层看成是一个二维参数矩阵,并将该矩阵内的每一行看成是一个参数块;对于只有1个维度的层(例如bias和bn层),由于这种层本身就可以看成是一个向量,且向量中的每个元素(也就是参数)都依附于前一层,因此我们将每个元素看成是一个数据块。
需要注意的是,因为只有一个维度的层中每个元素都依赖于前一层中的某个参数,一维的层对应的目标参数块,需要根据依赖的层的目标参数块确定,而非根据随机采样、第一概率或第二概率。也就是说,比如,当某个卷积层里的第五个参数块被选中上传,后面的bias或bn层(一维层)中对应的第五个参数点也会被选中发送。
接下来,为了为每一层选出一定数量的数据块上传给服务器,我们设计了一种基于期望无偏的两阶段随机化参数选择算法来选出我们想要的参数块。为此,我们对这些划分出来的备选数据块计算他们两个重要的指标:一范数和无穷范数(注意1维的层的目标参数块根据依赖的层对应的目标参数块确定,不需要计算)。这两个指标将作为接下来选择算法计算每个参数块被选中概率的重要依据(如图2所示)。
接着,根据前述中切出来的每层对应的备选参数块以及每个备选参数块所携带的两个重要指标(一范数和无穷范数),我们提出了一种基于期望无偏的两阶段随机化的参数选择策略对这些参数块进行筛选。具体来说,我们对每一层的备选参数块依次执行以下步骤:
(1)基于一范数的随机采样:根据每个参数块的一范数来计算每个备选参数块被选中的概率(即第一概率),其概率的计算方式如下式所示:
Figure BDA0004081989670000161
其中,
Figure BDA0004081989670000162
表示第T层对应的第i个备选参数块的第一概率,T表示由参数块为单位组成的神经网络层,ti表示该层内的第i个参数块,||·||1返回L1范数。因此式二是通过每个参数块的量级(也就是其一范数)来确定其被选中的概率。比如,若某一个卷积层有三个卷积核,则对应的式二的分母是三者中一范数的最大值,分子则是各自的一范数。
通过式二,为每一个网络层其备选参数块被选中的概率随机返回一部分的参数块作为一筛参数块。例如一个卷积层有三个卷积核(即三个备选参数块),通过式2计算出来被选中的概率分别是2/7,1/7,4/7。那么可以通过计算机随机模拟来确定某一个卷积核是否被选中。由于随机选择这个步骤的时间复杂度O(n)小于根据Top-K排序的时间复杂度O(nlogk),因此这一步的计算代价比传统的基于Top-K更小。
(2)基于无穷范数的随机采样:根据以上步骤,已经为每一层选出若干个一筛参数块。然而,仅仅通过第一步的随机采样,一般只能过滤掉百分之七十左右的备选参数块,相比于传统方法能实现过滤掉百分之九十以上的参数量,但此时剩下的通信开销仍然较大。因此提出了第二阶段的基于无穷范数的随机采样策略,即继续在每层对应的一筛参数块中确定一部分目标数据块。具体的采样方法和第二步类似,首先根据式三计算每个一筛参数块被选中的概率(即第二概率):
Figure BDA0004081989670000171
类似地,
Figure BDA0004081989670000172
表示第T层对应的第j个一筛参数块的第二概率,T1表示由经过一范数采样后该层对应的一筛参数块所组成的集合,
Figure BDA0004081989670000173
表示前述集合内的第j个参数块,||·||表示返回正无穷范数。然后基于第二概率进行第二筛选,确定每层对应的目标参数块。通过第二步随机选择,我们又进一步采样出了更少的一部分参数块(即目标参数块),实验证明通过以上两步选择方案能够有效的过滤掉百分之九十五以上的备选参数块。
(3)参数的量级的无偏表征:由于以上参数块划分、基于一范数的随机采样、以及基于正无穷范数的随机采样,丢弃了很多参数信息,会导致目标神经网络训练时的收敛速度减慢。为了避免现有技术方案中的内存开销,同时维护模型收敛速度,我们提出了一种基于参数量级无偏的尺度缩放算法。具体来说,对每层对应的目标参数块的量级进行缩放,其中目标参数块的量级用的是每个参数块的一范数表示。以实现参数块在数值上的统计无偏特性。具体来说,我们会将选出来的参数块内部的参数做二值符号表示,即参数块中的每个参数用一个比特来表示正或负。然后我们会为每个参数赋予新的量级S,计算方式如下:
Figure BDA0004081989670000174
其中
Figure BDA0004081989670000175
表示第T层对应的第k个目标参数块对应的目标量级,T1表示第T层对应的一筛参数块组成的集合,T表示第T层对应的目标参数块组成的集合,mk表示第T层对应的第k个目标参数块包含的目标参数的数量。通过该方法,我们能够理论上证明经过我们设计的两阶段随机采样后的所到参数块在量级上的数学期望和采样前的网络层相等。得益于以上参数块的量级上的统计无偏特性,我们能在不积累未选中参数的情况下,有效地的维护模型的训练精度,极大地节省本地积累的内存开销。具体可参照图3,其中,图3中第一列数字(0.91开头往下的)代表每个备选参数块被采样的一范数。第二列数字(p=0.91/0.91开头往下的)代表每个备选参数块的第一概率。第三列数字(0.015开头往下的)代表每个一筛参数块的无穷范数。第四列数字(p=0.015/0.015开头往下的)代表每个一筛参数块在第二阶段被采样的第二概率(第一阶段采样对应的其实就是基于一范数的采样,第二阶段采样其实就是基于无穷范数的采样)。
前面确定了本轮联邦学习中所需要上传到聚合装置的待同步参数块,然而,目标参数块的位置索引和参数值仍具有进一步压缩的可能。具体来说,本方案对每个目标参数块的索引进行LZMA无损编码,对每个参数块的参数值进行1比特符号量化(实际上这一步已经在之前进行参数量级赋值的时候做过了)。这里需要注意的是,每个参数块内部的元素虽然被量化成了1比特(例如0和1分别代表正数和负数)。但是在聚合装置会将接收到的每个目标参数块包含的每个元素还原成对应的参数块量级S(即在保留符号的情况下直接把绝对值赋值乘S即可)。具体效果可参照图4。
本申请实施例中,首先,基于参数块的通信策略能有效减少传输的数据中位置索引的比例,从而在相同通信量的情况下传递更多的参数值和更少的位置索引,极大地提升了训练效率。其次,基于随机采样的策略不仅在时间复杂度上优于传统的基于排序的Top-K算法,而且采样的对象由原来的单个参数变成了参数块,由于网络层中参数块的数量远小于参数值的数量,进一步节省了计算时间。最后,由于我们提出的基于参数块量级统计无偏的参数表征方法能够有效维护模型收敛速度,且无需引入额外的内存开销来存放未被选中的参数块,因此相比于传统的top-K的残差积累技术能够有效节省内存资源。
在大量的主流卷积神经网络模型和数据集上进行实验上述通信压缩方案,结果证明在不降低模型收敛性能和准确率的前提下,较传统的模型压缩联邦学习方案的压缩率可提升1.2倍到29.1倍。
请参阅图5,本申请实施例提供一种训练装置,包括:
划分单元501,用于将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同;
确定单元502,用于从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
确定单元502,还用于基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与每层对应的备选参数块的第一范数的期望值相同;
发送单元503,用于将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
在一种具体实现方式中,划分单元501,具体用于若目标神经网络中的任一层包含四个维度,则从通道维度将任一层的参数划分为N个备选参数块,其中N为任一层的通道数量与任一层对应的下一层的通道数量的乘积;
若目标神经网络中的任一层包含两个维度,则从两个维度中的任一维度将任一层的参数划分为N个备选参数块,其中N为任一维度的数量;
若目标神经网络中的任一层包含一个维度,则将任一层的参数划分为N个备选参数块,其中N为任一层的参数数量。
在一种具体实现方式中,确定单元502,具体用于根据第一概率公式,计算每层对应的每个备选参数块的第一概率,第一概率公式与第一范数对应;
基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
确定单元502,具体用于根据第一缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,确定单元502,具体用于根据第一概率公式,计算每层对应的每个备选参数块的第一概率,第一概率公式与第一范数对应;
基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的一筛参数块;
根据第二概率公式,计算每层对应的每个一筛参数块的第二概率;
基于第二概率以及预设条件,从每层对应的多个一筛参数块中选择至少一个参数块,确定为每层对应的目标参数块;
确定单元502,具体用于根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
在一种具体实现方式中,确定单元502,具体用于根据以下公式计算每层对应的每个备选参数块的第一概率:
Figure BDA0004081989670000201
其中,
Figure BDA0004081989670000202
表示目标神经网络的任一层对应的第i个备选参数块的第一概率,ti表示任一层对应的第i个备选参数块,T表示任一层对应的每个备选参数块组成的集合。
在一种具体实现方式中,确定单元502,具体用于根据以下公式计算每层对应的每个一筛参数块的第二概率:
Figure BDA0004081989670000203
其中,
Figure BDA0004081989670000204
表示目标神经网络的任一层对应的第j个一筛参数块的第二概率,
Figure BDA0004081989670000205
表示任一层对应的第j个一筛参数块,T1表示任一层对应的每个一筛参数块组成的集合。
在一种具体实现方式中,确定单元502,具体用于根据以下公式计算每层对应的目标参数块中,每个目标参数对应的目标量级:
Figure BDA0004081989670000206
其中,
Figure BDA0004081989670000207
表示目标神经网络的任一层对应的第k个目标参数块对应的目标量级,T1表示任一层对应的一筛参数块组成的集合,T表示任一层对应的目标参数块组成的集合,mk表示任一层对应的第k个目标参数块包含的目标参数的数量;
根据预设量化条件,确定每个目标参数对应的保留符号值;
将每个目标参数对应的目标量级以及每个目标参数对应的保留符号值的积,确定为每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
在一种具体实现方式中,确定单元502,具体用于将每层对应的参数块数量除以每层对应的每个目标参数块的商,确定为每层对应的每个目标参数块对应的目标量级;
将每个目标参数以及每个目标参数对应的目标量级的积,确定为每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
图6是本申请实施例提供的一种训练装置结构示意图,该训练装置600可以包括一个或一个以上中央处理器(central processing units,CPU)601和存储器605,该存储器605中存储有一个或一个以上的应用程序或数据。
其中,存储器605可以是易失性存储或持久存储。存储在存储器605的程序可以包括一个或一个以上模块,每个模块可以包括对训练装置中的一系列指令操作。更进一步地,中央处理器601可以设置为与存储器605通信,在训练装置600上执行存储器605中的一系列指令操作。
训练装置600还可以包括一个或一个以上电源602,一个或一个以上有线或无线网络接口603,一个或一个以上输入输出接口604,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器601可以执行前述图1至图5所示实施例中训练装置所执行的操作,具体此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述的针对分布式学习的通信压缩方法。

Claims (10)

1.一种针对分布式学习的通信压缩方法,其特征在于,应用于训练装置,包括:
将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数对应的相对位置索引相同;
从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与所述每层对应的备选参数块的第一范数的期望值相同;
将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
2.根据权利要求1所述的方法,其特征在于,所述将目标神经网络中每层的参数划分为至少一个备选参数块,包括:
若所述目标神经网络中的任一层包含四个维度,则从通道维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的通道数量与所述任一层对应的下一层的通道数量的乘积;
若所述目标神经网络中的任一层包含两个维度,则从所述两个维度中的任一维度将所述任一层的参数划分为N个备选参数块,其中N为所述任一维度的数量;
若所述目标神经网络中的任一层包含一个维度,则将所述任一层的参数划分为N个备选参数块,其中N为所述任一层的参数数量。
3.根据权利要求1所述的方法,其特征在于,所述从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块,包括:
根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据第一缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
4.根据权利要求1所述的方法,其特征在于,所述从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块,包括:
根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应;
基于所述第一概率以及预设条件,从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的一筛参数块;
根据第二概率公式,计算每层对应的每个一筛参数块的第二概率;
基于所述第二概率以及所述预设条件,从每层对应的多个一筛参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块。
5.根据权利要求4所述的方法,其特征在于,所述根据第一概率公式,计算每层对应的每个备选参数块的第一概率,所述第一概率公式与所述第一范数对应,包括:
根据以下公式计算每层对应的每个备选参数块的第一概率:
Figure FDA0004081989650000021
其中,
Figure FDA0004081989650000022
表示所述目标神经网络的任一层对应的第i个备选参数块的第一概率,ti表示所述任一层对应的第i个备选参数块,T表示所述任一层对应的每个备选参数块组成的集合。
6.根据权利要求5所述的方法,其特征在于,所述根据第二概率公式,计算每层对应的每个一筛参数块的第二概率,包括:
根据以下公式计算每层对应的每个一筛参数块的第二概率:
Figure FDA0004081989650000023
其中,
Figure FDA0004081989650000024
表示所述目标神经网络的任一层对应的第j个一筛参数块的第二概率,
Figure FDA0004081989650000025
表示所述任一层对应的第j个一筛参数块,T1表示所述任一层对应的每个一筛参数块组成的集合。
7.根据权利要求6所述的方法,其特征在于,所述根据第二缩放公式以及每层对应的目标参数块,确定每层对应的待同步参数块,包括:
根据以下公式计算每层对应的目标参数块中,每个目标参数对应的目标量级:
Figure FDA0004081989650000031
其中,
Figure FDA0004081989650000032
表示所述目标神经网络的任一层对应的第k个目标参数块对应的目标量级,T1表示所述任一层对应的一筛参数块组成的集合,T表示所述任一层对应的目标参数块组成的集合,mk表示所述任一层对应的第k个目标参数块包含的目标参数的数量;
根据预设量化条件,确定每个目标参数对应的保留符号值;
将所述每个目标参数对应的目标量级以及所述每个目标参数对应的保留符号值的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
8.根据权利要求1所述的方法,其特征在于,所述基于每层对应的目标参数块,确定每层对应的待同步参数块,包括:
将每层对应的参数块数量除以所述每层对应的每个目标参数块的商,确定为所述每层对应的每个目标参数块对应的目标量级;
将每个目标参数以及所述每个目标参数对应的目标量级的积,确定为所述每个目标参数对应的待同步参数;
按照对应的目标参数在对应的目标参数块中的位置组装每个待同步参数,得到每个目标参数块对应的待同步参数块。
9.一种训练装置,其特征在于,包括:
划分单元,用于将目标神经网络中每层的参数划分为至少一个备选参数块,其中每层对应的多个备选参数块中每个备选参数块包含的备选参数块对应的相对位置索引相同;
确定单元,用于从每层对应的多个备选参数块中选择至少一个参数块,确定为每层对应的目标参数块;
所述确定单元,还用于基于每层对应的目标参数块,确定每层对应的待同步参数块,其中待同步参数块与目标参数块一一对应,每层对应的待同步参数块的第一范数的期望值、与所述每层对应的备选参数块的第一范数的期望值相同;
发送单元,用于将每层对应的待同步参数块以及每层对应的位置索引发送至聚合装置。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如权利要求1至8中任一项所述的方法。
CN202310125280.8A 2023-02-06 2023-02-06 针对分布式学习的通信压缩方法以及相关设备 Active CN116032431B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310125280.8A CN116032431B (zh) 2023-02-06 2023-02-06 针对分布式学习的通信压缩方法以及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310125280.8A CN116032431B (zh) 2023-02-06 2023-02-06 针对分布式学习的通信压缩方法以及相关设备

Publications (2)

Publication Number Publication Date
CN116032431A true CN116032431A (zh) 2023-04-28
CN116032431B CN116032431B (zh) 2023-09-12

Family

ID=86091369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310125280.8A Active CN116032431B (zh) 2023-02-06 2023-02-06 针对分布式学习的通信压缩方法以及相关设备

Country Status (1)

Country Link
CN (1) CN116032431B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110633805A (zh) * 2019-09-26 2019-12-31 深圳前海微众银行股份有限公司 纵向联邦学习系统优化方法、装置、设备及可读存储介质
US20200167659A1 (en) * 2018-11-27 2020-05-28 Electronics And Telecommunications Research Institute Device and method for training neural network
CN111242287A (zh) * 2020-01-15 2020-06-05 东南大学 一种基于通道l1范数剪枝的神经网络压缩方法
WO2021189906A1 (zh) * 2020-10-20 2021-09-30 平安科技(深圳)有限公司 基于联邦学习的目标检测方法、装置、设备及存储介质
CN114118402A (zh) * 2021-10-12 2022-03-01 重庆科技学院 基于分组注意力机制的自适应剪枝模型压缩算法
CN114422606A (zh) * 2022-03-15 2022-04-29 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 联邦学习的通信开销压缩方法、装置、设备及介质
WO2022105714A1 (zh) * 2020-11-23 2022-05-27 华为技术有限公司 数据处理方法、机器学习的训练方法及相关装置、设备
CN114595835A (zh) * 2022-05-07 2022-06-07 腾讯科技(深圳)有限公司 基于联邦学习的模型训练方法及装置、设备、存储介质
CN115359298A (zh) * 2022-08-24 2022-11-18 南京理工大学 基于稀疏神经网络的联邦元学习图像分类方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200167659A1 (en) * 2018-11-27 2020-05-28 Electronics And Telecommunications Research Institute Device and method for training neural network
CN110633805A (zh) * 2019-09-26 2019-12-31 深圳前海微众银行股份有限公司 纵向联邦学习系统优化方法、装置、设备及可读存储介质
CN111242287A (zh) * 2020-01-15 2020-06-05 东南大学 一种基于通道l1范数剪枝的神经网络压缩方法
WO2021189906A1 (zh) * 2020-10-20 2021-09-30 平安科技(深圳)有限公司 基于联邦学习的目标检测方法、装置、设备及存储介质
WO2022105714A1 (zh) * 2020-11-23 2022-05-27 华为技术有限公司 数据处理方法、机器学习的训练方法及相关装置、设备
CN114118402A (zh) * 2021-10-12 2022-03-01 重庆科技学院 基于分组注意力机制的自适应剪枝模型压缩算法
CN114422606A (zh) * 2022-03-15 2022-04-29 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 联邦学习的通信开销压缩方法、装置、设备及介质
CN114595835A (zh) * 2022-05-07 2022-06-07 腾讯科技(深圳)有限公司 基于联邦学习的模型训练方法及装置、设备、存储介质
CN115359298A (zh) * 2022-08-24 2022-11-18 南京理工大学 基于稀疏神经网络的联邦元学习图像分类方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
QIYING FENG等: ""Compressed auto-encoder building block for deep learning network"", 《2016 3RD INTERNATIONAL CONFERENCE ON INFORMATIVE AND CYBERNETICS FOR COMPUTATIONAL SOCIAL SYSTEMS》 *
SHUYU ZHANG等: ""QD-Compressor: a Quantization-based Delta Compression Framework for Deep Neural Networks"", 《2021 IEEE 39TH INTERNATIONAL CONFERENCE ON COMPUTER DESIGN》 *
郭庆北: ""深度卷积神经网络的压缩与加速技术的研究"", 《中国博士学位论文全文数据库》 *
陆晔;祝涵珂;黄海涛;: "深度学习模型压缩方法及产品研究", 电信科学, no. 1 *

Also Published As

Publication number Publication date
CN116032431B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
Caldas et al. Expanding the reach of federated learning by reducing client resource requirements
CN102246165B (zh) 利用压缩梯度直方图来代表和标识特征描述符的方法和装置
CN114581544A (zh) 图像压缩方法、计算机设备及计算机存储介质
WO2020207410A1 (zh) 一种数据压缩方法、电子设备及存储介质
CN113595993B (zh) 边缘计算下模型结构优化的车载感知设备联合学习方法
CN111126595A (zh) 一种神经网络的模型压缩的方法和设备
WO2022028197A1 (zh) 一种图像处理方法及其设备
CN112463784A (zh) 数据去重方法、装置、设备及计算机可读存储介质
CN114745553A (zh) 一种基于大数据的图像数据存储方法
Klöwer et al. Compressing atmospheric data into its real information content
CN113630125A (zh) 数据压缩、编码解压缩方法、装置、电子设备及存储介质
CN115496970A (zh) 图像任务模型的训练方法、图像识别方法以及相关装置
CN112819157A (zh) 神经网络训练的方法及装置、智能行驶控制的方法及装置
Hu et al. Delta-DNN: Efficiently compressing deep neural networks via exploiting floats similarity
CN115361559A (zh) 图像编码方法、图像解码方法、装置以及存储介质
CN117811586A (zh) 数据编码方法及装置、数据处理系统、设备及介质
CN117095685B (zh) 一种联发科平台终端设备及其控制方法
CN116032431B (zh) 针对分布式学习的通信压缩方法以及相关设备
CN111582284B (zh) 用于图像识别的隐私保护方法、装置和电子设备
CN112396166A (zh) 基于混合粒度聚合器的图卷积神经网络训练方法及装置
CN116629375A (zh) 模型处理方法以及系统
CN116542311A (zh) 神经网络模型压缩方法和系统
CN114501011A (zh) 图像压缩方法、图像解压缩方法及装置
CN115982634A (zh) 应用程序分类方法、装置、电子设备及计算机程序产品
CN116491115A (zh) 用于视频编码的具有反馈控制的速率控制机器学习模型

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant