ACTA Scientiarum Naturalium Universitatis Pekinensis

基于全局信息的卷积神­经网络模型剪枝微调优­化方法

孙文宇 曹健† 李普 刘瑞

- 孙文宇 曹健 李普 等

北京大学软件与微电子­学院, 北京 102600; † 通信作者, E-mail: caojian@ss.pku.edu.cn

摘要 为解决因卷积神经网络­模型规模大, 模型剪枝方法引起的精­度下降问题, 提出一种模型剪枝微调­优化方法。该方法引入原卷积神经­网络模型权重全局信息­至剪枝后模型, 使原模型信息体现在剪­枝后模型的权重上, 提升剪枝后模型的精度。在图像分类任务和目标­检测任务中的实验结果­表明, 所提出的微调优化方法­可获得更大的压缩率和­更小的模型精度损失。关键词 卷积神经网络; 模型剪枝微调; 全局信息; 图像分类; 目标检测

卷积神经网络在图像分­类、目标检测等领域得到广­泛应用。随着网络效果提升, 网络规模愈发庞大, 需要高额存储空间和计­算资源, 使网络部署到资源受限­的端侧硬件平台变得困­难。因此, 在保证模型精度的同时, 需尽可能降低模型参数­量和计算消耗。研究者们提出过若干模­型压缩方法, 如模型

[1–5] [6–9] [10–12]剪枝 、权重量化 和神经网络结构搜索等。其中, 模型剪枝方法能大幅度­地减少模型参数量和运­算量, 成为模型压缩的主流方­法, 又可分为非结构化剪枝­方法和结构化剪枝方法。

[13]非结构化剪枝方法 认为卷积神经网络中存

在小值权重, 对网络最终输出贡献少, 可将其置0,以便减少网络运算量。采用此类方法的模型压­缩效果较好, 但部署到端侧设备时, 硬件平台要具有相应的­稀疏矩阵运算加速库才­能实现提速, 故非结构化剪枝方法在­部署中通用性差。结构化剪枝方法将整个­卷积核视为被裁剪对象, 对于硬件部署更加友好, 受到研究者青睐。Li等[14]提出基于卷积核L1范­数的简单有效的剪枝方­法, 通过裁剪L1范数小的­卷积核, 实现模型压缩和加速。在此基础上, Frankle 等[15]利用 L2范数寻找大规模模­型中的最小子网络, 实现模型剪枝。He

等[16]将卷积核视为欧式空间­中的点, 计算每个卷积层的几何­中位数, 将靠近几何中心点的卷­积核裁减掉, 实现模型压缩。以上剪枝方法往往需要­大规模的模型训练和剪­枝以及小规模的模型微­调3个步骤。当剪枝率过大时, 通过已有剪枝方法得到­的小规模模型会因信息­丢失严重及语义表达能­力不足从而导致较大的­精度损失。本文在模型微调前, 对小规模的模型进行全­局信息优化, 使其在微调后可以取得­较大的压缩率,并具有极低的精度损失。此优化方法可嵌入任何­一种结构化剪枝方法中, 具有工程易用性。

1 研究方法

在适中剪枝率情况下, 剪枝方法对不同卷积层­有不同的剪枝率[13], 即剪枝后每个卷积层的­卷积核个数不同(见图1)。对于保留较多卷积核的­卷积层,

因保留了较多的原模型­信息, 故在微调后可恢复语义­表达能力。对于保留较少卷积核的­卷积层, 因其原模型信息破坏较­为严重, 导致模型精度下降。所以, 如果能使剪枝后模型尽­可能多地具备原模型信­息, 则可保证剪枝后模型的­高精度。

1.1 现有剪枝方法不足

在卷积神经网络中, 正常卷积计算过程如图­2 (a)所示。第i层特征图A 1, A 2 , ... An与第 i+1 层中卷i i i 1 2 n积核对应的通道Ci 1, Ci 1,... Ci 进行卷积计算求和,   1得到一个输出特征图 A1 。现有的针对卷积神经网­i 1络的通道级剪枝方法­通常选定某一准则来衡­量卷积核的重要性, 区分对输出有较大影响­的重要卷积核,然后将对输出影响较小­的卷积核裁剪掉。如特征图A 1和A3对应的卷积核­被裁剪掉后, 剪枝后模型就不i i会存在A 1, A 3, C1和C3 (图2(b))。当压缩率较高时, i i i  1 i 1过多的特征图与卷积­核被裁剪掉, 即剪枝后模型仅保留少­量原模型信息, 导致微调后精度严重下­降。因此, 如果被裁剪掉过多卷积­核的卷积层可以包含更­多的原模型信息, 则剪枝后模型的精度会­随之提高。

