首页> 中国专利> 一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法

一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法

摘要

本发明提出了一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法,包括:应用剪枝技术对超参数化的DNN模型进行稀疏化处理;提出一种分层稀疏编码方法LSC,通过设计元数据的编码机制来提高修剪后的DNN模型的压缩率;设计一种多过程解码机制使得无需完全解码即支持矩阵运算,节省运行内存;所述分层稀疏编码方法通过减少元数据量来最大化压缩率,包括:将压缩过程分为块层和编码层;在块层中,将稀疏矩阵划分为多个小块,然后删除零值块;在编码层中,提出了一种新颖的带标记相对索引方法SRI,来进一步编码这些非零值块;所述多过程解码机制在推断阶段加快编码矩阵的乘法。最后通过实验对比证明所提出的LSC方法相对于其他稀疏编码方法的有效性。

著录项

说明书

技术领域

本发明涉及一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法,属于机器学习领域。

背景技术

深度神经网络DNN已发展成为许多领域的最新技术,尤其是在计算机视觉,自然语言处理和音频处理领域。但是,隐藏层和神经元的大量增长消耗了相当多的硬件存储和内存带宽,这给现实应用中的许多资源受限的场景带来了严峻的挑战。特别是后摩尔时代的到来减慢了硬件更换周期。具体来说,当前DNN有两个主要瓶颈:1、与资源受限的应用平台,如自动驾驶工具,移动电话,移动机器人和增强现实AR的冲突,这些应用平台对DNN模型的能耗和计算量非常敏感,因此迫切需要一种能耗低但性能好的DNN模型。2、与诸如FPGA,定制ASIC和AI专用芯片等新加速器的冲突,它们是DNN的强大计算加速器,但对硬件存储,内存带宽和并行性也很敏感,显然,DNN有望在享受并行能力的同时减少硬件存储和内存的使用。

为了解决上述瓶颈,提出了许多压缩方法,例如剪枝和量化,采用这些有效的压缩方法可以轻松地减少训练后的DNN模型的权值数。例如,使用经典的基于量级的剪枝方法可以使目标网络的权重矩阵非常稀疏,为了存储和迁移这些稀疏权重,通常将它们分解为两种类型的数据,即非零权重和元数据,同时采用元数据表达索引信息对这些非零权重进行编码和解码,在保证可接受的最终性能时,可以通过尽可能减少非零权重的数量来实现高压缩比;然而编码非零权重需要大量的元数据,这比实际非零权重数量多几倍。

综上所述,大量的元数据是剪枝DNN压缩、存储和迁移的障碍学习压缩DNN模型权重在修剪后变得稀疏,因此近年来如何存储和迁移这些稀疏权重成为人们关注的焦点。通常,根据目标,这些研究可以分为两类:压缩率和并行计算。

大多压缩方法仅基于它们使用的编程框架采用一些经典的稀疏编码方法,例如MATLAB,TensorFlow和Pytorch将COO方法集成为默认稀疏编码方法,而Scipy采用压缩稀疏行/列,简称CSR / CSC来编码稀疏矩阵。最近提出了一些新方法,例如位掩码和相对索引,上述方法能够对稀疏模型进行编码,但它们都是难以并行实现的过程式方法。为了充分利用深度学习加速器的资源,近年来提出了一系列新颖的稀疏编码方法,包括块压缩稀疏列BCSC和嵌套位掩码NB,这些方法适用于并行化环境,但是压缩后的模型仍然消耗大量的存储和内存带宽。

上述两种方法存在的一个重大挑战是难以同时实现高压缩比和高效计算。与这些稀疏编码方法不同,本发明不仅可以使模型并行推断,而且只需要极少的元数据,从而为剪枝的深层模型带来了更高的压缩率。

发明内容

发明目的:提出一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法,以解决现有技术存在的上述问题。

技术方案:一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法,具体包括如下步骤:

步骤1、初始化并训练一个过度参数化的DNN模型;

步骤2、对模型进行剪枝,使尽可能稀疏;

步骤3、采用分层稀疏编码LSC方法来进一步压缩和编码这些稀疏权重,在块层中对于每个稀疏权值矩阵,应用块位掩码机制Block Bitmask Mechanism将稀疏矩阵划分为多个小块,将所有非零值块拉伸拼接为一个向量,扁平化矢量被送入后续编码层;

步骤4、在编码层,通过带标记相对索引SRI方法,用极有限元数据编码该扁平化矢量,执行压缩编码;

步骤5、推断阶段,利用中间解码结果来尽早启动矩阵乘法过程,实现高性能计算。

所述步骤1和步骤2的学习压缩DNN模型的一般过程如下:

步骤11、初始化并训练一个过度参数化的DNN模型;

步骤12、通过剪枝消除对预测贡献较小的权重,并重新训练该模型;

步骤13、重复剪枝和训练过程数次,最终获得的模型保持与原始模型相似但有效权重却更少的性能。

所述步骤3的分层稀疏编码LSC方法进一步为:

步骤31、采用块位掩码机制,将块层中每个稀疏权值矩阵划分为多个小块,对于每个块,如果有任何非零权重,则使用1位信号将其标记为true,否则将其标记为false,由此获得由许多1位标记组成的掩码,可以标记所有块;

步骤32、将所有这些非零块展平为一个矢量,并将展平的矢量输入编码层。

所述步骤S4的LSC方法,采用SRI方法将其编码层对扁平化的非零块执行高强度压缩,压缩和编码所有非零权重。

所述步骤S5的推断过程进一步为:

步骤51、计算树构造:计算树用于确定矩阵乘法的计算流程,首先将两个矩阵W×X的乘法分解为多个子矩阵的计算;根据块矩阵乘法的原理,将W拆分为多个子矩阵,然后将W×X转换为几个子矩阵之间的计算,每行的计算过程可以进一步转换为计算树;

步骤52、修剪计算树:修剪后的DNN的高度稀疏性导致大量的零值块,可以跳过这些零块的乘法,根据块位掩码机制对零值块的标记修剪计算树;

步骤53、SRI解码和子矩阵乘法:SRI解码过程将SRI码恢复为非零块,子矩阵乘法过程采用这些非零块来执行子矩阵乘法;这两个过程是相对独立的,一旦子矩阵乘法完成,解码的非零块将被破坏,节省存储带宽;

步骤54、中间结果集成:对子矩阵乘法的所有中间计算结果进行累积以获得最终结果且可以并行实现。

有益效果:本方法具有新颖简洁的分层稀疏编码结构,提出一种新颖的SRI方法,该方法可以用最小的空间对非零权重进行编码,本发明为提出的LSC方法设计了一种有效的解码机制,以在推理阶段加快编码矩阵的乘法;通过分析大量对比实验结果可知本发明提出的LSC方法在剪枝的DNN压缩和推断计算方面取得了可观的收益,超过领域领先水平。

附图说明

图1是分层稀疏编码LSC方法的结构图。

图2是带标记相对索引方法和传统相对索引方法对比示意图。

图3是计算树构造图。

图4是LSC方法下的矩阵乘法图。

具体实施方式

如图1所示,在改实施例中,一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法,包括通过极大地减少元数据量来最大化压缩率,利用一种新颖且有效的分层稀疏编码框架优化稀疏矩阵的编码和推断过程设计;提出一种具有极高压缩比的稀疏编码方法,其中使用LSC方法,包含两个关键层块层和编码层,在块层中,将稀疏矩阵划分为多个小块,然后删除零块,在编码层中,提出了一种新颖的SRI方法来进一步编码这些非零块;此外,本发明为LSC方法设计了一种有效的解码机制,以在推断阶段加快编码矩阵的乘法。

具体包括如下步骤:

步骤1、初始化并训练一个过度参数化的DNN模型;

步骤2、对模型进行剪枝,使尽可能稀疏;

步骤3、采用分层稀疏编码LSC方法来进一步压缩和编码这些稀疏权重,在块层中对于每个稀疏权值矩阵,应用块位掩码机制Block Bitmask Mechanism将稀疏矩阵划分为多个小块,将所有非零值块拉伸拼接为一个向量,扁平化矢量被送入后续编码层;

步骤4、在编码层,通过带标记相对索引SRI方法,用极有限元数据编码该扁平化矢量,执行压缩编码;

步骤5、推断阶段,利用中间解码结果来尽早启动矩阵乘法过程,实现高性能计算。

在进一步实施例中,所述步骤1和步骤2的学习压缩DNN模型的一般过程如下:

步骤11、初始化并训练一个过度参数化的DNN模型;

步骤12、通过剪枝消除对预测贡献小于预期值的权重,并重新训练该模型;

步骤13、重复剪枝和训练过程数次,最终获得的模型保持与原始模型相似但有效权重却更少的性能。

在进一步实施例中,所述步骤3的分层稀疏编码LSC方法进一步为:

步骤31、采用块位掩码机制,将块层中每个稀疏权值矩阵划分为多个小块,对于每个块,如果有任何非零权重,则使用1位信号将其标记为true,否则将其标记为false,由此获得由许多1位标记组成的掩码,可以标记所有块;

步骤32、将所有这些非零块展平为一个矢量,并将展平的矢量输入编码层。

在进一步实施例中,所述步骤S4的LSC方法,采用SRI方法将其编码层对扁平化的非零块执行高强度压缩,压缩和编码所有非零权重。

在进一步实施例中,所述步骤S5的推断过程进一步为:

步骤51、计算树构造:计算树用于确定矩阵乘法的计算流程,首先将两个矩阵W×X的乘法分解为多个子矩阵的计算;根据块矩阵乘法的原理,将W拆分为多个子矩阵,然后将W×X转换为几个子矩阵之间的计算,每行的计算过程可以进一步转换为计算树;

步骤52、修剪计算树:修剪后的DNN的高度稀疏性导致大量的零值块,可以跳过这些零块的乘法,根据块位掩码机制对零值块的标记修剪计算树;

步骤53、SRI解码和子矩阵乘法:SRI解码过程将SRI码恢复为非零块,子矩阵乘法过程采用这些非零块来执行子矩阵乘法;这两个过程是相对独立的,一旦子矩阵乘法完成,解码的非零块将被破坏,节省存储带宽;

步骤54、中间结果集成:对子矩阵乘法的所有中间计算结果进行累积以获得最终结果且可以并行实现。

以上详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这些等同变换均属于本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号