首页 / 专利库 / 信号处理 / 稀疏信号 / 用于混合压缩循环神经网络的稀疏矩阵乘法加速器

用于混合压缩循环神经网络的稀疏矩阵乘法加速

阅读:506发布:2020-05-12

专利汇可以提供用于混合压缩循环神经网络的稀疏矩阵乘法加速专利检索,专利查询,专利分析的服务。并且本 发明 属于集成 电路 技术领域,具体为一种用于混合压缩循环神经网络的稀疏矩阵乘法 加速 器。本加速器包括:2组乘累加单元,用于计算网络中2个不同输出通道的特征值;4个输入 存储器 ,2个列组合权重存储器,1个变长编码权重存储器和1个变长编码索引存储器,存储非规则变长编码压缩的权重与索引;2个二级累加器,用于读取输出存储器中的中间结果与乘累加单元的计算结果累加,更新输出结果;1个 解码器 ,用于将变长压缩的权重解码传输到对应的乘累加单元中。本发明利用网络中权重的稀疏性,对稀疏权重矩阵进行压缩,在保证原循环网络 精度 同时减少了权重存储空间,加快了计算速度,降低了计算功耗。,下面是用于混合压缩循环神经网络的稀疏矩阵乘法加速专利的具体信息内容。

1.一种用于混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,包括:
2组乘累加单元,用于计算循环神经网络中2个不同的输出通道的特征值;
4个输入存储器,用于存储循环神经网络中的4组输入通道的特征值;
2个列组合权重存储器,用于存储2个不同输出通道对应的列组合规则压缩后的权重矩阵;
1个变长编码权重存储器和1个变长编码索引存储器,用于存储非规则变长编码压缩的权重与索引;
2个输出存储器,用于暂存计算中的中间结果以及最终2个输出通道的最终结果;
2个二级累加器,用于读取输出存储器中的中间结果与乘累加单元的计算结果累加,更新输出结果;
1个解码器,将变长压缩的权重解码传输到对应的乘累加单元中;
所述乘累加单元,包含一个主计算单元和一个辅助计算单元;主计算单元负责计算列组合规则压缩权重对应的乘法运算,辅助计算单元负责计算变长编码非规则压缩权重对应的乘法运算,其乘法结果在主计算单元中累加,完成多个输入通道的乘累加运算。
2.根据权利要求1所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,主计算单元中的加法器与二级累加器构成本加速器的两级加法结构,不同输入通道乘累加结果在不同的周期与之前的中间结果累加,从而满足含不同数量的输入通道的循环神经网络计算要求。
3.根据权利要求2所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,权重存储器分为列组合权重存储器和变长编码权重存储器;前者用于存储列组合规则压缩后的权重;对于不满足列组合规则压缩的权重,通过变长编码进行压缩存储在后者;保证循环神经网络规则压缩后的剩余权重不被舍去,避免网络性能下降。
4.根据权利要求3所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,乘累加单元与输入存储器之间通过4选1选择器互联,构成可重构的互联网络;通过控制选择器的选择信号向乘累加单元传输压缩权重对应的输入特征值。
5.根据权利要求4所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,变长编码压缩权重经过解码器解压缩后,若解码结果为零权重,辅助计算单元关闭,降低计算功耗。
6.根据权利要求3所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,在列组合权重压缩算法中,权重矩阵含8个输入通道,4个输出通道;稀疏权重矩阵每4个输入通道分为一组,一个输出通道内每组4个输入通道裁剪后只含一个非零权重;或者稀疏权重按照2个或3个输入通道进行分组压缩。
7.根据权利要求6所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,对于列组合规则压缩剩余的权重,采用变长编码进行压缩;变长编码压缩得到一个数据向量和一个索引向量;数据向量为所有非零权重,索引向量首元素表示数据向量中非零权重的个数,其余元素表示数据向量中非零权重前零权重的个数。
8.根据权利要求7所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,对于稀疏性较低的权重矩阵,乘累加单元中的主、辅助计算单元分别计算2个不同的输入通道的乘累加运算;辅助计算单元的乘法结果流入主计算单元的加法器中完成求和运算。
9.根据权利要求8所述的混合压缩循环神经网络的稀疏矩阵乘法加速器,其特征在于,当计算压缩后的权重矩阵时,乘累加单元中的主计算单元接受来自列组合权重存储器中的压缩权重与对应输入特征值完成乘法运算;变长编码压缩的权重与索引经过解码器传入辅助计算单元,与对应输入特征值完成乘法运算;二者在主计算单元加法器中进行求和。

说明书全文

用于混合压缩循环神经网络的稀疏矩阵乘法加速

技术领域

[0001] 本发明属于集成电路技术领域,具体涉及一种用于混合压缩循环神经网络的稀疏矩阵乘法加速器。

背景技术

[0002] 得益于循环神经网络的不断发展,其被广泛应用于文本分类机器翻译、语音合成等自然语言处理任务中。循环神经网络中对应不同输出通道的权重构成权重矩阵的每一行,权重矩阵的列对应不同的输入通道。权重矩阵与输入特征向量进行矩阵乘法运算得到循环神经网络的输出结果。
[0003] 循环神经网络的权重矩阵含大量的零权重或趋向零的权重,这些权重对于最终的输出结果影响很小。传统的计算平台CPU/GPU可以加速矩阵乘法运算,但不能利用权重矩阵中的稀疏权重。稀疏权重在存储单元与计算单元之间交互,增加了计算延迟和能耗。存储稀疏权重也造成了存储单元的浪费。
[0004] 为充分利用循环神经网络中权重矩阵的稀疏性,趋向与零的权重会进行裁剪。为满足硬件加速器并行计算,往往使用规则裁剪压缩权重矩阵。对于不满足规则裁剪压缩的权重会被舍弃。如此可能造成原循环神经网络的性能下降。

发明内容

[0005] 本发明的目的在于提供一种能够压缩权重存储空间、降低计算时间和功耗的用于混合压缩循环神经网络的稀疏矩阵乘法加速器。
[0006] 本发明提供的用于混合压缩循环神经网络的稀疏矩阵乘法加速器,包括:2组乘累加单元,用于计算循环神经网络中2个不同的输出通道的特征值;
4个输入存储器,用于存储循环神经网络中的4组输入通道的特征值;
2个列组合权重存储器,用于存储2个不同输出通道对应的列组合规则压缩后的权重矩阵;
1个变长编码权重存储器和1个变长编码索引存储器,用于存储非规则变长编码压缩的权重与索引;
2个输出存储器,用于暂存计算中的中间结果以及最终2个输出通道的最终结果;
2个二级累加器,用于读取输出存储器中的中间结果与乘累加单元的计算结果累加,更新输出结果;
1个解码器,将变长压缩的权重解码传输到对应的乘累加单元中。
[0007] 所述乘累加单元,包含一个主计算单元和一个辅助计算单元。主计算单元负责计算列组合规则压缩权重对应的乘法运算,辅助计算单元负责计算变长编码非规则压缩权重对应的乘法运算,其乘法结果在主计算单元中累加,完成多个输入通道的乘累加运算。
[0008] 本发明中,主计算单元中的加法器与二级累加器构成本加速器的两级加法结构,不同输入通道乘累加结果在不同的周期与之前的中间结果累加,从而满足含不同数量的输入通道的循环神经网络计算要求。
[0009] 本发明中,权重存储器分为列组合权重存储器和变长编码权重存储器。前者存储列组合规则压缩后的权重。对于不满足列组合规则压缩的权重,可通过变长编码进行压缩存储在后者。保证循环神经网络规则压缩后的剩余权重不被舍去,避免网络性能下降。
[0010] 本发明中,乘累加单元与输入存储器之间通过4选1选择器互联,构成可重构的互联网络。通过控制选择器的选择信号向乘累加单元传输压缩权重对应的输入特征值。
[0011] 本发明中,由变长编码压缩权重经过解码器解压缩后,若解码结果为零权重,辅助计算单元关闭,降低计算功耗。
[0012] 本发明将稀疏的权重矩阵的不同输入通道进行组合得到规则压缩的权重矩阵,对不满足规则压缩的权重使用变长编码进行压缩。并用专用的矩阵乘法加速器加速压缩后的循环神经网络计算。本发明利用了循环神经网络权重矩阵的稀疏性,克服了权重裁剪压缩造成循环神经网络精度下降的问题。与CPU/GPU相比,本发明可以压缩权重所需的存储空间,同时降低计算时间和功耗。与单一规则压缩后循环网络相比,经过规则压缩与变长编码压缩后的循环神经网络精度更高。附图说明
[0013] 图1是本发明的电路框图
[0014] 图2是本发明采用的列组合规则压缩示意图。
[0015] 图3是本发明采用的变长编码示意图。

具体实施方式

[0016] 在下文中结合图示在参考实施例中更完全地描述本发明,本发明提供优选实施例,但不应该被认为仅限于在此阐述的实施例。
[0017] 实施例是一个混合压缩循环神经网络的稀疏矩阵乘法加速器。图1为其电路框图。
[0018] 所述加速器包括2组乘累加单元,4个输入存储器,2个列组合权重存储器,1个变长编码权重存储器和1个变长编码索引存储器,2个输出存储器,2个二级累加器以及变长编码解码器。
[0019] 图2是本发明所采用的列组合规则压缩示意图。权重矩阵含8个输入通道,4个输出通道。稀疏权重矩阵每4个输入通道分为一组,一个输出通道内每组4个输入通道裁剪后只含一个非零权重。稀疏权重也可以按照2个或3个输入通道进行分组压缩。
[0020] 图3是本发明所采用的变长编码示意图。对于图2列组合规则压缩剩余的权重(红色部分),采用变长编码进行压缩。变长编码压缩得到一个数据向量和一个索引向量。数据向量为所有非零权重。索引向量首元素表示数据向量中非零权重的个数,其余元素表示数据向量中非零权重前零权重的个数。
[0021] 对于稀疏性较低的权重矩阵,乘累加单元中的主、辅助计算单元分别计算2个不同的输入通道的乘累加运算。辅助计算单元的乘法结果流入主计算单元的加法器中完成求和运算。
[0022] 当计算压缩后的权重矩阵时,乘累加单元中的主计算单元接受来自列组合权重存储器中的压缩权重与对应输入特征值完成乘法运算。变长编码压缩的权重与索引经过解码器传入辅助计算单元,与对应输入特征值完成乘法运算。二者在主计算单元加法器中进行求和。
[0023] 当变长编码权重解码后结果为零时,辅助计算单元关闭以降低计算功耗。
[0024] 累加单元的结果与暂存在输出存储器的中间结果在二级累加器中进行累加,更新中间结果直到得到最后的输出特征值。
[0025] 以上通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