1.2 剪枝后模型信息优化

设 Wi为未剪枝模型第i­层卷积层的权重矩阵,其卷积核个数为ni; Wi为剪枝后模型第i层卷­积层的权重矩阵, 其卷积核个数为n 。第i层卷积层的i n  n剪枝率pi  , 当 pi大于某阈值α时, 即判定ini i为剪枝后模型保留原­模型信息过少, 对精度影响较大, 需对这类卷积层进行信­息优化。对于剪枝率大于阈值的­卷积层, 未剪枝时的权重矩阵为  , 需对其剪枝后的权重矩­阵 进行信息优化, 使   , 即T T j j W Rm n j Wj Rl n WW T W W T j j j j arg min WW  W  W 。 (1) j j 2

综上所述, 将剪枝后模型信息保留­优化问题转化为求解形­如式(1)的优化问题, 通过改进的Matri­x [17] Sketching 算法求解 。改进后的剪枝模型微调­优化算法流程如算法1­所示。算法1 基于全局信息的模型剪­枝微调优化算法。输入: 采用任意剪枝方法剪枝­后未微调的模型Wi 

Rm n

输出: 具有更高准确率的剪枝­模型Wj  Rl n 1.构建全零矩阵Wj  Rl n 2.将Wik 插入 Wj直至 Wj中无全零行3. 对 Wj进行奇异值分解, 即[ U , S , V ]  SVD(W j) 4. 取矩阵 S 中前一半数值, 即  sl 2 /2 5. 计算S   max ( S 2  Il ,0) 6. 计算W  US j 7.对剪枝率超过阈值的所­有卷积层进行 1~6 步操作8. 对模型进行微调, 恢复精度由式(1)及算法1可知, 改进后的微调优化方法­将原模型信息引入剪枝­后模型, 并最小化二者间信息误­差, 从而实现对剪枝后模型­某些卷积层的信息补偿, 进而在微调后获得更高­精度。原理解释如图3所示。

1.3 模型特殊结构处理

残差网络 Resnet[18]中的残差模块可以解决­深层网络无法有效训练­的问题, 使深层网络的准确度得­以提升, 其跳连结构已应用在许­多大规模网络中。将现有剪枝方法应用于­YOLOV3[19]等存在跳连结构的模型­时, 均需保证剪枝后模型在­跳连相加处通道数相同。如图4所示, 剪枝后模型在微调前需

保证c  c , 进而保证跳连相加可以­顺利进行, 但

1 2会严重地限制剪枝方­法的压缩效果, 故此类特殊结构也是限­制模型压缩效果的重要­因素。在现有剪枝方法上嵌入­本文提出的微调优化方­法, 可在初步剪枝时不必要­求跳连相加处通道数相­同, 而是在微调时, 通过算法1将保留较多­通道数的卷积层c优化为c  , 在保证最大化压缩率的­同时,

1 2还可以保证模型精度。

2 实验结果与方法对比

本文将算法1嵌入不同­的剪枝方法, 并在主流图像分类模型­和目标检测模型上进行­对比实验来证明本文提­出微调优化方法的有效­性及普遍适用性。

2.1 实验数据与评价指标

本文采用图像分类数据­集CIFAR10 和 CIFAR 100, 在VGG16模型上验­证微调优化方法在分类­任务中的效果。利用大规模遥感数据集 Visdrone[20],在 Anchor-base 目标检测模型 YOLOV3 和 Anchorfree­目标检测模型 Centernet[21]上, 验证微调优化方法在目­标检测任务中的效果。数据集概况见表1。

对于图像分类任务, 采用测试集准确率(Acc)作为评价指标。对于目标检测任务, 输入图片分辨率均为6­08×608, 采用交并比(IOU)阈值为0.5、置信度(confidence)阈值为 0.1、非极大值抑制(NMS)阈值为 0.5情况下的平均精度均­值(MAP)作为评价指标。

表 1 本文所用数据集概况

Table 1 Overview of the datasets used in the article训练数­量/ 检测目标占

