本申请实施例涉及神经网络领域,涉及但不限于一种计算阵列、计算方法、装置及设备。
背景技术:
1、深度卷积神经网络(convolutional neural networks,cnn)计算中卷积计算占据着所有计算的70%左右的计算量。卷积计算需要大量的数据搬运过程,而数据搬运带来的时间和能耗开销很大,卷积计算存在着大量的数据复用的特点,设计的卷积计算单元阵列(mac阵列),需要充分利用卷积计算的数据复用过程,降低卷积计算过程的数据搬运量,从而减小时间和能耗的开销,提高mac阵列的能效比。
2、现有技术的计算单元(processing element,pe)阵列在平面上展开,不支持多通道输入特征图的同时卷积计算,而是采用分时导入不同通道的输入特征图完成卷积计算,所以在多通道支持上效率不高,影响吞吐量。
技术实现思路
1、有鉴于此,本申请实施例提供一种计算阵列、计算方法、装置及设备。
2、本申请实施例的技术方案是这样实现的:
3、第一方面,本申请实施例提供一种计算阵列,所述计算阵列包括:
4、沿第一方向、第二方向、第三方向阵列设置所述多个计算单元;
5、所述第一方向,与输入所述计算阵列的特征图数据的宽度方向对应;
6、所述第二方向,与输入所述计算阵列的特征图数据的高度方向对应;
7、所述第三方向,与输入所述计算阵列的特征图数据的通道方向对应。
8、第二方面,本申请实施例提供一种计算方法,所述方法由计算阵列执行,所述方法包括:
9、获取特征图数据和权重参数;
10、将所述特征图数据和所述权重参数输入所述计算阵列进行卷积运算,得到计算结果,其中,所述计算阵列包括:沿第一方向、第二方向、第三方向阵列设置所述多个计算单元;所述第一方向,与输入所述计算阵列的特征图数据的宽度方向对应;所述第二方向,与输入所述计算阵列的特征图数据的高度方向对应;所述第三方向,与输入所述计算阵列的特征图数据的通道方向对应。
11、第三方面,本申请实施例提供一种计算装置,所述装置包括:
12、获取模块,用于获取特征图数据和权重参数;
13、计算模块,用于将所述特征图数据和所述权重参数输入所述计算阵列进行卷积运算,得到计算结果,其中,所述计算阵列包括:沿第一方向、第二方向、第三方向阵列设置所述多个计算单元;所述第一方向,与输入所述计算阵列的特征图数据的宽度方向对应;所述第二方向,与输入所述计算阵列的特征图数据的高度方向对应;所述第三方向,与输入所述计算阵列的特征图数据的通道方向对应。
14、第四方面,本申请实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法。
15、第五方面,本申请实施例提供一种存储介质,存储有可执行指令,用于处理器执行时,实现上述方法。
16、第六方面,本申请实施例提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时,实现上述方法中的步骤。
17、本申请实施例中,计算阵列包括:沿第一方向、第二方向、第三方向阵列设置所述多个计算单元;所述第一方向,与输入所述计算阵列的特征图数据的宽度方向对应;所述第二方向,与输入所述计算阵列的特征图数据的高度方向对应;所述第三方向,与输入所述计算阵列的特征图数据的通道方向对应。这样,在第三方向设置计算单元,可以实现将待计算的特征图数据和权重参数基于通道方向并行加载至第三方向设置的计算单元内,有效减小计算时间和能耗的开销,提高计算阵列的能效比。
1.一种计算阵列,所述计算阵列包括:
2.如权利要求1所述的计算阵列,
3.如权利要求2所述的计算阵列,
4.如权利要求1所述的计算阵列,
5.如权利要求1所述的计算阵列,所述计算阵列还包括:
6.一种计算方法,所述方法由计算阵列执行,所述方法包括:
7.如权利要求6所述的方法,所述将所述特征图数据和所述权重参数输入所述计算阵列进行卷积运算,得到计算结果,包括:
8.如权利要求7所述的方法,所述将k组所述特征图数据和权重参数,并行加载至所述计算阵列设置于所述第三方向的k个二维计算子阵列,包括:
9.一种计算装置,所述装置包括:
10.一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求6至8任一项所述方法中的步骤。
