运算方法、装置及相关产品制造方法及图纸

技术编号:21061157 阅读:48 留言:0更新日期:2019-05-08 07:31
本公开涉及一种运算方法、装置及相关产品,所述产品包括控制模块,所述控制模块包括:指令缓存子模块、指令缓存子模块和存储队列子模块;所述指令缓存子模块,用于存储所述人工神经网络运算关联的计算指令;所述指令处理子模块,用于对所述计算指令解析得到多个运算指令;所述存储队列子模块,用于存储指令队列,该指令队列包括:按该队列的前后顺序待执行的多个运算指令或计算指令。通过以上方法,本公开可以提高相关产品在进行神经网络模型的运算时的运算效率。

【技术实现步骤摘要】
运算方法、装置及相关产品
本公开涉及机器学习
,尤其涉及一种运算方法、装置及相关产品。
技术介绍
神经网络算法是最近非常流行的一种机器学习算法,在各种领域中都取得了非常好的效果,比如图像识别,语音识别,自然语言处理等。随着神经网络算法的发展,算法的复杂度也越来越高,为了提高识别度,模型的规模也在逐渐增大。用GPU和CPU处理起这些大规模的模型,要花费大量的计算时间,并且耗电量很大。在这种情况下,新的人工智能处理器被提出以提高神经网络模型的运算速度,节约运算时间,降低功耗。然而,当前对新的人工智能处理器的算法支持却远远不够。
技术实现思路
有鉴于此,本公开提出了一种运算方法,所述方法包括:在接收到人工智能运算的输入数据时,根据所述输入数据的目标参数,判断是否满足预设条件;在满足预设条件时,获取人工智能算子库中的基础算子,所述基础算子用于对所述输入数据执行相应的运算操作;根据所述基础算子形成拼接算子,所述拼接算子用于在人工智能处理器中对输入数据执行相应的拼接运算操作,以执行人工智能运算。在一种可能的实施方式中,所述目标参数包括全连接运算中的压平参数,所述压平参数用于指示在全连接运算时是否对输入数据进行类型转换处理,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述压平参数指示在全连接运算时对输入数据进行类型转换处理时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的变形算子及全连接算子,所述变形算子用于转换输入数据的数据类型,所述全连接算子用于进行全连接运算。在一种可能的实施方式中,根据所述基础算子形成拼接算子,包括:将所述变形算子作为所述全连接算子的前级算子,其中,所述拼接运算操作包括:利用所述变形算子将所述第一类型的第一输入数据转换成符合所述运算条件的第二类型的第一输入数据;利用所述全连接算子对所述第二类型的第一输入数据及接收的第二输入数据进行全连接运算,得到全连接运算结果。在一种可能的实施方式中,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述全连接算子;根据所述基础算子形成拼接算子,包括:将所述全连接算子作为所述拼接算子;所述拼接运算操作包括:利用所述全连接算子对输入数据进行全连接运算,以输出全连接运算结果。在一种可能的实施方式中,所述目标参数包括输入数据的维度参数、形状保留参数及形状一致性参数,所述维度参数用于表示输入数据的维度,所述形状保留参数用于表示是否保留输入数据的形状,所述形状一致性参数用于表示输入数据与输入标签数据的形状是否一致,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度参数显示输入数据的维度大于2、且所述形状保留参数显示需要保留输入数据的形状、且所述形状一致性参数显示输入数据与输入标签数据的形状一致时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的第一变形算子、归一化指数算子及第二变形算子,所述第一变形算子及所述第二变形算子用于对输入数据进行类型转换处理,所述归一化指数算子用于进行归一化运算。在一种可能的实施方式中,所述利用基础算子形成拼接算子,包括:将所述第一变形算子作为所述归一化指数算子的前级算子;将所述第二变形算子作为所述归一化指数算子的后级算子;其中,所述拼接运算操作包括:利用所述第一变形算子将所述第一输入数据转换为第二类型,所述第二类型的第一输入数据的维度为2;利用所述归一化指数算子对所述第二类型的第一输入数据在第二维度上进行归一化运算,以输出第二类型的输出数据;利用所述第二变形算子将第二类型的输出数据转换为第一类型的输出数据。在一种可能的实施方式中,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述归一化指数算子;根据所述基础算子形成拼接算子,包括:将所述归一化指数算子作为所述拼接算子;所述拼接运算操作包括:利用所述归一化指数算子在输入数据的最高维度上进行归一化运算。在一种可能的实施方式中,所述目标参数包括维度移除参数,所述维度移除参数用于指示是否移除输入数据中的指定维度,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度移除参数显示需要移除输入数据中的指定维度时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的维度顺序转置算子及切分算子,所述维度顺序转置算子用于对输入数据的维度顺序进行重新排列,所述切分算子用于将输入数据指定维度上进行切分处理。在一种可能的实施方式中,利用基础算子形成拼接算子,包括:将所述维度顺序转置算子作为所述切分算子的前级算子,其中,所述拼接运算操作包括:利用所述维度顺序转置算子对输入数据的维度顺序进行重新排列,以将输入数据中的指定维度转换到输入数据的最后一个维度;利用所述切分算子对重新排列后的输入数据的最后一个维度的数据进行切分,从而将输入数据切分为P个子数据,P为大于1的整数。在一种可能的实施方式中,所述利用所述切分算子对重新排列后的输入数据的最后一个维度的数据进行切分,从而将输入数据切分为P个子数据,包括:在所述重新排列后的输入数据的最后一个维度的数据的数量大于所述切分算子单次最大切分数量时,对输入数据进行多次切分,直到将输入数据切分为P个子数据。在一种可能的实施方式中,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述切分算子;根据所述基础算子形成拼接算子,包括:将所述切分算子作为所述拼接算子;所述拼接运算操作包括:利用所述切分算子对输入数据的指定维度的数据进行切分,从而将输入数据切分为M个子数据,M为大于1的整数。在一种可能的实施方式中,所述目标参数包括输入数据的维度参数,所述维度参数用于显示输入数据的维度大小,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度参数显示输入数据的维度高于一维时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的高维数组乘法算子,所述高维数组乘法算子用于对输入数据进行高维数组乘法运算,根据所述基础算子形成拼接算子,包括:将所述高维数组乘法算子作为所述拼接算子;其中,所述拼接运算操作包括:利用所述高维数组乘法算子对输入数据进行高维数组乘法运算,得到运算结果。在一种可能的实施方式中,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述矩阵乘法算子,所述矩阵乘法算子用于对输入数据进行矩阵乘法运算;根据所述基础算子形成拼接算子,包括:将所述矩阵乘法算子作为所述拼接算子;其中,所述拼接运算操作包括:利用所述矩阵乘法算子对输入数据进行矩阵乘法运算,得到运算结果。在一种可能的实施方式中,所述拼接算子应用于软件调用层级中的应用程序层,所述深度学习算子库位于软件调用层级中的算子库层,所述人工智能处理器位于软件调用层级中的芯片层。根据本公开的另一方面,提出了一种运算装置,所述装置包括:判断模块,用于在接收到人工智能运算的输入数据时,根据所述输入数据的目标参数,判断是否满足预设条件;获取模块,连接于所述判断模块,用于在满足预设条件时,获取人工智能算子库中的本文档来自技高网...

