一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种硬件加速感知的神经网络通道剪枝方法与流程

2022-02-21 06:27:47 来源:中国专利 TAG:


1.本发明涉及嵌入式的数据智能处理以及人工智能技术领域;尤其涉及一种硬件加速感知的神经网络通道剪枝方法。


背景技术:

2.近年来,深度学习被广泛应用于图像和语音等数据处理领域中,其相较于传统算法的卓越性能使人工智能这个概念得到热切的关注,因此神经网络也逐渐被应用于数字电网领域,包括通过图像、语音等识别技术对电网灾害风险进行更准确的评估,利用数据的智能分析辅助输、配电各个环节的精准分析、判断和优化。然而神经网络优越的性能往往伴随着巨大的参数量和计算量,要求较大的存储空间、数据带宽和较长的推理时间,因而深度神经网络难以直接部署于资源受限的电力嵌入式终端中。
3.神经网络压缩是解决上述问题的一种主要方法,其中剪枝是压缩神经网络的一种有效手段,其通过删除不重要的权重来减少网络参数和计算量,而在剪枝中以通道为单位进行的通道剪枝直接移除整个冗余通道,因而不改变网络的基础结构,也不需要额外的软件库和硬件资源支持额外的操作和结构,是目前最为简单和有效的方法。
4.目前的剪枝方法均以浮点计算量为压缩目标,如专利cn110619385a以浮点预算量为目标,专利cn109886397a以尽量保持网络性能为目标,缺少具体的压缩目标参数,专利cn111582446a通过测试压缩模型的实际运行速度来决定压缩率,需要较长的迭代周期。然而由于硬件中并行计算的特点,通道的减少无法有效转化为时间加速,导致浮点计算量的减少并不能直接转化为实际的推理时间加速比,再加上实际不同硬件中数据访问、传输的时间消耗,往往推理时间的加速比远低于理论的浮点计算量的压缩比。因此如何在剪枝过程中同时考虑目标硬件部署以及其实际加速约束,在尽量保证精度不下降的前提下,研究一种应用于电力边缘智能计算并且硬件加速感知的高效通道剪枝技术是一个亟待解决的问题。


技术实现要素:

