首页> 中国专利> 基于深层神经网络的声学模型训练方法、主机和系统

基于深层神经网络的声学模型训练方法、主机和系统

摘要

本发明公开了一种基于深层神经网络的声学模型训练方法、主机和系统。所述基于深层神经网络的声学模型方法包括:算主机从主控主机获取原始深层神经网络的副本深层神经网络;所述运算主机基于训练数据对副本深层神经网络进行训练,且按照设定规律进入停止状态;当所述运算主机处于停止状态时,将所述副本深层神经网络的加权参数的变化量提供给所述主控主机;所述运算主机接收所述主控主机发送的原始深层神经网络的加权参数绝对值,并根据加权参数绝对值更新副本深层神经网络的加权参数。本发明公开的声学模型训练方法、主机和系统利用多台主机异步、并行的进行深层神经网络训练,大幅提高了深层神经网络训练的效率。

著录项

  • 公开/公告号CN103680496A

    专利类型发明专利

  • 公开/公告日2014-03-26

    原文格式PDF

  • 申请/专利权人 百度在线网络技术(北京)有限公司;

    申请/专利号CN201310704701.9

  • 发明设计人 贾磊;苏丹;胡娜;

    申请日2013-12-19

  • 分类号G10L15/06(20130101);G10L15/16(20060101);

  • 代理机构11332 北京品源专利代理有限公司;

  • 代理人胡彬

  • 地址 100085 北京市海淀区上地十街10号百度大厦三层

  • 入库时间 2023-12-17 01:19:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-10

    授权

    授权

  • 2014-04-23

    实质审查的生效 IPC(主分类):G10L15/06 申请日:20131219

    实质审查的生效

  • 2014-03-26

    公开

    公开

说明书

技术领域

本发明涉及语音识别技术领域,尤其涉及一种基于深层神经网络的声学模 型训练方法、主机和系统。

背景技术

目前,神经网络已经成为语音识别的一条新途径。由于深层神经网络反映 了人脑功能的基本特征,故具有自组织性、自适应性和连续学习能力等特点, 特别适合于解决像语音识别这类模拟人的认知过程和智能处理能力,难以用算 法来描述而又有大量样本可供学习的问题。

但是,由于深层神经网络一般具有较大的规模,训练深层神经网络需要的 样本数据的规模也较大,造成使用普通的计算装置进行用于语音识别的深层神 经网络的训练需要耗费特别长的时间,也就是说,深层神经网络的训练效率不 高。

图形处理器(GPU)是一种专门为处理图形显示而设计的处理芯片。由于图 形处理器具有不同的用途,其架构从一开始就是为大量并行计算而优化设计 的,因此它十分适合被用于深层神经网络语音模型的训练,以提供训练效率。 但是,现有的主机最多只能挂载四个图形处理器,因此,即使采用图形处理 器,深层神经网络训练的训练效率仍不能令人满意。

发明内容

有鉴于此,本发明提出一种基于深层神经网络的声学模型训练方法、主机 和系统,以提高基于深层神经网络的声学模型训练的训练效率。

在第一方面,本发明实施例提供了一种基于深层神经网络的声学模型训练 方法,所述方法包括:

主控主机将原始深层神经网络的各副本深层神经网络下发给至少一个运算 主机,以指示运算主机基于训练数据对副本深层神经网络进行训练;

主控主机定时查询各所述运算主机的状态,若查询到处于训练停止状态的 运算主机,获取停止状态运算主机上副本深层神经网络的加权参数的变化量;

主控主机根据所述停止状态运算主机上副本深层神经网络的加权参数的变 化量,更新主控主机上原始深层神经网络的加权参数;

主控主机利用更新后的原始深层神经网络的加权参数绝对值更新所述停止 状态运算主机上副本深层神经网络的加权参数绝对值。

在第二方面,本发明实施例提供了一种基于深层神经网络的声学模型训练 方法,所述方法包括:

运算主机从主控主机获取原始深层神经网络的副本深层神经网络;

所述运算主机基于训练数据对副本深层神经网络进行训练,且按照设定规 律进入停止状态;

当所述运算主机处于停止状态时,将所述副本深层神经网络的加权参数的 变化量提供给所述主控主机;

所述运算主机接收所述主控主机发送的原始深层神经网络的加权参数绝对 值,并根据加权参数绝对值更新副本深层神经网络的加权参数。

在第三方面,本发明实施例提供了一种基于深层神经网络的声学模型训练 的主控主机,所述主控主机包括:

深层神经网络下发模块,用于将原始深层神经网络的各副本深层神经网络 下发给至少一个运算主机,以指示运算主机基于训练数据对副本深层神经网络 进行训练;

加权参数变化量获取模块,用于定时查询各所述运算主机的状态,若查询 到处于训练停止状态的运算主机,获取停止状态运算主机上副本深层神经网络 的加权参数的变化量;

原始深层神经网络更新模块,用于根据所述停止状态运算主机上副本深层 神经网络的加权参数的变化量,更新主控主机上原始深层神经网络的加权参 数;

副本深层神经网络更新模块,用于利用更新后的原始深层神经网络的加权 参数绝对值更新所述停止状态运算主机上副本深层神经网络的加权参数绝对 值。

在第四方面,本发明实施例提供了一种基于深层神经网络的声学模型训练 的运算主机,所述运算主机包括:

副本深层神经网络获取模块,用于从主控主机获取原始深层神经网络的副 本深层神经网络;

副本深层神经网络训练模块,用于基于训练数据对副本深层神经网络进行 训练,且按照设定规律进入停止状态;

加权参数变化量提供模块,用于当所述运算主机处于停止状态时,将所述 副本深层神经网络的加权参数的变化量提供给所述主控主机;

副本深层神经网络更新模块,用于接收所述主控主机发送的原始深层神经 网络的加权参数绝对值,并根据加权参数绝对值更新副本深层神经网络的加权 参数。

在第五方面,本发明实施例提供了一种基于深层神经网络的声学模型训练 系统,所述系统包括一个本发明任意实施例提供的主控主机,以及至少一个本 发明任意实施例提供的运算主机。

上述实施例提供的基于深层神经网络的声学模型训练方法、主机和系统, 通过利用至少一个运算主机对副本深层神经网络进行训练,主控主机根据所述 运算主机上副本深层神经网络的加权参数的变化量更新主控主机上原始深层神 经网络的加权参数,并利用更新后的主控主机上原始深层神经网络的加权参数 更新运算主机上副本深层神经网络的加权参数,使得能够利用多台主机异步、 并行的进行深层神经网络训练,大幅提高了深层神经网络训练的效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明 的其它特征、目的和优点将会变得更明显:

图1是本发明第一实施例提供的基于深层神经网络的声学模型训练方法的 流程图;

图2是本发明第二实施例提供的基于深层神经网络的声学模型训练方法的 流程图;

图3是本发明第三实施例提供的基于深层神经网络的声学模型训练方法的 流程图;

图4是本发明第四实施例提供的副本深层神经网络训练的流程图;

图5是本发明第五实施例提供的基于深层神经网络的声学模型训练方法的 流程图;

图6是本发明第六实施例提供的基于深层神经网络的声学模型训练方法的 流程图;

图7是本发明第七实施例提供的基于深层神经网络的声学模型训练的主控 主机的结构图;

图8是本发明第八实施例提供的基于深层神经网络的声学模型训练的主控 主机的结构图;

图9是本发明第九实施例提供的基于深层神经网络的声学模型训练的运算 主机的结构图;

图10是本发明第十实施例提供的基于深层神经网络的声学模型训练的运算 主机的结构图;

图11是本发明第十一实施例提供的基于深层神经网络的声学模型训练的运 算主机的结构图;

图12是本发明第十二实施例提供的基于深层神经网络的声学模型训练系统 的结构图;

图13是本发明第十三实施例提供的基于深层神经网络的声学模型训练系统 的结构图;

图14是本发明第十四实施例提供的基于深层神经网络的声学模型训练系统 的交互过程示意图;

图15是本发明第十五实施例提供的基于深层神经网络的声学模型训练系统 的交互过程示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此 处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需 要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内 容。

图1示出了本发明的第一实施例。

图1是本发明第一实施例提供的基于深层神经网络的声学模型训练方法的 流程图。参见图1,本发明实施例提供的训练方法应用于基于深层神经网络的 声学模型训练的系统中,该系统包括一个主控主机和至少一个运算主机,通常 需要多个运算主机实现并行计算。本实施例的方法适用于主控主机中,所述基 于深层神经网络的声学模型训练方法包括:

步骤S110,主控主机将原始深层神经网络的各副本深层神经网络下发给至 少一个运算主机,以指示运算主机基于训练数据对副本深层神经网络进行训 练。

在本实施例中,运算主机上存储的深层神经网络是主控主机上存储的原始 深层神经网络的副本。在所述基于深层神经网络的声学模型训练方法中,主控 主机将其建立的原始深层神经网络下发给至少一个运算主机,作为副本深层神 经网络,以指示运算主机基于训练数据对副本深层神经网络进行训练。训练数 据可以由主控主机向运算主机提供,也可以由运算主机通过其他途径获取。

