模型转换方法与装置制造方法及图纸

技术编号:26223551 阅读:35 留言:0更新日期:2020-11-04 10:56
本发明专利技术实施例提供一种模型转换方法与装置。该方法包括:从源神经网络模型的数据导出接口获取待处理数据并确定所述待处理数据的数据排布格式;根据所述待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;采用转换后的模型算子对所述待处理数据进行处理。本发明专利技术实施例的方法,通过对目标神经网络模型的模型算子进行数据排布格式转换,只需执行一次转换操作即可,减少了运算量,提高了模型转换的速度。

【技术实现步骤摘要】
模型转换方法与装置
本专利技术涉及计算机科学
,具体涉及一种模型转换方法与装置。
技术介绍
人工智能在各行各业中有着广泛的应用前景。随着人工智能的飞速发展,各种深度学习框架层出不穷,目前主流的基于神经网络的深度学习框架包括TensorFlow、PyTorch、MXNet等。在算法开发到算法部署的过程中,往往需要用到不同的深度学习框架,例如使用Pytorch进行算法开发和调试,而在部署阶段,由于硬件和部署软件的限制,可能需要转化成Tensorflow模型进行适配。这就需要进行框架间的模型转换,以达成模型适配硬件的目标。由于不同框架的数据排布方式可能不一致,这就导致框架间模型在转换的过程中,需要进行数据排布方式的转化。现有模型转换方法常通过对源数据进行转换操作,将源数据的数据排布格式转换为目标数据排布格式,以实现框架间的模型转换。然而,新增的转换操作增加了运算量,降低了模型转换的速度。
技术实现思路
本专利技术实施例提供一种模型转换方法与装置,用以解决现有模型转换方法运算量大,速度慢的问题。第一方面,本专利技术实施例提供一种模型转换方法,包括:从源神经网络模型的数据导出接口获取待处理数据并确定待处理数据的数据排布格式;根据待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;采用转换后的模型算子对待处理数据进行处理。一种实施例中,数据排布格式为NCHW、NHWC或者CHWN。一种实施例中,采用转换后的模型算子对待处理数据进行处理,包括:对待处理数据与转换后的模型算子执行通用矩阵乘法运算GEMM。一种实施例中,从源神经网络模型的数据导出接口获取待处理数据,包括:从源神经网络模型的输入端、输出端、隐藏层的入端或者隐藏层的出端获取待处理的张量数据。第二方面,本专利技术实施例提供一种模型转换装置,包括:预处理模块,用于从源神经网络模型的数据导出接口获取待处理数据并确定待处理数据的数据排布格式;转换模块,用于根据待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;处理模块,用于采用转换后的模型算子对待处理数据进行处理。一种实施例中,数据排布格式为NCHW、NHWC或者CHWN。一种实施例中,处理模块用于对待处理数据与转换后的模型算子执行通用矩阵乘法运算GEMM。一种实施例中,预处理模块用于从源神经网络模型的输入端、输出端、隐藏层的入端或者隐藏层的出端获取待处理的张量数据。第三方面,本专利技术实施例提供一种模型转换设备,包括:至少一个处理器和存储器;存储器存储计算机执行指令;至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如第一方面任一项所述的模型转换方法。第四方面,本专利技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第一方面任一项所述的模型转换方法。本专利技术实施例提供的模型转换方法与装置,包括:从源神经网络模型的数据导出接口获取待处理数据并确定所述待处理数据的数据排布格式;根据所述待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;采用转换后的模型算子对所述待处理数据进行处理。通过对目标神经网络模型的模型算子进行数据排布格式转换,只需执行一次转换操作即可,减少了运算量,提高了模型转换的速度。附图说明图1为一实施例提供的数据排布格式的示意图;图2为本专利技术提供的模型转换方法一实施例的流程图;图3为本专利技术一实施例提供的模型算子对待处理数据进行处理的示意图;图4为本专利技术提供的模型转换装置一实施例的结构示意图;图5为本专利技术提供的模型转换设备一实施例的结构示意图。具体实施方式下面通过具体实施方式结合附图对本专利技术作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。图1为一实施例提供的数据排布格式的示意图。如图1所示,对于相同的数据,采用不同的数据排布格式,其在内存中的数据是不一致的。其中,N代表数量,C代表通道数,H代表高度,W代表宽度。以图像处理为例,N可以表示这批图像有几张,H可以表示图像在竖直方向有多少像素,W可以表示图像在水平方向有多少像素,C可以表示通道数(例如黑白图像的通道数C=1,而RGB彩色图像的通道数C=3)。NCHW其实代表的是[WHCN],第一个元素是000,第二个元素是沿着W方向的,即001,依次下去是002003;然后沿着H方向,即004005006007……;到019后,继续沿着C方向,轮到了020,之后021022……;直到319,然后再沿着N方向。其中,[a:0]用于指示NCHW格式下的第一维度,[a:1]用于指示NCHW格式下的第二维度,[a:2]用于指示NCHW格式下的第三维度,[a:3]用于指示NCHW格式下的第四维度。NHWC其实代表的是[CWHN],第一个元素是000,第二个元素是沿着C方向的,即020,依次下去是040060……;直到300,然后沿着W方向,即001021041061……;到303后,沿着H方向,即004024……;直到319,然后再沿着N方向。其中,[b:0]用于指示NHWC格式下的第一维度,[b:1]用于指示NHWC格式下的第二维度,[b:2]用于指示NHWC格式下的第三维度,[b:3]用于指示NHWC格式下的第四维度。CHWN格式的话依次类推,此处不再赘述。基于神经网络的深度学习,如深度卷积神经网络已经成为最为广泛的网络架构,在图像及语音等领域有着广泛的应用。深度卷积神经网络的核心算法是卷积计算,目前主流的实现方式是将卷积展开,将卷积计算转变为通用矩阵乘计算(GeneralMatrixMultiplication,简称:GEMM)。GEM本文档来自技高网...

【技术保护点】
1.一种模型转换方法,其特征在于,包括:/n从源神经网络模型的数据导出接口获取待处理数据并确定所述待处理数据的数据排布格式;/n根据所述待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;/n采用转换后的模型算子对所述待处理数据进行处理。/n

【技术特征摘要】
1.一种模型转换方法,其特征在于,包括:
从源神经网络模型的数据导出接口获取待处理数据并确定所述待处理数据的数据排布格式;
根据所述待处理数据的数据排布格式对目标神经网络模型的模型算子进行数据排布格式转换;
采用转换后的模型算子对所述待处理数据进行处理。


2.如权利要求1所述的方法,其特征在于,所述数据排布格式为NCHW、NHWC或者CHWN。


3.如权利要求1所述的方法,其特征在于,所述采用转换后的模型算子对所述待处理数据进行处理,包括:
对所述待处理数据与所述转换后的模型算子执行通用矩阵乘法运算GEMM。


4.如权利要求1所述的方法,其特征在于,所述从源神经网络模型的数据导出接口获取待处理数据,包括:
从源神经网络模型的输入端、输出端、隐藏层的入端或者隐藏层的出端获取待处理的张量数据。


5.一种模型转换装置,其特征在于,包括:
预处理模块,用于从源神经网络模型的数据导出接口获取待处理数据并确定所述待处理数据的数据排布格式;
转换模块,用于根据所述待处理数据的数据...

【专利技术属性】
技术研发人员:杨澄邵新庆吴肖刘强
申请(专利权)人:深圳力维智联技术有限公司南京中兴力维软件有限公司
类型:发明
国别省市:广东;44

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

1