全文摘要
本发明实施例公开了一种多维张量的规约计算方法、装置、设备及介质。该方法包括:获取待规约计算的多维张量,以及多维张量的待规约维度信息和非待规约维度信息;根据待规约维度信息和非待规约维度信息,对多维张量的维度信息进行预处理,并根据预处理结果将多维张量调整为二维张量形式;其中,二维张量的高维度为待规约维度,低维度为非待规约维度;根据二维张量低维度信息,将二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;将各个硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与多维张量对应的规约计算结果。上述技术方案提高了对多维张量的规约计算速度。
主设计要求
1.一种多维张量的规约计算方法,其特征在于,包括:获取待规约计算的多维张量,以及与所述多维张量的对应的待规约维度信息和非待规约维度信息;根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式;其中,所述二维张量的高维度为待规约维度,低维度为非待规约维度;所述对所述多维张量的维度信息进行预处理,包括:将所述多维张量的各个待规约维度和各个非待规约维度分别进行合并处理,以将所述多维张量调整为所述二维张量形式;根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;将各个所述硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与所述多维张量对应的规约计算结果。
设计方案
1.一种多维张量的规约计算方法,其特征在于,包括:
获取待规约计算的多维张量,以及与所述多维张量的对应的待规约维度信息和非待规约维度信息;
根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式;其中,所述二维张量的高维度为待规约维度,低维度为非待规约维度;所述对所述多维张量的维度信息进行预处理,包括:将所述多维张量的各个待规约维度和各个非待规约维度分别进行合并处理,以将所述多维张量调整为所述二维张量形式;
根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;
将各个所述硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与所述多维张量对应的规约计算结果。
2.根据权利要求1所述的方法,其特征在于,根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,包括:
根据所述二维张量低维度信息以及硬件计算单元的可用数量,将所述二维张量平均划分成至少两块数据区域,其中,所述数据区域的数量与硬件计算单元的可用数量匹配。
3.根据权利要求2所述的方法,根据所述二维张量低维度信息以及可用的硬件计算单元的数量,将所述二维张量平均划分成至少两块数据区域,包括:
将所述二维张量变换为多个等长输入向量,其中,所述等长输入向量的数量为所述二维张量高维度值;
获取硬件计算单元的可用数量,以及所述等长输入向量的元素数量,并根据所述元素数量和所述可用数量的商值,对所述多个等长输入向量进行平均数据区域划分,其中,每个数据区域中包括的等长输入子向量的数量为所述二维张量高维度值。
4.根据权利要求3所述的方法,其特征在于,调用匹配数量的硬件计算单元分别对每块区域进行规约计算,包括:
调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;其中,所述硬件计算单元采用硬件向量运算指令实现对每块数据区域进行规约计算。
5.根据权利要求4所述的方法,其特征在于,所述硬件计算单元采用硬件向量运算指令实现对每块数据区域进行规约计算,包括:
所述硬件计算单元将多个等长输入子向量中的两两等长输入子向量进行规约计算,得到多个规约计算子结果向量,再将多个规约计算子结果向量中的两两规约计算子结果向量进行规约计算,直至得到与数据区域对应的规约计算子区域向量。
6.根据权利要求1所述的方法,其特征在于,根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式,包括:
将所述多维张量的各个待规约维度顺序调整至所述多维张量的高维度处,将所述多维张量的各个非待规约维度顺序调整至所述多维张量的低维度处;
将各个待规约维度的乘积作为所述二维张量的高维度,将所述各个非待规约维度的乘积作为所述二维张量的低维度;
根据所述二维张量的高维度和低维度将所述多维张量调整为二维张量形式。
7.根据权利要求6所述的方法,其特征在于,在将所述多维张量的各个待规约维度顺序调整至所述多维张量的高维度处,将所述多维张量的各个非待规约维度顺序调整至所述多维张量的低维度处之前,还包括:
将所述多维张量中相邻的待规约维度进行待规约维度合并,将所述多维张量中相邻的非待规约维度进行非待规约维度合并,以将所述多维向量整理为待规约维度和非待规约维度相邻的形式。
8.一种多维张量的规约计算装置,其特征在于,包括:
张量信息获取模块,用于获取待规约计算的多维张量,以及与所述多维张量的对应的待规约维度信息和非待规约维度信息;
张量调整模块,用于根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式;其中,所述二维张量的高维度为待规约维度,低维度为非待规约维度;所述张量调整模块,具体用于根据所述待规约维度信息和非待规约维度信息,将所述多维张量的各个待规约维度和各个非待规约维度分别进行合并处理,以将所述多维张量调整为所述二维张量形式;
规约计算模块,用于根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;
规约计算结果生成模块,用于将各个所述硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与所述多维张量对应的规约计算结果。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
设计说明书
技术领域
本发明实施例涉及智能计算技术领域,尤其涉及一种多维张量的规约计算方法、装置、设备及介质。
背景技术
随着人工智能以及高性能计算的蓬勃发展,人们对计算机算力的需求也成指数级增长,同时,算力的增长速度也极大地促进了人工智能以及高性能计算的发展。
在人工智能以及高性能计算领域,规约计算是一种常用的计算模式,规约计算的运算速度直接影响系统整体的算力输出,然而,传统的规约计算方法速度较慢,已经不能满足当前急速增长的算力需求。
发明内容
本发明实施例提供一种多维张量的规约计算方法、装置、设备及介质,以提高对多维张量的规约计算速度。
第一方面,本发明实施例提供了一种多维张量的规约计算方法,包括:
获取待规约计算的多维张量,以及与所述多维张量的对应的待规约维度信息和非待规约维度信息;
根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式;其中,所述二维张量的高维度为待规约维度,低维度为非待规约维度;
根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;
将各个所述硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与所述多维张量对应的规约计算结果。
第二方面,本发明实施例还提供了一种多维张量的规约计算装置,包括:
张量信息获取模块,用于获取待规约计算的多维张量,以及与所述多维张量的对应的待规约维度信息和非待规约维度信息;
张量调整模块,用于根据所述待规约维度信息和非待规约维度信息,对所述多维张量的维度信息进行预处理,并根据预处理结果将所述多维张量调整为二维张量形式;其中,所述二维张量的高维度为待规约维度,低维度为非待规约维度;
规约计算模块,用于根据所述二维张量低维度信息,将所述二维张量划分为至少两块数据区域,并调用匹配数量的硬件计算单元分别对每块数据区域进行规约计算;
规约计算结果生成模块,用于将各个所述硬件计算单元得到的规约计算子区域向量进行顺序组合,得到与所述多维张量对应的规约计算结果。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明任意实施例所述的多维张量的规约计算方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的多维张量的规约计算方法。
本发明实施例提供的技术方案中,首先根据待规约计算的多维张量的待规约维度信息和非待规约维度信息,对多维张量的形式进行调整,调整成二维张量形式,其中,二维张量的高维度为待规约维度,低维度为非待规约维度;然后根据二维张量的低维度信息将二维张量进行数据区域划分,并调用与数据区域数量匹配的硬件单元分别对每块数据区域进行规约计算,将各个硬件单元得到的规约计算子区域向量进行顺序组合即可得到与多维张量对应的规约计算结果。由此,上述技术方案通过多个硬件计算单元并行地处理多维张量的规约计算,明显提高了对多维张量的规约计算速度。
附图说明
图1是本发明实施例一中的一种多维张量的规约计算方法的流程图;
图2是本发明实施例二中的一种多维张量的规约计算方法的流程图;
图3是本发明实施例中的一种数据区域划分的示意图;
图4是本发明实施例中的一种单个数据分区的规约计算示意图;
图5是本发明实施例三中的一种多维张量的规约计算方法的流程图;
图6是本发明实施例四中的一种多维张量的规约计算装置的结构示意图;
图7是本发明实施例五中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一提供的一种多维张量的规约计算方法的流程图,本实施例可适用于对多维张量进行规约计算的情况,该方法可以由本发明实施例提供的多维张量的规约计算装置来执行,该装置可采用软件和\/或硬件的方式实现,并一般可集成在处理器中。
如图1所示,本实施例的方法具体包括:
S110、获取待规约计算的多维张量,以及与多维张量的对应的待规约维度信息和非待规约维度信息。
多维张量,指的是具有多个维度的张量,其待规约维度是根据多维张量的具体应用预先确定的,多个维度中除了待规约维度之外的均是非待规约维度。
多维张量T<\/i>维度的一般形式为[R<\/i>1_1, R<\/i>1_2, …, R<\/i>1_nr1, U<\/i>1_1, U<\/i>1_2, …, U<\/i>1_nu1, R<\/i>2_1, R<\/i>2_2, …, R<\/i>2_nr2, U<\/i>2_1, U<\/i>2_2, …, U<\/i>2_nu2, …, R<\/i>n_1, R<\/i>n_2, …, R<\/i>n_nrn, U<\/i>n_1, U<\/i>n_2, …, U<\/i>n_nun],其中,假设维度R<\/i>1_1, R<\/i>1_2,…, R<\/i>1_nr1, R<\/i>2_1, R<\/i>2_2,…, R<\/i>2_nr2, …, R<\/i>n_1, R<\/i>n_2,…, R<\/i>n_nrn为待规约维度,U<\/i>1_1, U<\/i>1_2, …, U<\/i>1_nu1,U<\/i>2_1, U<\/i>2_2, …, U<\/i>2_nu2, …, U<\/i>n_1, U<\/i>n_2, …, U<\/i>n_nun为非待规约维度。
多维张量T<\/i>的每个维度的大小均为正整数,R<\/i>1_1为多维张量T<\/i>的最高维度,U<\/i>n_nun为多维张量T<\/i>的最低维度。
S120、根据待规约维度信息和规约维度信息,对多维张量的维度信息进行预处理,并根据预处理结果将多维张量调整为二维张量形式;其中,二维张量的高维度为待规约维度,低维度为非待规约维度。
预处理,指的是对多维矩阵的维度信息进行整理,具体可以是将多维张量的待规约维度和非待规约维度分别进行合并处理,以实现将多维张量的维度整理为二维形式,一个维度为待规约维度,一个维度为非待规约维度。例如,调整为二维张量形式后的维度为[10,20],则第一维度10是高维度,是待规约维度,第二维度20是低维度,是非待规约维度。
作为实施例一种可选的实施方式,可以将S120具体为:
将多维张量的各个待规约维度顺序调整至多维张量的高维度处,将多维张量的各个非待规约维度顺序调整至多维张量的低维度处;将各个待规约维度的乘积作为二维张量的高维度,将各个非待规约维度的乘积作为二维张量的低维度;根据所述二维张量的高维度和低维度将所述多维张量调整为二维张量形式。
依旧以多维张量T<\/i>维度是[R<\/i>1_1, R<\/i>1_2, …, R<\/i>1_nr1, U<\/i>1_1, U<\/i>1_2, …, U<\/i>1_nu1,R<\/i>2_1, R<\/i>2_2, …, R<\/i>2_nr2, U<\/i>2_1, U<\/i>2_2, …, U<\/i>2_nu2, …, R<\/i>n_1, R<\/i>n_2, …, R<\/i>n_nrn,U<\/i>n_1, U<\/i>n_2, …, U<\/i>n_nun]为例:首先,将各个待规约维度顺序调整至多维张量T<\/i>的高维度处,将各个非待规约维度顺序调整至多维张量T<\/i>的低维度处,得到[R<\/i>1_1, R<\/i>1_2, …, R<\/i>1_nr1, R<\/i>2_1, R<\/i>2_2, …, R<\/i>2_nr2, …, R<\/i>n_1, R<\/i>n_2, …, R<\/i>n_nrn, U<\/i>1_1, U<\/i>1_2, …, U<\/i>1_nu1, U<\/i>2_1, U<\/i>2_2, …, U<\/i>2_nu2, …, U<\/i>n_1, U<\/i>n_2, …, U<\/i>n_nun]。然后,将各个待规约维度的乘积作为二维张量T<\/i>的高维度,将各个非待规约维度的乘积作为二维张量的低维度,得到二维张量T<\/i>的维度是设计图
相关信息详情
申请码:申请号:CN201910704854.0
申请日:2019-08-01
公开号:CN110209503A
公开日:2019-09-06
国家:CN
国家/省市:31(上海)
授权编号:CN110209503B
授权时间:20191025
主分类号:G06F 9/50
专利分类号:G06F9/50
范畴分类:40B;
申请人:上海燧原智能科技有限公司
第一申请人:上海燧原智能科技有限公司
申请人地址:201306 上海市浦东新区南汇新城镇环湖西二路888号C楼
发明人:谢启凯
第一发明人:谢启凯
当前权利人:上海燧原智能科技有限公司
代理人:孟金喆
代理机构:11332
代理机构编号:北京品源专利代理有限公司
优先权:关键词:当前状态:审核中
类型名称:外观设计