[go: up one dir, main page]

CN110837395B - 多gpu并行训练的归一化处理方法、装置和系统 - Google Patents

多gpu并行训练的归一化处理方法、装置和系统 Download PDF

Info

Publication number
CN110837395B
CN110837395B CN201810940929.0A CN201810940929A CN110837395B CN 110837395 B CN110837395 B CN 110837395B CN 201810940929 A CN201810940929 A CN 201810940929A CN 110837395 B CN110837395 B CN 110837395B
Authority
CN
China
Prior art keywords
gpu
gpus
normalization
group
determining
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.)
Active
Application number
CN201810940929.0A
Other languages
English (en)
Other versions
CN110837395A (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.)
Beijing Original Generation Technology Co.,Ltd.
Original Assignee
Beijing Tusimple 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 Beijing Tusimple Technology Co Ltd filed Critical Beijing Tusimple Technology Co Ltd
Priority to CN201810940929.0A priority Critical patent/CN110837395B/zh
Publication of CN110837395A publication Critical patent/CN110837395A/zh
Application granted granted Critical
Publication of CN110837395B publication Critical patent/CN110837395B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3818Decoding for concurrent execution
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开多GPU并行训练的归一化处理方法、装置和系统,用以解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,处理速度慢、处理效率低的问题。该方法包括:CPU接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。

Description