步骤S120,主控主机定时查询各所述运算主机的状态,若查询到处于训练 停止状态的运算主机,获取停止状态运算主机上副本深层神经网络的加权参数 的变化量。

运算主机对副本深层神经网络进行训练,并且按照设定规律进入停止状 态。主控主机在下发副本深层神经网络后,定时查询各所述运算主机的状态, 若查询到处于训练停止状态的运算主机,获取停止状态运算主机上副本深层神 经网络的加权参数的变化量。停止状态表明运算主机的副本深层神经网络不会 再变化,此时进行参数获取,可保持主控主机和运算主机的同步。

步骤S130,主控主机根据所述停止状态运算主机上副本深层神经网络的加 权参数的变化量,更新主控主机上原始深层神经网络的加权参数。

经过运算主机的训练,所述停止状态运算主机上副本深层神经网络的各个 加权参数的取值都发生了变化。副本深层神经网络的加权参数的变化量是运算 主机基于训练数据对副本深层神经网络进行训练的结果。因此,主控主机在获 取到停止状态运算主机上副本深层神经网络的加权参数的变化量后,根据所述 停止状态运算主机上副本深层神经网络的加权参数的变化量,更新主控主机上 原始深层神经网络的加权参数。对于深层神经网络的训练实际上就是在不断训 练调整其中的各加权参数,以使神经网络更符合实际情况,具体训练方式本发 明不过多关注。在本实施例中,当运算主机训练后,申请网络的加权参数会发 生变化,形成加权参数的变化量,提供给主控主机。

步骤S140,主控主机利用更新后的原始深层神经网络的加权参数绝对值更 新所述停止状态运算主机上副本深层神经网络的加权参数绝对值。

主控主机在本机原始深层神经网络加权参数的基础上叠加变化量。主控主 机原始深层神经网络的加权参数与运算主机副本深层神经网络的加权参数,可 能相同,也可能经多轮叠加更新后不同。各运算主机将其训练的加权参数变化 量提供给主控主机,以分别更新原始深层神经网络。主控主机在利用副本深层 神经网络的加权参数的变化量更新原始深层神经网络的加权参数后,利用原始 深层神经网络的加权参数的绝对值更新运算主机上副本深层神经网络的加权参 数,以保持主控主机上存储的原始深层神经网络与运算主机上存数的副本深层 神经网络之间的同步。

需要说明的是,在本实施例中,用于训练副本深层神经网络的训练数据可 以被预先分配至各运算主机,因此,主控主机可以不必多次执行训练数据分配 的操作。

本实施例通过主控主机向运算主机下发副本深层神经网络,对运算主机的 状态进行查询,并在运算主机处于停止状态时用副本深层神经网络的加权参数 的变化量更新原始深层神经网络的加权参数,再用原始深层神经网络的加权参 数的绝对值更新运算主机上的副本深层神经网络,使得多台主机异步、并行的 进行深层神经网络训练,大幅提高了深层神经网络训练的训练效率。

图2是示出了本发明的第二实施例。

图2是本发明第二实施例提供的基于深层神经网络的声学模型训练方法的 流程图。所述基于深层神经网络的声学模型训练方法以上述实施例为基础,进 一步的,在定时查询运算主机的状态之前,本实施例的训练方法还包括:主控 主机将各份训练数据进行调度,分配给相同或不同的运算主机的步骤。

训练数据的调度分配,可以在初次下发副本深层神经网络时下发,也可以 在每次运算主机更新加权参数后下发,或者按照训练数据的更新需求下发。

与本发明第一实施例相比,本实施例中增加了主控主机将训练数据分配给 个运算主机的步骤。优选的主控主机可以根据各运算主机的运算能力动态的分 配训练数据,以进一步提高基于深层神经网络的声学模型训练的训练效率。

本实施例在运算主机开始对其上的深层神经网络进行训练之前,利用主控 主机对各运算主机分配训练数据,使得主控主机能够根据运算主机的运算能力 动态分配训练数据,进一步提高了深层神经网络训练的训练效率。

图3示出了本发明的第三实施例。

图3是本发明第三实施例提供的基于深层神经网络的声学模型训练方法的 流程图。参见图3,本实施例提供的训练方法可应用于任意一台运算主机上, 所述基于深层神经网络的声学模型训练方法包括:

步骤S310,运算主机从主控主机获取原始深层神经网络的副本深层神经网 络。

为了保证主控主机上深层神经网络与运算主机上深层神经网络的网络结构 的统一,在本实施例中,由主控主机建立深层神经网络,并将建立的深层神经 网络的副本数据下发至各个运算主机。运算主机则从主控主机获取原始深层神 经网络的副本深层神经网络。

步骤S320,所述运算主机基于当前的训练数据对副本深层神经网络进行训 练,且按照设定规律进入停止状态。

步骤S330,当所述运算主机处于停止状态时,将所述副本深层神经网络的 加权参数的变化量提供给所述主控主机。

在本实施例中,运算主机使用对分配给它的所有训练数据对其上存储的副 本深层神经网络完成训练后才停止运算。由于主控主机会定时查询所述运算主 机的状态,所以当任何一个运算主机完成分配给它的运算任务后,主控主机会 查询到它已经处于停止状态。此时,运算主机会根据主控主机的请求将其上存 储的副本深层神经网络的加权参数的变化量提供给所述主控主机。

步骤S340,所述运算主机接收所述主控主机发送的原始深层神经网络的加 权参数绝对值,并根据加权参数绝对值更新副本深层神经网络的加权参数。

主控主机接收到运算主机提供的副本深层神经网络的加权参数的变化量 后,利用副本深层神经网络的加权参数的变化量更新原始深层神经网络的加权 值。在完成利用副本深层神经网络的加权参数的变化量更新原始深层神经网络 的加权值后,所述主控主机会将所述原始深层神经网络的加权参数的绝对值下 发至处于停止状态的运算主机。运算主机接收到主控主机下发的原始深层神经 网络的加权参数的绝对值后,用原始深层神经网络的加权参数的绝对值更新副 本深层神经网络的加权参数。

优选是,所述运算主机配备有一个中央处理器(CPU)及至少一个图形处理 器(GPU),并且利用中央处理器与图形处理器之间的并行协同计算对副本深层 神经网络进行训练,以提高深层神经网络训练的训练效率。

本实施例通过从主控主机获取副本深层神经网络,利用训练数据对副本深 层神经网络进行训练,将训练得到的副本深层神经网络的加权参数的变化量提 供给主控主机,并根据主控主机上原始深层神经网络的加权参数更新副本深层 神经网络的加权参数,使得多台主机异步、并行的进行深层神经网络训练,大 幅提高了深层神经网络训练的训练效率。

图4示出了本发明第四实施例。

图4是本发明第四实施例提供的副本深层神经网络训练的流程图。参见图 4,在上述实施例中,所述运算主机基于训练数据对副本深层神经网络进行训 练的操作优选包括:

步骤S410,运算主机在运算主机的至少一个图形处理器GPU上分别对副本 深层神经网络进行训练。

运算主机在至少一个图形处理器上分别对分本深层神经网络进行训练时, 可以采用随机梯度下降法、牛顿法或共轭梯度法计算所述副本深层神经网络的 加权参数。

步骤S420,运算主机在运算主机的中央处理器CPU上轮询各GPU上训练的 副本深层神经网络的加权参数的变化量。

步骤S430,运算主机根据各GPU上训练的副本深层神经网络的加权参数的 变化量在CPU上更新副本深层神经网络的加权参数。

步骤S440,运算主机根据更新后CPU上深层神经网络的加权参数,更新各 GPU上的副本深层神经网络的加权参数。

本实施例利用GPU自身的架构十分适合用于并行计算的性质,通过CPU与 GPU之间的协同并行计算来大幅提高深层神经网络训练的训练效率。

图5示出了本发明的第五实施例。

图5是本发明第五实施例提供的基于深层神经网络的声学模型训练方法的 流程图。所述基于深层神经网络的声学模型训练方法以本发明第三实施例为基 础,进一步的,在基于当前的训练数据对副本深层神经网络进行训练时,在针 对所述当前的训练数据训练完成时,进入停止状态。具体的,本实施例提供的 基于深层神经网络的声学模型训练方法包括:

步骤S510,运算主机从主控主机获取原始深层神经网络的副本深层神经网 络。

步骤S520,所述运算主机基于当前的训练数据对副本深层神经网络进行训 练,且在针对所述当前的训练数据训练完成时,进入停止状态。

步骤S530,当所述运算主机处于停止状态时,将所述副本深层神经网络的 加权参数的变化量提供给所述主控主机。

步骤S540,所述运算主机接收所述主控主机发送的原始深层神经网络的加 权参数绝对值,并根据加权参数绝对值更新副本深层神经网络的加权参数。

