CN110956265A - 一种模型训练方法和相关装置 - Google Patents
一种模型训练方法和相关装置 Download PDFInfo
- Publication number
- CN110956265A CN110956265A CN201911222356.9A CN201911222356A CN110956265A CN 110956265 A CN110956265 A CN 110956265A CN 201911222356 A CN201911222356 A CN 201911222356A CN 110956265 A CN110956265 A CN 110956265A
- Authority
- CN
- China
- Prior art keywords
- processing nodes
- training
- parameters
- model
- processing
- 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
- 238000012549 training Methods 0.000 title claims abstract description 234
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 373
- 238000004891 communication Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000004927 fusion Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000000265 homogenisation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000000007 visual effect Effects 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- 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
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了一种模型训练的方法及相关装置,在通过N个处理节点对网络模型进行并行训练时,在第i次训练迭代结束时确定N个处理节点中的M个处理节点,M<N,获取该M个处理节点所训练的网络模型的模型参数作为待融合参数,并根据待融合参数确定在第i+1次训练迭代开始时目标处理节点所训练的网络模型的初始模型参数,所述目标处理节点为N个处理节点中M个处理节点之外的一个处理节点。由于M个处理节点为N个处理节点中的局部处理节点,从而使该初始模型参数能够体现出局部处理节点的训练特点,增强了初始模型参数的多样性,降低了最终完成训练时网络模型的过拟合问题,在提高了训练效率的前提下保证了模型质量。
Description
技术领域
本申请涉及数据处理领域,特别是涉及一种模型训练方法和相关装置。
背景技术
随着人工智能技术的发展,通过神经网络模型可以为用户提供各类服务,例如语音识别、图像识别、搜索等。一个高质量的神经网络模型需要通过大量训练数据的训练后才能得到,当训练数据的数量级很大的情况下,完成训练所需要的时间非常可观,难以满足日益出现的服务需求。
针对高训练耗时的问题,一些相关技术提出了多处理节点并行训练的解决方式。针对包括海量训练数据的数据集,通过多个处理节点分别对同一个初始模型进行并行训练,训练过程会包括多次训练迭代,在一次训练迭代结束时会将全部处理节点所训练模型的模型参数进行综合,将综合得到的模型参数作为下一个训练阶段每个处理节点所训练模型的初始参数。
消耗完训练数据后,将每个处理节点的模型进行融合,得到对应该数据集的网络模型。由于训练过程中每个处理节点都并行的从该数据集中调取训练数据,加快了训练数据的消耗速度,缩短了训练耗时。
然而,根据这种多处理节点并行训练的方式所确定的网络模型在一些情况下会出现过拟合的问题,导致网络模型具有较高的错误率。
发明内容
为了解决上述技术问题,本申请提供了一种模型训练方法及相关装置,通过将局部节点的模型参数作为待融合参数,根据所述待融合参数确定训练迭代的初始模型参数,增强了模型训练中的局部特点的体现,降低了过拟合问题。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种模型训练方法,在通过N个处理节点对网络模型进行并行训练的过程中包括k次训练迭代,k≥2,N≥2,所述方法包括:
在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,i≤k-1,M<N;
从所述M个处理节点获取待融合参数,所述待融合参数为所述M个处理节点所训练的所述网络模型的模型参数;
根据所述待融合参数,确定在第i+1次训练迭代开始时目标处理节点所训练的所述网络模型的初始模型参数;所述目标处理节点为所述N个处理节点中除了所述M个处理节点之外的一个处理节点。
第二方面,本申请实施例提供了一种模型训练的相关装置,在通过N个处理节点对网络模型进行并行训练的过程中包括k次训练迭代,k≥2,N≥2,所述装置包括第一确定单元、获取单元、第二确定单元:
所述第一确定单元,用于在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,i≤k-1,M<N;
所述获取单元,用于从所述M个处理节点获取待融合参数,所述待融合参数为所述M个处理节点所训练的所述网络模型的模型参数;
所述第二确定单元,用于根据所述待融合参数,确定在第i+1次训练迭代开始时所述目标处理节点所训练的所述网络模型的初始模型参数;所述目标处理节点为所述N个处理节点中除了所述M个处理节点之外的一个处理节点。
第三方面,本申请实施例提供了一种用于模型训练的设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行第一方面所述的模型训练方法。
第四方面,本申请实施例提供了一种一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的模型训练方法。
由上述技术方案可以看出,在通过N个处理节点对网络模型进行并行训练的过程中包括了k次训练迭代,针对其中一次例如第i次训练迭代结束时,从N个处理节点中确定出部分处理节点,例如M个处理节点。根据这M个处理节点此时所训练网络模型的模型参数确定出待融合参数,并基于待融合参数确定目标处理节点在第i+1次训练迭代开始时对所述网络模型采用的初始模型参数。由于在一次训练迭代开始时任一个处理节点对网络模型采用的初始模型参数是根据N个处理节点中的局部处理节点确定的,使得每个处理节点在这次训练迭代开始时采用的初始模型参数可以有所不同,且体现出局部处理节点训练特点,每次训练迭代的初始模型参数的多样性降低了最终完成训练时网络模型的过拟合问题,在提高了训练效率的前提下保证了模型质量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种现有技术中的模型训练方法的场景示意图;
图2为本申请实施例提供的模型训练方法的应用场景示意图;
图3为本申请实施例提供的一种模型训练方法的流程图;
图4为本申请实施例提供的一种语音识别系统示意图;
图5为本申请实施例提供的一种应用场景中模型训练方法的流程图;
图6为本申请实施例提供的一种模型训练的相关装置的结构图;
图7为本申请实施例提供的一种用于模型训练的设备的结构图;
图8为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
为了提高对复杂模型的训练速度,相关技术中可以采用多处理节点进行并行训练的方法来解决。为了缩小多个处理节点之间的训练差异,往往在一次或多次训练迭代结束时,对全部处理节点训练的模型的模型参数进行综合,将综合得到的模型参数作为下一个训练阶段每个处理节点所训练模型的初始参数。
如图1所示,图1中包括参数服务器(parameter server)和多个处理节点(例如5个处理节点),该参数服务器作为中心处理节点,获取全部处理节点在某一次训练迭代结束时的模型参数进行综合,将综合后得到的模型参数返回各个处理节点,并作为各个处理节点下一次训练迭代开始时的初始参数。
由于上述方法是对所有处理节点的模型参数进行统一的综合处理,每一个处理节点接收到的下一次训练迭代开始时的初始参数都是相同的,缺乏特异性,容易造成过拟合问题。即训练出的网络模型过于追求贴合训练数据,而导致在脱离训练数据的实际测试中反而测试效果较差。
为了解决上述技术问题,本申请提供了一种模型训练方法,该方法能够应用于N个处理节点对同一个网络模型进行并行训练的场景中,N为≥2的整数。其中任意一个处理节点可以为中央处理器(central processing unit,简称CPU)、图形处理器(GraphicsProcessing Unit,简称GPU)等,这N个处理节点可以被配置在同一个处理设备中,也可以被分别配置在不同的处理设备中,配置上诉处理节点的处理设备可以是服务器、终端等。
该训练过程中需要进行k次训练迭代,k的取值与训练该网络模型的训练样本数量、各个处理节点每次训练的样本数量等相关,一般情况下,k为≥2的整数。在本申请实施例后续提及的第i次训练迭代可以为k次训练迭代中的一次,由于最后一次训练迭代后,将会完成对网络模型的并行训练,故i≤k-1。
在本申请实施例中,N个处理节点进行第i次训练迭代后,可以为这N个处理节点分别确定第i+1次训练迭代开始时这N个处理节点所训练网络模型的初始模型参数,所确定出的初始模型参数可以有所不同。
针对其中任意一个处理节点,例如目标处理节点,在第i次训练迭代完成时,通过并行训练中的一部分处理节点,例如M个处理节点所训练网络模型的当前模型参数,来确定对应该目标处理节点的待融合参数,并根据该待融合参数确定在第i+1次训练迭代开始时该目标处理节点所训练网络模型的初始模型参数。其中,M<N。
本申请实施例中的初始模型参数用于标识第i+1次训练迭代开始时网络模型的模型参数,即在第i+1次训练迭代时,目标处理节点所训练的网络模型将是基于什么样的模型参数开始进行第i+1次训练迭代的。
由于是通过部分处理节点的模型参数来确定待融合参数的,而确定不同处理节点的待融合参数时所依据的部分处理节点可能会全部或部分不同,从而导致了针对不同处理节点的待融合参数可以有所不同,该不同能够体现出局部处理节点训练特点,每次训练迭代时不同处理节点所采用的初始模型参数具有多样性,降低了最终完成训练时网络模型的过拟合问题,在提高训练效率的前提下保证了模型质量。
本申请实施例提供的技术方案可以应用于具备模型参数处理、模型参数配置能力的数据处理设备中,例如可以是服务器、终端等。该数据处理设备可以是配置了这N个处理节点中部分或全部处理节点的一个处理设备,也可以是未配置这N个处理节点的独立设备。
为了便于理解本申请的技术方案,下面结合实际应用场景对本申请实施例提供的模型训练方法进行介绍,在图2所示的场景中,N=6,用于对同一个网络模型进行并行训练的6个处理节点可以被分别配置在一个或多个的服务器中,这6个处理节点通过编号10-60进行标识。
可以分别计算这6个处理节点在第i+1次训练迭代开始时训练网络模型的初始模型参数。在计算这6个处理节点中任意一个处理节点对应的初始模型参数时,可以将这个处理节点作为目标处理节点,例如处理节点10。
配置了处理节点10的服务器可以作为前述数据处理设备来计算自身所配置处理节点10在第i+1次训练迭代开始时所采用的初始模型参数。
在图2所示的场景中,对网络模型进行的并行训练的过程中包括了k次训练迭代,在第i次训练迭代结束时,针对目标处理节点,配置了处理节点10的服务器可以在6个处理节点中确定一部分处理节点,以这部分处理节点的模型参数来确定待融合参数。在图2所示场景中,配置了处理节点10的服务器从6个处理节点中确定出2个处理节点(例如虚线框所示处理节点20和处理节点30)用于确定待融合参数。
将在第i次训练迭代结束时处理节点20和处理节点30所训练网络模型的模型参数作为待融合参数,并根据该待融合参数确定在第i+1次训练迭代开始时处理节点10所训练网络模型的初始模型参数。
可以理解的是,确定出的初始模型参数可以仅适用于一个处理节点,也可以适用于多个处理节点,例如当存在多个目标节点确定的M个处理节点相同时,获取的待融合参数也相同,此时该待融合参数可以适用于确定多个处理节点的初始模型参数。
由于在不同的处理节点作为目标处理节点进行计算时,所选取的M个处理节点可以不同(这里所指的不同可以理解为全部不同或者部分不同),因此不同处理节点作为目标处理节点时,对应的待融合参数是可以有所区别的,多样化的待融合参数确定出的初始模型参数同样具有多样化。
例如图2中在第i+1次训练迭代开始时,任意两个处理节点例如处理节点10和处理节点20所训练网络模型的初始模型参数可以不是完全相同的,使得每次训练迭代开始时,由于N个处理节点所训练网络模型的初始训练参数有所区别,导致模型训练起点并不完全相同,分别体现了全部处理节点中一部分处理节点对网络模型的训练特点,避免了过于同质化。从而在不太影响并行训练的整体性的前提下,突出了部分处理节点的训练多样性。经过如此的k次训练迭代后,可以有效降低最终完成训练时网络模型的过拟合问题,在提高了训练效率的前提下保证了模型质量。
接下来,将结合附图对本申请实施例提供的一种模型训练方法进行介绍。
参见图3,图3展示了一种模型训练方法的流程图,该方法应用于通过N个处理节点对网络模型进行并行训练的过程中,且该并行训练过程包括k次训练迭代。该方法包括:
S301:在第i次训练迭代结束时,在N个处理节点中确定M个处理节点。
数据处理设备在第i次训练迭代结束时,为了确保后续获取的待融合参数为局部处理节点的模型参数,需要先从N个进行并行训练的处理节点中确定M个处理节点,且M小于N。从N个处理节点中确定M个处理节点的方式可以有多种,本申请实施例不进行限定。例如可以随机确定,也可以根据通信关系进行确定。其中,通信关系可以体现出处理节点间的通信便利程度,例如图2所示的场景中,处理节点10与处理节点20和处理节点60间具有直接通信关系,属于并行训练场景中的相邻处理节点。在一种可能的实现方式中,可以根据此次计算中的目标处理节点在上述N个处理节点中的通信关系,在N个处理节点中确定M个处理节点。在针对目标处理节点确定M个处理节点时,可以基于通信关系所体现的通信便利性来选取局部处理节点,从而所确定的M个处理节点相对于未被选取的处理节点来说,与目标处理节点的通信便利程度更好,例如在图2所示的场景中,若M为3,那么针对处理节点10所确定的M个处理节点中至少可以包括其一级通信邻居,分别为处理节点20和处理节点60,还可以进一步包括其二级通信邻居,例如处理节点30或处理节点50。
配置了目标处理节点的数据处理设备可以更为高效的从这M个处理节点中获取模型参数,提高确定初始模型参数的效率。
而且,由于在N个处理节点中,不同的处理节点具有的相邻通信关系可以不完全相同,因此基于通信关系来确定目标处理节点对应的M个处理节点还具有多样性的作用,即在不同的处理节点作为目标处理节点时,基于通信关系确定的M个处理节点的区别性相对于随机选取的方式来说更大,且对于N个处理节点整体来说,确定每个处理节点的初始模型参数时所涉及处理节点的覆盖面更全面,使得每次训练迭代不会过多的损失并行训练的整体训练特点,一定程度上保证了最终的训练质量。本申请实施例也不限定局部处理节点的数量M的多少,只要比N的数量小即可。需要注意的是,M的数量越多,对初始模型参数所带来的多样化影响就越小,M的数量越少,所确定出的初始模型参数体现出的整体并行训练的同质性就越低,会直接影响并行训练最终确定的网络模型质量。
在一种可能的实现方式中,基于上述确定M数量的原理,局部处理节点的数目M可以根据进行并行训练的处理节点的总数N来确定。例如一种确定的方式中,M可以等于logN。由此确定出的M的数量相对于总数量N来说足够多,占有整体并行训练一定程度的比例。在以此方式所确定M的情况下,通过第i次训练迭代结束时M个处理节点所训练网络模型的模型参数,可以较全面的体现出本次训练迭代的整体训练特点,而且确定出的初始模型参数还可以体现出局部处理节点的训练特点,带来多样化的效果。而且M的数量相对N来说较少,降低了确定初始模型参数的计算量,从而达到了计算效率和训练质量的较好平衡。
S302:从M个处理节点中获取待融合参数。
数据处理设备在确定M个处理节点中,从M个处理节点中获取待融合参数。其中,待融合参数为M个处理节点在第i次训练迭代结束时所训练的网络模型的模型参数,在本申请实施例中可以采用Wj(t)表示,j=1,2,3…M。
S303:根据待融合参数,确定在第i+1次训练迭代开始时目标处理节点训练的网络模型的初始模型参数。
其中,根据待融合参数确定初始模型参数的步骤是多个处理节点对网络模型进行并行训练的步骤之一。多处理节点对网络模型进行并行训练的方法有多种,例如模型平均(Model average,简称MA)算法、逐块模型更新过滤(Blockwise Model-Update Filtering,简称BMUF)算法等。在现有的并行训练方法中,为了使不同处理节点训练的网络模型能够体现出整体处理节点的训练特点,往往会在一次训练迭代完成时,将不同处理节点训练的网络模型的模型参数进行模型融合,即获取此次训练迭代过程后全部处理节点的模型参数,并根据获取的模型参数确定下一次训练迭代开始时每一个处理节点的初始模型参数。
可以理解的是,在不同的并行训练方法中,进行模型融合的具体方式也有所不同。例如,在MA算法中,进行模型融合只需将全部处理节点的网络模型进行平均后分配给每一个处理节点,即可作为下一次处理节点进行训练迭代的初始模型参数;而在BUMF算法中,在对全部处理节点的模型参数进行平均后,为了体现每一个处理节点的个性化特点,还要针对每一个处理节点所训练的网络模型的历史参数对该处理节点进行个性化补偿,将在平均网络模型参数基础上进行个性化补偿后的模型参数作为该处理节点下一次训练迭代的初始模型参数。
下面将基于BMUF算法中进行模型融合的场景,对本申请实施例所提供的技术改进进行介绍:
其中,t为第i次训练迭代结束时的当前步计数,代表在按照常规的随机梯度下降过程对网络模型进行训练时,网络模型经过的小批量(mini-batch)的训练样本训练的次数。
在BUMF算法中,由于第一步是将全部处理节点的模型参数进行平均,因此并不能体现局部处理节点训练的网络模型的特点;同时,由于是将该平均后的模型参数作为计算每一个处理节点在下一次训练迭代开始时的初始模型参数,导致每一个处理节点获取的平均模型参数都相同,缺乏多样化与随机性。而上述技术缺陷容易导致BUMF算法训练出的网络模型具有过拟合问题。
在BUFM基础上结合本申请技术方案后,第一步只需对获取的待融合参数进行平均,该待融合参数为确定的M个处理节点的模型参数,该M个节点是全部处理节点中的局部处理节点,因此对待融合参数进行平均后得到的平均值能够反映出局部处理节点的训练特点。
由于在不同的处理节点作为目标处理节点时,所确定的M个处理节点可以有所不同,因此获取的待融合参数也可以不同,计算出的平均模型参数也可以不同,从而使不同处理节点获取的平均模型参数具有多样化和随机性的特点。而正是因为本申请技术方案在这一步骤中的带来的改进,使最终并行训练完成后训练得到的网络模型的过拟合程度降低。
其中,τ为相邻两次模型融合之间目标处理节点训练的网络模型更新的mini-batch的数量。通过计算目标处理节点的差值Gn,能够在一定程度上反映目标处理节点所训练的网络模型的变化情况,从而体现目标处理节点训练的个性化。
(3)计算并更新带有历史梯度权重的变化量△n:
△n:=ηGn+m△n
其中,:=符号的意义为将该符号右边的计算结果赋值给符号左边的变量;η>0,为块学习率(block learning rate)。块学习率是用于监督某一处理节点进行模型训练的重要参数,决定了训练的网络模型中的目标函数能否收敛到局部最小值以及何时能够收敛到最小值;m历史梯度的权重(block momentum rate),用于体现目标训练节点的历史梯度的影响。由此可见,变化量△n既反映出目标处理节点的训练速度,又能够体现出前i次训练迭代对第i+1次训练迭代的初始模型参数的影响,使目标处理节点训练的网络模型更加符合自身训练数据的特点。
(4)计算并更新中间变量Ωn:
Ωn:=Ωn+△n
(5)计算在第i+1次训练迭代开始时目标处理节点n所训练的网络模型的初始模型参数Wn(t):
Wn(t)=Ωn+η△n
可以理解的是,某些情况下,M个处理节点所训练的网络模型与目标处理节点n训练的网络模型之间可能存在较大的差异性,若只通过M个处理节点的模型参数确定目标处理节点n的初始模型参数,可能会导致确定出的初始模型参数虽然能够体现出局部处理节点的训练特点,但是与目标处理节点本身所训练的网络模型的训练特点差异性较大,难以体现出目标处理节点自身的训练特点,使目标处理节点在训练网络模型时过于偏向局部训练特点,反而会使目标处理节点的训练效果下降。为了突出目标处理节点自身训练的网络模型的特点,对目标处理节点的模型训练进行适当的修正,在一种可能的实现方式中,还可以根据待融合参数和目标处理节点在第i个训练迭代结束时所训练的网络模型的模型参数,确定在第i+1次训练迭代开始时目标处理节点所训练的网络模型的初始模型参数。例如,可以在上述计算待融合参数的均值时,将目标处理节点n在第i次训练迭代结束时所训练的网络模型的模型参数Wn(i)一起带入进行均值计算:
可以理解的是,在上述技术方案中本申请技术方案结合BUMF算法所带来的有益效果,在本申请技术方案结合其他利用全部处理节点的模型参数进行模型融合的并行训练方法中仍然存在,同样能够在一定程度上解决过拟合问题。
在一种可能的实现方式中,通过N个处理节点进行并行训练的网络模型可能包括多个子模块,网络模型的一个子模块可以为该网络模型的一个层,例如当网络模型包括输入层、隐藏层和输出层时,可以将输入层作为一个子模块,隐藏层作为一个子模块,输出层作为一个子模块。每一个子模块具有相应的模型参数。网络模型的一个子模块的模型参数属于该网络模型的模型参数的一部分。
不同子模块负责对进入网络模型不同层的数据按照不同的规则进行处理。在N个处理节点中的某一处理节点作为目标处理节点进行的初始模型参数计算中,为了进一步突出各个子模块的参数多样性和随机性的特点,可以针对目标处理节点训练的网络模型中不同的子模块,获取M个处理节点训练的网络模型中目标子模块的模型参数。可以理解的是,目标子模块是目标处理节点训练的网络模型中多个子模块中的一个。通过这种方式能够保证获取的待融合参数与需要利用该待融合参数进行训练的子模块之间具有对应的训练特点,从而满足不同子模块对于不同待融合参数的需求。同时,由于针对每一个子模块进行训练时,获取的待融合参数都为全部N个处理节点中部分M个处理节点的模型参数,从而使训练得到的具有多个子模块的网络模型进一步体现出局部处理节点的训练特点。
此外,由于针对目标处理节点训练的网络模型的不同子模块所选取的都为局部处理节点的模型参数,因此针对不同的子模块,选取的M个处理节点可以不同。例如,多个子模块包括第一子模块和第二子模块,第一组M个处理节点用于确定第一子模块的初始模型参数,第二组M个处理节点用于确定第二子模块的初始模型参数,第一组M个处理节点和第二组M个处理节点间具有不同的处理节点,从而一定程度上加强了网络模型训练过程中的随机性与多样性,降低了过拟合的问题。
例如,当在图2所示的多个处理节点中进行并行训练的网络模型是长短时记忆(Long Short-term memory,简称LSTM)声学模型时,该声学模型包括输入层子模块、隐藏层子模块和输出层子模块。目标处理节点为处理节点10,在确定目处理节点10在第i+1次训练迭代开始时所训练LSTM声学模型的输入层子模块的初始模型参数时,可以确定处理节点20和处理节点60作为对应的M个处理节点,从这两个处理节点中获取其训练LSTM声学模型的输入层子模块的第i次训练迭代后完成时的模型参数,作为待融合数据;在确定隐藏层子模块和输出层子模块的初始模型参数时,可以分别确定处理节点60和处理节点50,以及处理节点30和处理节点40处理节点所训练LSTM声学模型中的隐藏层子模块和输出层子模块的模型参数作为待融合数据,从而保证在处理节点10中训练的LSTM声学模型的不同层子模块的模型参数具有不同的局部节点的模型参数的综合特点。由上述技术方案可以看出,在通过N个处理节点对网络模型进行并行训练的过程中包括了k次训练迭代,针对其中一次例如第i次训练迭代结束时,从N个处理节点中确定出部分处理节点,例如M个处理节点。根据这M个处理节点此时所训练网络模型的模型参数确定出待融合参数,并基于待融合参数确定目标处理节点在第i+1次训练迭代开始时对所述网络模型采用的初始模型参数。由于在一次训练迭代开始时任一个处理节点对网络模型采用的初始模型参数是根据N个处理节点中的局部处理节点确定的,使得每个处理节点在这次训练迭代开始时采用的初始模型参数可以有所不同,且体现出局部处理节点训练特点,每次训练迭代的初始模型参数的多样性降低了最终完成训练时网络模型的过拟合问题,在提高了训练效率的前提下保证了模型质量。
接下来,将结合一种实际应用场景,对本申请实施例提供的模型训练方法进行介绍。该应用场景是一种语音识别场景,该语音识别系统包括预处理模块401、词边界检测模块402、梅尔频率倒谱系数特征模块403、声学模型和语音模型模块404和认证模块405。本申请实施例所提供的模型训练方式可以应用于该场景中声学模型和语音模型的训练,以实现高质量的高效训练。
该场景中上述模块的工作简述如下:
预处理模块401,用于接收输入的语音信号并进行预处理;
词边界检测模块402,用于对预处理后的语音信号进行词边界检测,判定其是否为人声音频;
梅尔频率倒谱系数特征模块403,用于在确定音频为人声音频后,从该音频数据中提取梅尔频率倒谱系数特征;
声学模型和语音模型模块404,用于通过声学模型和语音模型对音频数据进行识别;
认证模块405,用于认证识别结果并输出。
其中,在声学模型和语言模型模块中有n个处理节点用于对LSTM声学模型进行并行训练,采用的并行训练方法为结合有本申请技术方案的优化BMUF算法。语音识别系统的模型训练方法流程图如图5所示,所述方法包括:
S501:将LSTM声学模型分为m个子模块。
首先,根据LSTM声学模型的特点,将其分为m个输入层、隐藏层和输出层子模块,如下列代码中的所示,该代码为进行本申请实施例中的并行训练的代码。
将n个节点标记为0,1,…,n-1,假设每个节点i与(i-1)%n,…,(i-k)%n,(i+1)%n,…,(i+k)%n有连接,%代表求模符号。
S502:将待训练数据分为n个部分送至n个处理节点。
S503:每个处理节点读取数据进行模型训练。
如代码所示,每个处理节点读取各自数据后,按照常规随机梯度下降过程,根据每一个mini-batch进行模型更新。其中,当前训练步计数为t。
S504:确定目标处理节点。
每当n个处理节点完成τ个mini-batch的模型更新后,进行一次模型融合。在进行模型融合开始时,首先确定每一次模型融合计算中的目标处理节点。可以理解的是,一次模型融合中需要进行n次计算,即每一个处理节点都要作为目标处理节点进行一次计算,一次计算中包括一个目标处理节点。
S505:针对目标处理节点训练的声学模型中的每一个子模块各随机确定q个处理节点。
在确定目标处理节点后,针对目标处理节点训练的LSTM声学模型的每一个输出层、隐藏层和输出层子模块,各根据通信关系随机选取q个处理节点。
S506:获取各子模块对应的待融合参数。
在确定各子模块对应的q个处理节点后,从q个处理节点训练的声学模型中获取与各子模块对应的子模块的模型参数,作为各子模块的待融合参数。
S507:根据待融合参数确定在下一次模型训练迭代开始时目标处理节点所训练的声学模型的初始模型参数。
在获取待融合参数后,利用上述实施例中描述的本申请技术方案结合BMUF算法得到的优化算法,如代码所示,计算目标处理节点在下一次训练迭代开始时的初始模型参数。
基于前述实施例提供的模型训练方法,本实施例提供一种模型训练的相关装置600,参见图6,装置600包括第一确定单元601、获取单元602、第二确定单元603:
第一确定单元601,用于在第i次训练迭代结束时,在N个处理节点中确定M个处理节点,i≤k-1,M<N;
获取单元602,用于从M个处理节点获取待融合参数,待融合参数为M个处理节点所训练的网络模型的模型参数;
第二确定单元603,用于根据待融合参数,确定在第i+1次训练迭代开始时目标处理节点所训练的网络模型的初始模型参数;目标处理节点为N个处理节点中除了M个处理节点之外的一个处理节点。
在一种可能的实现方式中,若M<N-1,第二确定单元603具体用于:
根据待融合参数和目标处理节点在第i个训练迭代结束时所训练的网络模型的模型参数,确定在第i+1次训练迭代开始时目标处理节点所训练的网络模型的初始模型参数。
在一种可能的实现方式中,网络模型包括多个子模块,待融合参数为M个处理节点所训练的网络模型中目标子模块的模型参数,目标子模块为多个子模块中的一个:
初始模型参数用于标识在第i+1次训练迭代开始时目标处理节点所训练的目标子模块的模型参数。
在一种可能的实现方式中,多个子模块包括第一子模块和第二子模块,其中,第一组M个处理节点用于确定第一子模块的初始模型参数,第二组M个处理节点用于确定第二子模块的初始模型参数,第一组M个处理节点和第二组M个处理节点间具有不同的处理节点。
在一种可能的实现方式中,M是根据N确定的。
在一种可能的实现方式中,第一确定单元601具体用于:在第i次训练迭代结束时,根据目标处理节点在N个处理节点中的通信关系,在N个处理节点中确定M个处理节点。
本申请实施例还提供了一种用于模型训练的设备,下面结合附图对用于模型训练的设备进行介绍。请参见图700所示,本申请实施例提供了一种用于模型训练的设备700,该设备700还可以是终端设备,该终端设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,简称PDA)、销售终端(Point of Sales,简称POS)、车载电脑等任意智能终端,以终端设备为手机为例:
图7示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图7,手机包括:射频(Radio Frequency,简称RF)电路710、存储器720、输入单元730、显示单元740、传感器750、音频电路760、无线保真(wireless fidelity,简称WiFi)模块770、处理器780、以及电源790等部件。本领域技术人员可以理解,图7中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图7对手机的各个构成部件进行具体的介绍:
RF电路710可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器780处理;另外,将设计上行的数据发送给基站。通常,RF电路710包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,简称LNA)、双工器等。此外,RF电路710还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,简称GSM)、通用分组无线服务(GeneralPacket Radio Service,简称GPRS)、码分多址(Code Division Multiple Access,简称CDMA)、宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)、长期演进(Long Term Evolution,简称LTE)、电子邮件、短消息服务(Short Messaging Service,简称SMS)等。
存储器720可用于存储软件程序以及模块,处理器780通过运行存储在存储器720的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元730可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元730可包括触控面板731以及其他输入设备732。触控面板731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板731上或在触控面板731附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器780,并能接收处理器780发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板731。除了触控面板731,输入单元730还可以包括其他输入设备732。具体地,其他输入设备732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元740可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元740可包括显示面板741,可选的,可以采用液晶显示器(Liquid CrystalDisplay,简称LCD)、有机发光二极管(Organic Light-Emitting Diode,简称OLED)等形式来配置显示面板741。进一步的,触控面板731可覆盖显示面板741,当触控面板731检测到在其上或附近的触摸操作后,传送给处理器780以确定触摸事件的类型,随后处理器780根据触摸事件的类型在显示面板741上提供相应的视觉输出。虽然在图7中,触控面板731与显示面板741是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板731与显示面板741集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板741的亮度,接近传感器可在手机移动到耳边时,关闭显示面板741和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路760、扬声器761,传声器762可提供用户与手机之间的音频接口。音频电路760可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器761转换为声音信号输出;另一方面,传声器762将收集的声音信号转换为电信号,由音频电路760接收后转换为音频数据,再将音频数据输出处理器780处理后,经RF电路710以发送给比如另一手机,或者将音频数据输出至存储器720以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了WiFi模块770,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器780是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器720内的软件程序和/或模块,以及调用存储在存储器720内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器780可包括一个或多个处理单元;优选的,处理器780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器780中。
手机还包括给各个部件供电的电源790(比如电池),优选的,电源可以通过电源管理系统与处理器780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本实施例中,该终端设备所包括的处理器780还具有以下功能:
在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,i≤k-1,M<N;
从所述M个处理节点获取待融合参数,所述待融合参数为所述M个处理节点所训练的所述网络模型的模型参数;
根据所述待融合参数,确定在第i+1次训练迭代开始时目标处理节点所训练的所述网络模型的初始模型参数;所述目标处理节点为所述N个处理节点中除了所述M个处理节点之外的一个处理节点。
本申请实施例还提供一种服务器,请参见图8所示,图8为本申请实施例提供的服务器800的结构图,服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,简称CPU)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。
服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例所述的一种模型训练的方法中的任意一种实施方式。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种模型训练方法,其特征在于,在通过N个处理节点对网络模型进行并行训练的过程中包括k次训练迭代,k≥2,N≥2,所述方法包括:
在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,i≤k-1,M<N;
从所述M个处理节点获取待融合参数,所述待融合参数为所述M个处理节点所训练的所述网络模型的模型参数;
根据所述待融合参数,确定在第i+1次训练迭代开始时目标处理节点所训练的所述网络模型的初始模型参数;所述目标处理节点为所述N个处理节点中除了所述M个处理节点之外的一个处理节点。
2.根据权利要求1所述的方法,其特征在于,若M<N-1,所述根据所述待融合参数,确定在第i+1次训练迭代开始时所述目标处理节点所训练的所述网络模型的初始模型参数,包括:
根据所述待融合参数和所述目标处理节点在第i个训练迭代结束时所训练的所述网络模型的模型参数,确定在第i+1次训练迭代开始时所述目标处理节点所训练的所述网络模型的初始模型参数。
3.根据权利要求1所述的方法,其特征在于,所述网络模型包括多个子模块,所述待融合参数为所述M个处理节点所训练的所述网络模型中目标子模块的模型参数,所述目标子模块为所述多个子模块中的一个;
所述初始模型参数用于标识在第i+1次训练迭代开始时所述目标处理节点所训练的所述目标子模块的模型参数。
4.根据权利要求3所述的方法,其特征在于,所述多个子模块包括第一子模块和第二子模块,其中,第一组M个处理节点用于确定所述第一子模块的初始模型参数,第二组M个处理节点用于确定所述第二子模块的初始模型参数,所述第一组M个处理节点和所述第二组M个处理节点间具有不同的处理节点。
5.根据权利要求1-4任意一项所述的方法,其特征在于,M是根据N确定的。
6.根据权利要求1-4任意一项所述的方法,其特征在于,所述在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,包括:
在第i次训练迭代结束时,根据所述目标处理节点在所述N个处理节点中的通信关系,在所述N个处理节点中确定M个处理节点。
7.一种模型训练的相关装置,其特征在于,在通过N个处理节点对网络模型进行并行训练的过程中包括k次训练迭代,k≥2,N≥2,所述装置包括第一确定单元、获取单元、第二确定单元:
所述第一确定单元,用于在第i次训练迭代结束时,在所述N个处理节点中确定M个处理节点,i≤k-1,M<N;
所述获取单元,用于从所述M个处理节点获取待融合参数,所述待融合参数为所述M个处理节点所训练的所述网络模型的模型参数;
所述第二确定单元,用于根据所述待融合参数,确定在第i+1次训练迭代开始时目标处理节点所训练的所述网络模型的初始模型参数;所述目标处理节点为所述N个处理节点中除了所述M个处理节点之外的一个处理节点。
8.根据权利要求7所述的装置,其特征在于,若M<N-1,所述第二确定单元具体用于:
根据所述待融合参数和所述目标处理节点在第i个训练迭代结束时所训练的所述网络模型的模型参数,确定在第i+1次训练迭代开始时所述目标处理节点所训练的所述网络模型的初始模型参数。
9.一种用于模型训练的设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-6所述的模型训练方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-6所述的模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911222356.9A CN110956265A (zh) | 2019-12-03 | 2019-12-03 | 一种模型训练方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911222356.9A CN110956265A (zh) | 2019-12-03 | 2019-12-03 | 一种模型训练方法和相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110956265A true CN110956265A (zh) | 2020-04-03 |
Family
ID=69979624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911222356.9A Pending CN110956265A (zh) | 2019-12-03 | 2019-12-03 | 一种模型训练方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110956265A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723907A (zh) * | 2020-06-11 | 2020-09-29 | 浪潮电子信息产业股份有限公司 | 一种模型训练设备、方法、系统及计算机可读存储介质 |
CN111898424A (zh) * | 2020-06-19 | 2020-11-06 | 贝壳技术有限公司 | 文字识别模型训练方法、装置、电子设备及存储介质 |
CN116663639A (zh) * | 2023-07-31 | 2023-08-29 | 浪潮电子信息产业股份有限公司 | 一种梯度数据同步方法、系统、装置及介质 |
CN118627643A (zh) * | 2024-07-12 | 2024-09-10 | 腾讯科技(深圳)有限公司 | 一种模型训练方法和相关装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492753A (zh) * | 2018-11-05 | 2019-03-19 | 中山大学 | 一种去中心化的随机梯度下降的方法 |
US20190279088A1 (en) * | 2016-11-29 | 2019-09-12 | Huawei Technologies Co., Ltd. | Training method, apparatus, chip, and system for neural network model |
CN110379416A (zh) * | 2019-08-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种神经网络语言模型训练方法、装置、设备及存储介质 |
-
2019
- 2019-12-03 CN CN201911222356.9A patent/CN110956265A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190279088A1 (en) * | 2016-11-29 | 2019-09-12 | Huawei Technologies Co., Ltd. | Training method, apparatus, chip, and system for neural network model |
CN109492753A (zh) * | 2018-11-05 | 2019-03-19 | 中山大学 | 一种去中心化的随机梯度下降的方法 |
CN110379416A (zh) * | 2019-08-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种神经网络语言模型训练方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
YIHENG HUANG 等: "A Random Gossip BMUF Process for Neural Language Modeling", pages 1 - 3, Retrieved from the Internet <URL:http://arxiv.org/abs/1909.09010v2> * |
YUZHE TANG 等: "LHT: A Low-Maintenance Indexing Scheme over DHTs", 2008 THE 28TH INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS, 12 August 2008 (2008-08-12), pages 141 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723907A (zh) * | 2020-06-11 | 2020-09-29 | 浪潮电子信息产业股份有限公司 | 一种模型训练设备、方法、系统及计算机可读存储介质 |
CN111723907B (zh) * | 2020-06-11 | 2023-02-24 | 浪潮电子信息产业股份有限公司 | 一种模型训练设备、方法、系统及计算机可读存储介质 |
CN111898424A (zh) * | 2020-06-19 | 2020-11-06 | 贝壳技术有限公司 | 文字识别模型训练方法、装置、电子设备及存储介质 |
CN116663639A (zh) * | 2023-07-31 | 2023-08-29 | 浪潮电子信息产业股份有限公司 | 一种梯度数据同步方法、系统、装置及介质 |
CN116663639B (zh) * | 2023-07-31 | 2023-11-03 | 浪潮电子信息产业股份有限公司 | 一种梯度数据同步方法、系统、装置及介质 |
CN118627643A (zh) * | 2024-07-12 | 2024-09-10 | 腾讯科技(深圳)有限公司 | 一种模型训练方法和相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110164469B (zh) | 一种多人语音的分离方法和装置 | |
CN110956265A (zh) | 一种模型训练方法和相关装置 | |
CN110163367B (zh) | 一种终端部署方法和装置 | |
CN108021572B (zh) | 回复信息推荐方法和装置 | |
CN108304758B (zh) | 人脸特征点跟踪方法及装置 | |
EP2821992B1 (en) | Method for updating voiceprint feature model and terminal | |
CN110515626B (zh) | 深度学习计算框架的代码编译方法及相关产品 | |
CN110570840B (zh) | 一种基于人工智能的智能设备唤醒方法和装置 | |
CN110162603B (zh) | 一种智能对话方法、动态存储方法和装置 | |
CN109256147B (zh) | 音频节拍检测方法、装置及存储介质 | |
CN110890093A (zh) | 一种基于人工智能的智能设备唤醒方法和装置 | |
CN112751648B (zh) | 丢包数据恢复方法和相关装置、设备及存储介质 | |
CN111816162A (zh) | 一种语音变化信息检测方法、模型训练方法以及相关装置 | |
CN110263216A (zh) | 一种视频分类的方法、视频分类模型训练的方法及装置 | |
CN112907255A (zh) | 一种用户分析方法和相关装置 | |
CN112612598A (zh) | 防沉迷方法、移动终端及计算机可读存储介质 | |
CN107368998A (zh) | 日程管理方法及相关产品 | |
CN111709789B (zh) | 一种用户转化率的确定方法及相关设备 | |
CN112948763B (zh) | 件量预测方法、装置、电子设备及存储介质 | |
CN111091180B (zh) | 一种模型训练方法和相关装置 | |
CN111617472A (zh) | 一种虚拟场景中模型管理的方法以及相关装置 | |
CN109544241A (zh) | 一种点击率预估模型的构建方法、点击率预估方法和装置 | |
CN117009845A (zh) | 一种类增量模型的训练方法、装置以及存储介质 | |
CN113648659A (zh) | 一种确定用户活跃度的方法和相关装置 | |
CN111275170B (zh) | 一种模型训练方法和相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40022305 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |