深度学习模型的多算子并行处理方法、装置、设备和介质制造方法及图纸

技术编号:38145551 阅读:11 留言:0更新日期:2023-07-08 10:03
本公开提供了一种深度学习模型的多算子并行处理方法,涉及人工智能技术领域,尤其涉及深度学习技术领域和芯片技术领域。具体实现方案为:根据多个算子中至少两个目标算子中当前目标算子的输入数据的规模信息,利用预设函数确定当前目标算子的输出数据的规模信息;以及并行地执行以下操作:利用预设函数确定当前目标算子的在后目标算子的输出数据的规模信息;和运行当前目标算子。本公开还提供了一种数据处理装置、电子设备和存储介质。电子设备和存储介质。电子设备和存储介质。

【技术实现步骤摘要】
深度学习模型的多算子并行处理方法、装置、设备和介质


[0001]本公开涉及人工智能
,尤其涉及深度学习
和芯片
更具体地,本公开提供了一种深度学习模型的多算子并行处理方法、装置、电子设备和存储介质。

技术介绍

[0002]随着人工智能技术的发展,深度学习模型可以应用于脸部识别、光学字符识别、语音识别、物体检测和场景分割等场景中。

技术实现思路

[0003]本公开提供了一种深度学习模型的多算子并行处理方法、装置、设备以及存储介质。
[0004]根据本公开的一方面,提供了一种深度学习模型的多算子并行处理方法,深度学习模型包括多个算子,该方法包括:根据多个算子中至少两个目标算子中当前目标算子的输入数据的规模信息,利用预设函数确定当前目标算子的输出数据的规模信息;以及并行地执行以下操作:利用预设函数确定当前目标算子的在后目标算子的输出数据的规模信息;和运行当前目标算子。
[0005]根据本公开的另一方面,提供了一种数据处理装置,该装置包括:存储器,配置为存储可执行指令、待处理数据和深度学习模型的模型数据,深度学习模型包括多个算子;处理器,配置为执行可执行指令,以便:从存储器读取模型数据和待处理数据;根据多个算子中至少两个目标算子中当前目标算子的输入数据的规模信息,利用预设函数确定当前目标算子的输出数据的规模信息,其中,当前目标算子的输入数据是根据待处理数据确定的;以及并行地执行以下操作:利用预设函数确定当前目标算子的在后目标算子的输出数据的规模信息;和运行当前目标算子。r/>[0006]根据本公开的另一方面,提供了一种电子设备,包括本公开提供的数据处理装置。
[0007]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行根据本公开提供的方法。
[0008]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行根据本公开提供的方法。
[0009]根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现根据本公开提供的方法。
[0010]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0011]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0012]图1A是根据本公开的一个实施例的深度学习模型的示意图;
[0013]图1B是根据本公开的一个实施例的深度学习模型的输出数据的示意图;
[0014]图2是根据本公开的一个实施例的深度学习模型的多算子并行处理方法的流程图;
[0015]图3是根据本公开的另一个实施例的深度学习模型的示意图;
[0016]图4是根据本公开的一个实施例的数据处理装置的框图;
[0017]图5是根据本公开的一个实施例的电子设备的框图;以及
[0018]图6是根据本公开的一个实施例的可以应用深度学习模型的多算子并行处理方法的电子设备的框图。
具体实施方式
[0019]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0020]深度学习模型可以包括静态深度学习模型和动态深度学习模型。静态深度学习模型的输入数据的规模(shape)可以是固定的。例如,在不同场景中,深度学习模型处理的输入数据的维度可以是相同的。由此,在模型初始化时,可以高效地确定静态深度学习模型在运行过程中各种中间数据的规模,以便在内存中确定这些中间数据所需的存储空间。然而,静态深度学习模型难以应用于所有的场景。
[0021]与静态深度学习模型相比,动态深度学习模型可以适应更多的场景。动态深度学习模型的输入数据的规模是不固定的。由此,在模型初始化时,难以确定动态深度学习模型在运行过程中各种中间数据的规模。可以在确定了输入数据的规模之后,确定整个动态深度学习模型中各中间数据的规模。下面将结合图1A和图1B进行说明。
[0022]图1A是根据本公开的一个实施例的深度学习模型的示意图。
[0023]如图1A所示,深度学习模型100可以是动态深度学习模型。深度学习模型100的输入数据101的规模信息可以是可变的。规模信息可以指示输入数据的规模。例如,在利用不同批次的数据训练深度学习模型100或利用深度学习模型100进行推理时,第一批次的数据的规模可以为[1,3,224,224],第二批次的数据的规模可以为[1,3,448,448]。
[0024]深度学习模型100可以包括第一卷积算子110和第二卷积算子120。第一卷积算子110的卷积核的尺寸为[64,3,3,3],填充参数pad可以为1,步长可以为1。第二卷积算子120的卷积核的尺寸为[128,64,5,5],填充参数pad可以为2,步长可以为2。
[0025]输入数据101输入第一卷积算子110,可以得到第一卷积算子110的第一输出数据111。第一输出数据111输入第二卷积算子120,可以得到第二卷积算子120的第二输出数据121。在输入数据101的规模信息可变的情况下,第一输出数据111和第二输出数据121的规模信息是不确定的。
[0026]在输入数据101的规模信息确定时,可以利用预设函数来确定第一输出数据111的
规模信息和第二输出数据121的规模信息。预设函数可以包括规模推导(infershape)函数。
[0027]图1B是根据本公开的一个实施例的深度学习模型的输出数据的示意图。
[0028]如图1B所示,若输入数据101的规模是[1,3,224,224],利用预设函数可以确定第一输出数据111的规模。第一输出数据111的规模可以是[1,64,224,224]。由此,利用预设函数可以确定第二输出数据121的规模。第二输出数据121的规模可以是[1,128,112,112]。
[0029]然而,若每次利用模型进行推理前均进行一次完整的规模推导,所需的时间成本较大,也难以充分利用人工智能(Artificial Intelligence,AI)芯片的并行化处理能力。
[0030]此外,在模型结构较为复杂时,可以不确定一部分算子的规模。在此情况下,对模型的全部算子进行完整的规模推导就消耗了一些不必要的时间成本。
[0031]为了利用人工智能芯片高效地运行动态深度学习模型,本公开提供了一种深度学习模型的多算子并行处理方法,下面将进行详细说明。
[0032]图2本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种深度学习模型的多算子并行处理方法,所述深度学习模型包括多个算子,所述方法包括:根据所述多个算子中至少两个目标算子中当前目标算子的输入数据的规模信息,利用预设函数确定所述当前目标算子的输出数据的规模信息;以及并行地执行以下操作:利用所述预设函数确定所述当前目标算子的在后目标算子的输出数据的规模信息;和运行所述当前目标算子。2.根据权利要求1所述的方法,其中,所述深度学习模型为动态深度学习模型,所述目标算子的输入数据的规模信息是可变的。3.根据权利要求1所述的方法,其中,所述根据所述多个算子中至少两个所述待处理子中当前目标算子的输入数据的规模信息,利用预设函数确定所述当前目标算子的输出数据的规模信息包括:响应于确定待运行算子的状态信息指示了目标状态,将所述待运行算子作为所述当前目标算子;以及根据所述当前目标算子的输入数据的规模信息,利用所述预设函数确定所述当前目标算子的输出数据的规模信息。4.根据权利要求1所述的方法,其中,所述目标算子的算子数据包括所述预设函数的函数数据。5.根据权利要求1所述的方法,其中,所述利用所述预设函数确定所述当前目标算子的在后目标算子的输出数据的规模信息包括:根据所述当前目标算子的输出数据的规模信息,利用所述预设函数确定所述在后目标算子的输出数据的规模信息。6.一种数据处理装置,包括:存储器,配置为存储可执行指令、待处理数据和深度学习模型的模型数据,所述深度学习模型包括多个算子;处理器,配置为执行所述可执行指令,以便:从所述存储器读取所述模型数据和所述待处理数据;根据多个所述算子中至少两个所述目标算子中当前目标算子的输入数据的规模信息,利用预设函数确...

【专利技术属性】
技术研发人员:周佳敏郑焕鑫
申请(专利权)人:昆仑芯北京科技有限公司
类型:发明
国别省市:

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

1