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

一种应用于电力边缘计算的残差神经网络通道剪枝方法与流程

2021-10-27 20:25:00 来源:中国专利 TAG:剪枝 神经网络 人工智能 应用于 嵌入式


1.本发明属于嵌入式的数据智能处理以及人工智能技术领域;尤其涉及一种应用于电力边缘计算的残差神经网络通道剪枝方法。


背景技术:

2.近年来,深度神经网络在图像、语音等数据处理的性能已远优于传统算法,深度学习可应用于数字电网领域,其强大的数据分析、预测、建模分类能力在处理数字电网领域的复杂问题中同样具有独特优势,包括通过图像、语音等识别技术实现输电线路巡检图像分析、配电室与电缆管廊智能监控报警等,能够对电网设备周围的安全风险实现更准确的评估,另外,深度学习中对于数据的智能分析可以应用于电网调控文本知识抽取,电网电价预测等场景。在低惯量可再生能源大量接入、高比例电力电子设备的现代电力系统中,可以利用深度学习辅助实现电压控制、潮流控制、频率动态趋势感知评估与控制、连锁故障的防控和安全防御等多目标控制问题,实现对发输配变用各个环节的精准分析、判断和优化,从而提高电网的稳定性。尽管神经网络可以随着网络深度和宽度的增加提高性能,但是简单地增加深度往往会导致梯度弥散或梯度爆炸以及退化从而无法正常训练,而残差神经网络利用残差块的跳跃连接缓解了这一问题,且残差网络相比于传统的平网络(如vgg、alexnet网络)有更加优异的性能。但是现有的残差网络其优异的性能往往依赖于巨大的参数量和计算量,因此无法直接部署于资源受限的电力嵌入式终端中。
3.通道剪枝是神经网络压缩的一种有效手段,其通过删除不重要的权重来减少网络参数和计算量,且由于通道剪枝是直接移除冗余通道,因而不需要额外的软件库和硬件资源的支持。但现有的通道剪枝技术往往针对平网络,而残差网络由于存在残差块的跳跃连接,直接采用对平网络的剪枝方式对残差网络会带来以下问题:1)直接进行通道剪枝会带来跳跃连接和卷积通道不对齐的问题;2)现有的针对残差网络的剪枝方法将网络中可能产生不对齐问题的通道分为同一组来避免不对齐问题,但是该方法会导致相关通道不容易被剪枝,从而无法达到较高的压缩比例。


技术实现要素:

4.本发明要解决的技术问题:提供一种应用于电力边缘计算的残差神经网络通道剪枝方法,以解决现有技术针对电力边缘计算的残差神经网络通道剪枝会带来跳跃连接和卷积通道不对齐的问题,导致相关通道不容易被剪枝,从而无法达到较高的压缩比例等技术问题。
5.本发明技术方案:
6.一种应用于电力边缘计算的残差神经网络通道剪枝方法,它包括:在残差网络的所有残差块的通道后添加门控单元;根据已训练好的网络模型大小以及目标参数量或计算量,进行迭代通道剪枝。
7.所述门控单元的作用是:对于不重要的通道,输出为0,即删除该通道;对于重要的
通道,输出为1,代表保留该通道。
8.所述门控单元加在所有残差块的通道中,门控单元不能够加在残差连接以及相应的卷积操作后,即保留所有的残差跳跃连接。
9.所述门控单元的形式为:在卷积或批标准化层(batchnormalization)的输出通道上乘上一个可训练参数。
10.所述门控单元的定义如下:
[0011][0012]
上式中,α为系数,is(α)代表该通道的重要性指标,t为阈值。
[0013]
重要性指标is代表每个通道的重要程度,值越高代表相应通道越重要;is值的衡量基于移除该通道后损失函数的变化大小来定义,损失函数变化越大代表该通道越重要,根据泰勒一阶展开,重要性指标is由下式得到,其中l为损失函数,梯度在网络训练中的反向传播过程中取得;
[0014][0015]
所述根据已训练好的网络模型大小以及目标参数量或计算量,进行迭代通道剪枝的方法具体包括:
[0016]
步骤1、在已训练好的模型上添加门控单元,设定每次迭代通道剪枝的比例以及微调训练间隔t次和训练次数p;
[0017]
步骤2、用训练数据集微调训练模型,并在每次迭代中取得通道重要性指标is,并从大到小的排序,根据通道剪枝比例,删除重要性最小的通道并重建残差块,
[0018]
步骤3、重复步骤2直至模型参数量或计算量达到需要值。
[0019]
在t次的迭代间隔后进行p次微调训练避免模型精度由于剪枝过多带来的精度损失过大。
[0020]
本发明的有益效果:
[0021]
本发明通过微调训练与剪枝之间的迭代降低精度损失,微调训练采用模型应用场景相应的训练数据集,并使用较小的学习率和较少的训练周期,以快速恢复剪枝带来的性能损失,迭代次数取决于目标压缩率,当到达目标压缩率时,停止继续迭代。
[0022]
本发明在每次迭代过程中,通过取得通道重要性指标is,并从大到小的排序,根据通道剪枝比例,删除重要性最小的通道,以减少网络的参数量和计算量
[0023]
本发明在剪枝后,记录每一层被删除通道的索引值,并在推理时根据索引值对输入和输出通道进行选择;解决了通道不对齐的缺陷。
[0024]
本发明解决了现有技术针对电力边缘计算的残差神经网络通道剪枝会带来跳跃连接和卷积通道不对齐的问题,导致相关通道不容易被剪枝,从而无法达到较高的压缩比例等技术问题。
附图说明
[0025]
图1本发明门控单元添加位置示意图;
[0026]
图2本发明网络剪枝流程图;
[0027]
图3本发明剪枝后网络重建示意图。
具体实施方式
[0028]
首先根据图1所示,在残差网络的所有通道的卷积操作后添加门控单元,该门的作用是对于不重要的通道,其输出为0,即删除该通道,对于重要的通道,其输出为1,代表保留该通道。该门控单元须加在所有残差块的通道中,同时为避免剪枝带来的不对齐问题,门控单元不能够加在残差连接以及相应的卷积操作后,即保留所有的残差跳跃连接,其形式如下式所示:
[0029][0030]
其次通道的重要性衡量is需基于已经训练好的模型,其值越高,代表相应通道越重要。is值的衡量基于移除该通道后损失函数的变化大小来定义,损失函数变化越大代表该通道越重要,根据泰勒一阶展开,该值可由下式得到,其中l为损失函数,梯度可在网络训练中的反向传播过程中取得。
[0031][0032]
根据已训练好的网络模型大小以及目标参数量或计算量,进行迭代通道剪枝,流程如图2所示,其具体内容包括
[0033]
(1)在已训练好的模型上添加门控单元,设定每次迭代通道剪枝的比例以及微调训练间隔t次和训练次数p;
[0034]
(2)用训练数据集微调训练模型,并在每次迭代中取得通道重要性指标is,并对其进行从大到小的排序,根据通道剪枝比例,以图3为例按删除重要性最小的通道并重建残差块,在t次的迭代间隔后进行p次微调训练避免模型精度由于剪枝过多带来的精度损失过大。
[0035]
(3)重复步骤2直至模型参数量或计算量达到需要值。
[0036]
在实现过程中,验证该方法的实验环境为pytorch,使用的数据集包括cifar

10/100数据库和div2k数据库,使用的深度残差神经网络模型包括resnet

20/32/56/110。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