神经网络模型的数据处理方法、装置、设备及存储介质与流程

文档序号:21041040发布日期:2020-06-09 20:40阅读:226来源:国知局
神经网络模型的数据处理方法、装置、设备及存储介质与流程

本申请实施例涉及计算板卡技术领域,例如涉及一种神经网络模型的数据处理方法、装置、设备及存储介质。



背景技术:

随着人工智能技术的发展,产生了许多可扩展的深度学习系统,深度学习系统可以设置为提供多种能够在中央处理单元(centralprocessingunit,cpu)或图形处理器(graphicsprocessingunit,gpu)等处理器上运行的神经网络模型。深度学习的框架种类繁多,并且框架版本迭代更新速度较快,融合技术需要根据不同框架的架构特点来进行设计。

处理器在运行神经网络模型时,如运行caffe网络模型时,每次对该神经网络模型中的多个计算节点分别进行编译、解析,按照该神经网络模型的结构形式以一定的形式执行多个计算节点的运算。当上述计算节点在不同的处理器上执行时,在不同的处理器之间进行频繁的切换,不同处理器之间的通讯次数较多且进行多次数据拷贝,降低了神经网络模型的运算速度。



技术实现要素:

本申请提供一种神经网络模型的数据处理方法、装置、设备及存储介质,以实现提高数据流速度效率。

在一实施例中,本申请实施例提供了一种神经网络模型的数据处理方法,包括:获取神经网络模型中的多个神经网络算子;

根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;

将所述融合后的神经网络算子组合为计算指令;

使用计算引擎对所述计算指令进行计算。

可选的,在所述根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子之前,还包括:判断所述多个神经网络算子是否能够进行融合,响应于所述多个神经网络算子能够进行融合的判断结果,根据所述预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子。

可选的,在所述判断所述多个神经网络算子是否能够进行融合之后,还包括:响应于所述多个神经网络算子不能进行融合的判断结果,继续获取新的神经网络算子。

可选的,所述根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子,包括:依次按照卷积、激活函数、池化/上采样、捷径、激活函数、全局池化的顺序对所述多个神经网络算子排放,并对排放的神经网络算子进行融合得到融合后的神经网络算子。

可选的,所述使用计算引擎对所述计算指令进行计算,包括:判断所述计算指令是否为唯一一个数据流操作,响应于所述计算指令是唯一一个数据流操作的判断结果,使用计算引擎对所述计算指令进行计算。

可选的,在所述判断所述计算指令是否为唯一一个数据流操作之后,还包括:响应于所述计算指令不是唯一一个数据流操作的判断结果,根据所述融合后的神经网络算子重新组合计算指令。

可选的,在所述使用计算引擎对所述计算指令进行计算之前,还包括:对所述计算指令进行解析。

在一实施例中,本申请实施例还提供了一种神经网络模型的数据处理装置,包括:

获取模块,设置为获取神经网络模型中的多个神经网络算子;

融合模块,设置为根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;

组合模块,设置为将所述融合后的神经网络算子组合为计算指令;

计算模块,设置为使用计算引擎对所述计算指令进行计算。

在一实施例中,本申请实施例还提供了一种神经网络数据处理设备,包括一个或多个处理器;

存储装置,设置为存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述方法。

在一实施例中,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序包括程序指令,该程序指令被处理器执行时实现上述方法。

本申请实施例公开了一种神经网络模型的数据处理方法、装置、设备及存储介质,该方法包括:获取神经网络模型中的多个神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;使用计算引擎对所述计算指令进行计算。本发明提供的一种神经网络模型的数据处理方法,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

附图说明

图1为本申请实施例中提供的一种神经网络模型的数据处理方法的流程图;

图2为本申请实施例中提供的一种神经网络模型的数据处理方法的流程图;

图3是本申请实施例中提供的一种神经网络模型的数据处理装置的结构示意图;

图4是本申请实施例中提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

下面结合附图和实施例对本申请进行说明。此处所描述的实施例仅仅用于解释本申请,而非对本申请的限定。为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。

