深度神经网络学习方法、处理器和深度神经网络学习系统技术方案

技术编号:12027851 阅读:63 留言:0更新日期:2015-09-10 12:49
本发明专利技术的实施方式提供了一种深度神经网络学习方法。该方法包括:多个处理器并行地对分配至自身的数据从首层到末层逐层进行正向处理、并在正向处理结束时获得误差信息;多个处理器对误差信息从末层到首层逐层进行反向处理,其中,多个处理器中的每个处理器在其深度神经网络模型的当前层的反向处理产生参数修正量后,随即向其他处理器传递参数修正量。通过本发明专利技术上述实施方式的方法,减少了参数修正量传递所占用的时间,有效提高了深度神经网络模型训练的效率,尤其对于训练数据比较多、深度神经网络模型层数比较多的情况,这种方式可以大幅减少用时,有效节省模型训练的时间。此外,本发明专利技术的实施方式提供了一种处理器和深度神经网络学习系统。

【技术实现步骤摘要】

本专利技术的实施方式涉及神经网络领域,更具体地,本专利技术的实施方式涉及一种深度神经网络学习方法、处理器和深度神经网络学习系统
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。深度神经网络学习作为机器学习研宄中的一个新的领域,它通过模仿人脑的机制来解释数据,是一种通过建立和模拟人脑进行分析学习的智能模型。如图1所示为深度神经网络模型示意图,一般训练数据会被依次送入该模型进行训练。然而,当待训练数据较多时,如果采用单一的处理器进行训练则需要很长的训练时间,因此一般会将待训练数据分成两份或两份以上,采用两个或者两个以上处理器并行训练的方式以提高训练的效率。在具体实现的过程中,在反向处理时,为了实现模型参数的更新,每个处理器都需要获取一份完整的训练数据所对应的参数修正量(即,不仅需要自身得到的参数修正量,还需要获取其他并行处理的处理器得到的参数修正量),才能实现对模型参数的更新。为此,现有的处理方式是在反向处理完成后,增加一个参数修正量的传输过程,从而使得每个处理器都可以获得一份完整的训练数据所对应的参数修正量以实现模型参数的更新。然而,因为这个参数修正量的传输过程的加入使得模型训练的时间被延长,训练效率也相应降低,这显然与最初并行处理以提高训练效率的目的是相悖的。
技术实现思路
由于在并行进行深度神经网络学习的过程中,需要增加参数修正量的传递过程,占用了一定的时间,从而无法有效提高深度神经网络学习的效率,在现有技术中,也无法很好地缩短参数修正量传递所占用的时间,这事非常令人烦恼的过程。为此,非常需要一种改进的深度神经网络的学习方法,以有效缩短参数修正量传递所占用的时间,提高神经网络学习的效率。在本上下文中,本专利技术实施方式期望提供一种深度神经网络学习方法、处理器和深度神经网络学习系统。在本专利技术实施方式的第一方面中,提供了一种深度神经网络学习方法,例如,可以包括:多个处理器并行地对分配至自身的数据,在深度神经网络模型的多个层上从首层到末层逐层进行正向处理、并在正向处理结束时获得误差信息;所述多个处理器对所述误差信息从所述末层到所述首层逐层进行反向处理,其中,所述多个处理器中的每个处理器在其深度神经网络模型的当前层的反向处理产生参数修正量后,随即向其他处理器传递所述参数修正量。在本专利技术实施方式的第二方面中,提供了一种处理器,例如,可以包括:正向处理单元,用于对分配至自身的数据,在深度神经网络模型的多个层上从首层到末层逐层进行正向处理、并在正向处理结束时获得误差信息;反向处理单元,用于对所述误差信息从所述末层到所述首层逐层进行反向处理,其中,在深度神经网络模型的当前层的反向处理产生参数修正量后,随即向并行运算的其他处理器传递所述参数修正量。在本专利技术实施方式的第三方面中,提供了一种深度神经网络学习系统,例如,可以包括:并行运算的多个上述的处理器。通过本专利技术上述实施方式的深度神经网络学习方法、处理器和深度神经网络学习系统,减少了参数修正量传递所需的时间,有效提高了深度神经网络模型训练的效率,尤其对于训练数据比较多、深度神经网络模型层数比较多的情况,这种方式可以大幅减少用时,有效节省模型训练的时间。【附图说明】通过参考附图阅读下文的详细描述,本专利技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本专利技术的若干实施方式,其中:图1示意性地示出了根据本专利技术实施方式的深度神经网络模型示意图;图2示意性地示出了现有技术中深度神经网络模型的训练流程示意图;图3示意性地示出了根据本专利技术实施方式的应用场景;图4示意性地示出了根据本专利技术实施方式的服务器的设备结构示意图;图5示意性地示出了根据本专利技术实施方式的处理器的设备结构示意图;图6示意性地示出了根据本专利技术实施方式的一种深度神经网络学习方法的交互示意图;图7示意性地示出了根据本专利技术实施方式的另一种深度神经网络学习方法的交互示意图;图8示意性地示出了现有的反向处理的逻辑流程示意图;图9示意性地示出了根据本专利技术实施方式的反向处理的逻辑流程示意图;图10示意性地示出了根据本专利技术实施方式的深度神经网络学习方法的流程示意图。在附图中,相同或对应的标号表不相同或对应的部分。【具体实施方式】下面将参考若干示例性实施方式来描述本专利技术的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本专利技术,而并非以任何方式限制本专利技术的范围。相反,提供这些实施方式是为了使本申请公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。本领域技术技术人员知道,本专利技术的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本申请公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。根据本专利技术的实施方式,提出了一种深度神经网络学习方法、处理器和深度神经网络学习系统。在本文中,需要理解的是,所涉及的术语中:1、深度神经网络模型中的层:指代深度神经网络模型不同层的节点之间的线性层和非线性层,这里的线性层和非线性层是在不同层的节点之间,对数据进行映射、运算的处理层,其中线性层对输入数据进行的处理包括权重矩阵处理,还可以包括偏置向量处理等,非线性层则包括sigmoid层、softmax层、relu层等类型。2、参数修正量:在深度神经网络模型训练的反向处理过程中,所产生的用于更新深度神经网络模型参数的修正量,主要包括权重矩阵修正量和偏置向量修正量。在进行模型参数的更新时,对反向处理过程产生的所述参数修正量进行处理,并根据处理结果对模型参数进行更新。其中,权重矩阵修正量用于更新线性层中的权重矩阵的参数,而偏置向量修正量用于更新线性层中偏置向量的参数。线性层中权重矩阵和偏置向量对不同层节点之间的数值映射处理方式是现有技术,不再赘述。此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。下面参考本专利技术的若干代表性实施方式,详细阐释本专利技术的原理和精神。发曰月概沐为了对本专利技术进行更为清楚的描述,下面将对现有的深度神经网络学习方法进行具体说明。常规上,数据被依次送入深度神经网络进行学习,每一批数据的计算是通过一个深度神经网络模型在处理器上完成的,其中该处理器可以是图形处理器(GPU),例如,对如图1所示为深度神经网络模型进行训练主要是按照以下三个步骤执行的:步骤1:数据从首层到末层逐层进行正向处理、并在正向处理结束时获得误差信息;步骤2:将误差信息从末层到首层逐层进行反向处理;步骤3:通过在反向处理过程中得到的参数修正量对模型中需要进行参数更新的层进行参数更新。具体的,在实现的过程中,在上述步骤3参数更新的过程并非对深度神经网络模型中的每个层都是必须的,一般仅模型中的线性层可能需要进行参数更新,非线性层一般是不需要进行参数更新的。为了使得描述更为清楚简单,在下文的文字描述以及附图所示意性的内容中,所涉及的深度神经网络模型中的层指代的都是模型中需要进行参数更新的层,对于不需要进行参数更新的层,将不再赘述。由于在大数据时代,数据非常多,如果仅通过一本文档来自技高网...

【技术保护点】
一种深度神经网络学习方法,包括:多个处理器并行地对分配至自身的数据,在深度神经网络模型的多个层上从首层到末层逐层进行正向处理、并在正向处理结束时获得误差信息;所述多个处理器对所述误差信息从所述末层到所述首层逐层进行反向处理,其中,所述多个处理器中的每个处理器在其深度神经网络模型的当前层的反向处理产生参数修正量后,随即向其他处理器传递所述参数修正量。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈海波吴伟李晓燕
申请(专利权)人:杭州朗和科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1