本实施例通过在针对所述当前的训练数据训练完成时,使运算主机进入停 止状态,并在运算主机处于停止状态时,利用运算主机上副本深层神经网络的 加权参数的变化量更新主控主机上原始深层神经网络的加权参数,并利用更新 后原始深层神经网络的加权参数的绝对值更新运算主机上副本深层神经网络的 加权参数的绝对值,使得多台主机异步、并行的进行深层神经网络训练,大幅 提高了深层神经网络训练的训练效率。

图6示出了本发明的第六实施例。

图6是本发明第六实施例提供的基于深层神经网络的声学模型训练方法的 流程图。所述训练方法以本发明第三实施例为基础,进一步的,在基于当前的 训练数据对副本深层神经网络进行训练时,运算主机会按照设定训练间隔时间 进入停止状态,并且在根据加权参数绝对值更新副本深层神经网络的加权参数 之后,还会重新启动根据当前的训练数据对副本深层神经网络进行训练。具体 的,本实施例提供的基于深层神经网络的声学模型训练方法包括:

步骤S610,运算主机从主控主机获取原始深层神经网络的副本深层神经网 络。

步骤S620,所述运算主机基于当前的训练数据对副本深层神经网络进行训 练,且按照设定训练间隔时间进入停止状态。

与本发明第三实施例相比,运算主机仍然依靠CPU与GPU之间的并行协同 计算对副本深层神经网络进行训练,以提高深层神经网络训练的训练效率。并 且,在对福分深层神经网络进行训练时,所述运算主机采用随机梯度下降法、 牛顿法或共轭梯度法计算所述副本深层神经网络的加权参数。

与本发明第三实施例的不同之处在于,经过设定训练间隔时间的对深层神 经网路的训练后,所述运算主机停止对副本深层神经网络进行训练,进入停止 状态。

步骤S630,当所述运算主机处于停止状态时,将所述副本深层神经网络的 加权参数的变化量提供给所述主控主机。

步骤S640,所述运算主机接收所述主控主机发送的原始深层神经网络的加 权参数绝对值,并根据加权参数绝对值更新副本深层神经网络的加权参数。

步骤S650,所述运算主机重新启动根据当前的训练数据对副本深层神经网 络进行训练。

本实施例通过经过设定训练间隔时间对深层神经网络的训练后使运算主机 进入停止状态,并在完成对原始深层神经网络和副本深层神经网络的加权参数 的更新后,重新启动所述运算主机对副本深层神经网络的训练,使得主控主机 能够以增量的方式更新原始深层神经网络,有效避免了深层神经网络的过拟 合,并且大幅提高了深层神经网络训练的训练效率。

图7示出了本发明的第七实施例。

图7是本发明第五实施例提供的基于深层神经网络的声学模型训练的主控 主机的结构图。参见图7,所述基于深层神经网络的声学模型训练的主控主机 包括:深层神经网络下发模块710、加权参数变化量获取模块720、原始深层神 经网络更新模块730以及副本深层神经网络更新模块740。

所述深层神经网络下发模块710用于将原始深层神经网络的各副本深层神 经网络下发给至少一个运算主机,以指示运算主机基于训练数据对副本深层神 经网络进行训练。

加权参数变化量获取模块720用于定时查询各所述运算主机的状态,若查 询到处于训练停止状态的运算主机,获取停止状态运算主机上副本深层神经网 络的加权参数的变化量。

原始深层神经网络更新模块730用于根据所述停止状态运算主机上副本深 层神经网络的加权参数的变化量,更新主控主机上原始深层神经网络的加权参 数。

副本深层神经网络更新模块740用于利用更新后的原始深层神经网络的加 权参数绝对值更新所述停止状态运算主机上副本深层神经网络的加权参数绝对 值。

本实施例通过主控主机向运算主机下发副本深层神经网络,对运算主机的 状态进行查询,并在运算主机处于停止状态时用副本深层神经网络的加权参数 的变化量更新原始深层神经网络的加权参数,再用原始深层神经网络的加权参 数的绝对值更新运算主机上的副本深层神经网络,使得多台主机异步、并行的 进行深层神经网络训练,大幅提高了深层神经网络训练的训练效率。

图8示出了本发明的第八实施例。

图8是本发明第八实施例提供的基于深层神经网络的声学模型训练的主控 主机的结构图。所述主控主机以本发明第七实施例为基础,进一步的,所述主 控主机还包括训练数据分配模块820。

所述训练数据分配模块820用于将各份训练数据进行调度,分配给相同或 不同的运算主机。