【技术保护点】
1.一种运算方法,其特征在于,所述方法包括:在接收到人工智能运算的输入数据时,根据所述输入数据的目标参数,判断是否满足预设条件;在满足预设条件时,获取人工智能算子库中的基础算子,所述基础算子用于对所述输入数据执行相应的运算操作;根据所述基础算子形成拼接算子,所述拼接算子用于在人工智能处理器中对输入数据执行相应的拼接运算操作,以执行人工智能运算。

【技术特征摘要】
1.一种运算方法,其特征在于,所述方法包括:在接收到人工智能运算的输入数据时,根据所述输入数据的目标参数,判断是否满足预设条件;在满足预设条件时,获取人工智能算子库中的基础算子,所述基础算子用于对所述输入数据执行相应的运算操作;根据所述基础算子形成拼接算子,所述拼接算子用于在人工智能处理器中对输入数据执行相应的拼接运算操作,以执行人工智能运算。2.根据权利要求1所述的方法,其特征在于,所述目标参数包括全连接运算中的压平参数,所述压平参数用于指示在全连接运算时是否对输入数据进行类型转换处理,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述压平参数指示在全连接运算时对输入数据进行类型转换处理时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的变形算子及全连接算子,所述变形算子用于转换输入数据的数据类型,所述全连接算子用于进行全连接运算。3.根据权利要求2所述的方法,其特征在于,根据所述基础算子形成拼接算子,包括:将所述变形算子作为所述全连接算子的前级算子,其中,所述拼接运算操作包括:利用所述变形算子将所述第一类型的第一输入数据转换成符合所述运算条件的第二类型的第一输入数据;利用所述全连接算子对所述第二类型的第一输入数据及接收的第二输入数据进行全连接运算,得到全连接运算结果。4.根据权利要求2所述的方法,其特征在于,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述全连接算子;根据所述基础算子形成拼接算子,包括:将所述全连接算子作为所述拼接算子;所述拼接运算操作包括:利用所述全连接算子对输入数据进行全连接运算,以输出全连接运算结果。5.根据权利要求1所述的方法,其特征在于,所述目标参数包括输入数据的维度参数、形状保留参数及形状一致性参数,所述维度参数用于表示输入数据的维度,所述形状保留参数用于表示是否保留输入数据的形状,所述形状一致性参数用于表示输入数据与输入标签数据的形状是否一致,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度参数显示输入数据的维度大于2、且所述形状保留参数显示需要保留输入数据的形状、且所述形状一致性参数显示输入数据与输入标签数据的形状一致时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的第一变形算子、归一化指数算子及第二变形算子,所述第一变形算子及所述第二变形算子用于对输入数据进行类型转换处理,所述归一化指数算子用于进行归一化运算。6.根据权利要求5所述的方法,其特征在于,所述利用基础算子形成拼接算子,包括:将所述第一变形算子作为所述归一化指数算子的前级算子;将所述第二变形算子作为所述归一化指数算子的后级算子;其中,所述拼接运算操作包括:利用所述第一变形算子将所述第一输入数据转换为第二类型,所述第二类型的第一输入数据的维度为2;利用所述归一化指数算子对所述第二类型的第一输入数据在第二维度上进行归一化运算,以输出第二类型的输出数据;利用所述第二变形算子将第二类型的输出数据转换为第一类型的输出数据。7.根据权利要求5所述的方法,其特征在于,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述归一化指数算子;根据所述基础算子形成拼接算子,包括:将所述归一化指数算子作为所述拼接算子;所述拼接运算操作包括:利用所述归一化指数算子在输入数据的最高维度上进行归一化运算。8.根据权利要求1所述的方法,其特征在于,所述目标参数包括维度移除参数,所述维度移除参数用于指示是否移除输入数据中的指定维度,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度移除参数显示需要移除输入数据中的指定维度时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的维度顺序转置算子及切分算子,所述维度顺序转置算子用于对输入数据的维度顺序进行重新排列,所述切分算子用于将输入数据指定维度上进行切分处理。9.根据权利要求8所述的方法,其特征在于,利用基础算子形成拼接算子,包括:将所述维度顺序转置算子作为所述切分算子的前级算子,其中,所述拼接运算操作包括:利用所述维度顺序转置算子对输入数据的维度顺序进行重新排列,以将输入数据中的指定维度转换到输入数据的最后一个维度;利用所述切分算子对重新排列后的输入数据的最后一个维度的数据进行切分,从而将输入数据切分为P个子数据,P为大于1的整数。10.根据权利要求9所述的方法,其特征在于,所述利用所述切分算子对重新排列后的输入数据的最后一个维度的数据进行切分,从而将输入数据切分为P个子数据,包括:在所述重新排列后的输入数据的最后一个维度的数据的数量大于所述切分算子单次最大切分数量时,对输入数据进行多次切分,直到将输入数据切分为P个子数据。11.根据权利要求8所述的方法,其特征在于,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述切分算子;根据所述基础算子形成拼接算子,包括:将所述切分算子作为所述拼接算子;所述拼接运算操作包括:利用所述切分算子对输入数据的指定维度的数据进行切分,从而将输入数据切分为M个子数据,M为大于1的整数。12.根据权利要求1所述的方法,其特征在于,所述目标参数包括输入数据的维度参数,所述维度参数用于显示输入数据的维度大小,根据所述输入数据的目标参数,判断是否满足预设条件,包括:在所述预设条件为所述维度参数显示输入数据的维度高于一维时,判断满足预设条件,在满足预设条件时,获取人工智能算子库中的基础算子,包括:获取人工智能算子库中的高维数组乘法算子,所述高维数组乘法算子用于对输入数据进行高维数组乘法运算,根据所述基础算子形成拼接算子,包括:将所述高维数组乘法算子作为所述拼接算子;其中,所述拼接运算操作包括:利用所述高维数组乘法算子对输入数据进行高维数组乘法运算,得到运算结果。13.根据权利要求12所述的方法,其特征在于,在不满足预设条件时,获取人工智能算子库中的基础算子,包括:获取所述矩阵乘法算子,所述矩阵乘法算子用于对输入数据进行矩阵乘法运算;根据所述基础算子形成拼接算子,包括:将所述矩阵乘法算子作为所述拼接算子;其中,所述拼接运算操作包括:利用所述矩阵乘法算子对输入数据进行矩阵乘法运算,得到运算结果。14.根据权利要求1所述的方法,其特征在于,所述拼接算子应用于软件调用层级中的应用程序层,所述深度学习算子库位于软件调用层级中的算子库层,所述人工智能处理器位于软件调用层级中的芯片层。15.一种运算装置,其特征在于,所述装置包括:判断模块,用于在接收到人工智能运算的输入数据时,根据所述输入数据的目标参数,判断是否满足预设条件;获取模块,连接于所述判断模块,用于在满足预设条件时,获取人工智能算子库中的基础算子,所述基础算子用于对所述输入数据执行相应的运算操作;运算模块,连接于所述获取模块,用于根据所述基础算子形成拼接算子,所述拼接算子用于在人工智能处理器中对输入数据执行相应的拼接运算操作,以执行人工智能运算。16.根据权利要求15所述的装置,其特征在于,所述目标参数包括全连接运算中的压平参数,所述压平参数用于指示在全连接运算时是否对输入数据进行类型转换处理,所述判断模块包括第一判断子模块,用于在所述压平参数指示在全连接运算时对输入数据进行类型转换处理时,判断满足预设条件,所述获取模块包括第一获取子模块,用于获取人工智能算子库中的变形算子及全连接算子,所述变形算子用于转换输入数据的数据类型,所述全连接算子用于进行全连接运算。17.根据权利要求16所述的装置,其特征在于...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:北京中科寒武纪科技有限公司
类型:发明
国别省市:北京,11

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

1