CN112464784A - 一种基于混合并行的分布式训练方法 - Google Patents

一种基于混合并行的分布式训练方法 Download PDF

Info

Publication number
CN112464784A
CN112464784A CN202011335380.6A CN202011335380A CN112464784A CN 112464784 A CN112464784 A CN 112464784A CN 202011335380 A CN202011335380 A CN 202011335380A CN 112464784 A CN112464784 A CN 112464784A
Authority
CN
China
Prior art keywords
model
training
parallel
distributed
classification
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
Application number
CN202011335380.6A
Other languages
English (en)
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.)
Xi'an Fenghuo Software Technology Co ltd
Original Assignee
Xi'an Fenghuo Software Technology Co ltd
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 Xi'an Fenghuo Software Technology Co ltd filed Critical Xi'an Fenghuo Software Technology Co ltd
Priority to CN202011335380.6A priority Critical patent/CN112464784A/zh
Publication of CN112464784A publication Critical patent/CN112464784A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于混合并行的分布式模型训练方法,涉及深度神经网络模型训练技术领域,采用数据并行与模型并行的混合并行方式,使用多节点、多GPU解决以上问题。首先针对训练时间长的问题,采用分布式集群的方法对海量数据进行并行计算,提升训练速度;其次针对训练时分类层模型占用显存过大的问题,采用模型并行方式,将分类层模型切分为若干份,并部署在集群中多个节点的多张GPU上,同时可根据分类层模型大小动态调整节点数目,满足大ID情况下的分类模型训练。本发明使用基于数据并行和模型并行的混合并行方式,使用分布式集群训练,在保持原有深度学习训练效果的同时,能够大幅度提升模型训练效率、满足大ID下的分类模型训练。

Description