多GPU并行训练的归一化处理方法、装置和系统
技术领域
本发明涉及高性能计算领域,特别涉及多图像处理单元(Graphic ProcessingUnit,GPU)并行训练的归一化处理方法、装置和系统。
背景技术
目前对深度神经网络进行训练时,为了提高训练效率和速度,通常会使用多块GPU进行并行训练。具体包括,在每块GPU上分别加载一套训练神经网络,在每块GPU上分别对神经网络进行迭代训练,得到进行预测的模型。
在多GPU并行迭代训练深度神经网络的过程中,为了提高训练精度可以对深度神经网络中的归一化层进行同步处理。也即,对于深度神经网络中的归一化层的处理,各个GPU需要确定得到用于归一化处理的归一化参数,也即归一化层的上一层输出数据的平均值和/或方差值;将计算得到的归一化参数反馈给其它的各个GPU;GPU根据计算得到的归一化参数和接收到的其它各个GPU的归一化参数,确定得到全局归一化参数;并根据全局归一化参数对归一化层的输入数据进行相应的归一化处理。
在上述处理过程中,有些GPU需要等待较长时间才能接收到其它GPU反馈的归一化参数。这样,会严重的降低深度神经网络的训练速度和训练效率。
可见,目前在使用多GPU并行训练深度神经网络的归一化处理中,存在处理速度慢、处理效率低的问题。
发明内容
鉴于上述问题,本发明提供了一种多GPU并行训练深度神经网络的归一化处理方法、装置和系统,用以解决现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,处理速度慢、处理效率低的问题。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理方法,包括:
在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,中央处理单元CPU接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理方法,包括:
一个图像处理单元GPU在迭代训练深度神经网络的过程中,在进行当前迭代的归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
根据全局归一化参数对归一化层的输入数据进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理装置,包括:
收发单元,在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,用于接收来自一个GPU的当前并行迭代训练得到的模型的预测精度;接收分别来自各GPU的本地归一化参数;
第一确定单元,用于确定预测精度的增长值;
划分单元,用于在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
第二确定单元,用于根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
收发单元,还用于将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理装置,包括:
参数确定单元,用于在迭代训练深度神经网络的过程中,在进行当前迭代的归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
收发单元,用于接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
归一化单元,用于根据全局归一化参数对归一化层的输入数据进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理装置,包括一个处理器和至少一个存储器,至少一个存储器中存储有至少一条机器可执行指令,处理器执行至少一条机器可执行指令以执行:
在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理装置,包括一个处理器和至少一个存储器,至少一个存储器中存储有至少一条机器可执行指令,处理器执行至少一条机器可执行指令以执行:
在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
根据全局归一化参数对归一化层的输入数据进行归一化处理。
根据本申请的一个方面,提供了一种多GPU并行训练深度神经网络的归一化处理系统,包括:一个中央处理单元CPU和多个图像处理单元GPU;在多个GPU上并行迭代训练相同的深度神经网络;
CPU用于在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理;
一个GPU用于在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;接收来自CPU的全局归一化参数;根据全局归一化参数对归一化层的输入数据进行归一化处理。
根据本申请实施例提供的多GPU并行训练深度神经网络的归一化方法,CPU确定在多GPU上并行迭代训练深度神经网络得到的模型的预测精度的增长值,并在确定预测精度的增长值小于预定的增长阈值的情况下,将全部GPU划分为至少一个GPU组,根据各GPU组内的GPU的本地归一化参数,确定得到各GPU组的全局归一化参数,并将确定得到的全局归一化参数发送给相应的GPU组,GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理;从而能够通过对多个GPU进行分组,并分别确定各组GPU的全局归一化参数,来提高GPU获取归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本申请实施例提供的多GPU并行训练深度神经网络的归一化处理系统的结构示意图;
图2为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理方法的处理流程图;
图3为图2中步骤203将多个GPU划分为一个GPU组的处理流程图;
图4为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理方法的另一处理流程图;
图5为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理装置的结构框图;
图6为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理装置的另一结构框图;
图7为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理装置的另一结构框图;
图8为本发明实施例提供的多GPU并行训练深度神经网络的归一化处理装置的另一结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
针对现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题,本申请实施例提出了一种多GPU并行训练深度神经网络的归一化处理方法、装置和系统。在该方法中,CPU确定在多GPU上并行迭代训练深度神经网络得到的模型的预测精度的增长值,并在确定预测精度的增长值小于预定的增长阈值的情况下,将多个全部GPU划分为至少一个GPU组,根据各GPU组内的GPU的本地归一化参数,确定得到各GPU组的全局归一化参数,并将确定得到的全局归一化参数发送给相应的GPU组,GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理;从而能够通过对多个GPU进行分组,并分别确定各组GPU的全局归一化参数,来提高GPU获取归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
以上是本发明的核心思想,为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
图1示出了多GPU并行训练深度神经网络的结构示意图,其中包括CPU 1和多个GPU2,在每个GPU 2上加载有相同的深度神经网络,对多个GPU 2上的深度神经网络进行并行的迭代训练,CPU 1确定多个GPU 2上的并行迭代训练是否收敛,并在迭代训练过程中对多个GPU 2进行同步归一化处理。
CPU 1对多个GPU 2进行同步归一化处理包括:在多个GPU 2并行迭代训练相同的深度神经网络得到模型的过程中,CPU 1接收来自一个GPU 2的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;在预测精度的增长值小于预定增长阈值的情况下,将全部GPU 2划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;接收分别来自各GPU 2的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;将确定的各个全局归一化参数发送给对应的GPU组中的各GPU 2,以使GPU组内的各GPU 2根据接收到的全局归一化参数进行归一化处理;
GPU 2在迭代训练深度神经网络的过程中,在进行当前迭代的归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给CPU 1;其中,该深度神经网络在其他的多个GPU 2上进行并行迭代训练;接收来自CPU 1的全局归一化参数;根据全局归一化参数对归一化层的输入数据进行归一化处理。
下面对CPU 1的工作原理进行说明。
图2中示出了本申请实施例提供的多GPU并行训练深度神经网络的归一化处理方法,该方法运行在如图1所示的CPU端,包括:
步骤201、在多个GPU并行迭代训练相同的深度神经网络得到模型的过程中,CPU接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
步骤203、在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
步骤205、接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
步骤207、将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
根据图2所示的处理,CPU能够对多个GPU进行分组,并分别确定和发送各个GPU组的全局归一化参数,来提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
并且,CPU确定在多个GPU上并行迭代训练深度神经网络得到的模型的预测精度的增长值,在增长值小于预定的增长阈值的情况下,对GPU进行分组,也即在预测精度增长幅度较小的时候,对GPU进行重分组,在预测精度增长幅度较大的时候,保持GPU的分组状况,能够提高预测精度的增长幅度;从而能够在保证预测精度的增长幅度的情况下,提高模型的训练速度,能够提高模型的训练效率。
下面对图2所示处理的过程进行详细说明。
在多个GPU上对相同设置的深度神经网络进行并行迭代训练的过程中,在迭代训练未收敛的情况下,例如,迭代训练得到的模型的预测精度低于预定的精度阈值的情况下,对多个GPU上的深度神经网络继续执行并行迭代训练。在迭代训练收敛的情况下,例如,迭代训练得到的模型的预测精度大于或等于预定的精度阈值的情况下,停止执行多个GPU上的并行迭代训练,并得到用于预测的模型。
在本申请的一些实施例中,在上述步骤201中,在训练的过程中,CPU接收到的预测精度,可以是每一次迭代训练后得到的模型的预测精度;也可以为了兼顾模型的收敛速度的提高和模型的预测精度的提高,对多个GPU上的深度神经网络执行一组并行迭代训练后得到的模型的预测精度;其中,一组迭代训练中包括预定次数的迭代训练,预定的次数可以根据具体应用场景的需要而具体设定,例如,预定次数可以是预定的与训练数据的数量相关的次数。
在当前的迭代训练是一组迭代训练的情况下,例如,一组迭代训练包括5次迭代训练,则,在各GPU执行完5次迭代训练后,一个GPU将并行迭代训练得到的模型的预测精度发送给CPU。
进一步地,在步骤201中确定预测精度的增长值,在当前的迭代训练为当前的一次迭代训练的情况下,可以包括:确定当前一次迭代训练得到的模型的预测精度和相邻的上一次迭代训练得到的模型的预测精度的差值;
在当前的迭代训练为当前的一组迭代训练的情况下,可以包括:确定当前一组迭代训练得到的模型的预测精度和相邻的上一组迭代训练得到的模型的预测精度的差值。
在上述步骤203中,在本申请的一些实施例中,CPU将上述步骤101中确定的预测精度的增长值与预定增长阈值进行对比,其中,预定增长阈值可以是历史预测值或者是设定值,该历史预测值可以是历史训练得到的模型的预测值;并且在预测精度的增长值小于预定增长阈值的情况下,对多个GPU进行分组,在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;其中,在并行迭代训练的初始状态下,每个GPU为一个GPU组。
CPU接收到的来自各GPU的本地归一化参数,是各个GPU在当前的迭代训练中,根据归一化层的输入数据(也即归一化层的上一层的输出数据)确定得到的,归一化参数包括归一化层的输入数据的均值和/或均方差。
在本申请的一些实施例中,将多个GPU划分为至少一个GPU组,可以包括如图3所示的处理过程:
步骤2031、根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量Gn;其中,在初始的状态下,每个GPU为一个GPU组;
在一些实施例中,根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:根据公式Gn=i*Gc确定得到划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;并且,在Gn小于总的GPU的数量的情况下,保留Gn;在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
步骤2032、根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将多个GPU划分为至少一个GPU组。
在一些实施例中,可以根据至少如下的一种分组规则来将多个GPU划分为至少一个GPU组:
规则一、将相邻标识的Gn个GPU划分为一个GPU组;
规则二、按照各GPU反馈本地归一化参数的先后次序,依次将Gn个GPU划分为一个GPU组;
规则三、将随机的Gn个GPU划分为一个GPU组。
在具体的应用场景中,还可以根据具体的应用需求,来确定划分GPU组的规则,本申请这里不进行一一列举。
通过上述步骤201和步骤203的处理,CPU确定在多个GPU上训练得到的模型的预测精度的增长值小于预定的增长阈值的情况下,对多个GPU进行重新分组,能够兼顾训练模型的收敛速度和模型的预测精度的提高。
在上述步骤205中,确定一个GPU组的全局归一化参数的处理,可以包括:将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
在上述步骤207中,CPU将确定的各全局归一化参数发送给对应的GPU组,使得一个GPU组内的各个CPU可以根据接收到的全局归一化参数来对归一化层的输入数据进行归一化处理。
通过上述处理过程,本申请实施例能够通过对多个GPU进行分组,并分别确定各组GPU的全局归一化参数,来提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
并且,CPU确定在多个GPU上并行迭代训练深度神经网络得到的模型的预测精度、以及预测精度的增长值,在增长值小于预定的增长阈值的情况下,对GPU进行分组,也即在预测精度增长幅度较大的时候,保持GPU的分组状况,在预测精度增长幅度较小的时候,对GPU进行重分组,以提高预测精度的增长幅度;从而能够在保证预测精度的增长幅度的情况下,提高模型的训练速度,能够提高模型的训练效率。
下面对图1中GPU的工作原理进行说明。
图4示出了本申请实施例的多GPU并行训练深度神经网络的归一化处理方法的处理流程,该方法运行在如图1所示的每个GPU中,包括:
步骤401、一个GPU在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
步骤403、接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
步骤405、根据全局归一化参数对归一化层的输入数据进行归一化处理。
根据如图4所示的处理过程,GPU能够根据CPU反馈的全局归一化参数进行归一化处理,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到并对应发送的;能够提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行迭代训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
在一些实施例中,在GPU上训练的模型未收敛的情况下,多个GPU中的一个GPU需要确定当前迭代训练得到的模型的预测精度,并向CPU反馈当前迭代训练得到的模型的预测精度;在当前迭代训练为当前一次迭代训练的情况下,多个GPU中的一个GPU确定当前一次迭代训练得到的模型的预测精度,并将确定的预测精度作为本地预测精度发给CPU;在当前迭代训练为当前一组迭代训练的情况下,多个GPU中的一个GPU在进行当前一组迭代训练中的最后一次迭代训练后,确定得到的模型的预测精度,并将确定得到的模型的预测精度发送给CPU。
通过上述处理,GPU能够根据CPU针对GPU组确定的全局归一化参数,来进行归一化处理,从而能够提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
基于相同的发明构思,本申请实施例还提供了一种多GPU并行训练深度神经网络的归一化处理装置。
图5示出了本申请实施例提供的多GPU并行训练深度神经网络的归一化处理装置,该装置包括在CPU中,该装置包括:
收发单元51,在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,用于接收来自一个GPU的当前并行迭代训练得到的模型的预测精度;接收分别来自各GPU的本地归一化参数;
第一确定单元52,用于确定预测精度的增长值;
划分单元53,用于在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
第二确定单元54,用于根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
收发单元51,还用于将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
在一些实施例中,当前并行迭代训练包括当前的一组并行迭代训练;其中,一组并行迭代训练中包括预定迭代次数的并行迭代训练;则,第一确定单元52确定预测精度的增长值,包括:确定当前一组并行迭代训练得到的模型的预测精度和相邻的上一组并行迭代训练得到的模型的预测精度的差值为预测精度的增长值。
在一些实施例中,划分单元53将多个GPU划分为至少一个GPU组,包括:根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量Gn;其中,在初始的状态下,每个GPU为一个GPU组;根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将多个GPU划分为至少一个GPU组。
在一些实施例中,划分单元53根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:根据公式Gn=i*Gc确定划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;并且,在Gn小于总的GPU的数量的情况下,保留Gn;在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
在一些实施例中,第二确定单元54根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数,包括:将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
在一些实施例中,第一确定单元52还用于:在模型的预测精度低于预定的精度阈值的情况下,确定预测精度的增长值。
根据如图5所示的装置,本申请实施例能够通过对多个GPU进行分组,并分别确定各组GPU的全局归一化参数,来提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
并且,CPU确定在多个GPU上并行迭代训练深度神经网络得到的模型的预测精度、以及预测精度的增长值,在增长值小于预定的增长阈值的情况下,对GPU进行分组,也即在预测精度增长幅度较大的时候,保持GPU的分组状况,在预测精度增长幅度较小的时候,对GPU进行重分组,以提高预测精度的增长幅度;从而能够在保证预测精度的增长幅度的情况下,提高模型的训练速度,能够提高模型的训练效率。
基于相同的发明构思,本申请实施例还提供了一种多GPU并行训练深度神经网络的归一化处理装置。
图6示出了本申请实施例提供的多GPU并行训练深度神经网络的归一化处理装置,该装置包括在GPU中,该装置包括:
参数确定单元61,用于在迭代训练深度神经网络的过程中,在进行当前迭代的归一化层处理时,确定归一化层的输入数据的本地归一化参数;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
收发单元62,用于将确定得到的本地归一化参数发送给中央处理单元CPU;接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
归一化单元63,用于根据全局归一化参数对归一化层的输入数据进行归一化处理。
在一些实施例中,参数确定单元61还用于:在执行完当前迭代训练后,确定训练得到的模型的预测精度;收发单元62,还用于将确定的模型的预测精度发送给CPU。
在一些实施例中,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;则,参数确定单元61确定训练得到的模型的预测精度,包括:在进行了当前的一组迭代训练中的最后一次迭代训练之后,确定训练得到的模型的预测精度。
根据如图6所示的装置,GPU能够根据CPU反馈的全局归一化参数进行归一化处理,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;能够提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
基于相同的发明构思,本申请实施例还提供了一种多GPU并行训练深度神经网络的归一化处理装置。
图7示出了本申请实施例提供的多GPU并行训练深度神经网络的归一化处理装置,该装置包括在CPU中,该装置包括一个处理器71和至少一个存储器72,至少一个存储器72中存储有至少一条机器可执行指令,处理器71执行至少一条机器可执行指令以执行:
在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
在一些实施例中,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;则,处理器71执行至少一条机器可执行指令执行确定预测精度的增长值,包括:确定当前一组并行迭代训练得到的模型的预测精度和相邻的上一组并行迭代训练得到的模型的预测精度的差值为预测精度的增长值。
在一些实施例中,处理器71执行至少一条机器可执行指令执行将全部GPU划分为至少一个GPU组,包括:根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量;根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将全部GPU划分为至少一个GPU组。
在一些实施例中,处理器71执行至少一条机器可执行指令执行根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:根据公式Gn=i*Gc确定划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;并且,在Gn小于总的GPU的数量的情况下,保留Gn;在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
在一些实施例中,处理器71执行至少一条机器可执行指令执行根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数,包括:将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
在一些实施例中,处理器71执行至少一条机器可执行指令还执行:在模型的预测精度低于预定的精度阈值的情况下,确定预测精度的增长值。
根据如图7所示的装置,本申请实施例能够通过对多个GPU进行分组,并分别确定各组GPU的全局归一化参数,来提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
并且,CPU确定在多个GPU上并行迭代训练深度神经网络得到的模型的预测精度、以及预测精度的增长值,在增长值小于预定的增长阈值的情况下,对GPU进行分组,也即在预测精度增长幅度较大的时候,保持GPU的分组状况,在预测精度增长幅度较小的时候,对GPU进行重分组,以提高预测精度的增长幅度;从而能够在保证预测精度的增长幅度的情况下,提高模型的训练速度,能够提高模型的训练效率。
基于相同的发明构思,本申请实施例还提供了一种多GPU并行训练深度神经网络的归一化处理装置。
图8示出了本申请实施例还提供的多GPU并行训练深度神经网络的归一化处理装置,该装置包括在GPU中,该装置包括一个处理器81和至少一个存储器82,至少一个存储器82中存储有至少一条机器可执行指令,处理器81执行至少一条机器可执行指令执行:
在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
根据全局归一化参数对归一化层的输入数据进行归一化处理。
在一些实施例中,处理器执行至少一条机器可执行指令还执行:在执行完当前迭代训练后,确定训练得到的模型的预测精度;将确定的模型的预测精度发送给CPU。
在一些实施例中,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;则,
处理器81执行至少一条机器可执行指令执行确定训练得到的模型的预测精度,包括:在进行了当前的一组迭代训练中的最后一次迭代训练之后,确定训练得到的模型的预测精度。
根据如图8所示的装置,GPU能够根据CPU反馈的全局归一化参数进行归一化处理,全局归一化参数是CPU对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;能够提高GPU接收到归一化参数的速度,提高GPU进行归一化处理的速度。从而,能够解决现有技术使用多GPU并行训练深度神经网络的归一化处理中,存在的处理速度慢、处理效率低的问题。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (31)