数据集 类别数测试数量 全图比例%

CIFAR10 10 50000/10000 — CIFAR100 100 50000/10000 — Visdrone 10 6471/548 <10

2.2 方法验证与对比

将微调优化方法分别嵌­入L1剪枝方法[14]和Network Slimming (NS)剪枝方法[22], 在 VGG16 模型上, 利用 CIFAR10 和 CIFAR100 数据集进行实验,实验结果如表2所示。

由表2可知, 在图像分类任务中, 在已有的若干剪枝方法­中嵌入微调优化方法, 可以同时提高压缩率和­剪枝后模型的准确率。可以看出, 此微调优化方法对带有­模型稀疏化训练的剪枝­方法更适用。通过模型稀疏化训练, 模型中更多的卷积核可­被裁剪, 此时通过微调优化方法, 可使模型在尽可能高的­压缩率下获得更高的精­度恢复, 实现模型参数量与精度­间的平衡。将此方法嵌入Netw­ork Slimming剪枝­后的VGG16网络进­行微调时, 剪枝后模型精度比原模­型略有提高, 说明经过此方法优化后­的模型具备较优的初始­化参数及学习能力。

为了证明算法在其他任­务中的有效性, 采用遥感数据集 Visdrone, 在 Anchor-base 目标检测模型YOLO­V3 和 Anchor-free 目标检测模型 Centernet 上进行实验, 结果如表3所示。

由表3可知, 在目标检测任务中, 本文所提微调优化方法­对于主流 Anchor-base 模型和 Anchorfree­模型均具有适用性, 在最大程度上保证模型­精度的同时, 可以降低模型参数量和­复杂度。

3 结论

本文针对现有剪枝方法­在高压缩率时精度严重­下降的问题, 提出一种基于全局信息­的模型剪枝微调优化方­法。对于剪枝率过大的卷积­层, 此优化方法将未剪枝模­型的全局权重信息引入­剪枝后模型中, 从而解决了模型跳连结­构对剪枝方法的限制问­题。在图像分类任务和目标­检测任务中的实验结果­表明, 将已有剪枝方法中嵌入­此优化方法, 在获得高压缩率的同时, 只有极低的精度损失。

在未来的工作中, 我们将进一步探索剪枝­后模型在微调前的权重­优化, 使本文提出的微调优化­方法在不失通用性的前­提下获得更高的压缩率, 以便在端侧智能设备的­部署与加速。

参考文献

[1] Changpinyo S, Sandler M, Zhmoginov A. The power of sparsity in convolutio­nal neural networks [EB/OL]. (2017–02–21)[2020–05–20]. https://arxiv.org/abs/1702. 06257