一种基于混合并行的分布式训练方法
技术领域
本发明涉及用于深度神经网络模型训练的深度学习技术领域,尤其涉及一种基于混合并行的分布式训练方法。
背景技术
深度学习的概念源于人工神经网络的研究,是建立在计算机神经网络理论和机器学习理论上的系统科学,通过多层神经网络对信息进行抽取和表示,将底层特征组合形成较为抽象的高层特征,以学习数据样本的潜在规律。
随着工业化应用要求的不断提高,大规模模型结构设计以及海量数据模型训练已成为主流方法,这使得深度学习的复杂性和成本不断增加。例如,训练海量ID人脸识别模型时,几十万量级的ID在单片GPU上训练需花费近一天时间,加以模型调优,可能会耗时数周,时间成本较高;此外,随着ID规模不断增大,分类层在GPU的显存占用量将呈指数级增长,甚至会出现单层网络参数量过大导致单卡显存无法容纳模型的问题。因此,在海量数据、大规模模型结构训练领域,如何缩减训练成本以及如何解决模型显存占用问题已经成为深度学习领域的研究热点。
目前,业界通常采用数据并行方案减少训练时长,采用模型并行方案解决模型过大导致单片GPU无法训练问题。其中,数据并行是对训练数据进行切分,采用多个模型实例,对切分后的数据并行训练;模型并行是指将网络模型不同层进行切片,分别部署到不同GPU。在数据并行训练过程中,参数服务器负责模型之间的参数交换,保证所有切分的数据能够同时影响模型参数;在模型并行训练过程中,将网络模型不同层切片后部署到不同GPU上,减少单个GPU上的模型参数量,从而避免显存限制。
然而,数据并行方式是在每台机器部署相同的网络模型,无法解决单层模型过大导致单卡显存无法容纳的问题;另外,通用神经网络训练框架PyTorch、TensorFlow官方集成的传统模型并行方案,仅能够将网络不同层分别部署到不同GPU,仍无法解决单层参数量超过单卡显存导致模型无法训练的问题。
发明内容
本发明所要解决的技术问题是针对海量ID数据训练中训练耗时长、模型参数量超出GPU显存导致模型无法训练等问题提供一种基于混合并行的分布式训练方法,其采用数据并行与模型并行的混合并行方式,使用多节点、多GPU解决以上问题。
本发明为解决上述技术问题采用以下技术方案:
一种基于混合并行的分布式训练方法,具体包括以下步骤:
步骤1,构建模型网络结构,包括输入层、卷积层、池化层、全连接层和分类层,且包含特征提取网络和分类网络两大部分;
步骤2,设计分布式数据并行训练架构;
步骤3,设计分布式模型并行训练架构;
步骤4,设计分布式混合并行训练架构;
步骤5,设计基于分布式的神经网络反向传播机制,对特征提取网络进行反向传播并更新梯度,完成基于混合并行的分布式深度神经网络训练。
作为本发明一种基于混合并行的分布式训练方法的进一步优选方案,所述步骤2具体如下:分布式数据并行训练架构采用Ring-Allreduce进行数据通信,且每个Worker依次将自己的梯度同步给下一个Worker,依次完成所有Worker梯度的更新,以避免ParameterServer中单master节点的带宽和内存瓶颈,同时整体通信框架采用Nvidia公司的NCCL方式进行数据通信。
作为本发明一种基于混合并行的分布式训练方法的进一步优选方案,所述步骤3具体如下:基于步骤2的分布式数据并行训练架构与基于步骤1构建的模型网络结构,选出一个节点部署特征提取模型,将分类网络层改为模型并行方式,即将分类层单层模型切片为若干份,分别部署在其他节点的GPU上,同时特征提取模型使用broadcast机制将卷积神经网络所提取的特征信息发送至每个分片模型,确保每个分片模型得到相同的特征信息,最后每个分片模型所在的GPU独立的进行前向传播过程,并分别得到各自的loss值。
作为本发明一种基于混合并行的分布式训练方法的进一步优选方案,所述步骤4具体如下:基于步骤2设计的分布式数据并行训练架构与基于步骤3设计的分布式模型并行训练架构分别将特征提取模型、分类层模型拆分至不同节点、不同GPU上,能够有效减少训练时间,进而加速训练;将基于步骤2建立的数据并行架构和基于步骤3建立的模型并行架构融合,实现混合并行模型训练架构。
作为本发明一种基于混合并行的分布式训练方法的进一步优选方案,所述步骤5具体如下:基于步骤4设计的分布式混合并行训练架构,对集群中所有分类层的GPU分别计算loss值,对所有GPU之间的loss值执行All-Reduce算法,计算总loss值;在进行反向传播时,在不同GPU上分别反向计算分类层梯度误差,并同时更新分类层的模型参数;
对于人脸识别分类层的前向传播过程,设
Figure 100002_DEST_PATH_IMAGE002
表示分类层的输入特征,则需要将输入特征映射到余弦空间,计算公式如下:
Figure 100002_DEST_PATH_IMAGE004
式中,
Figure 100002_DEST_PATH_IMAGE006
为超参数,
Figure 100002_DEST_PATH_IMAGE002A
表示分类层的输入特征,
Figure 100002_DEST_PATH_IMAGE008
表示分类为
Figure 100002_DEST_PATH_IMAGE010
的权重向量,
Figure 100002_DEST_PATH_IMAGE012
分别表示
Figure 100002_DEST_PATH_IMAGE014
的单位向量,
Figure 100002_DEST_PATH_IMAGE016
表示
Figure 100002_DEST_PATH_IMAGE002AA
被分类为
Figure 100002_DEST_PATH_IMAGE010A
的分类评分,
Figure 100002_DEST_PATH_IMAGE018
表示特征
Figure 100002_DEST_PATH_IMAGE002AAA
与权重
Figure 100002_DEST_PATH_IMAGE008A
的夹角;
计算其交叉熵损失如下:
Figure 100002_DEST_PATH_IMAGE020
式中,
Figure 100002_DEST_PATH_IMAGE022
表示
Figure 100002_DEST_PATH_IMAGE002AAAA
被分类为
Figure 100002_DEST_PATH_IMAGE024
的分类概率,C表示总的分类数目;
Figure 100002_DEST_PATH_IMAGE026
表示输出层的特征向量,
Figure 100002_DEST_PATH_IMAGE028
表示类别号,
Figure 100002_DEST_PATH_IMAGE030
表示第
Figure 100002_DEST_PATH_IMAGE028A
个真实类别;
因此,在反向传播中,需要分别计算
Figure 100002_DEST_PATH_IMAGE002AAAAA
Figure 100002_DEST_PATH_IMAGE008AA
的梯度,计算公式如下:
Figure 100002_DEST_PATH_IMAGE032
Figure 100002_DEST_PATH_IMAGE034
式中,
Figure 100002_DEST_PATH_IMAGE036
Figure 100002_DEST_PATH_IMAGE038
时的值为1,否则为0,
Figure 100002_DEST_PATH_IMAGE040
Figure 100002_DEST_PATH_IMAGE042
的计算公式如下:
Figure 100002_DEST_PATH_IMAGE044
Figure 100002_DEST_PATH_IMAGE046
同时,采用ArcFace Loss,则上式中的
Figure 100002_DEST_PATH_IMAGE048
的计算公式如下:
Figure 100002_DEST_PATH_IMAGE050
由此,我们即可分别得到对于分类层输入
Figure 100002_DEST_PATH_IMAGE002AAAAAA
和权重
Figure 100002_DEST_PATH_IMAGE008AAA
的梯度,对每个分片模型分别计算其梯度,更新位于不同节点不同GPU上的分类层模型参数;同时,使用All-Reduce算法将不同GPU上分类层误差累加,并使用NCCL通信机制传输至特征提取网络的最后一层,最终基于步骤2中所提到的反向传播机制对特征提取网络进行反向传播并更新梯度,完成基于混合并行的分布式深度神经网络训练。本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1、本发明针对海量ID数据训练中训练耗时长、模型参数量超出GPU显存导致模型无法训练等问题,本发明采用数据并行与模型并行的混合并行方式,使用多节点、多GPU解决以上问题;
2、本发明针对训练时间长的问题,采用分布式集群的方法对海量数据进行并行计算,提升训练速度;其次针对训练时分类层模型占用显存过大的问题,采用模型并行方式,将分类层模型切分为若干份,并部署在集群中多个节点的多张GPU上,同时可根据分类层模型大小动态调整节点数目,满足大ID情况下的分类模型训练;
3、本发明使用基于数据并行和模型并行的混合并行方式,使用分布式集群训练,在保持原有深度学习训练效果的同时,能够大幅度提升模型训练效率、满足大ID下的分类模型训练。
附图说明
图1是本发明人脸识别网络模型的整体结构图;
图2是本发明数据并行结构示意图;
图3是本发明模型并行结构示意图;
图4是本发明得到各自的loss值的示意图;
图5是本发明混合并行的架构示意图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
结合附图对本发明创造的进一步详细的说明,至少具体描述一个最佳实施例,这种描述的具体化程度应达到使所属技术领域的技术人员按照所描述的内容能够重现发明或者实用新型,而不必再花费创造性的劳动,如不必再进行摸索研究和实验。
一种基于混合并行的分布式模型训练方法,这里结合面向大规模ID的人脸识别算法实例对本发明进行详细介绍,具体包括以下步骤:
步骤1. 构建人脸识别网络模型,其中特征提取网络(backbone)可选择常用的
Resnet50模型,损失函数采用ArcFace Loss。整体结构图如图1所示:
步骤2. 设计分布式数据并行训练架构。本发明的分布式数据并行架构采用Ring-Allreduce架构(基于规约的方式),每个节点作为一个Worker。在正向推理阶段,每个Worker负责提取部分数据的图像特征,然后使用All-gather机制聚集所有图像特征,使用broadcast机制,将图像特征发送给所有分类层节点。在反向传播阶段,分类层传播误差至特征提取网络的最后一层,根据自定义的反向传播算法更新特征提取网络的参数。每个Worker依次将自己的梯度同步给下一个Worker,依此完成所有Worker梯度的更新,以避免Parameter Server中单master节点的带宽和内存瓶颈。同时整体通信框架采用Nvidia公司的NCCL方式进行数据通信,提升并行效率。数据并行结构示意图如图2所示。
步骤3. 设计分布式模型并行训练架构。基于步骤2的数据并行方案,选出一个节点部署特征提取模型,同时将分类网络层改为模型并行方式,即将分类层单层模型切片为若干份,分别部署在其他节点的GPU上,同时特征提取模型所在节点使用broadcast机制对每个模型分片分发全部的特征信息,使得每个模型分片是由全部数据训练得到。最后每个GPU独立的进行前向传播过程,并分别得到各自的loss值,其示意图3-4所示:
特别的,传统混合并行方案是在同一节点服务器不同GPU上采用模型并行方案,而在节点之间采用数据并行方案。本发明在模型并行阶段,分类层模型的部署并不局限于单个节点内的GPU,也可以是跨节点的GPU,大大增加了分类层的处理能力,并且可以随着ID规模的大小,动态调整节点数目。
步骤4. 设计基于混合并行的分布式训练方案。基于步骤2设计的数据并行方案,使用2台机器进行数据并行;基于步骤3设计模型并行方案,使用3台机器进行模型并行,并组成分布式集群。数据并行机器负责提取图像特征,模型并行机器负责对特征进行分类,进而实现图像分类任务。首先,数据并行的2台机器负责提取训练数据集的图像特征。然后,将2台机器提取的特征使用All-gather聚集后,发送至3台模型并行机器。模型并行机器对图像特征进行分类后,利用损失函数分别计算相应的误差。最后通过步骤5建立的混合并行反向传播机制对该误差计算相应的参数梯度,并利用SGD(随机梯度下降法)更新所有的网络参数,实现分布式训练。混合并行的架构
示意图如图5所示。
步骤5. 设计基于分布式的神经网络反向传播机制。基于步骤4的混合并行方案,对集群中所有分类层的GPU分别计算loss值,然后对所有GPU之间的loss值执行All-Reduce算法,计算总loss值。在进行反向传播时,首先在不同GPU上分别反向计算分类层梯度误差,并同时更新分类层的模型参数。
对于人脸识别分类层的前向传播过程,设
Figure DEST_PATH_IMAGE002AAAAAAA
表示分类层的输入特征,则需要将输入特征映射到余弦空间,计算公式如下:
Figure DEST_PATH_IMAGE004A
式中,
Figure DEST_PATH_IMAGE006A
为超参数,
Figure DEST_PATH_IMAGE008AAAA
表示分类为
Figure DEST_PATH_IMAGE010AA
的权重向量,
Figure DEST_PATH_IMAGE012A
分别表示
Figure DEST_PATH_IMAGE014A
的单位向量,
Figure DEST_PATH_IMAGE016A
表示
Figure DEST_PATH_IMAGE002AAAAAAAA
被分类为
Figure DEST_PATH_IMAGE010AAA
的分类评分,
Figure DEST_PATH_IMAGE018A
表示特征
Figure DEST_PATH_IMAGE002AAAAAAAAA
与权重
Figure DEST_PATH_IMAGE008AAAAA
的夹角。
然后计算其交叉熵损失如下:
Figure DEST_PATH_IMAGE052
式中,
Figure DEST_PATH_IMAGE022A
表示
Figure DEST_PATH_IMAGE002AAAAAAAAAA
被分类为
Figure DEST_PATH_IMAGE024A
的分类概率,C表示总的分类数目。
因此,在反向传播中,我们需要分别计算
Figure DEST_PATH_IMAGE002AAAAAAAAAAA
Figure DEST_PATH_IMAGE008AAAAAA
的梯度,计算公式如下:
Figure DEST_PATH_IMAGE032A
Figure DEST_PATH_IMAGE034A
式中,
Figure DEST_PATH_IMAGE036A
Figure DEST_PATH_IMAGE038A
时的值为1,否则为0。
Figure DEST_PATH_IMAGE040A
Figure DEST_PATH_IMAGE042A
的计算公式如下:
Figure DEST_PATH_IMAGE044A
Figure DEST_PATH_IMAGE046A
同时,本实例采用ArcFace Loss,则上式中的
Figure DEST_PATH_IMAGE048A
的计算公式如下:
Figure DEST_PATH_IMAGE050A
由此,我们即可分别得到对于分类层输入
Figure DEST_PATH_IMAGE002AAAAAAAAAAAA
和权重
Figure DEST_PATH_IMAGE008AAAAAAA
的梯度,对每个分片模型分别计算其梯度,更新位于不同节点不同GPU上的分类层模型参数。同时,使用All-Reduce算法将不同GPU上分类层误差累加,并使用NCCL通信机制传输至特征提取网络的最后一层,最终基于步骤2种所提到的反向传播机制对特征提取网络进行反向传播并更新梯度,完成基于混合并行的分布式深度神经网络训练。
本技术领域技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。上面对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