1.一种多GPU并行训练深度神经网络的归一化处理方法,其特征在于,包括:
在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,中央处理单元CPU接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
2.根据权利要求1所述的方法,其特征在于,当前并行迭代训练包括当前的一组并行迭代训练;其中,一组并行迭代训练中包括预定迭代次数的并行迭代训练;
确定预测精度的增长值,包括:确定当前一组并行迭代训练得到的模型的预测精度和相邻的上一组并行迭代训练得到的模型的预测精度的差值为预测精度的增长值。
3.根据权利要求2所述的方法,其特征在于,预定迭代次数包括:预定的与训练数据的数量相关的次数。
4.根据权利要求1所述的方法,其特征在于,在并行迭代训练的初始状态下,每个GPU为一个GPU组。
5.根据权利要求1所述的方法,其特征在于,将全部GPU划分为至少一个GPU组,包括:
根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量;
根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将全部GPU划分为至少一个GPU组。
6.根据权利要求5所述的方法,其特征在于,根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:
根据公式Gn=i*Gc确定划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;
在Gn小于总的GPU的数量的情况下,保留Gn;
在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
7.根据权利要求5所述的方法,其特征在于,预定的分组规则包括至少以下之一:
将相邻标识的Gn个GPU划分为一个GPU组;
按照各GPU反馈本地归一化参数的先后次序,依次将Gn个GPU划分为一个GPU组;
将随机的Gn个GPU划分为一个GPU组。
8.根据权利要求1所述的方法,其特征在于,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数,包括:
将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在模型的预测精度低于预定的精度阈值的情况下,确定预测精度的增长值。
10.一种多GPU并行训练深度神经网络的归一化处理方法,其特征在于,包括:
一个图像处理单元GPU在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU在多个GPU并行迭代训练所述深度神经网络所得到的模型的预测精度的增长值小于预定增长阈值的情况下,对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
各GPU组内的各GPU根据接收到的全局归一化参数对归一化层的输入数据进行归一化处理。
11.根据权利要求10所述的方法,其特征在于,还包括:
在执行完当前迭代训练后,确定训练得到的模型的预测精度;
将确定的模型的预测精度发送给CPU。
12.根据权利要求11所述的方法,其特征在于,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;
确定训练得到的模型的预测精度,包括:
在进行了当前的一组迭代训练中的最后一次迭代训练之后,确定训练得到的模型的预测精度。
13.一种多GPU并行训练深度神经网络的归一化处理装置,其特征在于,包括:
收发单元,在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,用于接收来自一个GPU的当前并行迭代训练得到的模型的预测精度;接收分别来自各GPU的本地归一化参数;
第一确定单元,用于确定预测精度的增长值;
划分单元,用于在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
第二确定单元,用于根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
收发单元,还用于将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
14.根据权利要求13所述的装置,其特征在于,当前并行迭代训练包括当前的一组并行迭代训练;其中,一组并行迭代训练中包括预定迭代次数的并行迭代训练;
第一确定单元确定预测精度的增长值,包括:确定当前一组并行迭代训练得到的模型的预测精度和相邻的上一组并行迭代训练得到的模型的预测精度的差值为预测精度的增长值。
15.根据权利要求14所述的装置,其特征在于,划分单元将全部GPU划分为至少一个GPU组,包括:
根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量Gn;
根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将全部GPU划分为至少一个GPU组。
16.根据权利要求15所述的装置,其特征在于,划分单元根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:
根据公式Gn=i*Gc确定划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;并且,
在Gn小于总的GPU的数量的情况下,保留Gn;
在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
17.根据权利要求13所述的装置,其特征在于,第二确定单元根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数,包括:
将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
18.根据权利要求13所述的装置,其特征在于,第一确定单元还用于:
在模型的预测精度低于预定的精度阈值的情况下,确定预测精度的增长值。
19.一种多GPU并行训练深度神经网络的归一化处理装置,其特征在于,包括:
参数确定单元,用于在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
收发单元,用于将确定得到的本地归一化参数发送给中央处理单元CPU;接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU在多个GPU并行迭代训练所述深度神经网络所得到的模型的预测精度的增长值小于预定增长阈值的情况下,对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
归一化单元,用于根据接收到的全局归一化参数对归一化层的输入数据进行归一化处理。
20.根据权利要求19所述的装置,其特征在于,参数确定单元还用于:在执行完当前迭代训练后,确定训练得到的模型的预测精度;
收发单元,还用于将确定的模型的预测精度发送给CPU。
21.根据权利要求20所述的装置,其特征在于,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;
参数确定单元确定训练得到的模型的预测精度,包括:
在进行了当前的一组迭代训练中的最后一次迭代训练之后,确定训练得到的模型的预测精度。
22.一种多GPU并行训练深度神经网络的归一化处理装置,其特征在于,包括一个处理器和至少一个存储器,至少一个存储器中存储有至少一条机器可执行指令,处理器执行至少一条机器可执行指令以执行:
在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;
在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;
接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;
将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理。
23.根据权利要求22所述的装置,其特征在于,当前并行迭代训练包括当前的一组并行迭代训练;其中,一组并行迭代训练中包括预定迭代次数的并行迭代训练;
处理器执行至少一条机器可执行指令执行确定预测精度的增长值,包括:确定当前一组并行迭代训练得到的模型的预测精度和相邻的上一组并行迭代训练得到的模型的预测精度的差值为预测精度的增长值。
24.根据权利要求23所述的装置,其特征在于,处理器执行至少一条机器可执行指令执行将全部GPU划分为至少一个GPU组,包括:
根据当前每个GPU组中包括的GPU的数量,确定划分后的每个GPU组中的GPU的数量;
根据确定的划分后的GPU组中包括的GPU的数量Gn、以及预定的分组规则,将全部GPU划分为至少一个GPU组。
25.根据权利要求24所述的装置,其特征在于,处理器执行至少一条机器可执行指令执行根据当前GPU组的数量,确定划分后的GPU组中的GPU的数量,包括:
根据公式Gn=i*Gc确定划分后的GPU组中的GPU的数量,其中,Gn为分组后各个GPU组中的GPU数量,Gc为当前各个GPU组的GPU的数量,i为预定的系数;
在Gn小于总的GPU的数量的情况下,保留Gn;
在Gn大于或等于多个GPU的总数的情况下,设置Gn为总的GPU的数量。
26.根据权利要求22所述的装置,其特征在于,处理器执行至少一条机器可执行指令执行根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数,包括:
将一个GPU组内全部的GPU的本地归一化参数的均值或者加权均值确定为该GPU组的全局归一化参数。
27.根据权利要求22所述的装置,其特征在于,处理器执行至少一条机器可执行指令还执行:
在模型的预测精度低于预定的精度阈值的情况下,确定预测精度的增长值。
28.一种多GPU并行训练深度神经网络的归一化处理装置,其特征在于,包括一个处理器和至少一个存储器,至少一个存储器中存储有至少一条机器可执行指令,处理器执行至少一条机器可执行指令以执行:
在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;其中,该深度神经网络在其他的多个GPU上进行并行迭代训练;
接收来自CPU的全局归一化参数;其中,全局归一化参数是CPU在多个GPU并行迭代训练所述深度神经网络所得到的模型的预测精度的增长值小于预定增长阈值的情况下,对多个GPU进行分组,并根据所述GPU所在的GPU组内各个GPU发送的本地归一化参数确定得到的;
GPU组内的各GPU根据接收到的全局归一化参数对归一化层的输入数据进行归一化处理。
29.根据权利要求28所述的装置,其特征在于,处理器执行至少一条机器可执行指令还执行:
在执行完当前迭代训练后,确定训练得到的模型的预测精度;
将确定的模型的预测精度发送给CPU。
30.根据权利要求29所述的装置,其特征在于,当前迭代训练包括当前的一组迭代训练;其中,一组迭代训练中包括预定次数的迭代训练;
处理器执行至少一条机器可执行指令执行确定训练得到的模型的预测精度,包括:
在进行了当前的一组迭代训练中的最后一次迭代训练之后,确定训练得到的模型的预测精度。
31.一种多GPU并行训练深度神经网络的归一化处理系统,其特征在于,包括一个CPU和多个GPU;在多个GPU上并行迭代训练相同的深度神经网络;
CPU用于在多个图像处理单元GPU并行迭代训练相同的深度神经网络得到模型的过程中,接收来自一个GPU的当前并行迭代训练得到的模型的预测精度,并确定预测精度的增长值;在预测精度的增长值小于预定增长阈值的情况下,将全部GPU划分为至少一个GPU组;在预测精度的增长值大于或等于预定增长阈值的情况下,保持当前的至少一个GPU组;接收分别来自各GPU的本地归一化参数,根据一个GPU组内各个GPU的本地归一化参数,确定该GPU组的全局归一化参数;将确定的各个全局归一化参数发送给对应的GPU组中的各GPU,以使GPU组内的各GPU根据接收到的全局归一化参数进行归一化处理;
一个GPU用于在迭代训练深度神经网络的过程中,在进行归一化层处理时,确定归一化层的输入数据的本地归一化参数,并将确定得到的本地归一化参数发送给中央处理单元CPU;接收来自CPU的全局归一化参数;根据全局归一化参数对归一化层的输入数据进行归一化处理。
CN201810940929.0A 2018-08-17 2018-08-17 多gpu并行训练的归一化处理方法、装置和系统 Active CN110837395B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810940929.0A CN110837395B (zh) 2018-08-17 2018-08-17 多gpu并行训练的归一化处理方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810940929.0A CN110837395B (zh) 2018-08-17 2018-08-17 多gpu并行训练的归一化处理方法、装置和系统

