一种基于动态稀疏卷积的神经网络加速推理方法和系统技术方案

技术编号:32493662 阅读:17 留言:0更新日期:2022-03-02 10:00
本申请涉及一种基于动态稀疏卷积的神经网络加速推理方法和系统。根据输入的特征图预测输出特征图中冗余计算的位置,得到稀疏的数据掩膜和通道掩膜;在训练阶段,利用动态稀疏卷积层,引导卷积层只对掩膜标记的位置进行处理,对网络进行稀疏正则化训练,提高网络的稀疏性,降低网络的冗余度,训练完成之后,在推理阶段,利用动态稀疏卷积根据输入数据动态跳过冗余位置的计算。本发明专利技术在不影响模型性能的前提下,有效减少了模型的计算量,降低了模型在推理过程中的资源占用,提高了模型的推理速度,使得模型能够在资源有限的边缘设备上运行。行。行。

【技术实现步骤摘要】
一种基于动态稀疏卷积的神经网络加速推理方法和系统


[0001]本申请涉及深度学习领域,特别是涉及一种基于动态稀疏卷积的神经网络加速推理方法和系统。

技术介绍

[0002]近年来,深度学习发展十分迅速,在计算机视觉、自然语言处理、推荐系统、机器人等领域得到了成功的应用。但随着深度神经网络的规模不断扩大,网络参数量不断增加,网络计算开销不断增大,在计算资源受限的嵌入式设备中难以运行。现有技术存在计算量大、效率低的问题。

技术实现思路

[0003]基于此,有必要针对上述技术问题,提供一种能够避免冗余计算的基于动态稀疏卷积的神经网络加速推理方法和系统。
[0004]一种基于动态稀疏卷积的神经网络加速推理方法,所述方法包括:
[0005]获取神经网络任一卷积层的输入特征图,根据所述输入特征图得到所述卷积层的数据掩膜和通道掩膜;所述数据掩膜和所述通道掩膜用于预测当前卷积层输出特征图中冗余计算的位置;
[0006]将训练数据输入所述神经网络中,将神经网络中的当前卷积层替换为动态稀疏卷积层;所述动态稀疏卷积层中包括前一卷积层的前一通道掩膜,以及当前卷积层的当前数据掩膜和当前通道掩膜;
[0007]根据所述前一卷积层的前一通道掩膜,以及当前卷积层的当前数据掩膜和当前通道掩膜,对当前卷积层的输入特征图进行处理,引导当前卷积层只对掩膜标记的位置进行处理;
[0008]对整个神经网络进行稀疏正则化训练,得到训练好的稀疏神经网络模型;
[0009]将待推理数据输入所述训练好的稀疏神经网络模型,对任一动态稀疏卷积层,根据前一卷积层的前一通道掩膜和当前卷积层的当前数据掩膜,对当前卷积层的输入特征图进行处理,动态跳过当前卷积层中的冗余计算,得到推理结果。
[0010]在其中一个实施例中,还包括:获取神经网络任一卷积层的输入特征图F
l
‑1,所述输入特征图F
l
‑1的维度为H*W*C,其中,H表示特征图的高,W表示特征图的宽,C表示特征图的通道;
[0011]将所述输入特征图F
l
‑1送入多层卷积层得到数据特征图所述数据特征图的维度为H*W*2;
[0012]获取温度参数t;
[0013]利用softmax函数计算特征图沿通道维度在温度参数t条件下的softmax分
布,得到所述卷积层的数据掩模
[0014]对所述输入特征图F
l
‑1进行全局池化,得到特征向量,所述特征向量的长度为2C;
[0015]将所述特征向量进行变形,得到通道特征图所述通道特征图的维度为C*2;
[0016]利用softmax计算特征图沿通道维度在所述温度参数t条件下的softmax分布,得到所述卷积层的通道掩模
[0017]在其中一个实施例中,还包括:利用softmax函数计算特征图沿通道维度在温度参数t条件下的softmax分布,得到所述卷积层的数据掩模为:
[0018][0019]其中,i、j、k分别为H、W和C的索引。
[0020]在其中一个实施例中,还包括:利用softmax计算特征图沿通道维度在所述温度参数t条件下的softmax分布,得到所述卷积层的通道掩模为:
[0021][0022]在其中一个实施例中,还包括:根据前一卷积层的前一通道掩膜对当前卷积层的输入特征图F
l
‑1进行处理,得到特征F
D
和F
S
;其中,F
D
为与F
l
‑1相乘得到,F
S
为与F
l
‑1相乘得到;
[0023]利用当前层卷积核,分别对特征F
D
和F
S
进行卷积操作,并将卷积结果分别乘以当前通道掩膜与当前数据掩膜的不同组合,得到特征F
D2D
,F
D2S
,F
S2D
和F
S2S
;其中,F
D2D
为卷积结果与相乘得到,F
D2S
为卷积结果与以及相乘得到,F
S2D
为卷积结果与以及相乘得到,F
S2S
为卷积结果与以及相乘得到;
[0024]将F
D2D
,F
D2S
,F
S2D
和F
S2S
相加,并通过一层ReLU层,得到当前层动态稀疏卷积的输出结果F
l