Claims (5)

1.一种基于混合并行的分布式训练方法,其特征在于:具体包括以下步骤:
步骤1,构建模型网络结构,包括输入层、卷积层、池化层、全连接层和分类层,且包含特征提取网络和分类网络两大部分;
步骤2,设计分布式数据并行训练架构;
步骤3,设计分布式模型并行训练架构;
步骤4,设计分布式混合并行训练架构;
步骤5,设计基于分布式的神经网络反向传播机制,对特征提取网络进行反向传播并更新梯度,完成基于混合并行的分布式深度神经网络训练。
2.根据权利要求1所述的一种基于混合并行的分布式训练方法,其特征在于:所述步骤2具体如下:分布式数据并行训练架构采用Ring-Allreduce进行数据通信,且每个Worker依次将自己的梯度同步给下一个Worker,依次完成所有Worker梯度的更新,以避免ParameterServer中单master节点的带宽和内存瓶颈,同时整体通信框架采用Nvidia公司的NCCL方式进行数据通信。
3.根据权利要求1所述的一种基于混合并行的分布式训练方法,其特征在于:所述步骤3具体如下:基于步骤2的分布式数据并行训练架构与基于步骤1构建的模型网络结构,选出一个节点部署特征提取模型,将分类网络层改为模型并行方式,即将分类层单层模型切片为若干份,分别部署在其他节点的GPU上,同时特征提取模型使用broadcast机制将卷积神经网络所提取的特征信息发送至每个分片模型,确保每个分片模型得到相同的特征信息,最后每个分片模型所在的GPU独立的进行前向传播过程,并分别得到各自的loss值。
4.根据权利要求1所述的一种基于混合并行的分布式训练方法,其特征在于:所述步骤4具体如下:基于步骤2设计的分布式数据并行训练架构与基于步骤3设计的分布式模型并行训练架构分别将特征提取模型、分类层模型拆分至不同节点、不同GPU上,能够有效减少训练时间,进而加速训练;将基于步骤2建立的数据并行架构和基于步骤3建立的模型并行架构融合,实现混合并行模型训练架构。
5.根据权利要求1所述的一种基于混合并行的分布式训练方法,其特征在于:所述步骤5具体如下:基于步骤4设计的分布式混合并行训练架构,对集群中所有分类层的GPU分别计算loss值,对所有GPU之间的loss值执行All-Reduce算法,计算总loss值;在进行反向传播时,在不同GPU上分别反向计算分类层梯度误差,并同时更新分类层的模型参数;
对于人脸识别分类层的前向传播过程,设
Figure DEST_PATH_IMAGE002
表示分类层的输入特征,则需要将输入特征映射到余弦空间,计算公式如下:
Figure DEST_PATH_IMAGE004
式中,
Figure DEST_PATH_IMAGE006
为超参数,
Figure DEST_PATH_IMAGE002A
表示分类层的输入特征,
Figure DEST_PATH_IMAGE008
表示分类为
Figure DEST_PATH_IMAGE010
的权重向量,
Figure DEST_PATH_IMAGE012
分别表示
Figure DEST_PATH_IMAGE014
的单位向量,
Figure DEST_PATH_IMAGE016
表示
Figure DEST_PATH_IMAGE002AA
被分类为
Figure DEST_PATH_IMAGE010A
的分类评分,
Figure DEST_PATH_IMAGE018
表示特征
Figure DEST_PATH_IMAGE002AAA
与权重
Figure DEST_PATH_IMAGE008A
的夹角;
计算其交叉熵损失如下:
Figure DEST_PATH_IMAGE020
式中,
Figure DEST_PATH_IMAGE022
表示
Figure DEST_PATH_IMAGE002AAAA
被分类为
Figure DEST_PATH_IMAGE024
的分类概率,C表示总的分类数目;
Figure DEST_PATH_IMAGE026
表示输出层的特征向量,
Figure DEST_PATH_IMAGE028
表示类别号,
Figure DEST_PATH_IMAGE030
表示第
Figure DEST_PATH_IMAGE028A
个真实类别;
因此,在反向传播中,需要分别计算
Figure DEST_PATH_IMAGE002AAAAA
Figure DEST_PATH_IMAGE008AA
的梯度,计算公式如下:
Figure DEST_PATH_IMAGE032
Figure DEST_PATH_IMAGE034
式中,
Figure DEST_PATH_IMAGE036
Figure DEST_PATH_IMAGE038
时的值为1,否则为0,
Figure DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE042
的计算公式如下:
Figure DEST_PATH_IMAGE044
Figure DEST_PATH_IMAGE046
同时,采用ArcFace Loss,则上式中的
Figure DEST_PATH_IMAGE048
的计算公式如下:
Figure DEST_PATH_IMAGE050
由此,我们即可分别得到对于分类层输入
Figure DEST_PATH_IMAGE002AAAAAA
和权重
Figure DEST_PATH_IMAGE008AAA
的梯度,对每个分片模型分别计算其梯度,更新位于不同节点不同GPU上的分类层模型参数;同时,使用All-Reduce算法将不同GPU上分类层误差累加,并使用NCCL通信机制传输至特征提取网络的最后一层,最终基于步骤2中所提到的反向传播机制对特征提取网络进行反向传播并更新梯度,完成基于混合并行的分布式深度神经网络训练。
CN202011335380.6A 2020-11-25 2020-11-25 一种基于混合并行的分布式训练方法 Pending CN112464784A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011335380.6A CN112464784A (zh) 2020-11-25 2020-11-25 一种基于混合并行的分布式训练方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011335380.6A CN112464784A (zh) 2020-11-25 2020-11-25 一种基于混合并行的分布式训练方法

