深度学习模型的资源使用情况预测制造技术

技术编号:29200931 阅读:22 留言:0更新日期:2021-07-10 00:35
根据本公开的实现,提出了一种用于预测深度学习模型的资源使用情况的方案。在该方案中,与深度学习模型有关的信息被获取。该信息包括用于描述深度学习模型的第一信息、以及与深度学习模型所关联的任务的运行环境有关的第二信息。该任务的静态资源使用情况基于第一信息被确定。该任务在运行环境中运行时的策略基于第一信息和第二信息被确定。然后,基于该策略和静态资源使用情况来预测该任务在运行环境中运行时的资源使用情况。该方案能够准确地预测深度学习模型在特定运行时策略下的各种资源的使用情况,诸如算力消耗、存储器消耗和执行时间等。此外,该方案具有可扩展架构,便于支持各种不同类型的深度学习框架。于支持各种不同类型的深度学习框架。于支持各种不同类型的深度学习框架。

【技术实现步骤摘要】
深度学习模型的资源使用情况预测

技术介绍

[0001]近年来,深度学习在信息技术行业变得非常流行,并且正在改变人们的生活。了解深度学习任务在其整个生命周期中的准确资源使用情况对于提高生产效率至关重要。如果能够准确地预测深度学习任务的资源使用情况,则深度学习开发人员可以预先选择最佳模型参数,以避免由于资源不足而导致的故障,并且在资源限制的情况下获得最佳模型性能。此外,如果能够准确地预测深度学习任务的资源使用情况,则可以通过动态调整深度学习任务的执行计划来确保深度学习任务在给定的服务水平协议(SLA)下完成(例如,满足给定的时间或预算要求)。

技术实现思路