本实施例在运算主机开始对其上的深层神经网络进行训练之前,利用主控 主机对各运算主机分配训练数据,使得主控主机能够根据运算主机的运算能力 动态分配训练数据,进一步提高了深层神经网络训练的训练效率。

图9示出了本发明的第九实施例。

图9是本发明第九实施例提供的基于深层神经网络的声学模型训练的运算 主机的结构图。参见图9,所述基于深层神经网络的声学模型训练的运算主机 包括:副本神经网络获取模块910、副本深层神经网络训练模块920、加权参数 变化量提供模块930以及副本深层神经网络更新模块940。

所述副本深层神经网络获取模块910用于从主控主机获取原始深层神经网 络的副本深层神经网络。

所述副本深层神经网络训练模块920用于基于训练数据对副本深层神经网 络进行训练,且在针对所述当前的训练数据训练完成时,进入停止状态。

所述加权参数变化量提供模块930用于当所述运算主机处于停止状态时, 将所述副本深层神经网络的加权参数的变化量提供给所述主控主机。

所述副本深层神经网络更新模块940用于接收所述主控主机发送的原始深 层神经网络的加权参数绝对值,并根据加权参数绝对值更新副本深层神经网络 的加权参数。

在本实施例中,所述副本深层神经网络训练模块920优选是包括:深层神 经网络训练单元921、加权参数变化量轮询单元922、CPU深层神经网络更新单 元923、GPU深层神经网络更新单元924以及单词停止状态进入单元925。

所述深层神经网络训练单元921用于在运算主机的至少一个图形处理器GPU 上分别对副本深层神经网络进行训练。

所述加权参数变化量轮询单元922用于在运算主机的中央处理器CPU上轮 询各GPU上训练的副本深层神经网络的加权参数的变化量。

所述CPU深层神经网络更新单元923用于根据各GPU上训练的副本深层神 经网络的加权参数的变化量在CPU上更新副本深层神经网络的加权参数。

所述GPU深层神经网络更新单元924用于根据更新后CPU上深层神经网络 的加权参数,更新各GPU上的副本深层神经网络的加权参数。

所述单次停止状态进入单元925用于按照设定规律进入停止状态。

本实施例通过从主控主机获取副本深层神经网络,利用训练数据对副本深 层神经网络进行训练,将训练得到的副本深层神经网络的加权参数的变化量提 供给主控主机,并根据主控主机上原始深层神经网络的加权参数更新副本深层 神经网络的加权参数,使得多台主机异步、并行的进行深层神经网络训练,大 幅提高了深层神经网络训练的训练效率。

图10示出了本发明的第十实施例。

图10是本发明第十实施例提供的基于深层神经网络的声学模型训练的运算 主机的结构图。所述运算主机以本发明第九实施例为基础,进一步的,所述副 本深层神经网络训练模块1020用于基于训练数据对副本深层神经网络进行训 练,且在针对所述当前的训练数据训练完成时,进入停止状态。

在本实施例中,所述副本深层神经网络训练模块1020优选是包括:深层神 经网络训练单元1021、加权参数变化量轮询单元1022、CPU深层神经网络更新 单元1023、GPU深层神经网络更新单元1024以及单次停止状态进入单元1025。

所述单次停止状态进入单元1025用于在针对所述当前的训练数据训练完成 时,进入停止状态。

本实施例通过在针对所述当前的训练数据训练完成时,使运算主机进入停 止状态,并在运算主机处于停止状态时,利用运算主机上副本深层神经网络的 加权参数的变化量更新主控主机上原始深层神经网络的加权参数,并利用更新 后原始深层神经网络的加权参数的绝对值更新运算主机上副本深层神经网络的 加权参数的绝对值,使得多台主机异步、并行的进行深层神经网络训练,大幅 提高了深层神经网络训练的训练效率。

图11是本发明第十一实施例提供的基于深层神经网络的声学模型训练的运 算主机的结构图。所述基于深层神经网络的声学模型训练的运算主机以本发明 第九实施例为基础,进一步的,所述副本深层神经网络训练模块1120不再包括 单次停止状态进入单元,而是另外包括多次停止状态进入单元1125,用于按照 设定训练间隔时间进入停止状态,而且,所述基于深层神经网络的声学模型训 练的运算主机还包括训练重启模块1150,用于重新启动对副本深层神经网络的 训练。具体的,本实施例提供的基于深层神经网络的声学模型训练方法包括: 副本深层神经网络获取模块1110、副本深层神经网络训练模块1120、加权参数 变化量提供模块1130、副本深层神经网络更新模块1140以及训练重启模块 1150。

所述副本深层神经网络获取模块1110用于从主控主机获取原始深层神经网 络的副本深层神经网络。