Publications (1)

Publication Number Publication Date
CN112464784A true CN112464784A (zh) 2021-03-09

Family

ID=74798856

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011335380.6A Pending CN112464784A (zh) 2020-11-25 2020-11-25 一种基于混合并行的分布式训练方法

Country Status (1)

Country Link
CN (1) CN112464784A (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112884086A (zh) * 2021-04-06 2021-06-01 北京百度网讯科技有限公司 模型训练方法、装置、设备、存储介质以及程序产品
CN113033098A (zh) * 2021-03-26 2021-06-25 山东科技大学 一种基于AdaRW算法的海洋目标检测深度学习模型训练方法
CN113222118A (zh) * 2021-05-19 2021-08-06 北京百度网讯科技有限公司 神经网络训练方法、装置、电子设备、介质和程序产品
CN113505881A (zh) * 2021-07-15 2021-10-15 华侨大学 面向异构设备的分布式神经网络训练方法、装置及介质
CN113515370A (zh) * 2021-04-28 2021-10-19 之江实验室 一种面向大规模深度神经网络的分布式训练方法
CN113961337A (zh) * 2021-09-14 2022-01-21 上海海洋大学 基于改进的Ring All Reduce算法的面向深度学习的GPU并行方法
CN114186617A (zh) * 2021-11-23 2022-03-15 浙江大学 一种基于分布式深度学习的机械故障诊断方法
CN115250253A (zh) * 2022-06-22 2022-10-28 西南交通大学 带宽感知的归约处理方法以及ai模型的训练方法
CN115660034A (zh) * 2022-10-28 2023-01-31 北京百度网讯科技有限公司 分布式模型训练的方法、装置和系统
CN116452951A (zh) * 2023-04-18 2023-07-18 郑州大学 基于中央数据池的遥感信息提取模型分布式训练方法
CN117093871A (zh) * 2023-10-16 2023-11-21 之江实验室 一种面向深度学习分布式训练测评方法和系统
CN117313823A (zh) * 2023-11-28 2023-12-29 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种卷积循环神经网络混合分布式并行训练方法及系统
WO2024036809A1 (zh) * 2022-08-16 2024-02-22 中国银联股份有限公司 一种生物特征提取方法及装置
WO2024065826A1 (en) * 2022-09-30 2024-04-04 Intel Corporation Accelerate deep learning with inter-iteration scheduling
CN113961337B (zh) * 2021-09-14 2024-05-10 上海海洋大学 基于改进的Ring All Reduce算法的面向深度学习的GPU并行方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106062786A (zh) * 2014-09-12 2016-10-26 微软技术许可有限责任公司 用于训练神经网络的计算系统
CN108460457A (zh) * 2018-03-30 2018-08-28 苏州纳智天地智能科技有限公司 一种面向卷积神经网络的多机多卡混合并行异步训练方法
CN111368996A (zh) * 2019-02-14 2020-07-03 谷歌有限责任公司 可传递自然语言表示的重新训练投影网络
WO2020226634A1 (en) * 2019-05-07 2020-11-12 Huawei Technologies Co., Ltd. Distributed synchronous training architecture using stale weights
CN111985629A (zh) * 2019-05-21 2020-11-24 辉达公司 用于训练神经网络的并行化策略

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106062786A (zh) * 2014-09-12 2016-10-26 微软技术许可有限责任公司 用于训练神经网络的计算系统
CN108460457A (zh) * 2018-03-30 2018-08-28 苏州纳智天地智能科技有限公司 一种面向卷积神经网络的多机多卡混合并行异步训练方法
CN111368996A (zh) * 2019-02-14 2020-07-03 谷歌有限责任公司 可传递自然语言表示的重新训练投影网络
WO2020226634A1 (en) * 2019-05-07 2020-11-12 Huawei Technologies Co., Ltd. Distributed synchronous training architecture using stale weights
CN111985629A (zh) * 2019-05-21 2020-11-24 辉达公司 用于训练神经网络的并行化策略

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113033098A (zh) * 2021-03-26 2021-06-25 山东科技大学 一种基于AdaRW算法的海洋目标检测深度学习模型训练方法
CN113033098B (zh) * 2021-03-26 2022-05-17 山东科技大学 一种基于AdaRW算法的海洋目标检测深度学习模型训练方法
CN112884086A (zh) * 2021-04-06 2021-06-01 北京百度网讯科技有限公司 模型训练方法、装置、设备、存储介质以及程序产品
CN113515370A (zh) * 2021-04-28 2021-10-19 之江实验室 一种面向大规模深度神经网络的分布式训练方法
CN113515370B (zh) * 2021-04-28 2024-03-12 之江实验室 一种面向大规模深度神经网络的分布式训练方法
CN113222118A (zh) * 2021-05-19 2021-08-06 北京百度网讯科技有限公司 神经网络训练方法、装置、电子设备、介质和程序产品
CN113222118B (zh) * 2021-05-19 2022-09-09 北京百度网讯科技有限公司 神经网络训练方法、装置、电子设备、介质和程序产品
CN113505881B (zh) * 2021-07-15 2023-06-02 华侨大学 面向异构设备的分布式神经网络训练方法、装置及介质
CN113505881A (zh) * 2021-07-15 2021-10-15 华侨大学 面向异构设备的分布式神经网络训练方法、装置及介质
CN113961337A (zh) * 2021-09-14 2022-01-21 上海海洋大学 基于改进的Ring All Reduce算法的面向深度学习的GPU并行方法
CN113961337B (zh) * 2021-09-14 2024-05-10 上海海洋大学 基于改进的Ring All Reduce算法的面向深度学习的GPU并行方法
CN114035936B (zh) * 2021-10-15 2024-05-17 北京潞晨科技有限公司 一种基于人工智能的多维并行处理方法、系统、设备和可读存储介质
CN114186617A (zh) * 2021-11-23 2022-03-15 浙江大学 一种基于分布式深度学习的机械故障诊断方法
CN114186617B (zh) * 2021-11-23 2022-08-30 浙江大学 一种基于分布式深度学习的机械故障诊断方法
CN115250253A (zh) * 2022-06-22 2022-10-28 西南交通大学 带宽感知的归约处理方法以及ai模型的训练方法
CN115250253B (zh) * 2022-06-22 2024-02-27 西南交通大学 带宽感知的归约处理方法以及ai模型的训练方法
WO2024036809A1 (zh) * 2022-08-16 2024-02-22 中国银联股份有限公司 一种生物特征提取方法及装置
WO2024065826A1 (en) * 2022-09-30 2024-04-04 Intel Corporation Accelerate deep learning with inter-iteration scheduling
CN115660034A (zh) * 2022-10-28 2023-01-31 北京百度网讯科技有限公司 分布式模型训练的方法、装置和系统
CN115660034B (zh) * 2022-10-28 2023-08-15 北京百度网讯科技有限公司 分布式模型训练的方法、装置和系统
CN116452951A (zh) * 2023-04-18 2023-07-18 郑州大学 基于中央数据池的遥感信息提取模型分布式训练方法
CN116452951B (zh) * 2023-04-18 2023-11-21 郑州大学 基于中央数据池的遥感信息提取模型分布式训练方法
CN117093871B (zh) * 2023-10-16 2024-02-13 之江实验室 一种面向深度学习分布式训练测评方法和系统
CN117093871A (zh) * 2023-10-16 2023-11-21 之江实验室 一种面向深度学习分布式训练测评方法和系统
CN117313823A (zh) * 2023-11-28 2023-12-29 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种卷积循环神经网络混合分布式并行训练方法及系统
CN117313823B (zh) * 2023-11-28 2024-04-12 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种卷积循环神经网络混合分布式并行训练方法及系统

Similar Documents

Publication Publication Date Title
CN112464784A (zh) 一种基于混合并行的分布式训练方法
CN112181971B (zh) 一种基于边缘的联邦学习模型清洗和设备聚类方法、系统
CN108764317B (zh) 一种基于多路特征加权的残差卷积神经网络图像分类方法
CN110033078A (zh) 一种基于树状拓扑的计算系统及方法
CN112488322A (zh) 一种基于数据特征感知聚合的联邦学习模型训练方法
CN110073359A (zh) 用于卷积神经网络的有效数据布局
CN107657316A (zh) 通用处理器与神经网络处理器的协同系统设计
CN106951926A (zh) 一种混合架构的深度学习系统方法及装置
CN106156810A (zh) 通用机器学习算法模型训练方法、系统和计算节点
CN110533183A (zh) 一种流水线分布式深度学习中异构网络感知的模型划分与任务放置方法
KR20130090147A (ko) 신경망 컴퓨팅 장치 및 시스템과 그 방법
CN112784968A (zh) 一种加速分布式深度神经网络训练的混合流水线并行方法
Muhammad et al. Tree-based deep networks for edge devices
CN113342525A (zh) 分布式数据处理系统及其方法
CN103177414A (zh) 一种基于结构的图节点相似度并行计算方法
CN108848146A (zh) 一种基于时间触发通信业务的调度优化方法
CN108111335A (zh) 一种调度和链接虚拟网络功能的方法及系统
JP2011170774A (ja) 決定木生成装置、決定木生成方法、及びプログラム
CN106384161B (zh) 一种用于航天巡视计划区域划分的优化方法
CN113298222A (zh) 一种基于神经网络的参数更新方法、分布式训练平台系统
CN109995860A (zh) 一种vanet中基于边缘计算的深度学习任务分配算法
CN113537509A (zh) 协作式的模型训练方法及装置
CN109325530A (zh) 基于少量无标签数据的深度卷积神经网络的压缩方法
CN109409746A (zh) 一种生产调度方法及装置
CN103927433A (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