[0025]在其中一个实施例中,还包括:根据预设的损失函数对整个神经网络进行稀疏正则化训练;所述预设的损失函数为:
[0026]L=L
task
+λL
reg
[0027]其中,L为总损失函数,L
task
为所述神经网络的原损失函数,λ为正则化系数,L
reg
为惩罚损失函数,惩罚损失函数为所述神经网络中所有动态稀疏卷积层输出特征图中有效位置的比例。
[0028]在其中一个实施例中,还包括:对整个神经网络进行稀疏正则化训练,在每次进行迭代训练时,还根据以下公式对温度参数t进行调整:
[0029][0030]其中,i表示当前迭代次数,S为预设的总迭代次数,t0为预设初始值,t1为预设值终止值。
[0031]在其中一个实施例中,还包括:将待推理数据输入所述训练好的稀疏神经网络模型;
[0032]对任一动态稀疏卷积层,根据所述前一卷积层的前一通道掩膜对当前卷积层的输入特征图F
l
‑1进行切分,得到特征F
S
和F
D
;其中,F
S
是沿着F
l
‑1的通道维度,将中0对应的通道挑出,并级联在一起得到的,F
D
是沿着F
l
‑1的通道维度,将中1对应的通道挑出,并级联在一起得到的;
[0033]分别将所述特征F
S
和F
D
输入对应分支,利用动态稀疏卷积分别得到特征F
D2D
,F
D2S
,F
S2D
和F
S2S
;其中,F
D2D
计算全图位置的响应,F
D2S
,F
S2D
以及F
S2S
只计算标记的重要位置的响应;
[0034]将F
D2D
和F
S2D
、F
D2S
和F
S2S
分别相加并级联在一起,通过一层ReLU层后得到当前卷积层动态稀疏卷积的输出结果F
l

[0035]一种基于动态稀疏卷积的神经网络加速推理系统,所述系统包括:
[0036]掩膜生成模块,用于获取神经网络任一卷积层的输入特征图,根据所述输入特征图得到所述卷积层的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于动态稀疏卷积的神经网络加速推理方法,其特征在于,所述方法包括:获取神经网络任一卷积层的输入特征图,根据所述输入特征图得到所述卷积层的数据掩膜和通道掩膜;所述数据掩膜和所述通道掩膜用于预测当前卷积层输出特征图中冗余计算的位置;将训练数据输入所述神经网络中,将神经网络中的当前卷积层替换为动态稀疏卷积层;所述动态稀疏卷积层中包括前一卷积层的前一通道掩膜,以及当前卷积层的当前数据掩膜和当前通道掩膜;根据所述前一卷积层的前一通道掩膜,以及当前卷积层的当前数据掩膜和当前通道掩膜,对当前卷积层的输入特征图进行处理,引导当前卷积层只对掩膜标记的位置进行处理;对整个神经网络进行稀疏正则化训练,得到训练好的稀疏神经网络模型;将待推理数据输入所述训练好的稀疏神经网络模型,对任一动态稀疏卷积层,根据前一卷积层的前一通道掩膜和当前卷积层的当前数据掩膜,对当前卷积层的输入特征图进行处理,动态跳过当前卷积层中的冗余计算,得到推理结果。2.根据权利要求1所述的方法,其特征在于,获取神经网络任一卷积层的输入特征图,根据所述输入特征图得到所述卷积层的数据掩膜和通道掩膜,包括:获取神经网络任一卷积层的输入特征图F
l
‑1,所述输入特征图F
l
‑1的维度为H*W*C,其中,H表示特征图的高,W表示特征图的宽,C表示特征图的通道;将所述输入特征图F
l
‑1输入多层卷积层得到数据特征图所述数据特征图的维度为H*W*2;获取温度参数t;利用softmax函数计算特征图沿通道维度在温度参数t条件下的softmax分布,得到所述卷积层的数据掩模对所述输入特征图F
l
‑1进行全局池化,得到特征向量,所述特征向量的长度为2C;将所述特征向量进行变形,得到通道特征图所述通道特征图的维度为C*2;利用softmax计算特征图沿通道维度在所述温度参数t条件下的softmax分布,得到所述卷积层的通道掩模3.根据权利要求2所述的方法,其特征在于,利用softmax函数计算特征图沿通道维度在温度参数t条件下的softmax分布,得到所述卷积层的数据掩模包括:利用softmax函数计算特征图沿通道维度在温度参数t条件下的softmax分布,得到所述卷积层的数据掩模为:
其中,i、j、k分别为H、W和C的索引。4.根据权利要求3所述的方法,其特征在于,利用softmax计算特征图沿通道维度在所述温度参数t条件下的softmax分布,得到所述卷积层的通道掩模包括:利用softmax计算特征图沿通道维度在所述温度参数t条件下的softmax分布,得到所述卷积层的通道掩模为:5.根据权利要求4所述的方法,其特征在于,根据所述前一卷积层的前一通道掩膜,以及当前卷积层的当前数据掩膜和当前通道掩膜,对当前卷积层的输入特征图进行处理,引导当前卷积层只对掩膜标记的位置进行处理,包括:根据所述前一卷积层的前一通道掩膜对当前卷积层的输入特征图F
l
‑1进行处理,得到特征F
D
和F
S
;其中,F
D
为与F
l
‑1相乘得到,F
S
为为与F
l
‑1相乘得到;利用当前层卷积核,分别对特征F
D
和F
S
进行卷积操作,并将卷积结果分别乘以当前通道掩膜与当前数据掩膜的不同组合,得到特征F
D2D
,F
D2S
,F
S2D
和F
S2S
;其中,F
D2D
为卷积结果与相乘得到,F
D2S
为卷积结果与以及相乘得到,F
S2D
为卷积结果与以及相乘得到,F
S2S
为卷积结果与以及相乘得到;将F
D2D
,F
D2S
,F
S2D
和F
S2S
相加,并通过一层ReLU层,得到当前层动态稀疏卷积的输出结果F
l
。6.根据权利要求5所述的方法,其特征在于,对整个神经网络进行稀疏正则化训练,包括:根据预设的损失函数对整个神经网络进行稀疏正则化训练;所述预设的损失...

【专利技术属性】
技术研发人员:安玮王龙光林再平郭裕兰李淼王应谦应昕怡
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

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

1