(1. 国防科技大学计算机学院, 湖南省 长沙市,410073;2. 广州无线电集团有限公司, 广东省 广州市, 510656; 3. 广电智能安全研究院, 广东省 广州市, 510656)
摘要:智慧城市建设部署前端摄像机网络,实现视频、图像的实时智能解析。针对摄像机等边缘设备对网络模型的速度与精度所提出的越来越高的要求,本文介绍几种Filter级网络裁剪的解决方案,在几乎不降低模型精度下尽可能提升边缘端设备推理速度,为CNN网络在边缘端的应用提供新思路。
关键词: 卷积神经网络; 车型识别;网络模型裁剪
中图分类号: 文献标志码: A 文章编号:
0引言
智慧城市边缘设施的建设,直接关系到社会违法犯罪事件的预防与打击效率、力度。基于计算机视觉的视频结构化技术是智慧城市建设的核心技术之一,主要研究实现对人物、车辆、组织、物体等目标的实时监控,包括:行为捕捉,身份核验,目标管理,是实现城市管理智慧化改革的关键。
城市中部署的边缘设施中所具备的视频、图像实时解析功能,其具体实现往往采用基于卷积神经网络(CNN)框架的解决方案。在智慧城市应用场景下,目标图像易受光照、遮挡、角度等因素影响,高精度视频分析依然面临很大挑战;另一方面,集成于边缘设备中的具体功能的实现,要求保证高精度的同时,需要满足实时、高效等实际需求。
自从AlexNet[1]赢得2012 ILSVRC竞赛以来, CNN广泛用于视觉图像分类任务中,并取得较传统手工选取特征方法更加准确的分类效果,衍生出不同结构的CNN网络,经典的CNN网络模型有:VGG,GoogleNet,ResNet及其各种变种。然而,这些经典的网络模型参数规模巨大,前向推理耗时严重,难以满足边缘端实际应用的需求(以VGG-16为例,其网络模型大小超过500MB,参数规模达138Millon,显著影响识别系统实时性与并发性能)。
轻量级网络结构研究成为重要的研究方向,并已获得巨大的进步。计算表明,CNN网络的绝大部分参数和计算量集中在全连接层与卷积层,减小全连接层与卷积层参数成为轻量级网络结构设计的重要手段。常用的手段为:通过卷积层替代全连接层,并利用1x1与3x3depthwise卷积核替代传统的convolution操作,由此衍生出经典的轻量级网络模型,如MobileNetv1,MobileNetv2,ShuffleNet等。
然而,轻量级网络依然存在参数冗余,有很大的优化空间,以MobileNetV2为例,考察卷积层Filter为零的个数(以L1范数小于1e-8为标准划分),如表 1所示:
表1 MobileNetv2网络稀疏性分析
从Conv5_2/expand卷积层开始,L1范数为零的Filter占比很高。根据表1分析结果,我们在MobileNetv2网络中删除Conv7_3/expand以及Conv6_3/expand层后,进行分类模型训练,结果显示,精度仅仅降低了0.2个百分点。
网络模型紧致化是解决网络模型参数冗余、模型加速的重要研究方向。目前,深度网络模型紧致化的主要手段包括:模型裁剪,权重量化,知识蒸馏,参数共享,矩阵分解,网络结构搜索(AutoML),其中模型裁剪和权重量化由于其有效性和高效性受到工业界的青睐。
本文主要探讨边缘设备中网络模型裁剪技术,聚焦小网络模型的压缩与加速,探讨多种Filter级裁剪方案,为解决边缘端智能加速问题提供思路。
如图1所示是卷积网络计算示意图,Filter表示CNN模型中的weight权重,Input和Output分别标注卷积层的输入、输出Blob。Filter级裁剪是指通过某种性能指标,在不减小模型精度的情况下,减少weight个数(如图1中的Filter_i),从而达到压缩与加速的目的。
小网络模型常见结构模块如图2所示,实现对以下三种类型网络裁剪,基本可以实现整体网路的压缩与加速。
不同的裁剪策略其差异体现在通道选择策略上。其共同点在于整体网络的裁剪,遵循着“prune-finetune-prune”的逐层裁剪策略。需要注意的是,对于图2 c模块中第一和第三卷积层存在隐蔽的约束,即二者输出维数必须相同,对于这些卷积层的裁剪,可以采取以下策略进行:对第一个卷积层裁剪,获得裁剪通道index后,相应地,删除第三个卷积层相同index的Filter。
1.1 基于L1范数的模型裁剪策略[2]
其中,表示压缩率,c表示第i层通道个数。以上优化问题是典型的NP-Hard问题,只能获得次优解,文献[3][4]分别通过贪婪算法和LASSO算法进行裁剪通道的选择。
1.3 基于注意力机制的模型裁剪策略[5]
1.4 其他模型裁剪策略
以上所述Filter级模型压缩技术需要预先设置压缩率,这种压缩率的设置需要领域专家的经验。文献[6]提出了AMC模型自动压缩,利用强化学习DDPG算法,对待裁剪层在功耗、延迟、精度、速度等性能上自学习,自动输出给定性能指标下的最优压缩率,不是依赖基于规则的策略和经验丰富的工程师。该方向具有较大的应用空间,其缺点在于,所学习所得的各层压缩率依赖于软硬件配置环境,无通用性,其搜索过程较为耗时。
结束语
本文介绍了几种可用于智慧城市场景下边缘端设备模型的Filter级裁剪技术。这些方法可以满足边缘端对精度、速度和功耗上的需求。结合不同硬件平台自带的量化功能,如:Navidia Tensorrt的FP16/INT8功能,可获得较佳的兼顾精度要求的加速效果。
参考文献:
[1] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks International Conference on Neural Information Processing Systems[C]. Curran Associates Inc. 2012: 1097-1105.
[2] Li H, Kadav A, Durdanovic I, et al. Pruning Filters for Efficient ConvNet. 2017: https://arxiv.org/abs/1608.08710.
[3] Luo J, Wu J, Lin W. ThiNet: A Filter Level Pruning Method for Deep Neural Network Compression. 2017: https://arxiv.org/abs/1707.06342.
[4] He Y, Zhang X, Sun J. Channel Pruning for Accelerating Very Deep Neural Networks. 2017: https://arxiv.org/abs/1707.06168.
[5] He Y, Lin J, Liu Z, et al. AMC: AutoML for Model Compression and Acceleration on Mobile Device. 2018: https://arxiv.org/abs/1802.03494.
论文作者:黄跃珍1,王乃洲3,,吴红军3,,赵清利3,,金
论文发表刊物:《城镇建设》2019年12期
论文发表时间:2019/8/26
标签:卷积论文; 模型论文; 网络论文; 边缘论文; 精度论文; 策略论文; 参数论文; 《城镇建设》2019年12期论文;