[0002]根据本公开的实现,提出了一种用于预测深度学习模型的资源使用情况的方案。在该方案中,与深度学习模型有关的信息被获取。该信息包括用于描述深度学习模型的第一信息、以及与深度学习模型所关联的任务的运行环境有关的第二信息。该任务的静态资源使用情况基于第一信息被确定。该任务在运行环境中运行时的策略基于第一信息和第二信息被确定。然后,基于该策略和静态资源使用情况来预测该任务在运行环境中运行时的资源使用情况。该方案能够准确地预测深度学习模型在特定运行时策略下的各种资源的使用情况,诸如算力消耗、存储器消耗和执行时间等。此外,该方案具有可扩展架构,便于支持各种不同类型的深度学习框架。
[0003]提供
技术实现思路
部分是为了简化的形式来介绍对概念的选择,其在下文的具体实施方式中将被进一步描述。
技术实现思路
部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。
附图说明
[0004]图1示出了能够实施本公开的多个实现的计算设备的框图;
[0005]图2示出了根据本公开的实现的用于预测深度学习模型的资源使用情况的示例系统的框图;
[0006]图3A示出了深度学习模型的训练任务的示例程序代码;
[0007]图3B示出了根据本公开的实现的与深度学习模型的训练任务对应的示例计算图;
[0008]图3C示出了前向传播过程中的卷积运算符所对应的深度神经网络代码库中的示例代码;以及
[0009]图4示出了根据本公开的实现的用于预测深度学习模型的资源使用情况的示例方法的流程图。
[0010]这些附图中,相同或相似参考符号用于表示相同或相似元素。
具体实施方式
[0011]现在将参照若干示例实现来论述本公开。应当理解,论述了这些实现仅是为了使
得本领域普通技术人员能够更好地理解且因此实现本公开,而不是暗示对本公开的范围的任何限制。
[0012]如本文所使用的,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。术语“基于”要被解读为“至少部分地基于”。术语“一个实现”和“一种实现”要被解读为“至少一个实现”。术语“另一个实现”要被解读为“至少一个其他实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
[0013]如本文所使用的,“神经网络模型”(简称“模型”)能够处理输入并且提供相应输出,其通常包括输入层和输出层以及在输入层与输出层之间的一个或多个隐藏层。在深度学习应用中使用的模型(在本文中被称为“深度学习模型”或“深度神经网络”)通常包括许多隐藏层,从而延长网络的深度。神经网络模型的各个层按顺序相连,从而前一层的输出被提供作为后一层的输入,其中输入层接收神经网络模型的输入,而输出层的输出作为神经网络模型的最终输出。神经网络模型的每个层包括一个或多个节点(也称为处理节点或神经元),每个节点处理来自上一层的输入。在本文中,术语“神经网络”、“模型”、“网络”和“神经网络模型”可互换使用。
[0014]如上所述,近年来,深度学习在信息技术行业变得非常流行,并且正在改变人们的生活。了解深度学习任务在其整个生命周期中的准确资源使用情况对于提高生产力至关重要。如果能够准确地预测深度学习任务的资源使用情况,则深度学习开发人员可以预先选择最佳模型参数,以避免由于资源不足而导致的故障,并且在资源限制的情况下获得最佳模型性能。此外,如果能够准确地预测深度学习任务的资源使用情况,则可以通过动态调整深度学习任务的执行计划来确保深度学习任务在给定的SLA下完成(例如,满足给定的时间或预算要求)。
[0015]一些传统方案仅能够基于深度学习模型的描述信息和执行深度学习任务的硬件的规格来预测深度学习任务的执行时间,而无法预测深度学习任务的其他资源消耗,诸如算力消耗、存储器消耗等。此外,一些传统方案往往基于机器学习方法,其所适用的描述信息的类型和所适用的机器学习模型的框架类型通常是有限的,其所提供的预测结果也往往不具有可解释性,例如无法帮助深度学习开发人员发现模型的瓶颈、调试模型参数以提供模型性能。
[0016]根据本公开的实现,提出了一种用于预测深度学习模型的资源使用情况的方案。在该方案中,与深度学习模型有关的信息被获取。该信息包括用于描述深度学习模型的第一信息、以及与深度学习模型所关联的任务的运行环境有关的第二信息。该任务的静态资源使用情况基于第一信息被确定。该任务在运行环境中运行时的策略基于第一信息和第二信息被确定。然后,基于该策略和静态资源使用情况来预测该任务在运行环境中运行时的资源使用情况。
[0017]以此方式,该方案能够准确地预测深度学习模型在特定运行时策略下的各种资源的使用情况,诸如,算力消耗、存储器消耗和执行时间等。此外,该方案能够支持各种类型的输入并且具有可扩展架构,便于支持各种不同类型的深度学习框架。该方案所提供的预测结果具有可解释性,并能够与其他深度学习系统组件(例如,AutoML系统)或人工智能平台对接,以提高深度学习的生产效率。例如,该预测结果能够帮助深度学习开发人员发现模型的瓶颈,从而通过调试模型参数来提高模型性能;该预测结果有助于其他深度学习系统组
件(例如,AutoML系统)提前对深度学习模型的模型参数的搜索空间进行裁剪,以提高模型参数搜索效率;该预测结果有助于优化人工智能平台的任务执行策略,从而提高资源利用率等等。
[0018]以下进一步结合附图来详细描述该方案的各种示例实现。
[0019]图1示出了能够实施本公开的多个实现的计算设备100的框图。应当理解,图1所示出的计算设备100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。如图1所示,计算设备100包括通用计算设备形式的计算设备100。计算设备100的组件可以包括但不限于一个或多个处理器或处理单元110、存储器120、存储设备130、一个或多个通信单元140、一个或多个输入设备150以及一个或多个输出设备160。
[0020]在一些实现中,计算设备100可以被实现为各种用户终端或服务终端。服务终端可以是各种服务提供方提供的服务器、大型计算设备等。用户终端诸如是任意类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机实现的方法,包括:获取与深度学习模型有关的信息,所述信息包括用于描述所述深度学习模型的第一信息、以及与所述深度学习模型所关联的任务的运行环境有关的第二信息;基于所述第一信息,确定所述任务的静态资源使用情况;基于所述第一信息和所述第二信息,确定所述任务在所述运行环境中运行时的策略;以及基于所述策略和所述静态资源使用情况,预测所述任务在所述运行环境中运行时的资源使用情况。2.根据权利要求1所述的方法,其中所述第一信息包括所述深度学习模型的配置参数。3.根据权利要求1所述的方法,其中所述第一信息包括以下至少一项:所述深度学习模型的模型文件;以及所述任务的程序代码。4.根据权利要求1所述的方法,其中所述第二信息包括以下至少一项:所述深度学习模型的框架类型;所述运行环境中用于执行所述任务的计算设备的规格和数目;以及所述任务在所述计算设备上的执行策略。5.根据权利要求1所述的方法,其中所述资源使用情况包括以下至少一项:算力消耗;存储器消耗;I/O资源消耗;执行时间;以及功率消耗。6.根据权利要求5所述的方法,其中所述资源使用情况包括基于所述算力消耗和所述存储器消耗中的至少一项而确定的其他资源消耗。7.根据权利要求1所述的方法,其中确定所述静态资源使用情况包括:基于所述第一信息,生成与所述深度学习模型相对应的计算图,所述计算图包括多个节点,所述多个节点对应于所述深度学习模型中的多个算子,连接所述多个节点的边缘指示所述多个算子之间的依赖关系;基于所述计算图和所述多个算子的相应资源预测模型,预测所述多个算子的相应静态资源使用情况;以及基于所述多个算子的相应静态资源使用情况,确定所述任务的所述静态资源使用情况。8.根据权利要求1所述的方法,其中所述策略包括以下至少一项:所述深度学习模型的资源分配策略;以及所述任务在所述运行环境中的执行策略。9.根据权利要求8所述的方法,其中预测所述任务在所述运行环境中运行时的所述资源使用情况包括:基于所述资源分配策略和所述执行策略中的至少一项来调整所述静态资源使用情况,以得到所述任务在所述运行环境中运行时的所述资源使用情况。10.根据权利要求1所述的方法,还包括:利用经训练的机器学习模型,生成用于优化经预测的所述资源使用情况的参数;以及基于所述参数,优化经预测的所述资源使用情况。11.一种电子设备,包括:处理单元;以及
存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:获取与深度学习模型有关的信息,所述信息包括用于描述所述深度学习模型的第一信息、以及与所述深度学习模型所关联的...

【专利技术属性】
技术研发人员:高彦杰林昊翔刘雨杨懋
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:

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

1