模型处理方法及装置、电子设备及存储介质制造方法及图纸

技术编号:36871206 阅读:20 留言:0更新日期:2023-03-15 19:55
本公开实施例提供一种模型处理方法及装置、电子设备及存储介质,其中,所述模型处理方法包括:基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网;基于所述子网间的连接关系对所述多种类型的子网进行排序;基于排序后的多个子网形成子网运行序列;所述子网运行序列用于运行所述子网以获取模型计算结果。述子网以获取模型计算结果。述子网以获取模型计算结果。

【技术实现步骤摘要】
模型处理方法及装置、电子设备及存储介质


[0001]本公开涉及深度学习领域,尤其涉及一种模型处理方法及装置、电子设备及存储介质。

技术介绍

[0002]相关技术中,在人工智能(Artificial Intelligence,AI)加速器上部署带有控制流算子的模型时,需要手动将模型的整块计算网络切分下来,逐块进行编译转换,然后按照模型的运行流程在应用中开发相关逻辑以及调用切分的模型块,或者只把无控制流部分切分出来,其他全部在应用中实现。由于带有流程算子的模型通常很复杂,如果不结合源码,很难找到合理的划分点,而且由于控制逻辑比较复杂,编写相关应用逻辑也容易出错,造成较大的时间成本和人力成本。

技术实现思路

