本公开涉及一种分布式运算系统以及深度学习模型的模型训练优化方法。
背景技术:
1、现有的分布式运算(distributed computing)系统执行分布式训练的方式,例如可以使用流水线模型(pipeline parallelism)并行或使用重计算(recompute)来进行。然而,在使用流水线模型并行的训练方式中,即便均等划分层(layer)数,各个阶段(stage)的内存的占用结果也会有很大差异。例如,流水线模型并行以及重计算是分开考虑的,因此容易导致流水线模型并行中的各阶段的计算量不平衡,并且可能因为重计算过多而导致内存的浪费和整体计算效率降低。
技术实现思路
1、本公开的实施例提供了一种分布式运算系统以及深度学习模型的模型训练优化方法,可有效优化深度学习模型的模型训练效率。
2、根据本公开的实施例,本公开的分布式运算系统包括多个运算单元以及处理器。处理器耦接多个运算单元,并且用以执行模拟器以及优化器。模拟器模拟多个运算单元执行深度学习模型的分布式训练,并且计算深度学习模型进行分布式训练时分别在多个运算单元的每一个的总内存占用信息。优化器调用模拟器,以根据目标函数以及限制条件来调整分布式训练的模型配置参数。分布式训练包括流水线模型并行、重计算、数据并行以及张量并行的至少其中之一。
3、在本公开的实施例中,所述模拟器计算并且加总转换层的激活值、所述重计算的重计算点、权重数据、优化器状态模型以及损失函数的至少其中之一的内存占用结果,以取得所述总内存占用信息。
4、在本公开的实施例中,所述模拟器计算所述流水线模型并行的预热时间、冷却时间以及稳定状态时间,以取得所述流水线模型并行中的每一阶的计算时间。
5、在本公开的实施例中,所述优化器用以最小化所述流水线模型并行中具有最长计算时间的其中一阶的所述计算时间。
6、在本公开的实施例中,所述优化器还根据限制条件调整所述分布式训练的所述模型配置参数。所述限制条件包括累积层数限制、单独的阶段数限制以及重计算层数限制的至少其中之一。
7、根据本公开的实施例,本公开的深度学习模型的模型训练优化方法包括:通过模拟器模拟多个运算单元执行深度学习模型的分布式训练,并且计算深度学习模型进行分布式训练分别在多个运算单元的每一个所占的总内存占用信息;以及通过优化器调用模拟器,以根据目标函数以及限制条件来调整分布式训练的模型配置参数。分布式训练包括流水线模型并行、重计算、数据并行以及张量并行的至少其中之一。
8、在本公开的实施例中,计算所述深度学习模型进行所述分布式训练分别在所述多个运算单元的每一个所占的所述总内存占用信息,包括:计算并且加总转换层的激活值、所述重计算的重计算点、权重数据、优化器状态模型以及损失函数的至少其中之一的内存占用结果,以取得所述总内存占用信息。
9、在本公开的实施例中,模型训练优化方法还包括:计算所述流水线模型并行的预热时间、冷却时间以及稳定状态时间,以取得所述流水线模型并行中的每一阶的计算时间。
10、在本公开的实施例中,模型训练优化方法还包括:最小化所述流水线模型并行中具有最长计算时间的其中一阶的所述计算时间。
11、在本公开的实施例中,调整所述分布式训练的所述模型配置参数包括:根据限制条件调整所述分布式训练的所述模型配置参数。所述限制条件包括累积层数限制、单独的阶段数限制以及重计算层数限制的至少其中之一。
12、本公开实施例提供的分布式运算系统以及深度学习模型的模型训练优化方法,可以降低内存的占用程度以及缩短计算时间,从而有效提高内存的利用率以及提高混合并行训练效率。
13、通过参考以下的详细描述并同时结合附图可以理解本公开,须注意的是,为了使读者能容易了解及为了附图的简洁,本公开中的多张附图只绘出显示设备的一部分,且附图中的特定组件并非依照实际比例绘图。此外,图中各组件的数量及尺寸仅作为示意,并非用来限制本公开的范围。
1.一种分布式运算系统,包括:
2.根据权利要求1所述的分布式运算系统,其中,所述模拟器计算并且加总转换层的激活值、所述重计算的重计算点、权重数据、优化器状态模型以及损失函数的至少其中之一的内存占用结果,以取得所述总内存占用信息。
3.根据权利要求1所述的分布式运算系统,其中,所述模拟器计算所述流水线模型并行的预热时间、冷却时间以及稳定状态时间,以取得所述流水线模型并行中的每一阶的计算时间。
4.根据权利要求3所述的分布式运算系统,其中,所述优化器被配置为最小化所述流水线模型并行中具有最长计算时间的其中一阶的所述计算时间。
5.根据权利要求4所述的分布式运算系统,其中,所述优化器还被配置为根据所述限制条件调整所述分布式训练的所述模型配置参数;
6.一种深度学习模型的模型训练优化方法,包括:
7.根据权利要求6所述的深度学习模型的模型训练优化方法,其中,所述计算所述深度学习模型进行所述分布式训练时分别在所述多个运算单元的每一个所占的总内存占用信息,包括:
8.根据权利要求6所述的深度学习模型的模型训练优化方法,还包括:
9.根据权利要求8所述的深度学习模型的模型训练优化方法,还包括:
10.根据权利要求9所述的深度学习模型的模型训练优化方法,其中,调整所述分布式训练的所述模型配置参数,包括:
