操作数据的生成方法、装置及相关产品制造方法及图纸

技术编号:26971979 阅读:25 留言:0更新日期:2021-01-06 00:03
本公开涉及操作数据的生成方法、装置及相关产品,所述产品包括控制器单元,所述控制器单元包括:指令缓存单元、指令处理单元和存储队列单元;所述指令缓存单元,用于存储所述人工神经网络运算关联的计算指令;所述指令处理单元,用于对所述计算指令解析得到多个运算指令;所述存储队列单元,用于存储指令队列,该指令队列包括:按该队列的前后顺序待执行的多个运算指令或计算指令。通过以上方法,本公开可以提高相关产品在进行神经网络模型的运算时的运算效率。

【技术实现步骤摘要】
操作数据的生成方法、装置及相关产品
本公开涉及深度学习领域,尤其涉及一种操作数据的生成方法、装置及相关产品。
技术介绍
在人工智能
,神经网络算法是最近非常流行的一种机器学习算法,在各种领域中都取得了非常好的效果,比如图像识别,语音识别,自然语言处理等。随着神经网络算法的发展,算法的复杂度也越来越高,为了提高识别度,模型的规模也在逐渐增大。
技术实现思路
有鉴于此,本公开提出了一种操作数据的生成方法、装置及相关产品,能够提升深度学习算法针对相应硬件平台的性能优化效果。根据本公开的第一方面,提供了一种操作数据的生成方法,所述方法包括:接收用户指令;根据所述用户指令,触发深度学习编程库接口创建或调用操作数据,其中,所述操作数据包括张量数据和操作指令中的至少一个。根据本公开的第二方面,提供了一种操作数据的生成装置,包括:用户指令接收模块,用于接收用户指令;触发模块,用于根据所述用户指令,触发深度学习编程库接口创建或调用操作数据,其中,所述操作数据包括张量数据和操作指令中的至少一个。根据本公开的第三方面,提供了一种深度学习运算装置,所述深度学习运算装置包括如上述第二方面所述的操作数据的生成装置,所述深度学习运算装置用于完成设定的深度学习运算。根据本公开的第四方面,提供了一种组合运算装置,所述组合运算装置包括如上述第三方面所述的深度学习运算装置,通用互联接口和其他处理装置;所述深度学习运算装置与所述其他处理装置进行交互,共同完成用户指定的计算操作。根据本公开的第五方面,提供了一种深度学习芯片,所述深度学习芯片包括:如上述第二方面所述的操作数据的生成装置;或者,如上述第三方面所述的深度学习运算装置;或者,如上述第四方面所述的组合运算装置。根据本公开的第六方面,提供了一种电子设备,所述电子设备包括:如上述第二方面所述的操作数据的生成装置;或者,如上述第三方面所述的深度学习运算装置;或者,如上述第四方面所述的组合运算装置;或者,如上述第五方面所述的深度学习芯片。通过根据深度学习编程库接口接收的用户指令,创建或调用操作数据,且该操作数据可以用于后续得到深度学习算法的二进制代码,通过上述过程,可以为用户提供一种通用的编程接口,实现用户指令与机器指令之间的有效转换。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。附图说明包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。图1示出根据本公开一实施例的操作数据的生成方法的流程图。图2示出根据本公开一实施例的神经演算编程库接口的总体架构示意图。图3示出根据本公开一实施例的张量数据的属性、分类以及含义之间的对应关系图。图4示出根据本公开一实施例的张量数据与形状符号之间的对应关系图。图5示出根据本公开一实施例的NCLAPI支持的build-in操作指令图。图6示出根据本公开一实施例的精度自动选优的实现方式示意图。图7示出根据本公开一实施例的计算模型示意图。图8示出根据本公开一实施例的定制操作指令的生成原理图。图9示出根据本公开一实施例的操作融合结果示意图。图10示出根据本公开一实施例的操作融合结果示意图。图11示出根据本公开一实施例的操作融合的相关编程接口的示意图。图12示出根据本公开一实施例的创建融合操作的过程示意图。图13示出根据本公开一实施例的三层计算模型的数据流示意图。图14示出根据本公开一实施例的混合式编程模型的实现框图。图15示出根据本公开一实施例的离线模式和在线模式的区别示意图。图16示出根据本公开一实施例的离线接口的示意图。图17示出根据本公开一实施例的TensorFlow的架构图。图18示出根据本公开一实施例的NCLAPI与主流深度学习编程库接口的对比示意图。图19示出根据本公开一实施例的NCLA的整体架构示意图。图20示出根据本公开一实施例的静态操作池的实现方式示意图。图21示出根据本公开一实施例的CDUCA的架构示意图。图22示出根据本公开一实施例的原始计算图的形式。图23示出根据本公开一实施例的计算图引擎的工作流程图。图24示出根据本公开一实施例的图像分类网络内包含子结构的结构示意图。图25示出根据本公开一实施例的深度学习算法的编译方法的流程图。图26示出根据本公开一实施例的指令流水示意图。图27示出根据本公开一实施例的对模型数据进行优化的实现方式图。图28示出根据本公开一实施例的对数据拆分后优化的示意图。图29示出根据本公开一实施例的运行时系统的模块及功能示意图。图30示出根据本公开一实施例的操作数据的生成装置的框图。图31示出根据本公开一实施例的组合处理装置的框图。具体实施方式以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。深度学习编程库具有高效、易用等优点,它已经在实际生产中被大量使用。然而,现有的深度学习编程库在设计上没有很好地兼顾性能优化和编程灵活性,且缺乏统通用的理论基础作为设计指导。在性能优化上,部分编程库不支持操作融合、端到端执行、操作特例化以及离线优化,导致性能无法发挥到极致;在编程灵活性上,部分编程库不支持逐层执行以及操作参数运行时可变,导致编程库应用范围受限。由于现有的深度学习编程库在编程模型设计上没有兼顾性能优化和编程灵活性,因此亟待一种编程灵活的通用编程库接口。基于上述问题,图1示出根据本公开一实施例的操作数据的生成方法的流程图。如图所示,该方法可以包括:步骤S11,接收用户指令。步骤S12,根据用户指令,触发深度学习编程库接口创建或调用操作数据,其中,操作数据包括张量数据和操作指令中的至少一个。通过根据深度学习编程库接口接收的用户指令,创建或调用操作数据,且该操作数据可以用于后续得到深度学习算法的二进制代码,通过上述过程,可以为用户提供一种通用的编程接口,实现用户指令与机器指令之间的有效转换。上述步骤中,深度学习编程库接口的实现方式不受限定,可以根据实际情况进行灵活选择。在一种可能的实现方式中,深度学习编程库接口可以是神经演算编程库接口(NCLAPI,neurologi本文档来自技高网...

【技术保护点】
1.一种操作数据的生成方法,其特征在于,所述方法包括:/n接收用户指令;/n根据所述用户指令,触发深度学习编程库接口创建或调用操作数据,其中,所述操作数据包括张量数据和操作指令中的至少一个。/n

【技术特征摘要】
1.一种操作数据的生成方法,其特征在于,所述方法包括:
接收用户指令;
根据所述用户指令,触发深度学习编程库接口创建或调用操作数据,其中,所述操作数据包括张量数据和操作指令中的至少一个。


2.根据权利要求1所述的方法,其特征在于,根据所述用户指令,触发深度学习编程库接口创建或调用操作指令,包括:
根据所述用户指令,触发深度学习编程库接口创建或调用动态操作指令;和/或,
根据所述用户指令,触发深度学习编程库接口创建或调用静态操作指令。


3.根据权利要求2所述的方法,其特征在于,所述根据所述用户指令,触发深度学习编程库接口创建或调用动态操作指令,包括:
根据所述用户指令,触发深度学习编程库接口创建或调用特例化操作指令,其中,所述特例化操作指令通过对所述操作指令绑定输入参数后转换得到;和/或,
根据所述用户指令,触发深度学习编程库接口创建或调用融合操作指令,其中,所述融合操作指令通过对多个所述操作指令根据调用顺序进行组合得到。


4.根据权利要求3所述的方法,其特征在于,根据所述用户指令,触发深度学习编程库接口创建所述特例化操作指令,包括:
根据所述用户指令,触发深度学习编程库接口对所述操作指令绑定所有输入参数后转换,得到完全特例化操作指令;和/或,
根据所述用户指令,触发深度学习编程库接口对所述操作指令绑定N个输入参数后转换,得到部分特例化操作指令,其中,N为小于所述操作指令的输入参数数量的正整数;和/或,
根据所述用户指令,触发深度学习编程库接口对所述操作指令不绑定输入参数后直接转换,得到伪特例化操作指令。


5.根据权利要求3所述的方法,其特征在于,根据所述用户指令,触发创建所述融合操作指令,...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:安徽寒武纪信息科技有限公司
类型:发明
国别省市:安徽;34

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

1