用于相关计算中减少计算量的运行时间预测结果制造技术

技术编号:38368523 阅读:13 留言:0更新日期:2023-08-05 17:33
本发明专利技术公开了与减少执行人工神经网络(ANN)所需的计算量相关的方法和系统。所公开的方法包括:生成数据集的概要,该概要是复合计算的输入;使用概要执行简化复合计算,以产生简化的输出;以及使用简化输出执行第二简化复合计算,以产生作为预测结果的第二简化输出。第二简化复合计算是第二复合计算的简化。复合计算是有向图的复杂计算的一部分。第二复合计算取决于有向图中的复合计算。该方法还包括在执行复杂计算的同时,抑制来自第二复合计算的分量计算集合。基于预测结果选择进行抑制的分量计算集合。的分量计算集合。的分量计算集合。

【技术实现步骤摘要】
用于相关计算中减少计算量的运行时间预测结果

技术介绍

[0001]机器智能系统代表了当代计算最复杂和能量最密集的计算应用之一。由于人工神经网络(ANN)代表了目前使用的大部分机器智能系统,因此已经投入了大量的研究和开发,以降低ANN的执行能耗。ANN接收输入张量,使用输入张量和一组网络张量进行计算,并产生输出张量。输出张量表示网络响应输入而产生的推断。例如,如果ANN是图像分类器,则输入可以是猫的图像的编码,输出向量可以是指示图像的主题是猫的推断。这些系统如此渴求资源的原因是它们所操作的数据结构通常非常大,并且必须在每个数据结构上执行的离散原始计算的数量同样巨大。
[0002]机器智能系统在所需的计算量和为执行这些计算而必须在系统的存储器和计算区域之间移动的大型数据结构两方面都表现出挑战性的环境。标准ANN的网络数据通常包括数十亿个离散数据项。基于所涉及的ANN类型,网络数据可以包括权重向量、过滤向量和各种其他类型的数据。网络数据定义了ANN,并确定对于给定的输入将提供什么输出。网络数据通常被组织成层,每层的输出作为下一层的输入。这使得ANN难以并行化,因为每一层的计算都取决于每一个先前层的计算,并且通常在先前层完全执行之前不能开始。在传统的ANN中,各层是完全连接的,这要求输入向量的每个元素都参与权重向量的每个元素的计算。所涉及的计算量非常大。此外,ANN的输入数据、ANN的网络数据以及通过执行ANN的一层而产生的用于ANN的下一层的输入的执行数据都需要保存在存储器中,直到它们用于下一层的计算。
[0003]机器智能领域中的发展中的研究领域涉及可减少从ANN生成推断所需的计算量,同时仍保持ANN完全执行的保真度的方法。该领域中的方法包括基于各种因素在执行ANN时跳过ANN执行中的特定计算。例如,特定的方法包括“辅助层”,它可以根据ANN的输入数据减少ANN执行期间的计算量。另外的方法包括在执行之前通过精简网络执行所不需要的网络数据来修改ANN,从而产生不同的、修改的ANN,该ANN可以用较少的计算量来执行。这些方法通常被称为诸如“删除(drop out)”和“精简(pruning)”之类的术语,并且是在ANN的初始训练阶段完成的,因为正在学习给定网络的适当网络数据。

技术实现思路