[2] Liu Z, Sun M, Zhou T, et al. Rethinking the value of network pruning [EB/OL]. (2019–03–05)[2020–05– 20]. https://arxiv.org/abs/1810.05270 [3] Wen W, Wu C, Wang Y, et al. Learning structured sparsity in deep neural networks // Proceeding­s of the 30th Internatio­nal Conference on Neural Informatio­n Processing Systems. Barcelno, 2016: 2082–2090 [4] Zhou H, Alvarez J M, Porikli F. Less is more: towards compact CNNS // European Conference on Computer Vision. Cham: Springer, 2016: 662–677 [5] Han S, Mao H, Dally W J. Deep compressio­n: compressin­g deep neural network with pruning, trained quantizati­on and Huffman coding [EB/OL]. (2015– 11–20)[2020–05–20]. https://arxiv.org/abs/1510.00149v3 [6] Rastegari M, Ordonez V, Redmon J, et al. XNORNET: imagenet classifica­tion using binary convolutio­nal neural networks // European Conference on Computer Vision. Cham: Springer, 2016: 525–542 [7] Zhou Shuchang , Wu Yuxin , Ni Zekun , et al. Dorefanet: training low bitwidth convolutio­nal neural networks with low bitwidth gradients [EB/OL]. (2018– 02–02)[2020–05–20]. https://arxiv.org/abs/1606.06160 [8] Jacob B, Kligys S, Chen B, et al. Quantizati­on and training of neural networks for efficient integerari­thmetic-only inference [EB/OL]. (2017–12–15) [2020–05–20]. https://arxiv.org/abs/1712.05877 [9] Courbariau­x M, Bengio Y. Binarynet: training deep neural networks with weights and activation­s constraine­d to +1 or –1 [EB/OL]. (2016–04–18)[2020–05– 20]. https://arxiv.org/abs/1511.00363 [10] Jin J, Yan Z, Fu K, et al. Neural network architectu­re optimizati­on through submodular­ity and supermodul­arity [EB/OL]. (2018–02–21)[2020–05–20]. https://arxiv. org/abs/1609.00074 [11] Baker B, Gupta O, Naik N, et al. Designing neural network architectu­res using reinforcem­ent learning [EB/OL]. (2016–11–07)[2020–05–20]. https://arxiv.org/ abs/1611.02167v1 [12] Zhang L L, Yang Y, Jiang Y, et al. Fast hardwareaw­are neural architectu­re search [EB/OL]. (2020–04– 20)[2020–05–20]. https://arxiv.org/abs/1910.11609 [13] Han S, Pool J, Tran J, et al. Learning both weights and connection­s for efficient neural network // Proceeding­s of the 28th Internatio­nal Conference on Neural Informatio­n Processing Systems. Montreal, 2015: 1135–1143 [14] Li H, Kadav A, Durdanovic I, et al. Pruning filters for efficient convnets [EB/OL]. (2017–03–10)[2020–05– 20]. https://arxiv.org/abs/1608.08710 [15] Frankle J, Carbin M. The lottery ticket hypothesis: finding sparse, trainable neural networks [EB/OL]. (2019–03–04)[2020–05–20]. https://arxiv.org/abs/1803. 03635 [16] He Y, Liu P, Wang Z, et al. Pruning filter via geometric median for deep convolutio­nal neural networks accelerati­on // IEEE Conference on Computer Vision and Pattern Recognitio­n. Long Beach, 2019: 4340– 4349 [17] Liberty E. Simple and determinis­tic matrix sketching [EB/OL]. (2012–07–11)[2020–05–20]. https://arxiv.org/ abs/1206.0594 [18] He K, Zhang X, Ren S, et al. Deep residual learning for image recognitio­n // IEEE Conference on Computer Vision and Pattern Recognitio­n. Las Vegas, 2016: 770–778 [19] Redmon J, Farhadi A. YOLOV3: an incrementa­l improvemen­t [EB/OL]. (2018–04–08)[2020–05–20]. https://arxiv.org/abs/1804.02767 [20] Zhu Pengfei, Wen Longyin, Du Dawei, et al. Vision meets drones: past, present and future [EB/OL]. (2020–01–16) [2020–05–20]. https://arxiv.org/abs/200 1.06303 [21] Zhou X, Wang D, Krähenbühl P. Objects as points [EB/OL]. (2019–04–25)[2020–05–20]. https://arxiv.org/ abs/1904.07850 [22] Liu Zhuang, Li Jianguo, Shen Zhiqiang, et al. Learning efficient convolutio­nal networks through network slimming // IEEE Internatio­nal Conference on Computer Vision. Venice, 2017: 2736–2744 [23] Zhang Pengyi, Zhong Yunxin, Li Xiaoqiong. Slimyo LOV3: narrower, faster and better for real-time UAV applicatio­ns [EB/OL]. (2019–07–25) [2020–05–20]. https://arxiv.org/abs/1907.11093

 ??  ?? Fig. 2图 2正常卷积与剪枝后卷­积的区别Differ­ence between normal convolutio­n and convolutio­n after pruning
Fig. 2图 2正常卷积与剪枝后卷­积的区别Differ­ence between normal convolutio­n and convolutio­n after pruning
 ??  ?? 图 1 VGG16 部分卷积层剪枝前后对­比Fig. 1 Comparison of convolutio­n layers before and after pruning in VGG16
图 1 VGG16 部分卷积层剪枝前后对­比Fig. 1 Comparison of convolutio­n layers before and after pruning in VGG16
 ??  ?? Fig. 4图 4模型跳连部分的剪枝­Pruning of shortcut in the model
Fig. 4图 4模型跳连部分的剪枝­Pruning of shortcut in the model
 ??  ?? 图 3算法原理解释Fig. 3 Explanatio­n of algorithm
图 3算法原理解释Fig. 3 Explanatio­n of algorithm
 ??  ??
 ??  ??

Newspapers in Chinese (Simplified)

Newspapers from China