一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将多个步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,多个步骤的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。

此外,术语“第一”、“第二”等可在本文中用于描述多种方向、动作、步骤或元件等,但这些方向、动作、步骤或元件不受这些术语限制。这些术语仅用于将第一个方向、动作、步骤或元件与另一个方向、动作、步骤或元件区分。举例来说,可以将第一计算引擎称为第二计算引擎,且类似地,可将第二计算引擎称为第一计算引擎。第一计算引擎和第二计算引擎两者都是计算引擎,但第一计算引擎和第二计算引擎不是同一计算引擎。术语“第一”、“第二”等而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确限定。

实施例一

图1为本申请实施例提供的一种神经网络模型的数据处理方法的流程图,本实施例可适用于融合计算算子加快数据流架构的情况,包括步骤100至步骤130。

步骤100、获取神经网络模型中的多个神经网络算子。

在一实施例中,在神经网络模型中,一个神经网络模型中包括多个算法指令,一个算法指令中包括多个神经网络算子,运算流程包括多层结构的多个神经网络算子和多个神经网络算子之间的连接关系。在计算引擎处理神经网络模型的计算指令后,获取所有的神经网络算子的信息,包括运算符号、运算参数、多个算子之间的连接关系等等。

步骤110、根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子。

本实施例中,根据预先设定的融合规则(即预设规则)对神经网络中的多个神经网络算子进行融合。融合过程包括从多个神经网络算子中选取目标算子,获取目标算子与下层算子的连接关系,根据连接关系确定融合关系。

示例性的,第一神经网络模型包括多层结构,运算流程包括所述多层结构的多个神经网络算子和所述多个神经网络算子之间的连接关系,每层结构对应至少一个神经网络算子,神经网络模型的架构融合装置根据所述运算流程生成所述第一神经网络模型的计算图,包括:神经网络模型的架构融合装置从所述多个神经网络算子中选取目标算子,所述目标算子为有向无环图的起始节点;神经网络模型的架构融合装置获取所述目标算子的下层算子和所述目标算子与所述下层算子的连接关系;神经网络模型的架构融合装置根据所述目标算子与下层算子的连接关系将所述下层算子对应的下层节点与所述起始节点连接,得到所述有向无环图。神经网络模型的架构融合装置根据所述多个神经网络算子对应的至少两个处理单元信息确定所述有向无环图中的n个可融合节点和m个非融合节点,所述可融合节点对应的神经网络算子为图像处理单元(imageprocessingunit,ipu)执行的算子,所述n和所述m均为大于1的整数;神经网络模型的架构融合装置对所述n个可融合节点进行融合段划分,得到融合段划分后的有向无环图,所述融合段划分后的有向无环图包括p个融合段,所述p为大于或等于1且小于或等于所述n的整数;神经网络模型的架构融合装置获取所述m个非融合节点在所述有向无环图中的q条路径和m个节点层,所述q大于所述m,每个非融合节点对应至少一条路径和一个节点层;神经网络模型的架构融合装置根据所述q条路径和所述m个节点层对所述融合段划分后的有向无环图进行简化,得到所述融合后的有向无环图。其中,非融合节点对应的神经网络算子为不在ipu上执行的算子。其中,每个融合段为有向无环图的一个子图,同一融合段中的至少一个可融合节点对应的至少一个算子均为在ipu上执行的算子,该至少一个算子在ipu上执行无需切换处理单元,无需多次数据拷贝。在一些实施例中,神经网络模型的架构融合装置获取m个非融合节点在有向无环图中的q条路径和m个节点层的实施方式为:神经网络模型的架构融合装置从有向无环图的第1个节点层开始逐层遍历,获取每个非融合节点对应的至少一条路径和一个节点层,得到m个非融合节点在有向无环图中的q条路径和m个节点层。神经网络模型的架构融合装置获取所述n个可融合节点之间的节点连接关系;神经网络模型的架构融合装置对所述n个可融合节点进行融合段划分,包括:若可融合节点m与可融合节点n的节点连接关系为同一个节点层的相邻节点或不同节点层的父子节点,则神经网络模型的架构融合装置将所述可融合节点m和所述可融合节点n划分至同一个融合段,所述可融合节点m和所述可融合节点n均为所述n个可融合节点中的任意一个。神经网络模型的架构融合装置根据所述q条路径和所述m个节点层对所述融合段划分后的有向无环图进行简化,包括:神经网络模型的架构融合装置获取所述m个非融合节点之间的节点位置关系;若非融合节点p对应的算子与非融合节点q对应的算子相同,则神经网络模型的架构融合装置确定所述非融合节点p与所述非融合节点q的节点位置关系,所述非融合节点p和所述非融合节点q均为所述m个非融合节点中的任意一个;若所述非融合节点p与所述非融合节点q的所述节点位置关系为位于不同节点层且处于不同的路径,则神经网络模型的架构融合装置将指向所述非融合节点p的边指向所述非融合节点q,增加所述非融合节点q的一条边指向所述非融合节点p的边指向的节点,删除所述非融合节点p。其中,非融合节点q对应的算子在不同时刻接收到不同节点发送的数据并执行计算,不同节点的数量与不同时刻的数量是相同的。若所述非融合节点p与所述非融合节点q的所述节点位置关系为位于不同节点层且处于不同的路径,则神经网络模型的架构融合装置将指向所述非融合节点q的边指向所述非融合节点p,增加所述非融合节点p的一条边指向所述非融合节点q的边指向的节点,删除所述非融合节点q。其中,非融合节点p对应的神经网络算子在不同时刻接收到不同节点发送的数据并执行计算,不同节点的数量在不同时刻是相同的。