[0004]本文公开了与人工神经网络(ANN)领域相关的方法和系统。所公开的方法和系统包括用于减少执行给定的ANN所需的计算量的方法。ANN的执行可能需要执行至少一个复合计算。所公开的方法和系统包括神经网络加速器或用于执行ANN的其他计算设备,其载入有经过训练的ANN,并且降低了该经过训练的ANN的执行的计算复杂度,同时保持了对ANN的完全执行的保真度。通过抑制必须作为ANN执行的一部分来执行的一个或多个复合计算的分量计算(component computation),可以降低ANN执行的计算复杂度。
[0005]在本专利技术的特定实施例中,提供了用于减少ANN执行中的计算的方法,其中该方法的所有步骤均在ANN执行期间的运行时间内进行。这些方法包括执行简化复合计算来产生预测结果(predictor)。简化复合计算可以是复合计算的简化,并且复合计算可以是执行
ANN所需的复杂计算的一部分。预测结果指示特定计算的显著性(salience),并且可以用于在复杂计算的执行期间抑制不太显著的计算。预测结果可以在复合计算的超过一层的下游生成,并且当应用于抑制上游计算时,可以显著减少计算,因为大多数ANN具有若干个上游计算,其效果在ANN的下游部分收敛。由此,所得到的计算量的减少被放大,并基于对ANN的特定输入来确定,以产生被严格地调整以适应ANN的给定执行的计算量的减少。
[0006]在本专利技术的特定实施例中,提供了一种计算机实施方法。该方法在有向图的执行期间进行。该方法包括生成第一数据集的第一概要(summary)。第一数据集是第一复合计算的输入。该方法还包括使用第一概要执行第一简化复合计算,以产生第一简化输出。第一简化复合计算是第一复合计算的简化。该方法还包括使用第一简化输出执行第二简化复合计算,以产生第二简化输出。第二简化输出是预测结果。第二简化复合计算是第二复合计算的简化。第一复合计算和第二复合计算都是有向图的复杂计算的一部分。第二复合计算取决于有向图中的第一复合计算。该方法还包括在执行复杂计算的同时,抑制来自第二复合计算的分量计算集合。基于预测结果选择来自第二复合计算的分量计算集合以进行抑制。
[0007]在本专利技术的特定实施例中,提供了一种处理核心。处理核心包括处理器和一个或多个存储指令的计算机可读介质,当处理器执行指令时,使得处理核心:生成第一数据集的第一概要,其中第一数据集是第一复合计算的输入;使用第一概要执行第一简化复合计算,以产生第一简化输出,其中第一简化复合计算是第一复合计算的简化;使用第一简化输出执行第二简化复合计算,以产生第二简化输出,其中第二简化输出是预测结果,其中第二简化复合计算是第二复合计算的简化,其中第一复合计算和第二复合计算都是有向图的复杂计算的一部分,并且其中第二复合计算取决于有向图中的第一复合计算;以及在执行复杂计算时,抑制来自第二复合计算的分量计算集合,其中基于预测结果选择来自第二复合计算的分量计算集合以进行抑制。
[0008]在本专利技术的特定实施例中,提供了一种系统。该系统包括用于生成第一数据集的第一概要的装置,其中第一数据集是第一复合计算的输入。该系统还包括用于使用第一概要执行第一简化复合计算以产生第一简化输出的装置,其中第一简化复合计算是第一复合计算的简化。该系统还包括用于使用第一简化输出执行第二简化复合计算以产生第二简化输出的装置,其中第二简化输出是预测结果,其中第二简化复合计算是第二复合计算的简化;其中第一复合计算和第二复合计算都是有向图的复杂计算的一部分;并且其中第二复合计算取决于有向图中的第一复合计算。该系统还包括用于在执行复杂计算的同时抑制来自第二复合计算的分量计算集合的装置,其中来自第二复合计算的分量计算集合是基于预测结果选择以进行抑制。
附图说明
[0009]图1示出了根据本文公开的本专利技术的具体实施例的一组方法流程图;
[0010]图2示出了根据相关技术执行的复杂计算的示例;
[0011]图3示出了根据本文公开的本专利技术的具体实施例的已生成概要的简化复杂计算的示例;
[0012]图4示出了根据本文公开的本专利技术的具体实施例的基于预测结果的抑制计算的非限制性示例;
[0013]图5示出了根据本文公开的本专利技术的具体实施例的基于预测结果可以简化复合计算链中各种复合计算的实现的进一步详细示例;
[0014]图6示出了根据本文公开的本专利技术的具体实施例的概要化了附加数据集的示例;
[0015]图7示出了根据本文公开的本专利技术的具体实施例的对复合计算的多个输入进行概要化的示例;
[0016]图8示出了根据本文公开的本专利技术的具体实施例的系统的方框图;
[0017]图9示出了根据本文公开的本专利技术的具体实施例的通过自注意力网络的形式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在有向图的执行期间进行的计算机实施方法,包括:生成第一数据集的第一概要,其中所述第一数据集是第一复合计算的输入;使用所述第一概要执行第一简化复合计算以产生第一简化输出,其中所述第一简化复合计算是所述第一复合计算的简化;使用所述第一简化输出执行第二简化复合计算以产生第二简化输出,其中所述第二简化输出是预测结果,其中所述第二简化复合计算是第二复合计算的简化;其中第一复合计算和第二复合计算都是有向图的复杂计算的一部分;并且其中所述第二复合计算取决于有向图中的所述第一复合计算;和在执行所述复杂计算时抑制来自所述第二复合计算的分量计算集合,其中基于所述预测结果选择来自所述第二复合计算的分量计算集合以进行抑制。2.根据权利要求1所述的计算机实施方法,进一步包括:生成第三数据集的第三概要,其中所述第三数据集是第三复合计算的输入;使用所述第三概要执行第三简化复合计算以产生第三简化输出,其中所述第三简化复合计算是所述第三复合计算的简化;其中使用所述第三简化输出执行第二简化复合计算;其中所述第一复合计算、所述第三复合计算和所述第二复合计算都是有向图的复杂计算的一部分;和其中所述第二复合计算取决于有向图中的所述第三复合计算。3.根据权利要求2所述的计算机实施方法,其中:所述第一复合计算是第一矩阵乘法;所述第三复合计算是第三矩阵乘法;所述第二复合计算是第二矩阵乘法;和所述第二复合计算取决于所述第一复合计算和所述第三复合计算,因为所述第一复合计算的第一输出和所述第三复合计算的第三输出都是所述第二复合计算的输入。4.根据权利要求3所述的计算机实施方法,其中:所述第一矩阵乘法是第一有向图数据集和第一执行数据集的乘法,以产生第一输出矩阵;所述第三矩阵乘法是第三有向图数据集和第三执行数据集的乘法,以产生第三输出矩阵;和所述第二矩阵乘法是所述第一输出矩阵和所述第三输出矩阵的乘法。5.根据权利要求2所述的计算机实施方法,其中:对所述第一数据集使用平均池化操作,生成所述第一数据集的所述第一概要;和对所述第三数据集使用平均池化操作,生成所述第三数据集的所述第三概要。6.根据权利要求2所述的计算机实施方法,其中:所述第一概要小于或等于所述第一数据集大小的四分之一;和所述第三概要小于或等于所述第三数据集大小的四分之一。7.根据权利要求2所述的计算机实施方法,其中:所述有向图是注意力网络;所述第一数据集是右键矩阵和左键矩阵之一;
所述第三数据集是右查询矩阵和左查询矩阵之一;所述第一复合计算是键矩阵乘法;所述第三复合计算是查询矩阵乘法。8.根据权利要求2所述的计算机实施方法,进一步包括:生成第二数据集的第二概要,其中所述第二数据集是所述第一复合计算的第三输入,并且其中使用所述第二概要执行所述第一简化复合计算;和生成第四数据集的第四概要,其中所述第四数据集是所述第三复合计算的第三输入,并且其中使用所述第四概要执行所述第三简化复合计算。9.根据权利要求8所述的计算机实施方法,其中:对所述第一数据集使用平均池化操作,生成所述第一数据集的所述第一概要;对所述第三数据集使用所述平均池化操作,生成所述第三数据集的所述第三概要;对所述第二数据集使用第二平均池化操作,生成所述第二数据集的所述第二概要;和对所述第四数据集使用所述第二平均池化操作,生成所述第三数据集的所述第四概要。10.根据权利要求2所述的计算机实施方法,进一步包括:使用所述第二简化输出执行第四简化复合计算以产生第四简化输出,其中所述第四简化输出是第三预测结果,其中所述第四简化复合计算是第四复合计算的简化,其中所述第四复合计算是有向图的复杂计算的一部分,并且其中所述第四复合计算取决于有向图中的第二复合计算;和在有条件地执行所述复杂计算时抑制来自所述第四复合计算的分量计算集合,其中基于所述第三预测结果选择来自所述第四复合计算的分量计算集合以进行抑制。11.根据权利要求10所述的计算机实施方法,进一步包括:在执行所述复杂计算时抑制所述第一复合计算,其中基于所述预测结果和所述第三预测结果选择所述第一复合计算以进行抑制。12.根据权利要求1所述的计算机实施方法,进一步包括:在执行所述复杂计算时抑制来自所述第一复合计算的分量计算集合,其中基于所述预测结果选择来自所述第一复合计算的所述分量计算集合以进行抑制。13.根据权利要求1所述的计算机实施方法,其中:在执行所述复杂计算时抑制所述第一复合计算,其中基于所述预测结果选择所述第一复合计算以进行抑制。14.根据权利要求1所述的计算机实施方法,进一步包括:分析所述预测结果以找到显著部分集合;其中基于所述显著部分集合的分布来选择来自所述第二复合计算的分量计算集合。15.根据权利要求14所述的计算机实施方法,其中:所述预测结果的分析对所述预测结果的一部分的集合使用Top

K运算来寻找所述显著部分集合。16.根据权利要求15所述的计算机实施方法,其中:所述第一复合计算是第一矩阵乘法;所述显著部分集合占所述预测结果的一半;和
所述计算机实施方法还包括在有条件地执行所述复杂计算时,抑制来自所述第一复合计算的至少一半的分量计算,其中基于所述预测结果选择来自所述第一复合计算的分量计算集合以进行抑制。17.根据权利要求1所述的计算机实施方法,其中:所述有向图是注意力网络;所述第一数据集是键矩阵和查询矩阵之一;和所述第二简化复合计算使用简化值矩阵。18.一种处理核心,包括:处理器;和一个或多个存储指令的计算机可读介质,当由所述处理器执行时,所述指令使得所述处理核心:生成第一数据集的第一概要,其中所述第一数据集是第一复合计算的输入;使用所述第一概要执行第一简化复合计算以产生第一简化输出,其中所述第一简化复合计算是所述第一复...

【专利技术属性】
技术研发人员:L
申请(专利权)人:滕斯托伦特股份有限公司
类型:发明
国别省市:

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

1