Publications (2)

Publication Number Publication Date
CN110837395A CN110837395A (zh) 2020-02-25
CN110837395B true CN110837395B (zh) 2022-03-25

Family

ID=69574208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810940929.0A Active CN110837395B (zh) 2018-08-17 2018-08-17 多gpu并行训练的归一化处理方法、装置和系统

Country Status (1)

Country Link
CN (1) CN110837395B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113822307B (zh) * 2020-06-19 2025-04-29 南京中兴软件有限责任公司 一种图像预测方法、设备和存储介质
US20230274132A1 (en) * 2020-08-26 2023-08-31 Intel Corporation Methods and apparatus to dynamically normalize data in neural networks
CN113011563A (zh) * 2021-03-19 2021-06-22 北京大学 基于gpu的卷积神经网络批归一化处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685530A (zh) * 2008-09-23 2010-03-31 中国科学院过程工程研究所 一种在gpu上利用多体作用模型进行粒子计算的方法
CN102647588A (zh) * 2011-02-17 2012-08-22 北京大学深圳研究生院 一种用于分层搜索运动估计的gpu加速方法
CN103049241A (zh) * 2013-01-24 2013-04-17 重庆邮电大学 一种提高cpu+gpu异构装置计算性能的方法
CN103532710A (zh) * 2013-09-26 2014-01-22 中国科学院数据与通信保护研究教育中心 基于gpu的sm2算法实现方法及装置
CN104036451A (zh) * 2014-06-20 2014-09-10 深圳市腾讯计算机系统有限公司 基于多图形处理器的模型并行处理方法及装置
CN107657580A (zh) * 2016-07-26 2018-02-02 联发科技股份有限公司 图像处理单元及图像处理单元执行的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2004290281A1 (en) * 2003-05-23 2005-05-26 Washington University Intelligent data storage and processing using FPGA devices
US20160335568A1 (en) * 2015-05-15 2016-11-17 Cox Automotive, Inc. Parallel Processing for Solution Space Partitions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685530A (zh) * 2008-09-23 2010-03-31 中国科学院过程工程研究所 一种在gpu上利用多体作用模型进行粒子计算的方法
CN102647588A (zh) * 2011-02-17 2012-08-22 北京大学深圳研究生院 一种用于分层搜索运动估计的gpu加速方法
CN103049241A (zh) * 2013-01-24 2013-04-17 重庆邮电大学 一种提高cpu+gpu异构装置计算性能的方法
CN103532710A (zh) * 2013-09-26 2014-01-22 中国科学院数据与通信保护研究教育中心 基于gpu的sm2算法实现方法及装置
CN104036451A (zh) * 2014-06-20 2014-09-10 深圳市腾讯计算机系统有限公司 基于多图形处理器的模型并行处理方法及装置
CN107657580A (zh) * 2016-07-26 2018-02-02 联发科技股份有限公司 图像处理单元及图像处理单元执行的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
海上光学遥感图像目标识别与GPU并行加速;张帆;《中国优秀硕士学位论文全文数据库·信息科技辑》;20170615;全文 *

