深度神经网络模型的训练方法和设备的制造方法_4

文档序号:9217603阅读:来源:国知局
输给第四处理器。
[0105] 如果当前训练方案为单处理器方案,且第一处理器为单处理器方案中的处理器, 最佳训练方案为基于数据并行与模型并行混合的多处理器方案,且第一处理器和第三处理 器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型,第二处理器和第四 处理器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型,如图8所示, 则将单处理器方案中的模型参数同步给基于数据并行与模型并行混合的多处理器方案为: 将第一处理器中的第二子模型的模型参数传输给第三处理器,并行地将第一处理器中的第 一子模型的模型参数传输给第二处理器,将第三处理器中的第二子模型的模型参数传输给 第四处理器。
[0106] 如果当前训练方案为基于数据并行与模型并行混合的多处理器方案,且第一处理 器和第三处理器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型,第二 处理器和第四处理器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型, 最佳方案为单处理器方案,且第一处理器为单处理器方案中的处理器,如图9所示,则将基 于数据并行与模型并行混合的多处理器方案中的模型参数同步给单处理器方案为:将第三 处理器或第四处理器中的第二子模型的模型参数传输给第一处理器,将第一处理器中的第 一子模型的模型参数与第二子模型的模型参数进行合并。
[0107] 如果当前训练方案为基于数据并行与模型并行混合的多处理器方案,且第一处理 器和第三处理器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型,第二 处理器和第四处理器依次保存一个完整的深度神经网络模型的第一子模型和第二子模型, 最佳训练方案为基于数据并行的多处理器方案,如图10所示,则将基于数据并行与模型并 行混合的多处理器方案中的模型参数同步给基于数据并行的多处理器方案为:并行地将第 一处理器中的第一子模型的模型参数传输给第三处理器,将第二处理器中的第一子模型的 模型参数传输给第四处理器,与此同时,并行地将第三处理器中的第二子模型的模型参数 传输给第一处理器,将第四处理器中的第二子模型的模型参数传输给第二处理器,将各处 理器中第一子模型的模型参数与第二子模型的模型参数进行合并。
[0108] 当然,需要说明的是,如果当前训练方案为基于数据并行的多处理器方案,最佳训 练方案为单处理器方案,由于第一处理器上的所需的模型参数已经存在于该处理器上,因 此,直接在第一处理器上进行模型训练即可,无需再进行模型参数的同步。如果当前训练方 案为基于数据并行的多处理器方案,最佳训练方案为基于数据并行与模型并行混合的多处 理器方案,由于第一处理器、第二处理器、第三处理器和第四处理器所需的子模型的模型参 数已经存在于该处理器上,因此,直接在第一处理器、第二处理器、第三处理器和第四处理 器上进行模型训练即可,无需再进行模型参数的同步。
[0109] 根据本发明,在本发明实施方式中,在模型训练时,对于不同大小的训练数据,不 再固定地采用同一种训练方案进行训练,而在选择适用于该训练数据的最佳训练方案进行 训练,即,采用训练速度最快的训练方案。这样可以避免由于固定地采用同一种训练方案对 所有大小的训练数据进行训练而导致的对其中一些训练数据的训练速度变慢的问题。
[0110] 示例件设各
[0111] 在介绍了本发明示例性实施方式的方法之后,接下来,参考图5来描述根据本发 明示例性实施方式的、用于深度神经网络模型的训练设备。
[0112] 参考图11,其示意性地示出了根据本发明一个实施方式的深度神经网络模型的训 练设备的结构框架图,具体地,该设备例如可以包括:
[0113] 计算单元1101,用于当训练数据的大小发生改变时,针对改变后的训练数据,分别 计算所述改变后的训练数据在预设的至少两个候选训练方案中的训练耗时;
[0114] 选取单元1102,用于从预设的至少两个候选训练方案中选取训练耗时最小的训练 方案作为所述改变后的训练数据的最佳训练方案;
[0115] 模型训练单元1103,用于将所述改变后的训练数据在所述最佳训练方案中进行深 度神经网络模型训练。
[0116] 在本发明的一个优选实施方式中,计算单元1101包括:
[0117] 第一统计子单元,用于统计所述改变后的训练数据在所述候选训练方案中的正向 处理耗时和反向处理耗时;
[0118] 第二统计子单元,用于统计在一个完整的深度神经网络模型中先后进行正向和反 向处理后所产生的模型参数修正量在所述候选训练方案中的同步耗时,以及统计一个完整 的深度神经网络模型的模型参数在所述候选训练方案中的更新耗时;
[0119] 计算子单元,用于计算所述正向处理耗时、反向处理耗时、同步耗时和更新耗时的 总和值,所述总和值即为所述改变后的训练数据在所述候选训练方案中的训练耗时。
[0120] 在本发明的另一个优选实施方式中,如果所述候选训练方案为基于数据并行的多 处理器方案;第二统计子单元包括:
[0121] 第一计算子单元,用于按照TtMns=M/S计算在一个完整的深度神经网络模型中先 后进行正向和反向处理后所产生的模型参数修正量的传输时间;
[0122] 第二计算子单元,用于按照= log) x7;_计算所述模型参数修正量在所述候选 训练方案中的同步耗时;
[0123] 其中,M为所述模型参数修正量的大小,S为所述模型参数修正量在两个处理器之 间的传输速率,T trans为所述模型参数修正量的传输时间,Tsyn。为所述模型参数修正量在所 述候选训练方案中的同步耗时,N为所述候选训练方案中处理器的个数,其中N为2的n次 方,n为零或正整数。
[0124] 在本发明的另一个优选实施方式中,如果所述候选训练方案为基于数据并行与模 型并行混合的多处理器方案;第二统计子单元包括:
[0125] 第一计算子单元,用于按照TtMns=M/S计算在一个完整的深度神经网络模型中先 后进行正向和反向处理后所产生的模型参数修正量的传输时间;
[0126] 第三计算子单元,用于按照=1叩>7;_,/(#/幻计算所述模型参数修正量在 所述候选训练方案中的同步耗时;
[0127] 其中,M为所述模型参数修正量的大小,S为所述模型参数修正量在两个处理器之 间的传输速率,T trans为所述模型参数修正量的传输时间,Tsyn。为所述模型参数修正量在所 述候选训练方案中的同步耗时,N为所述候选训练方案中处理器的个数,k为将处理器划分 成不同组进行并行训练的组数,k〈N,且k与N都为2的n次方,n为零或正整数。
[0128] 在本发明的另一个优选实施方式中,如果所述候选训练方案为基于数据并行与模 型并行混合的多处理器方案;第二统计子单元还包括:
[0129] 确定子单元,用于确定一个完整的深度神经网络模型中的模型参数在一个处理器 中的更新耗时;
[0130] 第四计算子单元,用于按照 ^update-N/k^update-1AN/k)计算所述模型参数在所述候 选训练方案中的更新耗时;
[0131 ]其中,Tupdate_N/k为所述模型参数在所述候选训练方案中的更新耗时,T 为一个 完整的深度神经网络模型的模型参数在一个处理器中的更新耗时,N为所述候选训练方案 中处理器的个数,k为将处理器划分成不同组进行并行训练的组数,k〈N,且k与N都为2的 n次方,n为零或正整数。
[0132] 在本发明的另一个优选实施方式中,用于计算训练耗时的处理器与用于模型训练 的处理器为不同的处理器。
[0133] 在本发明的另一个优选实施方式中,模型训练单元1103包括:
[0134] 同步子单元,用于将当前训练方案中的模型参数同步给所述最佳训练方案;
[0135] 训练子单元,用于将所述改变后的训练数据在同步后的所述最佳训练方案中进行 丰吴型训练。
[0136] 在本发明的一个优选实施方式中,该设备还包括保存单元,用于保存所述改变后 的训练数据的最佳训练方案。
[0137] 在本发明的另一个优选实施方式中,该设备还包括:
[0138] 查找单元,用于在计算单元1101针对改变后的训练数据,分别计算所述改变后的 训练数据在预设的至少两个候选训练方案中的训练耗时之前从保存的训练方案中查找所 述改变后的训练数据的最佳训练方案;
[0139] 第二触发单元,用于如果没有查找到所述改变后的训练数据的最佳训练方案,则 触发计算单元1101工作。
[0140] 在本发明的另一个优选实施方式中,该设备还包括:
[0141] 调取单元,用于如果查找到所述改变后的训练数据的最佳训练方案,直接调取所 述改变后的训练数据的最佳训练方案;
[0142] 第二触发单元,用于触发模型训练单元1103工作。
[0143] 在本发明的另一个优选实施方式中,同步子单元具体用于:
[0144] 如果当前训练方案为单处理器方案,最佳训练方案为基于数据并行的多处理器方 案,则将第一处理器中的模型参数传输给第二处理器,并行地将所述第一处理器中的模型 参数传输给第三处理器,将所述第二处理器中的模型参数传输给第四处理器;
[0145] 或者,
[0146] 如果当前训练方案为单处理器方案,最佳训练方案为基于数据并行与模型并行混 合的多处理器方案,则将第一处理器中的第二子模型的模型参数传输给第三处理器,并行 地将第一处理器中的第一子模型的模型参数传输给第二处理器,将第三处理器中的第二子 模型的模型参数传输给第四处理器;
[0147] 或者,
[0148] 如果当前训练方案为基于数据并行与模型并行混合的多处理器方案,最佳训练方 案为单处理器方案,则将第三处理器或第四处理器中的第二子模型的模型参数传输给第一 处理器,将第一处理器中的第一子模型的模型参数与第二子模型的模型参数进行合并; [0 149] 或者
[0150] 如果当前训练方案为基于数据
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1