数据处理方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:39161994 阅读:12 留言:0更新日期:2023-10-23 15:03
本申请实施例提供了一种数据处理方法、装置、电子设备及计算机可读存储介质,涉及数据处理技术领域。该方法包括:若确定神经网络模型包括候选算子集,候选算子集依次包括一个第一卷积算子、一个重塑算子和一个转置算子,且候选算子集满足预设条件,则确定候选算子集对应的目标算子集;目标算子集中依次包括一个第二卷积算子和一个深度至广度算子;第一卷积算子的输出张量的最后一维度属性表征块大小,第二卷积算子的输出张量的最后一维度属性表征输出通道数;将神经网络模型中的候选算子集替换为目标算子集。本申请实施例以第二卷积算子的输出张量的最后一维度属性所表征的输出通道数为基本单位进行数据搬运,提高了数据搬运的连续性和搬运效率。的连续性和搬运效率。的连续性和搬运效率。

【技术实现步骤摘要】
数据处理方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及数据处理
,具体涉及神经网络
,具体而言,本申请涉及一种数据处理方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]神经网络模型部署于AI加速器,神经网络模型的算子的数量和算子的类型影响AI加速器搬运数据的效率,有的神经网络模型的计算图可能同时具备卷积算子(convolution,Conv)、重塑算子(reshape)以及转置算子(transpose),Conv算子是计算密集型算子,无论怎样都需要进行计算,reshape算子和transpose算子是访存密集型算子,所进行的仅仅是对数据进行重新排列,二者都不进行数据计算,不进行任何数据计算的算子对AI加速器而言较为耗时。
[0003]此外,在进行数据搬运过程中,执行上述卷积算子、重塑算子以及转置算子时,是以卷积算子的输出张量的最后一维度属性为单位进行数据搬运,该最后一维度属性表征的是块大小(block size),块大小通常为2,是一个较小的数值,AI加速器基于块大小为单位进行数据搬运导致数据之间的连续性较低,影响数据搬效率,进而影响神经网络模型的推理性能。

技术实现思路

