CN116306912A - 一种分布式联邦学习的模型参数更新方法 - Google Patents
一种分布式联邦学习的模型参数更新方法 Download PDFInfo
- Publication number
- CN116306912A CN116306912A CN202310038567.7A CN202310038567A CN116306912A CN 116306912 A CN116306912 A CN 116306912A CN 202310038567 A CN202310038567 A CN 202310038567A CN 116306912 A CN116306912 A CN 116306912A
- Authority
- CN
- China
- Prior art keywords
- gradient
- model parameters
- round
- edge node
- matrix
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000011159 matrix material Substances 0.000 claims abstract description 68
- 238000011176 pooling Methods 0.000 claims abstract description 40
- 238000012549 training Methods 0.000 claims abstract description 37
- 238000007906 compression Methods 0.000 claims abstract description 21
- 230000006835 compression Effects 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 19
- 238000010801 machine learning Methods 0.000 abstract description 5
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000013144 data compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于机器学习领域,其公开了一种分布式联邦学习的模型参数更新方法,解决现有技术中在模型参数更新过程中采用的通信压缩方案存在的由于丢弃了梯度数值隐含的局部相关性信息带来的精度损失和收敛率降低的问题。本发明中,边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵,然后,采用池化算子将梯度值矩阵进行压缩,获得当前轮次的稀疏化梯度矩阵并上传中心服务器;中心服务器根据接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵,利用分布式梯度下降算法对当前轮次模型参数进行更新,获得更新的模型参数,若该模型参数达到要求的预设精度,则将其作为最终模型参数输出,否则,则将更新的模型参数再次分发到各边缘节点,进行下一轮次的迭代。
Description
技术领域
本发明属于机器学习领域,具体涉及一种分布式联邦学习的模型参数更新方法。
背景技术
近年来,深度神经网络已经成为解决许多机器学习问题的重要方法,特别是卷积神经网络得到了快速发展,并应用于计算机视觉、自然语言处理等领域。随着训练数据量的增加和深度神经网络复杂性的提高,分布式机器学习被广泛用于训练这些大规模的深度神经网络,使训练时间大大缩短。
而联邦学习是一种流行高效的分布式机器学习范式和框架。使用联邦学习对模型进行建模与训练时,采取的均为服务器-边缘节点架构模式。服务器负责整个联邦学习任务的模型更新与所有边缘节点的任务调度。边缘节点通过其本地的数据对服务器分配的模型参数进行计算,并将计算结果传输到服务器,服务器对于接收到的参数进行聚合来更新全局参数,然后将更新的全局参数下发到每个边缘节点。如此循环往复,直到模型收敛。
在某一些情况下,一些神经网络在处理大规模训练数据时需要大量的模型参数,这导致通信开销成为训练过程中的主要瓶颈,其中参数的通信时间远超过计算时间。为了缓解上述场景下的通信压力,现有技术中在模型参数更新过程中采用了基于量化的通信压缩方法和基于稀疏化的通信压缩方法来减少通信带宽。然而,由于此两种方法丢弃了梯度数值隐含的局部相关性信息,会造成精度损失和收敛率降低的问题。
发明内容
本发明所要解决的技术问题是:提出一种分布式联邦学习的模型参数更新方法,解决现有技术中在模型参数更新过程中采用的通信压缩方案存在的由于丢弃了梯度数值隐含的局部相关性信息带来的精度损失和收敛率降低的问题。
本发明解决上述技术问题采用的技术方案是:
一种分布式联邦学习的模型参数更新方法,应用于包括中心服务器和多个边缘节点的分布式架构,该方法包括:中心服务器指定参与训练的边缘节点,初始化模型参数、损失函数和训练超参数信息,并分发至所指定的各边缘节点;分布式架构按照迭代轮次执行以下步骤:
S1、各被指定的边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵;
S2、各被指定的边缘节点采用池化算子对步骤S1中计算获得的梯度值矩阵进行压缩,获得当前轮次的稀疏化梯度矩阵并上传中心服务器;
S3、中心服务器根据接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵,利用分布式梯度下降算法对当前轮次模型参数进行更新,获得下一轮次模型参数;
S4、中心服务器判断下一轮次模型参数是否达到预设精度,若是,则输出下一轮次模型参数作为最终模型参数,否则,将下一轮次模型参数分发给各被指定的边缘节点,返回步骤S1,进入下一轮次的迭代。
进一步的,所述训练超参数信息包括:池化压缩步长、边缘节点局部梯度下降学习率、每个边缘节点梯度残差值和全局梯度下降学习率。
进一步的,步骤S1中,所述各被指定的边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵,具体包括:
被指定的边缘节点从本地存储的训练样本中随机挑选当前轮次的训练样本,利用挑选出来的当前轮次的训练样本,根据损失函数和当前轮次的模型参数,计算当前损失值,然后,根据当前损失值利用反向传播算法计算当前轮次的模型参数的梯度值矩阵。
进一步的,步骤S2中,所述各被指定的边缘节点采用池化算子对步骤S1中计算获得的梯度值矩阵进行压缩,获得当前轮次的稀疏化梯度矩阵,具体包括:
首先,被指定的边缘节点采用池化算子压缩当前轮次的模型参数的梯度值矩阵和当前轮次梯度残差值,获得当前轮次的稀疏化梯度矩阵:
其中,表示第i个被指定的边缘节点的第k轮次的稀疏化梯度矩阵;PoolR表示池化算子;/>表示第i个被指定的边缘节点的第k轮次的梯度残差值;α表示边缘节点局部梯度下降学习率;/>表示第i个被指定的边缘节点计算的第k轮次的模型参数/>的梯度值矩阵;
接着,更新下一轮次的的梯度残差值:
进一步的,步骤S2中,所述池化算子为最大池化算子或平均池化算子。
进一步的,步骤S3中,所述中心服务器根据接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵,利用分布式梯度下降算法对模型参数进行更新,获得下一轮次模型参数,具体包括:
然后,通过分布式梯度下降算法对上一轮次模型参数进行更新,获得当前轮次模型参数:
本发明的有益效果是:
通过池化算法对模型参数的梯度值矩阵进行压缩的同时,利用梯度残差保留梯度矩阵中梯度元素的局部相关性,以实现梯度信息的最大保留,从而在降低上传的梯度矩阵信息的通信量,缓解训练大型神经网络时高负荷通信导致的训练时间延长的同时,尽量确保模型精度;
因此,本发明方案与现有技术中在模型参数更新过程中采用的基于量化的通信压缩方法和基于稀疏化的通信压缩方法来减少通信带宽的方案相比,能够在相同通信压缩率的情况下达到更好的模型精度与更少的通信轮次。
附图说明
图1为本发明实施例中的分布式联邦学习的模型参数更新方法流程图;
图2为最大池化算子对数据压缩的原理图;
图3为平均池化算子对数据压缩的原理图。
具体实施方式
本发明旨在提出一种分布式联邦学习的模型参数更新方法,解决现有技术中在模型参数更新过程中采用的通信压缩方案存在的由于丢弃了梯度数值隐含的局部相关性信息带来的精度损失和收敛率降低的问题。本发明中,边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵,然后,采用池化算子将梯度值矩阵进行压缩,在保留通信数据量的同时保留梯度信息,获得当前轮次的稀疏化梯度矩阵并上传中心服务器;中心服务器根据接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵,利用分布式梯度下降算法对当前轮次模型参数进行更新,获得下一轮次模型参数,如果获得的所述下一轮次模型参数达到模型参数要求的预设精度,则将其作为最终模型参数输出,若未达到要求的预设精度,则将所述下一轮次模型参数再次分发到各边缘节点,进行下一轮次的迭代。
实施例:
如图1所示,本实施例中的分布式联邦学习的模型参数更新方法包括以下实施步骤:
一、中心服务器指定边缘节点,并进行相关数据初始化:
本步骤中,中心服务器可以根据所有边缘节点的实际负载情况选择多个边缘节点参与模型训练任务,每个边缘节点的本地存储着将被用来训练模型参数的样本数据Dataseti,i表示指定的第i个边缘节点;
接着,中心服务器进行相关数据初始化,包括初始化模型参数x、训练损失函数f(x)以及训练超参数,其中训练超参数信息包括池化压缩步长R、边缘节点局部梯度下降学习率α、每个边缘节点梯度残差参数mi、全局梯度下降学习率γ;在初始化完成后,中心服务器将上述数据分发到指定的各个边缘节点,用于边缘节点对参数梯度值的更新计算。
二、边缘节点计算当前轮次模型参数的梯度值矩阵:
本步骤中,假定当前迭代轮次为第k轮,则被指定的边缘节点从本地存储的训练样本Dataseti中随机挑选当前轮次的训练样本dataseti,dataseti∈Dataseti,利用挑选出来的当前轮次的训练样本dataseti,根据损失函数f(x)和当前轮次的模型参数计算当前损失值,然后,根据当前损失,利用反向传播算法计算当前轮次的模型参数的梯度值矩阵
需要说明的是,本步骤中边缘节点选择的当前轮次的训练样本的数据量也会影响本算法的效率,所选择的训练样本越多,本算法最终能达到的模型精度越高,且达到目标精度所花费的通信轮次越低,但所导致反向传播算法计算出结果的花费时间也越高,因此,可以综合考虑这些因素来配置每次选取的样本数量。
三、边缘节点采用池化算子对梯度值矩阵进行压缩,获得稀疏化梯度矩阵:
本步骤中,首先,被指定的边缘节点采用池化算子压缩当前轮次的模型参数的梯度值矩阵和当前轮次梯度残差值,获得当前轮次的稀疏化梯度矩阵,接着,基于当前轮次的模型参数的梯度值矩阵、当前轮次梯度残差值以及计算出来的当前轮次的稀疏化梯度矩阵来更新下一轮次的的梯度残差值,从而尽量保留那些未被传输的梯度值信息,提高模型精度,此外能够最大程度上节省边缘节点的计算量,加快训练过程同时降低通信轮次。
具体实现上,池化算子可以采用最大池化算子MaxPoolR或者平均池化算子AvgPoolR。其中最大池化算子原理示例如图2所示,其数学表示为:
而平均池化算子原理示例如图3所示,其数学表示为:
对于输入有:平均池化压缩算子AvgPoolR/>定义为,对于输入有:AvgPoolR(X):=Avg(xiR:iR+R,jR∶jR+R),其中,Avg(xiR:iR+R,jR∶jR+R)表示每个过滤器所覆盖地方的均值。
为了便于描述,我们将最大池化算子和平均池化算子都采用PoolR算子表示。
其中,表示第i个被指定的边缘节点的第k轮次的稀疏化梯度矩阵;PoolR表示池化算子;/>表示第i个被指定的边缘节点的第k轮次的梯度残差值;α表示边缘节点局部梯度下降学习率;/>表示第i个被指定的边缘节点计算的第k轮次的模型参数/>的梯度值矩阵;
需要说明的是,在进行池化算子压缩时,压缩步长R越大,则压缩率越低,反之,压缩步长R越小,则压缩率越高,本领域技术人员可以知晓,压缩率越高,则占用网络流量越少,但是由于传输至中心服务器的梯度值信息相对越少导致训练出最终模型参数的时间越长,因此可以综合考虑这些因素来配置池化压缩步长R。
四、中心服务器根据当前轮次的稀疏化梯度矩阵,对模型参数进行更新:
本步骤中,首先,中心服务器对接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵进行反池化处理,获得恢复的梯度值矩阵/>然后,基于各个边缘节点对应的恢复的梯度值矩阵/>通过分布式梯度下降算法对上一轮次模型参数进行更新,获得当前轮次模型参数。
具体实现上,一旦所有被指定的边缘节点将其计算出的稀疏化梯度矩阵上传到了中心服务器,中心服务器会进行一个反池化步骤来扩展稀疏化梯度矩阵大小,使其恢复到稀疏化之前大小,形式上由/>表示,然后对这些恢复到原大小的梯度值矩阵进行求和,并乘以一个全局梯度下降学习率γ,然后运行一个梯度下降步骤来更新模型参数xk,形式上由以下公式表示:
五、中心服务器判断模型参数是否达到预设精度:
本步骤中,中心服务器在通过步骤四计算出下一轮次的模型参数后,首先判断该模型参数的精度是否达到了预设的模型参数的精度,若是,则将该模型参数作为最终训练好的模型参数输出;若未能达到预设的模型参数的精度,则中心服务器会将该模型参数再次分发给所有被指定的边缘节点,然后这些边缘节点会再次执行步骤二,如此循环,直至模型参数达到预设的模型参数的精度。
尽管这里参照本发明的实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。
Claims (6)
1.一种分布式联邦学习的模型参数更新方法,应用于包括中心服务器和多个边缘节点的分布式架构,其特征在于,该方法包括:中心服务器指定参与训练的边缘节点,初始化模型参数、损失函数和训练超参数信息,并分发至所指定的各边缘节点;
分布式架构按照迭代轮次执行以下步骤:
S1、各被指定的边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵;
S2、各被指定的边缘节点采用池化算子对步骤S1中计算获得的梯度值矩阵进行压缩,获得当前轮次的稀疏化梯度矩阵并上传中心服务器;
S3、中心服务器根据接收到的各被指定的边缘节点的当前轮次的稀疏化梯度矩阵,利用分布式梯度下降算法对当前轮次模型参数进行更新,获得下一轮次模型参数;
S4、中心服务器判断下一轮次模型参数是否达到预设精度,若是,则输出下一轮次模型参数作为最终模型参数,否则,将下一轮次模型参数分发给各被指定的边缘节点,返回步骤S1,进入下一轮次的迭代。
2.如权利要求1所述的一种分布式联邦学习的模型参数更新方法,其特征在于,
所述训练超参数信息包括:池化压缩步长、边缘节点局部梯度下降学习率、每个边缘节点梯度残差值和全局梯度下降学习率。
3.如权利要求1所述的一种分布式联邦学习的模型参数更新方法,其特征在于,
步骤S1中,所述各被指定的边缘节点利用本地存储的训练样本通过反向传播算法计算当前轮次模型参数的梯度值矩阵,具体包括:
被指定的边缘节点从本地存储的训练样本中随机挑选当前轮次的训练样本,利用挑选出来的当前轮次的训练样本,根据损失函数和当前轮次的模型参数,计算当前损失值,然后,根据当前损失值利用反向传播算法计算当前轮次的模型参数的梯度值矩阵。
4.如权利要求1所述的一种分布式联邦学习的模型参数更新方法,其特征在于,
步骤S2中,所述各被指定的边缘节点采用池化算子对步骤S1中计算获得的梯度值矩阵进行压缩,获得当前轮次的稀疏化梯度矩阵,具体包括:
首先,被指定的边缘节点采用池化算子压缩当前轮次的模型参数的梯度值矩阵和当前轮次梯度残差值,获得当前轮次的稀疏化梯度矩阵:
其中,表示第i个被指定的边缘节点的第k轮次的稀疏化梯度矩阵;PoolR表示池化算子;/>表示第i个被指定的边缘节点的第k轮次的梯度残差值;α表示边缘节点局部梯度下降学习率;/>表示第i个被指定的边缘节点计算的第k轮次的模型参数/>的梯度值矩阵;
接着,更新下一轮次的的梯度残差值:
6.如权利要求1-5任意一项所述的一种分布式联邦学习的模型参数更新方法,其特征在于,步骤S2中,所述池化算子为最大池化算子或平均池化算子。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310038567.7A CN116306912A (zh) | 2023-01-13 | 2023-01-13 | 一种分布式联邦学习的模型参数更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310038567.7A CN116306912A (zh) | 2023-01-13 | 2023-01-13 | 一种分布式联邦学习的模型参数更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116306912A true CN116306912A (zh) | 2023-06-23 |
Family
ID=86780463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310038567.7A Pending CN116306912A (zh) | 2023-01-13 | 2023-01-13 | 一种分布式联邦学习的模型参数更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116306912A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116704296A (zh) * | 2023-08-04 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 一种图像处理方法、装置、系统、设备及计算机存储介质 |
CN117808083A (zh) * | 2024-02-29 | 2024-04-02 | 浪潮电子信息产业股份有限公司 | 一种分布式训练通信方法、装置、系统、设备及存储介质 |
-
2023
- 2023-01-13 CN CN202310038567.7A patent/CN116306912A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116704296A (zh) * | 2023-08-04 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 一种图像处理方法、装置、系统、设备及计算机存储介质 |
CN116704296B (zh) * | 2023-08-04 | 2023-11-03 | 浪潮电子信息产业股份有限公司 | 一种图像处理方法、装置、系统、设备及计算机存储介质 |
CN117808083A (zh) * | 2024-02-29 | 2024-04-02 | 浪潮电子信息产业股份有限公司 | 一种分布式训练通信方法、装置、系统、设备及存储介质 |
CN117808083B (zh) * | 2024-02-29 | 2024-05-03 | 浪潮电子信息产业股份有限公司 | 一种分布式训练通信方法、装置、系统、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116306912A (zh) | 一种分布式联邦学习的模型参数更新方法 | |
CN111382844B (zh) | 一种深度学习模型的训练方法及装置 | |
CN111030861B (zh) | 一种边缘计算分布式模型训练方法、终端和网络侧设备 | |
CN109002889A (zh) | 自适应迭代式卷积神经网络模型压缩方法 | |
CN114154646A (zh) | 一种移动边缘网络中联邦学习的效率优化方法 | |
CN111027732B (zh) | 一种多风电场出力场景的生成方法及系统 | |
CN111985523A (zh) | 基于知识蒸馏训练的2指数幂深度神经网络量化方法 | |
CN108430047A (zh) | 一种基于固定拓扑下多智能体的分布式优化方法 | |
CN110992432B (zh) | 基于深度神经网络最小方差梯度量化压缩及图像处理方法 | |
CN112990478A (zh) | 联邦学习数据处理系统 | |
CN110111266B (zh) | 一种基于深度学习去噪的近似信息传递算法改进方法 | |
CN114239798B (zh) | 基于奇偶性对数量化的无乘法深度神经网络模型压缩方法 | |
CN108734264A (zh) | 深度神经网络模型压缩方法及装置、存储介质、终端 | |
CN109635922A (zh) | 一种分布式深度学习参数量化通信优化方法及系统 | |
CN113886460A (zh) | 低带宽分布式深度学习方法 | |
CN109409505A (zh) | 一种用于分布式深度学习的压缩梯度的方法 | |
CN116957106A (zh) | 一种基于动态注意力机制的联邦学习模型训练方法 | |
CN117521763A (zh) | 一种融合组正则化剪枝和重要性剪枝的人工智能模型压缩方法 | |
CN115756873B (zh) | 一种基于联邦强化学习的移动边缘计算卸载方法和平台 | |
CN111161363A (zh) | 一种图像编码模型训练方法及装置 | |
CN115983320A (zh) | 一种基于深度强化学习的联邦学习模型参数量化方法 | |
CN113743012B (zh) | 一种多用户场景下的云-边缘协同模式任务卸载优化方法 | |
CN115983366A (zh) | 面向联邦学习的模型剪枝方法及系统 | |
CN114611718A (zh) | 一种用于异构数据的联邦学习方法及系统 | |
CN115481591A (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 |