5.本发明要解决的技术问题:提供一种硬件加速感知的神经网络通道剪枝方法,在确保精度不损失的前提下,尽量减少网络的参数量和计算量,降低在实际硬件中的推理时间。
6.本发明技术方案:
7.一种硬件加速感知的神经网络通道剪枝方法,它包括:
8.步骤1、针对部署的目标硬件进行性能分析,遍历神经网络的结构以及结构配置,生成性能指标,作为成对的数据集;
9.步骤2、设计硬件性能预测网络,利用数据集进行网络训练,形成优化的参数并保存训练完成的预测网络;
10.步骤3、对目标网络的所有通道后添加门控单元;
11.步骤4、结合目标网络和的预测网络,构建训练目标函数;通过该目标函数训练完成后的网络,即为最终的网络模型。
12.步骤1所述性能指标为推理时间和功耗。
13.步骤3所述门控单元形式为在卷积或批标准化层(batchnormalization)的输出通道上乘上一个可训练参数,门控单元的定义如下:
[0014][0015]
式中θ为可训练参数,代表该通道的重要性指标,0.5为阈值。
[0016]
所述重要性指标代表每个通道的重要程度,值越高代表相应通道越重要,当值低于阈值时,代表该通道不重要,重要性指标值通过网络微调训练中的反向传播进行更新。
[0017]
步骤4所述训练目标函数为:
[0018]
min l λr(θ)
[0019]
r(θ)=log((f(θ)-t*r)/t 1)
[0020]
式中:l是原本目标网络的训练损失函数,r(θ)是硬件约束函数,其值为预测网络的输出和预设硬件性能之间的差值,输入是g(θ)构建的网络结构向量,λ是平衡两者的参数。
[0021]
步骤1所述针对部署的目标硬件进行性能分析,遍历神经网络的结构以及结构配置,生成性能指标,作为成对的数据集的方法为:针对目标部署的硬件生成相应的预测网络数据集,输入为目标网络的单位结构,包括卷积网络中的卷积结构、全连接网络的全连接结构中所有可能的结构参数,结构参数包括输入和输出通道数,卷积核大小,卷积步长大小以及输出特征大小,将连接组合为向量作为输入,输出由目标部署的硬件推理得到,形式包括推理时间和功耗,遍历所有可能结构得到输入输出对的数据集。
[0022]
步骤2所述预测网络由若干全连接层和非线性激活函数层组合而成,输入向量对应数据集中的输入,训练目标为尽可能使预测网络的输出和数据集中的输出向量尽可能接近,将训练目标函数设置为回归损失函数或均方误差函数,训练最终得到预测网络并保存。
[0023]
通过该目标函数训练完成后的网络,即为最终的网络模型的方法为:硬件约束函数目标为使预测网络的输出即预测的硬件性能接近预设的硬件性能t*r,其中t为原始的已训练好网络的预测硬件性能,r为预设的目标比例,输入f(θ)是由g(θ)和结构信息构建的网络结构向量,包括输入和输出通道数,卷积核大小,卷积步长大小以及输出特征大小,以通道数为例,表达为该卷积层中所有通道对应的g(θ)之和;输入向量与训练预测网络时的输入向量组合方式相同,λ是平衡两者的参数;通过该目标函数训练完成后的网络,在达到预设硬件性能下保持最佳的网络性能,即为最终的网络模型。
[0024]
本发明的有益效果:
[0025]
本发明提出的应用于电力边缘智能计算并且硬件加速感知的高效通道剪枝技术,基于硬件加速感知的神经网络通道剪枝方法,在确保精度不损失的前提下,尽量减少网络的参数量和计算量,降低在实际硬件中的推理时间。
附图说明
[0026]
图1为本发明流程示意图;
[0027]
图2为本发明预测网络组成示意图;
[0028]
图3为本发明门控单元添加示意图。
具体实施方式
[0029]
本发明发明剪枝方法,其目的是在确保精度不损失的前提下,尽量减少网络的参数量和计算量,降低在实际硬件中的推理时间。为达到上述目的,包括下列操作步骤:
[0030]
步骤1、针对部署的目标硬件进行性能分析,遍历可能的神经网络的结构以及可能的结构配置,生成相应的性能指标(如推理时间、功耗),作为成对的数据集。
[0031]
步骤2、设计合理的硬件性能预测网络,并用步骤1中生成的数据集进行网络训练,形成优化的参数,以尽量减小预测值和数据集标签之间的误差,并保存训练完成的预测网络。
[0032]
步骤3、对目标网络的所有通道后添加门控单元,其形式为在卷积或批标准化层(batchnormalization)的输出通道上乘上一个可训练参数,门控单元的定义如下:
[0033][0034]
上式中,θ为可训练参数,代表该通道的重要性指标,0.5为阈值。重要性指标代表每个通道的重要程度,其值越高,代表相应通道越重要,当值低于阈值时,代表该通道不重要可以被移除,该值通过网络微调训练中的反向传播进行更新。
[0035]
步骤4、结合目标网络和步骤2中得到的预测网络,构建训练目标函数如下:
[0036]
min l λr(θ)
[0037]
r(θ)=log((f(θ)-t*r)/t 1)
[0038]
其中,l是原本目标网络的训练损失函数,r(θ)是硬件约束函数,其值为预测网络的输出和预设硬件性能之间的差值,输入是g(θ)构建的网络结构向量,λ是平衡两者的参数。通过该目标函数训练完成后的网络,即为最终的网络模型。
[0039]
根据图1流程图所示,针对目标部署的硬件生成相应的预测网络数据集,输入为目标网络的单位结构(如卷积网络中的卷积结构,全连接网络的全连接结构)中所有可能的结构参数,以卷积结构为例,结构参数包括输入和输出通道数,卷积核大小,卷积步长大小以及输出特征大小等,将其连接组合为向量作为输入,输出由目标部署的硬件推理得到,其形式包括推理时间、功耗等,遍历所有可能结构得到输入输出对的数据集。
[0040]
其次利用得到的数据集训练一个预测网络,如图2所示该预测网络可由若干全连接层和非线性激活函数层组合而成,其输入向量对应数据集中的输入,训练目标为尽可能使预测网络的输出和数据集中的输出向量尽可能接近,可将训练目标函数设置为回归损失函数或均方误差函数等,训练最终得到预测网络并保存。
[0041]
接着针对已训练好的压缩目标网络,在所有通道的卷积或批标准层操作后添加门控单元,如图3所示,该门的作用是对于不重要的通道,其输出为0,即删除该通道,对于重要的通道,其输出为1,代表保留该通道。该门控单元须加在所有残差块的通道中,同时为避免
剪枝带来的不对齐问题,门控单元不能够加在残差连接以及相应的卷积操作后,即保留所有的残差跳跃连接,其形式如下式所示:
[0042][0043]
通道的重要性值越高,代表相应通道越重要。该值由微调训练中反向传播进行更新,微调训练的目标函数定义为:
[0044]
min l λr(θ)
[0045]
其中,l是原本目标网络的训练损失函数,r(θ)是硬件约束函数,表达为:
[0046]
r(θ)=log((f(θ)一t*r)/t 1)
[0047]
该式的目标为使预测网络的输出即预测的硬件性能(推理时间和功耗等)接近预设的硬件性能t*r,其中t为原始的已训练好网络的预测硬件性能,r为预设的目标比例,输入f(θ)是由g(θ)和结构信息构建的网络结构向量,包括输入和输出通道数,卷积核大小,卷积步长大小以及输出特征大小等,以通道数为例,其表达为该卷积层中所有通道对应的g(θ)之和。输入向量应与训练预测网络时的输入向量组合方式相同,λ是平衡两者的参数。通过该目标函数训练完成后的网络,能够在达到预设硬件性能下保持最佳的网络性能,即为最终的网络模型。
[0048]
在实现过程中,验证该方法的实验环境为pytorch,使用的数据集包括cifar-10/100数据库和imagenet数据库,使用的深度神经网络模型包括resnet-18/20/50/56/110/164和vgg16。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献