[0004]本申请实施例提供了一种数据处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,用于解决
技术介绍
中的技术问题。
[0005]根据本申请实施例的第一方面,提供了一种数据处理方法,该方法包括:
[0006]确定输入样本以及待部署的神经网络模型,神经网络模型包括多个算子,多个算子的种类包括卷积算子、重塑算子和转置算子;
[0007]将输入样本输入至神经网络模型,获得神经网络模型中各算子的输入张量和输出张量;
[0008]若确定神经网络模型包括至少一个候选算子集,候选算子集依次包括一个第一卷积算子、一个重塑算子和一个转置算子,且候选算子集中各算子满足预设条件,则确定候选算子集对应的目标算子集;目标算子集中依次包括一个第二卷积算子和一个深度至广度算子;
[0009]其中,第二卷积算子和第一卷积算子的输入张量相同、输出张量不同,第一卷积算子的输出张量的最后一维度属性表征块block大小,第二卷积算子的输出张量的最后一维度属性表征输出通道数;深度至广度算子和转置算子的输出张量相同;
[0010]将神经网络模型中的候选算子集替换为目标算子集,将替换后的神经网络模型部署于AI加速器。
[0011]根据本申请实施例的第二方面,提供了一种数据处理装置,该装置包括:
[0012]第一确定模块,用于确定输入样本以及待部署的神经网络模型,神经网络模型包
括多个算子,多个算子的种类包括卷积算子、重塑算子和转置算子;
[0013]张量获得模块,用于将输入样本输入至神经网络模型,获得神经网络模型中各算子的输入张量和输出张量;
[0014]目标算子集确定模块,用于若确定神经网络模型包括至少一个候选算子集,候选算子集依次包括一个第一卷积算子、一个重塑算子和一个转置算子,且候选算子集中各算子满足预设条件,则确定候选算子集对应的目标算子集;目标算子集中依次包括一个第二卷积算子和一个深度至广度算子;
[0015]其中,第二卷积算子和第一卷积算子的输入张量相同、输出张量不同,第一卷积算子的输出张量的最后一维度属性表征块block大小,第二卷积算子的输出张量的最后一维度属性表征输出通道数;深度至广度算子和转置算子的输出张量相同;
[0016]部署模块,用于将神经网络模型中的候选算子集替换为目标算子集,将替换后的神经网络模型部署于AI加速器。
[0017]根据本申请实施例的第三方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤。
[0018]根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
[0019]根据本申请实施例的第五方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤。
[0020]本申请实施例提供的技术方案带来的有益效果是:
[0021]本申请实施例将神经网络模型中的候选算子集替换为了目标算子集,候选算子集依次包括一个第一卷积算子、一个重塑算子和一个转置算子,目标算子集中依次包括一个第二卷积算子和一个深度至广度算子,使得在将神经网络模型部署于AI加速器之后,AI加速器基于目标算子集进行数据搬运,而不基于候选算子集进行数据搬运,AI加速器基于候选算子集进行数据搬运时,是以第一卷积算子的输出张量的最后一维度属性为基本单位进行数据搬运,该第一卷积算子的输出张量的最后一维度属性表征块大小,块大小通常为2,本申请实施例以第二卷积算子的输出张量的最后一维度属性为基本单位进行数据搬运,该第二卷积算子的输出张量的最后一维度属性表征输出通道数,输出通道数通常为16或者32,远远大于块大小对应的2,使得AI加速器以输出通道数为基本单位进行数据搬运,大大提高了数据搬运的连续性,提高搬运效率。
附图说明
[0022]为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
[0023]图1为本申请实施例提供的一种数据处理方法的流程示意图;
[0024]图2为本申请实施例提供的一种判断候选算子集是否满足预设条件的流程示意图;
[0025]图3为本申请实施例提供的将候选算子转换为目标算子的示意图;
[0026]图4为本申请实施例提供的一种数据处理装置的结构示意图;
[0027]图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
[0028]下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
[0029]本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本
所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:确定输入样本以及待部署的神经网络模型,所述神经网络模型包括多个算子,所述多个算子的种类包括卷积算子、重塑算子和转置算子;将所述输入样本输入至所述神经网络模型,获得所述神经网络模型中各算子的输入张量和输出张量;若确定所述神经网络模型包括至少一个候选算子集,所述候选算子集依次包括一个第一卷积算子、一个重塑算子和一个转置算子,且所述候选算子集中各算子满足预设条件,则确定所述候选算子集对应的目标算子集;所述目标算子集中依次包括一个第二卷积算子和一个深度至广度算子;其中,所述第二卷积算子和所述第一卷积算子的输入张量相同、输出张量不同,所述第一卷积算子的输出张量的最后一维度属性表征块block大小,所述第二卷积算子的输出张量的最后一维度属性表征输出通道数;所述深度至广度算子和所述转置算子的输出张量相同;将所述神经网络模型中的所述候选算子集替换为所述目标算子集,将替换后的神经网络模型部署于AI加速器。2.根据权利要求1所述的方法,其特征在于,所述目标算子集中的第二卷积算子是通过以下方式确定的:获取所述第一卷积算子的第一权重矩阵、第一偏置项以及所述重塑算子的输出张量;所述重塑算子的输出张量包括六个维度属性,其中,所述重塑算子的输出张量的第四维度属性表征输出通道数;所述重塑算子的输出张量的第五维度属性表征block大小;将所述第一卷积算子的输入张量作为所述第二卷积算子的输入张量,对所述重塑算子的输出张量中的各维度属性进行重排,得到重排后的输出张量,将重排后的输出张量作为第二卷积算子的输出张量;基于所述第一卷积算子的第一权重矩阵、所述重塑算子的输出张量的第四维度属性和第五维度属性生成第二权重矩阵、第二偏置项;将所述第二权重矩阵作为第二卷积算子的权重矩阵,将所述第二偏置项作为所述第二卷积算子的权重矩阵。3.根据权利要求2所述的方法,其特征在于,所述对所述重塑算子的输出张量中的各维度属性进行重排,包括:交换所述重塑算子的输出张量中第四维度属性和第五维度属性的位置;或交换所述重塑算子的输出张量中第四维度属性和第六维度属性的位置;所述重塑算子的输出张量的第四维度属性表征通道数,所述重塑算子的输出张量的第五维度属性和第六维度属性均表征block大小。4.根据权利要求2所述的方法,其特征在于,所述第一卷积算子的第一权重矩阵包括四个维度属性,其中,所述第一权重矩阵的第二维度属性表征图像高度,所述第一权重矩阵的第三维度属性表征图像宽度,所述第一权重矩阵的第四维度属性表征输入通道数;所述基于所述第一卷积算子的第一权重矩阵、所述重塑算子的输出张量的第四维度属性和第五维度属性生成第二权重矩阵、第二偏置项,包括:配置第三权重矩阵的各维度属性,其中,所述第三权重矩阵的第一维度属性为所述重
塑算子的输出张量的第四维度属性所表征的输入通道数;所述第三权重矩阵的第二维度属性和第三维度属性均为所述重塑算子的输出张量的第五维度属性所表征的block大小;所述第三权重矩阵的第四维度属性为所述第一权重矩阵的第二维度属性、第三维度属性和第四维度属性的乘积;基于第一预设重排参数对所述第三权重矩阵的各维度属性进行重排,得到重排后的第三权重矩阵;获取所述第一权重矩阵的矩阵形状,基于所述第一权重矩阵的矩阵形状修改所述重排后的第三权重矩阵的矩阵形状,得到第二权重矩阵;配置第三偏置项的各维度属性,其中,所述第三偏置项的第一维度属性为所述重塑算子的输出张量的第四维度属性所表征的输入通道数;所述第三偏置项的第二维度属性和第三维度属性均为所述重塑算子的输出张量的第五维度属性所表征的block大小;基于第二预设重排参数对所述第三偏置项的各维度属性进行重排,得...

【专利技术属性】
技术研发人员:王旭明
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1