[发明专利]数据处理方法、电子设备和可读存储介质有效
申请号: | 202010214661.X | 申请日: | 2018-12-29 |
公开(公告)号: | CN111461296B | 公开(公告)日: | 2023-09-22 |
发明(设计)人: | 请求不公布姓名 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06N3/0464 | 分类号: | G06N3/0464;G06N3/08;G06N3/063;G06N5/04;G06F8/41 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 方法 电子设备 可读 存储 介质 | ||
本申请涉及一种数据处理方法、装置、电子设备和可读存储介质,针对子网络划分处理后的目标神经网络,所述目标神经网络包括至少一个子网络;采用本方法能够至少在进行所述子网络的编译和运行的过程中,仅需要一次输入操作和一次输出操作即可,相比于对所述子网络中多个网络层进行分别编译运行,所需的多次输入操作和多次输出操作,本实施例的数据处理方法更高效,提高了运算速率。
技术领域
本申请涉及机器学习技术领域,特别是涉及一种数据处理方法、装置、电子设备和可读存储介质。
背景技术
深度学习一般分为训练和推理两个过程,训练过程用于搜索和求解神经网络模型的最优参数;而推理过程则用于根据经过训练的神经网络模型,对输入的新的数据进行推理,即前向运算,得到目标输出。
目前,基于caffe等深度学习框架构建的神经网络模型的前向运算过程,是由处理器逐层对神经网络的每层进行编译和运行操作的,即每层的操作为单独的运算,每层运算时均需要进行至少一次输入拷贝和至少一次输出拷贝。
总之,目前的神经网络的逐层前向运算的方式,存在运算速率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高运算速率的数据处理方法、装置、电子设备和可读存储介质。
第一方面,一种数据处理方法,所述方法包括:
获取目标神经网络的模型数据和权值数据,其中,所述目标神经网络包括至少一个子网络,每个所述子网络中包含至少一个网络层,每个所述子网络中的所述网络层具有相同的融合属性,至少一个所述网络层的算子被融合为一个融合算子;
确定所述目标神经网络中各个子网络的执行顺序;
根据所述目标神经网络的模型数据、权值数据以及所述各个子网络的执行顺序,对各个所述子网络对应的融合算子进行整体编译及运行,获得所述目标神经网络的输出结果。
在其中一个实施例中,所述方法还包括如下步骤:
获取所述目标神经网络对应的原始神经网络;
根据所述原始神经网络中各个网络层的配置信息确定所述各个网络层的融合属性;
根据所述原始神经网络中各个网络层的融合属性及各个网络层的依赖关系,将具有相同融合属性的至少一个网络层融合为一个子网络。
在其中一个实施例中,所述网络层的融合属性包括第一融合属性和第二融合属性;所述根据所述原始神经网络中各个网络层的配置信息确定所述各个网络层的融合属性的步骤,包括:
获取各个网络层的预设的融合属性函数的返回值;
若所述网络层的返回值为第一返回值,则确定所述网络层的融合属性为第一融合属性;
若所述网络层的返回值为第二返回值,则确定所述网络层的融合属性为第二融合属性。
在其中一个实施例中,所述根据所述原始神经网络中各个网络层的融合属性及各个网络层的依赖关系,将具有相同融合属性的至少一个网络层融合为一个子网络的步骤,包括:
根据各个网络层的依赖关系,确定各个网络层的拓扑排序;
根据所述拓扑排序,若当前网络层的融合属性为第一融合属性,则在所述当前网络层的融合属性与所述当前网络层的上一网络层的融合属性相同时,将所述当前网络层与所述当前网络层的上一网络层划分为同一子网络;
根据所述拓扑排序,若所述当前网络层的融合属性为第二融合属性,则将所述当前网络层单独划分为一个子网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010214661.X/2.html,转载请声明来源钻瓜专利网。