步骤120、将所述融合后的神经网络算子组合为计算指令。

本实施例中,在神经网络模型之中,一个算法指令中包括多个神经网络算子,将融合后的神经网络算子组合为多个计算指令,方便分配合适数量的计算引擎进行计算。在一实施例中,算法指令和计算指令可以不同,计算指令中可以包含一个或多个算法指令。

步骤130、使用计算引擎对所述计算指令进行计算。

本实施例中,根据步骤120中的计算指令数量,选择合适数量的计算引擎对计算指令进行计算。此时的计算引擎至少为一个以上,根据该计算任务的优先级来确定,计算引擎数量越多,处理该计算任务的速度越快。示例性的,在深度学习计算中,使用多个计算引擎对图像进行识别,此时,使用计算引擎的数量越多,对该图像和数据库中图像对比的速度越快,输出对比结果的时间越短。

本申请实施例的技术方案通过获取神经网络模型中的多个神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;使用计算引擎对所述计算指令进行计算,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

实施例二

图2为本申请实施例中一种神经网络模型的数据处理方法的流程图,本实施例是在实施例一的基础上的可选实施例,在一实施中,该方法包括:步骤200至步骤250。

步骤200、获取神经网络模型中的多个神经网络算子。

步骤210、判断所述多个神经网络算子是否能够进行融合,响应于所述多个神经网络算子能够进行融合的判断结果,根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;响应于所述多个神经网络算子不能进行融合的判断结果,继续获取新的神经网络算子。