[0003]本公开实施例提供一种模型处理方法及装置、电子设备及存储介质。
[0004]本公开实施例第一方面提供一种模型处理方法,包括:
[0005]基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网;
[0006]基于所述子网间的连接关系对所述多种类型的子网进行排序;
[0007]基于排序后的多个子网形成子网运行序列;所述子网运行序列用于运行所述子网以获取模型计算结果。
[0008]基于上述方案,所述子网至少包括:第一子网、第二子网或第三子网;
[0009]所述第一子网用于执行数据计算;
[0010]所述第二子网用于根据预设选择条件激活多个输出端中的一个输出端连接的子网;
[0011]所述第三子网用于选择多个输入数据中的一个进行输出。
[0012]基于上述方案,所述基于子网间的连接关系对所述多种类型的子网进行排序,包括:
[0013]所述子网为第一子网时,基于子网间的连接关系对应的顺序将所述第一子网依次添加至子网运行列表;
[0014]基于所述子网运行列表中的当前子网数量确定所述第一子网的后续运行序号。
[0015]基于上述方案,所述基于子网间的连接关系对所述多种类型的子网进行排序,包括:
[0016]所述子网为第二子网时,将所述第二子网添加至子网运行列表;
[0017]基于子网间的连接关系,对所述第二子网的输出端连接的多个子网集合进行排序;
[0018]基于排序后的多个子网集合以及所述子网运行列表中的子网数量,确定所述第二
子网的后续运行序号。
[0019]基于上述方案,所述方法还包括:
[0020]将所述多个子网集合输入的目标第三子网添加至所述子网运行列表;
[0021]基于所述子网运行列表中的子网数量,确定所述目标第三子网的后续运行序号。
[0022]基于上述方案,所述基于子网间的连接关系对所述多种类型的子网进行排序,包括:
[0023]所述子网为第三子网时,将所述第三子网添加至子网运行列表;
[0024]基于子网间的连接关系确定所述第三子网输出后的第一个目标第二子网;
[0025]将所述目标第二子网添加至所述子网运行列表;
[0026]基于所述子网运行列表中的子网数量,确定所述第三子网以及目标第二子网的后续运行序号。
[0027]基于上述方案,所述方法还包括:
[0028]基于子网间的连接关系,对所述第三子网与所述目标第二子网间的多个子网,以及所述目标第二子网输出端连接的多个子网集合进行排序;
[0029]基于排序后的所述多个子网和所述多个子网集合以及所述子网运行列表中的子网数量,确定所述子网运行列表中至少一个子网的后续运行序号。
[0030]基于上述方案,所述方法还包括:
[0031]确定所述待处理模型包含的算子类型;
[0032]所述算子类型为第一类型时,确定所述目标第二子网输出端连接的第一子网集合和第二子网集合;所述第一子网集合包括与目标第二子网的第一输出端连接的子网,所述第二子网集合包括与目标第二子网的第二输出端连接的子网。
[0033]基于上述方案,所述基于所述子网运行列表中的子网数量,确定所述第三子网以及目标第二子网的后续运行序号,包括:
[0034]基于所述目标第二子网的连接关系,确定所述目标第二子网的后续运行序号组中的预设序号位为所述子网运行列表中的当前子网数量;所述运行序号组包括至少两个序号位。
[0035]基于上述方案,所述方法还包括:
[0036]将所述子网运行列表中与其他子网之间无连接的独立子网的后续运行序号设置为预设值。
[0037]基于上述方案,所述基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网,包括:
[0038]确定所述待处理模型包含的算子类型;
[0039]所述算子类型为第一类型时,获取待处理模型中的全部算子的算子类型;
[0040]基于所述算子类型,将不同类型的算子整合形成第二子网和/或第三子网。
[0041]基于上述方案,所述方法还包括:
[0042]将所述第二子网中控制条件相同的第二子网合并;
[0043]基于合并后的第二子网,确定待处理模型包含的多个子网间的连接关系。
[0044]基于上述方案,所述方法还包括:
[0045]基于子网间的连接关系,将相邻的连续运行的第一子网合并。
[0046]本公开实施例第三方面提供一种模型处理装置,所述装置包括:
[0047]划分单元,用于基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网;
[0048]排序单元,用于基于子网间的连接关系对所述多种类型的子网进行排序;
[0049]处理单元,用于基于排序后的多个子网形成子网运行序列;所述子网运行序列用于运行所述子网以获取模型计算结果。
[0050]基于上述方案,所述子网至少包括:第一子网、第二子网或第三子网;
[0051]所述第一子网用于执行数据计算;
[0052]所述第二子网用于根据预设选择条件激活多个输出端中的一个输出端连接的子网;
[0053]所述第三子网用于选择多个输入数据中的一个进行输出。
[0054]基于上述方案,所述排序单元,具体用于:
[0055]所述子网为第一子网时,基于子网间的连接关系对应的顺序将所述第一子网依次添加至子网运行列表;
[0056]基于所述子网运行列表中的当前子网数量确定所述第一子网的后续运行序号。
[0057]基于上述方案,所述排序单元,具体用于:
[0058]所述子网为第二子网时,将所述第二子网添加至子网运行列表;
[0059]基于子网间的连接关系,对所述第二子网的输出端连接的多个子网集合进行排序;
[0060]基于排序后的多个子网集合以及所述子网运行列表中的子网数量,确定所述第二子网的后续运行序号。
[0061]基于上述方案,所述排序单元还用于:
[0062]将所述多个子网集合输入的目标第三子网本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模型处理方法,其特征在于,所述方法包括:基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网;基于子网间的连接关系对所述多种类型的子网进行排序;基于排序后的多个子网形成子网运行序列;所述子网运行序列用于运行所述子网以获取模型计算结果。2.根据权利要求1所述的方法,其特征在于,所述子网至少包括:第一子网、第二子网或第三子网;所述第一子网用于执行数据计算;所述第二子网用于根据预设选择条件激活多个输出端中的一个输出端连接的子网;所述第三子网用于选择多个输入数据中的一个进行输出。3.根据权利要求2所述的方法,其特征在于,所述基于子网间的连接关系对所述多种类型的子网进行排序,包括:所述子网为第一子网时,基于子网间的连接关系对应的顺序将所述第一子网依次添加至子网运行列表;基于所述子网运行列表中的当前子网数量确定所述第一子网的后续运行序号。4.根据权利要求2所述的方法,其特征在于,所述基于所述算子间的连接关系对所述多种类型的子网进行排序,包括:所述子网为第二子网时,将所述第二子网添加至子网运行列表;基于子网间的连接关系,对所述第二子网的输出端连接的多个子网集合进行排序;基于排序后的多个子网集合以及所述子网运行列表中的子网数量,确定所述第二子网的后续运行序号。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:将所述多个子网集合输入的目标第三子网添加至所述子网运行列表;基于所述子网运行列表中的子网数量,确定所述目标第三子网的后续运行序号。6.根据权利要求2所述的方法,其特征在于,所述基于子网间的连接关系对所述多种类型的子网进行排序,包括:所述子网为第三子网时,将所述第三子网添加至子网运行列表;基于子网间的连接关系确定所述第三子网输出后的第一个目标第二子网;将所述目标第二子网添加至所述子网运行列表;基于所述子网运行列表中的子网数量,确定所述第三子网以及目标第二子网的后续运行序号。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:基于子网间的连接关系,对所述第三子网与所述目标第二子网间的多个子网,以及所述目标第二子网输出端连接的多个子网集合进行排序;基于排序后的所述多个子网和所述多个子网集合以及所述子网运行列表中的子网数量,确定所述子网运行列表中至少一个子网的后续运行序号。8.根据权利要求6所述的方法,其特征在于,所述方法还包括:确定所述待处理模型包含的算子类型;
所述算子类型为第一类型时,确定所述目标第二子网输出端连接的第一子网集合和第二子网集合;所述第一子网集合包括与目标第二子网的第一输出端连接的子网,所述第二子网集合包括与目标第二子网的第二输出的连接的子网。9.根据权利要求6所述的方法,其特征在于,所述基于所述子网运行列表中的子网数量,确定所述第三子网以及目标第二子网的后续运行序号,包括:基于所述目标第二子网的连接关系,确定所述目标第二子网的后续运行序号组中的预设序号位为所述子网运行列表中的当前子网数量;所述运行序号组包括至少两个序号位。10.根据权利要求3至9任一项所述的方法,其特征在于,所述方法还包括:将所述子网运行列表中与其他子网之间无连接的独立子网的后续运行序号设置为预设值。11.根据权利要求2至9任一项所述的方法,其特征在于,所述基于待处理模型包含的算子以及算子间的连接关系,将所述待处理模型划分为多种类型的子网,包括:确定所述待处理模型包含的算子类型;所述算子类型为第一类型时,获取待处理模型中的全部算子的算子类型;基于所述算子类型,将不同类型的算子整合形成第二子网和/或第三子网。12.根据权利要求11所述的方法,其特征在于,所述方法还包括:将所述第二子网中控制条件相同的第二子网合并;基于合并后的第二子网,确定待处理模型包含的多个子网间的连接关系。13.根据权利要求2所述的方法,其特征在于,所述方法还包括:基于子网间的连接关系,将相邻的连续运行的第一子网合并。14.一种模型处理装置,其特征在于,所述装置包括:划分单元,用于基于待处理模型包含的算子以及算子间的连接关系...

【专利技术属性】
技术研发人员:檀庭梁
申请(专利权)人:北京算能科技有限公司
类型:发明
国别省市:

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

1