所述副本深层神经网络训练模块1120用于基于训练数据对副本深层神经网 络进行训练,且按照设定训练间隔时间进入停止状态。

所述加权参数变化量提供模块1130用于当所述运算主机处于停止状态时, 将所述副本深层神经网络的加权参数的变化量提供给所述主控主机。

所述副本深层神经网络更新模块1140用于接收所述主控主机发送的原始深 层神经网络的加权参数绝对值,并根据加权参数绝对值更新副本深层神经网络 的加权参数。

所述训练重启模块1150用于根据加权参数绝对值更新副本深层神经网络的 加权参数之后,重新启动根据当前的训练数据对副本深层神经网络进行训练。

所述副本深层神经网络训练模块1120优选包括:深层神经网络训练单元 1121、加权参数变化量轮询单元1122、CPU深层神经网络更新单元1123、GPU 深层神经网络更新单元1124以及多次停止状态进入单元1125。

所述深层神经网络训练单元1121用于在运算主机的至少一个图形处理器 GPU上分别对副本深层神经网络进行训练。

所述加权参数变化量轮询单元1122用于在运算主机的中央处理器CPU上轮 询各GPU上训练的副本深层神经网络的加权参数的变化量。

所述CPU深层神经网络更新单元1123用于根据各GPU上训练的副本深层神 经网络的加权参数的变化量在CPU上更新副本深层神经网络的加权参数。

所述GPU深层神经网络更新单元1124用于根据更新后CPU上深层神经网络 的加权参数,更新各GPU上的副本深层神经网络的加权参数。

所述多次停止状态进入单元1125用于按照设定训练间隔时间进入停止状 态。

本实施例通过经过设定训练间隔时间对深层神经网络的训练后使运算主机 进入停止状态,并在完成对原始深层神经网络和副本深层神经网络的加权参数 的更新后,重新启动所述运算主机对副本深层神经网络的训练,使得主控主机 能够以增量的方式更新原始深层神经网络,有效避免了深层神经网络的过拟 合,并且大幅提高了深层神经网络训练的训练效率。

图12示出了本发明的第十二实施例。

图12是本发明第八实施例提供的基于深层神经网络的声学模型训练系统的 结构图。参见图12,所述基于深层神经网络的声学模型训练系统采用了星型的 拓扑结构。即主控主机1201处于所述基于深层神经网络的声学模型训练系统的 中心,运算主机1202分别于处于拓扑结构中心的主控主机1201相连接。

在这样的拓扑结构下,主控主机1201通过与各个运算主机直接的网络连接 分别与每个运算主机进行通信,来分发副本深层神经网络,分配训练数据,获 取副本深层神经网络的加权参数的变化量,或者传输原始深层神经网络的加权 参数的绝对值。各个运算主机1202也通过与所述主控主机之间的直接的网络连 接接收副本深层神经网络,接收训练数据,提供副本深层神经网络的加权参数 的变化量,或者获取原始深层神经网络的加权参数的绝对值。

本实施例利用星型拓扑结构连接所述主控主机与运算主机,运用主控主机 与运算主机之间的通信连接实现主控主机与运算主机之间的并行计算,并利用 主控主机与运算主机之间的并行计算对深层神经网络进行训练,大幅提高了深 层神经网络训练的训练效率。

图13示出了本发明第十三实施例。

图13是本发明第十三实施例提供的基于深层神经网络的声学模型训练系统 的结构图。参见图13,所述基于深层神经网络的声学模型训练系统采用了树型 的拓扑结构。即主控主机1301处于所述基于深层神经网络的声学模型训练系统 的顶点,运算主机1302分别处于所述基于深层神经网络的声学模型训练系统的 各个叶子节点。

在这样的拓扑结构下,主控主机1301按照树型拓扑的层次向运算主机1302 发送数据,运算主机1302也按照树型结构的层次向主控主机上报数据。具体 的,主控主机1301按照树型结构的层次向运算主机1302分发副本深层神经网 络,分配训练数据,获取副本深层神经网络的加权参数的变化量,或者传输原 始深层神经网络的加权参数的绝对值。运算主机1302也按照树型结构的层次从 主控主机1301接收副本深层神经网络,接收训练数据,提供副本深层神经网络 的加权参数的变化量,或者获取原始深层神经网络的加权参数的绝对值。

本实施例利用树型拓扑结构连接所述主控主机与运算主机,运用主控主机 与运算主机之间的通信连接实现主控主机与运算主机之间的并行计算,并利用 主控主机与运算主机之间的并行计算对深层神经网络进行训练,大幅提高了深 层神经网络训练的训练效率。