本实施例中,在进行神经网络算子融合之前需要判断这部分神经网络算子是否能够进行融合,融合方式参照实施例一的示例。当神经网络算子能够进行融合时,依次按照卷积、激活函数、池化/上采样、捷径、激活函数、全局池化的顺序对所述神经网络算子排放并对排放的神经网络算子进行融合得到融合后的神经网络算子。其中,卷积是指神经网络中的卷积层,是神经网络中进行大部分繁重计算工作的卷积网络的核心构建块,卷积层中的参数由一组可学习的过滤器组成。池化的功能是逐渐减小表示的空间大小,以减少网络中的参数和计算量,从而控制过度拟合。池化层在输入的每个深度切片上独立运行,并使用最大max操作在空间上调整其大小。激活函数一般用于神经网络的层与层之间,将上一层的输出转换之后输入到下一层。如果没有激活函数引入的非线性特性,那么神经网络就只相当于原始感知机的矩阵相乘。激活函数包括非线性特性:即当激活函数为非线性的时候,可以证明两层的神经网络可以逼近任意复杂的函数。激活函数具有连续可微的特性:由于神经网络的训练是基于梯度的优化方法,数学基础是连续可微,因此选取的激活函数也要保证连续可微。阶跃激活函数在0点不连续,且在除零点外导数都为0,因此不能使用基于梯度的方法。当激活函数的取值范围有限时,基于梯度的训练方法往往更加稳定,因为特征的表示受有限权重的影响更显著。当取值范围无限时,训练通常会更有效率,因为特征的表示会显著影响大部分权重,在这种情况下,通常需要更小的学习率。激活函数具有单调性,当激活函数是单调时,单层网络的误差曲面一定是凸的。

若当前神经网络算子不能进行融合时,获取新的神经网络算子来进行融合。获取新的神经网络算子之后,根据预设规则即卷积+激活函数+池化/上采样+捷径+激活函数+全局池化的顺序对所述神经网络算子排放,判断排放的神经网络算子是否能够进行融合,若能够进行融合,则根据实施例一中的融合方式对神经网络算子进行融合。

步骤220、根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子。

步骤230、将所述融合后的神经网络算子组合为计算指令。

步骤240、对所述计算指令进行解析。

本实施例中,对计算指令进行解析,其中包括将计算指令拆解为多个神经网络算子,根据这些神经网络算子确定一个或者多个神经网络数据流,根据神经网络数据流分配相应的计算引擎进行计算处理。

步骤250、判断所述计算指令是否为唯一一个数据流操作,响应于所述计算指令是唯一一个数据流操作的判断结果,使用计算引擎对所述计算指令进行计算。响应于所述计算指令不是唯一一个数据流操作的判断结果,根据所述融合后的神经网络算子重新组合计算指令。

本实施例中,将计算指令解析后得到的神经网络数据流进行判断,判断是否为唯一一个数据流,在神经网络计算中,计算引擎一次一般只能处理一个数据流,所以同时存在多个数据流的情况下,会影响神经网络计算时间。首先判断是否为唯一一个数据流,如果是,则直接分配计算引擎对其进行计算处理,只计算一个神经网络数据流可以大大节省神经网络的处理时间,达到提高数据流速度效率的问题。如果不是,则将计算指令拆分得到的神经网络算子,重新与新的神经网络算子进行融合,再组成新的计算指令。然后将多个新的计算指令进行重新组合,继续判断是否为唯一一个数据流。

本申请实施例的技术方案通过获取神经网络模型中的多个神经网络算子;判断所述多个神经网络算子是否能够进行融合,若是,则根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;若否,则继续获取新的神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;对所述计算指令进行解析;判断所述计算指令是否为唯一一个数据流操作,若是,则使用计算引擎对所述计算指令进行计算。若否,则根据所述融合后的神经网络算子重新组合计算指令,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

实施例三

本申请实施例所提供的神经网络模型的数据处理装置可执行本申请任意实施例所提供的方法,具备执行方法相应的功能模块和效果。图3是本申请实施例中的一种神经网络模型的数据处理装置300的结构示意图。参照图3,本申请实施例提供的神经网络模型的数据处理装置300可以包括:

获取模块310,设置为获取神经网络模型中的多个神经网络算子;

融合模块320,设置为根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;

组合模块330,设置为将所述融合后的神经网络算子组合为计算指令;

计算模块340,设置为使用计算引擎对所述计算指令进行计算。

在一实施例中,所述装置还设置为:在所述根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子之前,判断所述多个神经网络算子是否能够进行融合,响应于所述多个神经网络算子能够进行融合的判断结果,根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子。

在一实施例中,所述装置还设置为:在判断所述多个神经网络算子是否能够进行融合之后,响应于所述多个神经网络算子不能进行融合的判断结果,继续获取新的神经网络算子。