Also Published As

Publication number Publication date
CN110837395A (zh) 2020-02-25

Similar Documents

Publication Publication Date Title
US20220391771A1 (en) Method, apparatus, and computer device and storage medium for distributed training of machine learning model
US10482380B2 (en) Conditional parallel processing in fully-connected neural networks
CN109993299B (zh) 数据训练方法及装置、存储介质、电子装置
US20200090073A1 (en) Method and apparatus for generating machine learning model
US10715395B2 (en) Methods and apparatus for communication network
CN107229966B (zh) 一种模型数据更新方法、装置及系统
US12242952B2 (en) System for distributed processing of nodes
CN106796533B (zh) 自适应地选择执行模式的系统和方法
CN110837395B (zh) 多gpu并行训练的归一化处理方法、装置和系统
KR20180077218A (ko) 계산 그래프들 프로세싱
EP4248378A2 (en) System and method of federated learning with diversified feedback
US20240086717A1 (en) Model training control method based on asynchronous federated learning, electronic device and storage medium
CN108829517A (zh) 一种用于在集群环境下进行机器学习的训练方法和系统
EP4202680A1 (en) Distributed machine learning method and system, server, device and storage medium
CN113033098A (zh) 一种基于AdaRW算法的海洋目标检测深度学习模型训练方法
CN109032630B (zh) 一种参数服务器中全局参数的更新方法
CN109214512B (zh) 一种深度学习的参数交换方法、装置、服务器及存储介质
CN119127482A (zh) 推理任务处理方法、系统、设备、介质及程序产品
CN115115064A (zh) 一种半异步联邦学习方法及系统
CN114285766B (zh) 一种网络带宽检测方法、装置、电子设备和存储介质
CN110928683B (zh) 基于两类密集型虚拟机的边缘计算资源分配方法
US20210133579A1 (en) Neural network instruction streaming
CN106648895A (zh) 一种处理数据的方法、装置及终端
JP2020003860A (ja) 学習システム、処理装置、処理方法、およびプログラム
Xu et al. Probabilistic client sampling and power allocation for wireless federated learning

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200324

Address after: 101300, No. two, 1 road, Shunyi Park, Zhongguancun science and Technology Park, Beijing, Shunyi District

Applicant after: BEIJING TUSEN ZHITU TECHNOLOGY Co.,Ltd.

Address before: 101300, No. two, 1 road, Shunyi Park, Zhongguancun science and Technology Park, Beijing, Shunyi District

Applicant before: BEIJING TUSEN WEILAI TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 101300, No. two, 1 road, Shunyi Park, Zhongguancun science and Technology Park, Beijing, Shunyi District

Patentee after: Beijing Original Generation Technology Co.,Ltd.

Country or region after: China

Address before: 101300, No. two, 1 road, Shunyi Park, Zhongguancun science and Technology Park, Beijing, Shunyi District

Patentee before: BEIJING TUSEN ZHITU TECHNOLOGY Co.,Ltd.

Country or region before: China