图14示出了本发明第十四实施例。

图14是本发明第十四实施例提供的基于深层神经网络的声学模型训练系统 的交互过程示意图。所述深层神经网络的声学模型训练系统的交互过程包括:

S1401,运算主机基于训练数据对副本深层神经网络进行训练。

所述运算主机利用CPU与GPU之间的并行协同计算对副本深层神经网络进 行训练。具体的,所述运算主机采用随机梯度下降法、牛顿法或共轭梯度法计 算所述副本深层神经网络的加权参数。

S1402,运算主机发送副本深层神经网络的加权参数的变化量。

在运算主机对副本深层神经网络进行训练时,主控主机会定时查询运算主 机的状态。当运算主机完成基于训练数据对副本深层神经网络的训练时,主控 主机向运算主机请求其上存储的副本深层神经网络的加权参数的变化量。此 时,运算主机将所述深层神经网络的加权参数的变化量发送至主控主机。

S1403,主控主机根据副本深层神经网络的加权参数变化量更新原始深层 神经网络。

S1404,主控主机发送原始深层神经网络的加权参数的绝对值。

主控主机完成根据副本深层神经网络的加权参数的变化量对原始深层神经 网络的更新后,向运算主机发送原始深层神经网络的加权参数的绝对值。

S1405,运算主机根据原始深层神经网络的加权参数绝对值更新副本深层 神经网络。

在本实施例中,由于运算主机利用训练数据完成对其上存储的副本深层神 经网络的训练后,才向主控主机发送副本神经网络的加权参数的变化量,所以 主控主机是采取批处理的方式更新原始深层神经网络。

本实施例通过从主控主机获取副本深层神经网络,利用训练数据对副本深 层神经网络进行训练,将训练得到的副本深层神经网络的加权参数的变化量提 供给主控主机,并根据主控主机上原始深层神经网络的加权参数更新副本深层 神经网络的加权参数,使得多台主机异步、并行的进行深层神经网络训练,大 幅提高了深层神经网络训练的训练效率。

图15示出了本发明的第十五实施例。

图15是本发明第十五实施例提供的基于深层神经网络的声学模型训练系统 的交互过程示意图。所述深层神经网络的声学模型训练系统中的交互过程包 括:

S1501,运算主机基于训练数据对副本深层神经网络进行训练。

S1502,运算主机经过设定训练间隔时间,停止对副本深层神经网络的训 练。

运算主机经过设定训练间隔时间的对副本深层神经网络的训练后,停止对 副本深层神经网络的训练。

S1503,运算主机发送副本深层神经网络的加权参数的变化量。

在运算主机对副本深层神经网络进行训练时,主控主机会定时查询运算主 机的状态。当运算主机经过设定训练间隔时间对副本深层神经网络的训练后, 进入停止状态,主控主机向运算主机请求其上存储的副本深层神经网络的加权 参数的变化量。此时,运算主机将所述深层神经网络的加权参数的变化量发送 至主控主机。

S1504,主控主机根据副本深层神经网络的加权参数变化量更新原始深层 神经网络。

S1505,主控主机发送原始深层神经网络的加权参数的绝对值。

S1506,运算主机根据原始深层神经网络的加权参数绝对值更新副本深层 神经网络。

S1507,运算主机重新启动对副本深层神经网络的训练。

经过主控主机对原始深层神经网络的更新以及运算主机对副本深层神经网 络的更新,主控主机上存储的原始深层神经网络已经与运算主机上存储的副本 深层神经网络保持同步。此时,运算主机利用剩余的训练数据再次对副本深层 神经网络进行训练。

在本实施例中,由于运算主机经过设定训练间隔时间的对其上存储的副本 深层神经网络的训练后,就向主控主机发送副本神经网络的加权参数的变化 量,所以主控主机是采取批处理的方式更新原始深层神经网络。

本实施例通过从主控主机获取副本深层神经网络,利用训练数据对副本深 层神经网络进行训练,将训练得到的副本深层神经网络的加权参数的变化量提 供给主控主机,并根据主控主机上原始深层神经网络的加权参数更新副本深层 神经网络的加权参数,使得多台主机异步、并行的进行深层神经网络训练,大 幅提高了深层神经网络训练的训练效率。

显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以用 通用的计算装置来实现,它们分布在多个计算装置所组成的网络上,可选地, 他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储 装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将 它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限 制于任何特定的硬件和软件的结合。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利 用本发明说明书附图内容所作的等效结构或等效流程变换,或直接或间接运用 在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号