在一实施例中,融合模块是设置为:依次按照卷积、激活函数、池化/上采样、捷径、激活函数、全局池化的顺序对所述多个神经网络算子排放,并对排放的神经网络算子进行融合得到融合后的神经网络算子。

在一实施例中,所述计算模块是设置为:判断所述计算指令是否为唯一一个数据流操作,响应于所述计算指令是唯一一个数据流操作的判断结果,使用计算引擎对所述计算指令进行计算。

在一实施例中,所述计算模块是设置为:在判断所述计算指令是否为唯一一个数据流操作之后,响应于所述计算指令不是唯一一个数据流操作的判断结果,根据将所述融合后的神经网络算子重新组合计算指令。

在一实施例中,所述装置还设置为:对所述计算指令进行解析。

本申请实施例中提供的一种神经网络数据处理装置,通过获取神经网络模型中的多个神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;使用计算引擎对所述计算指令进行计算,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

实施例四

图4为本申请实施例提供的一种计算机设备的结构示意图,如图4所示,该计算机设备包括存储器410、处理器420,计算机设备中处理器420的数量可以是一个或多个,图4中以一个处理器420为例;设备中的存储器410、处理器420可以通过总线或其他方式连接,图4中以通过总线连接为例。

存储器410作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序以及模块,如本申请实施例中的方法对应的程序指令/模块(例如,神经网络模型的数据处理装置中的获取模块310、融合模块320、组合模块330、计算模块340)。处理器420通过运行存储在存储器410中的软件程序、指令以及模块,从而执行设备/终端/设备的多种功能应用以及数据处理,即实现上述方法。

其中,处理器420设置为运行存储在存储器410中的计算机程序,实现如下步骤:

获取神经网络模型中的多个神经网络算子;

根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;

将所述融合后的神经网络算子组合为计算指令;

使用计算引擎对所述计算指令进行计算。

在一实施例中,本申请实施例所提供的一种计算机设备,其计算机程序不限于如上的方法操作,还可以执行本申请任意实施例所提供的方法。

存储器410可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器410可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器410可包括相对于处理器420远程设置的存储器,这些远程存储器可以通过网络连接至设备/终端/设备。上述网络的实例包括互联网、企业内部网、局域网、移动通信网及其组合。

本申请实施例中提供的技术方案通过获取神经网络模型中的多个神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;使用计算引擎对所述计算指令进行计算,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

实施例五

本申请实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行上述方法,该方法包括:

获取神经网络模型中的多个神经网络算子;

根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;

将所述融合后的神经网络算子组合为计算指令;

使用计算引擎对所述计算指令进行计算。

本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本申请任意实施例所提供的方法。

本申请实施例的计算机可读存储介质,可以采用一个或多个计算机可读的介质的组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者以上的组合。计算机可读存储介质包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)、可擦式可编程只读存储器(erasableprogrammableread-onlymemory,eprom)或闪存、光纤、便携式紧凑磁盘只读存储器(compactdiscreadonlymemory,cd-rom)、光存储器件、磁存储器件、或者上述合适的组合。在本文件中,计算机可读存储介质可以是多种包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括电磁信号、光信号或上述合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

存储介质上包含的程序代码可以用适当的介质传输,包括无线、电线、光缆、射频(radiofrequency,rf)等等,或者上述合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或终端上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(localareanetwork,lan)或广域网(wideareanetwork,wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

本申请实施例提供的存储介质通过获取神经网络模型中的多个神经网络算子;根据预设规则对所述多个神经网络算子进行融合得到融合后的神经网络算子;将所述融合后的神经网络算子组合为计算指令;使用计算引擎对所述计算指令进行计算,加快了计算流程,解决了相关技术中无法快速实现数据流计算的问题,实现了使算法指令到达驱动程序之后把多个算子解析成一次数据流过程,多个数据流过程整体实现一个神经网络的数据流,使得数据流速度能够达到最高的效率。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1