工程科学学报,第41卷,第10期:1229-1239,2019年10月 Chinese Journal of Engineering,Vol.41,No.10:1229-1239,October 2019 D0I:10.13374/j.issn2095-9389.2019.03.27.002;http://journals..usth.eu.cn 深度神经网络模型压缩综述 李江昀12),赵义凯2),薛卓尔),蔡铮),李擎12) 1)北京科技大学自动化学院,北京1000832)工业过程知识自动化教育部重点实验室,北京100083 ☒通信作者,E-mail:Liqing(@ics.usth.edu.cn 摘要深度神经网络近年在计算机视觉以及自然语言处理等任务上不断刷新已有最好性能,已经成为最受关注的研究方 向.深度网络模型虽然性能显著,但由于参数量巨大、存储成本与计算成本过高,仍然难以部署到硬件受限的嵌入式或移动设 备上·相关研究发现,基于卷积神经网络的深度模型本身存在参数冗余,模型中存在对最终结果无用的参数,这为深度网络模 型压缩提供了理论支持.因此,如何在保证模型精度条件下降低模型大小已经成为热点问题.本文对国内外学者近几年在模 型压缩方面所取得的成果与进展进行了分类归纳并对其优缺点进行评价,并探讨了模型压缩目前存在的问题以及未来的发 展方向. 关键词深度神经网络:模型压缩:深度学习:网络剪枝:网络蒸馏 分类号TPI183 A survey of model compression for deep neural networks LI Jiang-yun',ZHAO Yi-kai,XUE Zhuo-er,CAl Zheng),LI Qing) 1)School of Automation Electrical Engineering,University of Science and Technology Beijing,Beijing 100083,China 2)Key Laboratory of Knowledge Automation for Industrial Processes,Ministry of Education,Beijing 100083,China Corresponding author,E-mail;Liqing@ies.ustb.edu.en ABSTRACT In recent years,deep neural networks (DNN)have attracted increasing attention because of their excellent performance in computer vision and natural language processing.The success of deep learning is due to the fact that the models have more layers and more parameters,which gives them stronger nonlinear fitting ability.Furthermore,the continuous updating of hardware equipment makes it possible to quickly train deep learning models.The development of deep learning is driven by the greater amounts of available annotated or unannotated data.Specifically,large-scale data provide models with greater learning space and stronger generalization ability.Although the performance of deep neural networks is significant,they are difficult to deploy in embedded or mobile devices with limited hardware due to their large number of parameters and high storage and computing costs.Recent studies have found that deep models based on a convolutional neural network are characterized by parameter redundancy as well as parameters that are irrelevant to the final model results,which provides theoretical support for the compression of deep network models.Therefore,determining ways to reduce model size while retaining model precision has become a hot research issue.Model compression refers to the reduction of a trained model through some operation to obtain a lightweight network with equivalent performance.After model compression,there are fewer network parameters and usually a reduction in the computation required,which greatly reduces the computational and storage costs and enables the deployment of the model in restricted hardware conditions.In this paper,the achievements and progress made in recent years by domestic and foreign scholars with respect to model compressionwere classified and summarized and their advantages and disadvantages were evaluated,including network pruning,parameter sharing,quantization,network decomposition,and network distillation.Then,existing problems and the future development of model compression were discussed. KEY WORDS deep neural networks;model compression;deep learning;network pruning;network distilling 收稿日期:2019-03-27 基金项目:国家自然科学基金资助项目(61671054):北京市自然科学基金资助项目(4182038)
工程科学学报,第 41 卷,第 10 期:1229鄄鄄1239,2019 年 10 月 Chinese Journal of Engineering, Vol. 41, No. 10: 1229鄄鄄1239, October 2019 DOI: 10. 13374 / j. issn2095鄄鄄9389. 2019. 03. 27. 002; http: / / journals. ustb. edu. cn 深度神经网络模型压缩综述 李江昀1,2) , 赵义凯1,2) , 薛卓尔1) , 蔡 铮1) , 李 擎1,2) 苣 1)北京科技大学自动化学院, 北京 100083 2) 工业过程知识自动化教育部重点实验室, 北京 100083 苣通信作者, E鄄mail: Liqing@ ies. ustb. edu. cn 摘 要 深度神经网络近年在计算机视觉以及自然语言处理等任务上不断刷新已有最好性能,已经成为最受关注的研究方 向. 深度网络模型虽然性能显著,但由于参数量巨大、存储成本与计算成本过高,仍然难以部署到硬件受限的嵌入式或移动设 备上. 相关研究发现,基于卷积神经网络的深度模型本身存在参数冗余,模型中存在对最终结果无用的参数,这为深度网络模 型压缩提供了理论支持. 因此,如何在保证模型精度条件下降低模型大小已经成为热点问题. 本文对国内外学者近几年在模 型压缩方面所取得的成果与进展进行了分类归纳并对其优缺点进行评价,并探讨了模型压缩目前存在的问题以及未来的发 展方向. 关键词 深度神经网络; 模型压缩; 深度学习; 网络剪枝; 网络蒸馏 分类号 TP183 收稿日期: 2019鄄鄄03鄄鄄27 基金项目: 国家自然科学基金资助项目(61671054); 北京市自然科学基金资助项目(4182038) A survey of model compression for deep neural networks LI Jiang鄄yun 1,2) , ZHAO Yi鄄kai 1,2) , XUE Zhuo鄄er 1) , CAI Zheng 1) , LI Qing 1,2) 苣 1) School of Automation & Electrical Engineering, University of Science and Technology Beijing, Beijing 100083, China 2) Key Laboratory of Knowledge Automation for Industrial Processes, Ministry of Education, Beijing 100083, China 苣Corresponding author, E鄄mail: Liqing@ ies. ustb. edu. cn ABSTRACT In recent years, deep neural networks (DNN) have attracted increasing attention because of their excellent performance in computer vision and natural language processing. The success of deep learning is due to the fact that the models have more layers and more parameters, which gives them stronger nonlinear fitting ability. Furthermore, the continuous updating of hardware equipment makes it possible to quickly train deep learning models. The development of deep learning is driven by the greater amounts of available annotated or unannotated data. Specifically, large鄄scale data provide models with greater learning space and stronger generalization ability. Although the performance of deep neural networks is significant, they are difficult to deploy in embedded or mobile devices with limited hardware due to their large number of parameters and high storage and computing costs. Recent studies have found that deep models based on a convolutional neural network are characterized by parameter redundancy as well as parameters that are irrelevant to the final model results, which provides theoretical support for the compression of deep network models. Therefore, determining ways to reduce model size while retaining model precision has become a hot research issue. Model compression refers to the reduction of a trained model through some operation to obtain a lightweight network with equivalent performance. After model compression, there are fewer network parameters and usually a reduction in the computation required, which greatly reduces the computational and storage costs and enables the deployment of the model in restricted hardware conditions. In this paper, the achievements and progress made in recent years by domestic and foreign scholars with respect to model compressionwere classified and summarized and their advantages and disadvantages were evaluated, including network pruning, parameter sharing, quantization, network decomposition, and network distillation. Then, existing problems and the future development of model compression were discussed. KEY WORDS deep neural networks; model compression; deep learning; network pruning; network distilling
·1230· 工程科学学报.第41卷,第10期 近几年,深度学习山受到极大关注,在图像处 更少,计算量通常也会减少,这使得计算开销与存储 理、自然语言处理、语音处理等方面都取得了成功应 开销大大降低,为模型部署在受限的硬件条件下提 用,已经成为机器学习中的热点领域.深度学习的 供了可能.当前存在的模型压缩方法大致可以分为 热潮源于多伦多大学的Krizhevsky等[2)在2012年 六种方式:网络剪枝(network pruning)、参数共享 的图像视觉识别比赛(imagenet large scale visual rec- (parameters sharing)、量化(quantization)、网络分解 ognition competition,ILSVRC)上,通过搭建深度神经 (network decomposition)、网络蒸馏(network distil- 网络(convolutional neural networks,.CNN),即Alex- ling)和紧凑网络设计(compact network design).本 Nt最终在图像分类以及图像定位上取得最优精 文尽可能详尽地整理了近几年在深度网络模型压缩 度,远超过其他基于传统机器学习的方法.自此,深 领域的工作,并对每种方法给出具体评价,同时对深 度学习受到学术界和工业界前所未有的追捧.后来 度网络模型压缩当前存在的问题以及未来发展方向 的图像视觉识别比赛中,VGG)、GoogLeNet!4]、Res- 进行探讨,最后对全文进行总结 Nets)、DenseNet!等网络陆续出现,并不断刷新比 1F 网络剪枝 赛最佳性能,尤其是在图像识别任务上ResNet的准 确率首次超越人类.深度学习之所以会取得成功, 网络剪枝[)是深度神经网络压缩中一种广泛 一方面是因为模型具有更深层数和更多参数,这使 使用的方法.网络剪枝早期是用来删除网络中冗余 得模型具有更强大的非线性拟合能力:另一方面是 参数,降低网络复杂度,从而提高网络泛化能力,并 因为硬件设备不断更新为深度学习模型快速训练提 防止过拟合.网络剪枝从剪枝粒度可以分为:单个 供了可能:此外,更多可获得的标注或未标注数据推 权重(weight)剪枝、核内权重(intra kernel weight)剪 动了深度学习的发展,具体来说,大规模数据意味着 枝、卷积核(kernel)剪枝、通道(channel/feature map/ 模型将有更大的学习空间以及更强大的泛化能力. filter)剪枝以及隐层(Layer)剪枝.不同剪枝方法虽 尽管深度网络模型在许多任务上都取得了不俗 然从思想上类似,但是在实际操作过程中区别很大, 表现,但这仅仅是在科研层面上进行的实验与尝试, 最终效果也不尽相同.以下子章节将对这几种剪枝 如果考虑到实际应用将其移植到嵌入式或者移动设 方法进行详细叙述. 备上,它将会受到多方面约束:1)模型参数量巨大: 1.1单个权重剪枝 比如AlexNet模型大小约200M,VGG-16[]模型大 在1989年,LeCun等fo]提出将网络中所有权 小超过500M,并且随着网络的不断加深,许多模型 重参数都看作单个参数的最优脑损伤(optimal brain 可以达到1G或2G甚至更大,如此大的模型对于实 damage,OBD)方法.优化时基于对角假设、极值假 际应用是巨大挑战:2)模型计算量大:由于深度神 设和二次假设利用二阶导数近似参数显著性移除网 经网络模型中存在着大量卷积运算,仅仅运行一次 络中不重要的权重来提高网络精度和泛化能力. 前向传播计算量都很巨大,比如ResNet50s]计算量 Hassibi等1-12]基于最优脑损伤方法,提出增加基于 达到3.8亿次,ResNet1:52[s)计算量甚至达到1l.3 手术恢复权重更新步骤的最优脑手术(optimal brain 亿次.而这仅仅是基础网络计算量,如果针对具体 surgeon,OBS)方法.Han等B]提出仅仅学习网络中 任务设计的最终模型计算量还要更大.即使使用图 重要连接可以在不影响网络最终精度情况下降低模 像处理单元)(graphic processing unit,GPU)或者神 型参数量与计算量.基于此方法,Han等[14]进一步 经网络处理单元(neural network processing unit, 提出三阶段流水线式深度压缩方法,包括剪枝、量化 NPU)等进行加速,也依然无法满足商用需求:3)电 和霍夫曼编码.为了加速网络计算,Srinivas等us]提 能消耗大:网络运行时持续的内访问存和计算资源 出使用稀疏计算训练神经网络,通过引入额外门变 的大量使用都导致耗电量巨大.对于硬件资源有限 量进行参数选择,最终网络精度与正常训练结果相当 的嵌入式或者移动设备来说,深度神经网络直接应 1.2核内权重剪枝 用在时间与空间上都受到巨大约束].因此,如何 上一节中的单个权重剪枝为非结构化剪枝,这 在保证模型效果的前提下对模型进行压缩已经成为 使得所有层变为稀疏分布.这将导致三个问题:仅 了一个热点问题,这使得深度网络模型压缩快速地 仅对部分参数进行剪枝并不能显著降低计算量与参 发展起来 数量:剪枝部分参数将会得到稀疏网络,而目前对稀 模型压缩是指对在保证模型精度情况下对模型 疏操作加速支持的库非常有限:得到的稀疏数据结 进行精简的方法.经过模型压缩后的网络参数量会 构将会需要额外存储开销尤其对于低精度权重
工程科学学报,第 41 卷,第 10 期 近几年,深度学习[1] 受到极大关注,在图像处 理、自然语言处理、语音处理等方面都取得了成功应 用,已经成为机器学习中的热点领域. 深度学习的 热潮源于多伦多大学的 Krizhevsky 等[2] 在 2012 年 的图像视觉识别比赛(imagenet large scale visual rec鄄 ognition competition,ILSVRC)上,通过搭建深度神经 网络( convolutional neural networks,CNN),即 Alex鄄 Net 最终在图像分类以及图像定位上取得最优精 度,远超过其他基于传统机器学习的方法. 自此,深 度学习受到学术界和工业界前所未有的追捧. 后来 的图像视觉识别比赛中,VGG [3] 、GoogLeNet [4] 、Res鄄 Net [5] 、DenseNet [6]等网络陆续出现,并不断刷新比 赛最佳性能,尤其是在图像识别任务上 ResNet 的准 确率首次超越人类. 深度学习之所以会取得成功, 一方面是因为模型具有更深层数和更多参数,这使 得模型具有更强大的非线性拟合能力;另一方面是 因为硬件设备不断更新为深度学习模型快速训练提 供了可能;此外,更多可获得的标注或未标注数据推 动了深度学习的发展,具体来说,大规模数据意味着 模型将有更大的学习空间以及更强大的泛化能力. 尽管深度网络模型在许多任务上都取得了不俗 表现,但这仅仅是在科研层面上进行的实验与尝试, 如果考虑到实际应用将其移植到嵌入式或者移动设 备上,它将会受到多方面约束:1)模型参数量巨大: 比如 AlexNet 模型大小约 200 M,VGG鄄鄄 16 [3] 模型大 小超过 500 M,并且随着网络的不断加深,许多模型 可以达到 1 G 或 2 G 甚至更大,如此大的模型对于实 际应用是巨大挑战;2) 模型计算量大:由于深度神 经网络模型中存在着大量卷积运算,仅仅运行一次 前向传播计算量都很巨大,比如 ResNet50 [5] 计算量 达到 3郾 8 亿次,ResNet152 [5] 计算量甚至达到 11郾 3 亿次. 而这仅仅是基础网络计算量,如果针对具体 任务设计的最终模型计算量还要更大. 即使使用图 像处理单元[7] (graphic processing unit, GPU)或者神 经网 络 处 理 单 元 ( neural network processing unit, NPU)等进行加速,也依然无法满足商用需求;3)电 能消耗大:网络运行时持续的内访问存和计算资源 的大量使用都导致耗电量巨大. 对于硬件资源有限 的嵌入式或者移动设备来说,深度神经网络直接应 用在时间与空间上都受到巨大约束[8] . 因此,如何 在保证模型效果的前提下对模型进行压缩已经成为 了一个热点问题,这使得深度网络模型压缩快速地 发展起来. 模型压缩是指对在保证模型精度情况下对模型 进行精简的方法. 经过模型压缩后的网络参数量会 更少,计算量通常也会减少,这使得计算开销与存储 开销大大降低,为模型部署在受限的硬件条件下提 供了可能. 当前存在的模型压缩方法大致可以分为 六种方式:网络剪枝( network pruning)、参数共享 (parameters sharing)、量化( quantization)、网络分解 (network decomposition)、网络蒸馏( network distil鄄 ling)和紧凑网络设计(compact network design). 本 文尽可能详尽地整理了近几年在深度网络模型压缩 领域的工作,并对每种方法给出具体评价,同时对深 度网络模型压缩当前存在的问题以及未来发展方向 进行探讨,最后对全文进行总结. 1 网络剪枝 网络剪枝[9] 是深度神经网络压缩中一种广泛 使用的方法. 网络剪枝早期是用来删除网络中冗余 参数,降低网络复杂度,从而提高网络泛化能力,并 防止过拟合. 网络剪枝从剪枝粒度可以分为:单个 权重(weight)剪枝、核内权重(intra kernel weight)剪 枝、卷积核(kernel)剪枝、通道(channel / feature map / filter)剪枝以及隐层(Layer)剪枝. 不同剪枝方法虽 然从思想上类似,但是在实际操作过程中区别很大, 最终效果也不尽相同. 以下子章节将对这几种剪枝 方法进行详细叙述. 1郾 1 单个权重剪枝 在 1989 年,LeCun 等[10] 提出将网络中所有权 重参数都看作单个参数的最优脑损伤(optimal brain damage,OBD)方法. 优化时基于对角假设、极值假 设和二次假设利用二阶导数近似参数显著性移除网 络中不重要的权重来提高网络精度和泛化能力. Hassibi 等[11鄄鄄12]基于最优脑损伤方法,提出增加基于 手术恢复权重更新步骤的最优脑手术(optimal brain surgeon,OBS)方法. Han 等[13]提出仅仅学习网络中 重要连接可以在不影响网络最终精度情况下降低模 型参数量与计算量. 基于此方法,Han 等[14] 进一步 提出三阶段流水线式深度压缩方法,包括剪枝、量化 和霍夫曼编码. 为了加速网络计算,Srinivas 等[15]提 出使用稀疏计算训练神经网络,通过引入额外门变 量进行参数选择,最终网络精度与正常训练结果相当. 1郾 2 核内权重剪枝 上一节中的单个权重剪枝为非结构化剪枝,这 使得所有层变为稀疏分布. 这将导致三个问题:仅 仅对部分参数进行剪枝并不能显著降低计算量与参 数量;剪枝部分参数将会得到稀疏网络,而目前对稀 疏操作加速支持的库非常有限;得到的稀疏数据结 构将会需要额外存储开销尤其对于低精度权重. ·1230·
李江昀等:深度神经网络模型压缩综述 ·1231· 针对以上非结构化剪枝的问题,Anwar等I16]率 可以解决传统剪枝方法的局部重要性判断以及无法 先提出了结构化剪枝的概念.方法的主要思想是定 弥补的剪枝过程,原理类似于随机神经元失活 义显著性变量并进行贪婪剪枝,提出核内定步长粒 1.3卷积核剪枝与通道剪枝 度将细粒度剪枝转化为粗粒度剪枝如通道剪枝或卷 卷积核剪枝与通道剪枝都属于粗粒度剪枝,剪 积核剪枝.核内定步长粒度核心思想为作用在同一 枝后模型使用现有硬件与计算库即可进行训练,并 输入特征图上的卷积核必须采用相同的步长和偏 且最终可以获得更高压缩率与更短计算时间.虽然 置,作用在不同特征图上的卷积核步长与偏置可以 两种剪枝方式出发点并不一样,但其本质上是一致 不同.进行贪婪剪枝时,提出使用进化粒子滤波器 的,特征图与卷积核具有对应关系,减去某一个特征 决定网络连接重要性,使用此方法可以保证网络准 图的同时与其相连的卷积核也将被一起移除 确率下降更低.Wen等[]提出了结构稀疏化的学 i等2】提出基于卷积核剪枝的压缩技术.主 习方法去对深度神经网络的结构如卷积核、通道、层 要思想是对网络输出精度影响较小的卷积核进行剪 深度等进行正则化.此方法可以从一个更大的深度 枝,通过移除网络中那些卷积核以及其所连接的特 神经网络学习到一个更紧凑的模型来减少参数量和 征图,网络计算量大幅度降低.假设网络第i个卷 计算量,而且可以获得对深度神经网络硬件友好的 积层的输入通道数为n:,h,/w:分别表示输入特征图 结构化稀疏方式来加速网络验证并可以提高最终分 的宽和高,通过卷积层得到的输出特征图通道数为 类精度 n:+1,h:+1/o:+1分别表示输出特征图的宽和高,卷积 Lin等8]提出结构化稀疏正则化.此方法结合 核的宽和高均为k,那么卷积核矩阵F:∈ 两种不同的结构化稀疏方式,充分协调全局输出与 Rxxx,进行卷积运算的计算量为n+1n,2h+1 局部剪枝操作去自适应的剪枝滤波器.此外,提出 w:+1·根据图1所示,当一个滤波器F,被剪枝掉, 基于拉格朗日乘法器的交替更新机制在提升网络结 它所对应的特征图x+,也将被移除,这减少了 构化稀疏性与优化识别损失之间进行更替.Go n,2h+10:+1次计算量.此外,下一层中与被剪枝掉 等9]提出一种新的模型压缩方法称为“动态网络手 特征图所对应的滤波器也将被移除,这又减少几+2 术”(dynamic network surgery),它可以通过网络训 k2h:+2心:+2的计算量.为了衡量每层滤波器重要性, 练动态地进行网络剪枝.与之前使用贪婪方式进行 提出通过计算每一层滤波器权重绝对值之和,然后 剪枝的方法比,此方法将连接拼接的思想结合到整 移除那些求和值较小的滤波器以及所对应特征图的 个网络剪枝过程中可以有效避免错误剪枝且使其成 方法.为了在多个层同时进行剪枝,又提出独立剪 为连续过程.Jia等[2o】提出Drop Prunning剪枝技 枝和贪婪剪枝两种方式.对于剪枝后网络训练也提 术,此方法也采用标准的迭代剪枝-重训练的策略, 出两种训练方式,分别为多次剪枝操作后再训练与 提出在每一个剪枝阶段都使用策略,随机删除一部 剪枝和重训练交替进行,针对不同难度网络采用不 分不重要权重和随机恢复一些被剪枝权重,此方法 同训练方式 卷积核矩阵 F 图1减去一个滤波器及其对应的特征图[2)] Fig.I Pruning a filter and its corresponding feature map(2] Hu等[2]提出网络修剪(network trimming),通 多滤波器之间的激活是高度不相关的,因此利用这 过对在大型数据集上神经元的输出分析来减掉不重 点来剔除大量只具有少量信息的滤波器而不影响模 要部分来迭代地优化网络.Tian等s]发现,在最后 型性能.Luo等2]提出将滤波器剪枝当作一个优化 一个卷积层中,经过线性判别分析(linear discrimi-- 问题,并且揭示对滤波器进行剪枝需要基于从下一 nant analysis,LDA)分析发现对于每一个类别,有很 层计算得到统计信息而非当前层,这是此方法与其
李江昀等: 深度神经网络模型压缩综述 针对以上非结构化剪枝的问题,Anwar 等[16] 率 先提出了结构化剪枝的概念. 方法的主要思想是定 义显著性变量并进行贪婪剪枝,提出核内定步长粒 度将细粒度剪枝转化为粗粒度剪枝如通道剪枝或卷 积核剪枝. 核内定步长粒度核心思想为作用在同一 输入特征图上的卷积核必须采用相同的步长和偏 置,作用在不同特征图上的卷积核步长与偏置可以 不同. 进行贪婪剪枝时,提出使用进化粒子滤波器 决定网络连接重要性,使用此方法可以保证网络准 确率下降更低. Wen 等[17] 提出了结构稀疏化的学 习方法去对深度神经网络的结构如卷积核、通道、层 深度等进行正则化. 此方法可以从一个更大的深度 神经网络学习到一个更紧凑的模型来减少参数量和 计算量,而且可以获得对深度神经网络硬件友好的 结构化稀疏方式来加速网络验证并可以提高最终分 类精度. Lin 等[18]提出结构化稀疏正则化. 此方法结合 两种不同的结构化稀疏方式,充分协调全局输出与 局部剪枝操作去自适应的剪枝滤波器. 此外,提出 基于拉格朗日乘法器的交替更新机制在提升网络结 构化稀疏性与优化识别损失之间进行更替. Guo 等[19]提出一种新的模型压缩方法称为“动态网络手 术冶(dynamic network surgery), 它可以通过网络训 练动态地进行网络剪枝. 与之前使用贪婪方式进行 剪枝的方法比,此方法将连接拼接的思想结合到整 个网络剪枝过程中可以有效避免错误剪枝且使其成 为连续过程. Jia 等[20] 提出 Drop Prunning 剪枝技 术,此方法也采用标准的迭代剪枝鄄鄄重训练的策略, 提出在每一个剪枝阶段都使用策略,随机删除一部 分不重要权重和随机恢复一些被剪枝权重,此方法 可以解决传统剪枝方法的局部重要性判断以及无法 弥补的剪枝过程,原理类似于随机神经元失活. 1郾 3 卷积核剪枝与通道剪枝 卷积核剪枝与通道剪枝都属于粗粒度剪枝,剪 枝后模型使用现有硬件与计算库即可进行训练,并 且最终可以获得更高压缩率与更短计算时间. 虽然 两种剪枝方式出发点并不一样,但其本质上是一致 的,特征图与卷积核具有对应关系,减去某一个特征 图的同时与其相连的卷积核也将被一起移除. Li 等[21] 提出基于卷积核剪枝的压缩技术. 主 要思想是对网络输出精度影响较小的卷积核进行剪 枝,通过移除网络中那些卷积核以及其所连接的特 征图,网络计算量大幅度降低. 假设网络第 i 个卷 积层的输入通道数为 ni,hi / wi 分别表示输入特征图 的宽和高,通过卷积层得到的输出特征图通道数为 ni + 1 ,hi + 1 / wi + 1分别表示输出特征图的宽和高,卷积 核 的 宽 和 高 均 为 k, 那 么 卷 积 核 矩 阵 Fi 沂 R ni 伊 ni + 1 伊 k 伊 k ,进行卷积运算的计算量为 ni + 1 ni k 2 hi + 1 wi + 1 . 根据图 1 所示,当一个滤波器 Fi,j被剪枝掉, 它所对应的特征图 xi + 1,j 也将被移除, 这减少了 ni k 2 hi + 1wi + 1次计算量. 此外,下一层中与被剪枝掉 特征图所对应的滤波器也将被移除,这又减少 ni + 2 k 2 hi + 2wi + 2的计算量. 为了衡量每层滤波器重要性, 提出通过计算每一层滤波器权重绝对值之和,然后 移除那些求和值较小的滤波器以及所对应特征图的 方法. 为了在多个层同时进行剪枝,又提出独立剪 枝和贪婪剪枝两种方式. 对于剪枝后网络训练也提 出两种训练方式,分别为多次剪枝操作后再训练与 剪枝和重训练交替进行,针对不同难度网络采用不 同训练方式. 图 1 减去一个滤波器及其对应的特征图[21] Fig. 1 Pruning a filter and its corresponding feature map [21] Hu 等[22] 提出网络修剪( network trimming),通 过对在大型数据集上神经元的输出分析来减掉不重 要部分来迭代地优化网络. Tian 等[23] 发现,在最后 一个卷积层中,经过线性判别分析( linear discrimi鄄 nant analysis, LDA)分析发现对于每一个类别,有很 多滤波器之间的激活是高度不相关的,因此利用这 点来剔除大量只具有少量信息的滤波器而不影响模 型性能. Luo 等[24]提出将滤波器剪枝当作一个优化 问题,并且揭示对滤波器进行剪枝需要基于从下一 层计算得到统计信息而非当前层,这是此方法与其 ·1231·
·1232· 工程科学学报.第41卷,第10期 他方法的重要区别.He等2]提出软滤波器剪枝加 非结构化的连续体显式调整.Cheng等[]提出使用 速深度神经网络的推断。此方法允许被剪掉滤波器 循环推测方法去代替全连接层中卷积线性预测.此 在训练中继续更新,这使得网络有更大模型容量与 循环结构可以持续减少内存占用并可以使用快速傅 优化空间,并且可以减少对预训练模型依赖,使得模 里叶变换来加速计算,大大降低模型空间复杂度. 型能从头训练 以上三种方法均是基于结构化矩阵方式来减少内存 He等2]提出一种递归两阶段通道剪枝算法去 消耗并加速网络的推理以及训练速度 有效地对每层进行剪枝.首先利用lass0回归方法 Chen等[)]提出利用网络本身冗余去实现模型 对卷积通道进行选择性删除,然后利用最小二乘重 压缩的哈希网络.此方法利用低成本哈希函数随机 构删除之前网络响应.进一步将此方法推广到多分 地将有连接权重分组到哈希桶中,同一个哈希桶内 支情况,在保证性能前提下降低模型参数量与计算 参数将共享同一值,这些参数可以使用反向传播进 量.H血等[2]认为存在的剪枝方法直接重构特征图 行调整.哈希程序不需要额外内存消耗并可以大大 误差来进行通道选择,这忽略了特征图特征和语义 提高网络的速度.Shi等[34]在哈希网络基础上进一 分布以及通道对整体表现的真正贡献,因此提出同 步提出函数哈希网络.对于网络每一层,使用多个 时利用基础模型输出以及被剪枝的分类损失函数去 低成本哈希函数在压缩空间取值,然后使用小重构 监督每层通道选择,尤其引入附加损失去编码基础 网络去恢复那一层输出.Han等1)使用k均值聚类 模型和被剪枝模型特征图内特征与语义分布差异, 的方法进行参数共享.首先修剪不重要连接,重新 通过同时考虑重构误差、附加损失和分类损失,被剪 训练稀疏连接网络,然后使用权重共享连接权重,再 枝后模型精度获得极大提高.Zhuang等[2]提出一 对量化后的权重和码本使用霍夫曼编码,以进一步 个简单有效判别力驱动的通道剪枝去选择真正有助 降低压缩率.如图2所示,对训练好的模型,使用k 于判别力的通道.引入判别力驱动损失函数去增加 均值聚类算法确定每一层共享权重数值,所有属于 网络中间层判别力并通过考虑附加损失和重构误差 同一簇权重共享相同权值,但是对不同层权值不共 去选择出每层最有判别力通道,最后提出一种贪婪 享.将n个原始权重W={w1,w2,…,wn}划分到k 算法去进行通道选择以及参数优化.He与Han[2] 个聚类中C={c1,c2,…,cn},n≥k,最小化簇内平 提出一种自动深度压缩方法,利用强化学习去采样 方和(within-cluster sum of squares,WCSS): 设计空间实现了更高的模型压缩率 argmin∑∑lw-c,2 (1) 评价:网络剪枝是为了移除网络中冗余参数,从 i=1 weci 而降低网络复杂度,提高网络泛化能力.因此最重 Wu等3]提出对权重使用k均值算法,通过仅 要的问题就是如何确定网络中哪些参数是冗余的, 记录k个聚类中心以及权重分配指数进行权值共享 不论是哪种剪枝方式都必须要面对此问题.为此, 压缩算法.Lu等6]提出对循环神经网络(recurrent 许多方法已经被提出来,但是目前并没有明确准则 neural networks,RNN)使用低秩分解与参数共享机 来解决此问题.大多数方法都需要反复实验来确 制减少循环结构冗余.i等)提出权重采样网 定,这造成人力与物力的极大浪费.此外,剪枝后的 络,从一个紧密可学习参数集中采样来学习模型参 网络有可能需要额外的存储开销以及计算库,这对 数.这种方式天然迫使网络参数共享,且可以同时 于模型在嵌入式或者移动设备上部署造成影响. 提升权重与计算共享,最终结合权值量化可以在模 2参数共享 型大小以及计算量上取得巨大下降.Yang等)提 出卷积滤波器表示的权重共享方法进行模型压缩. 参数共享或者权值共享主要思想就是让网络中 该方法通过学习三维张量滤波器(filter summary, 多个参数共享同一值,但是具体实现方式不尽相同. S),减少卷积层参数个数.将卷积滤波器作为重叠 Appuswamy等[o]推导了高效能神经形态结构中网 三维块从张量滤波器中提取,并在它们重叠区域将 络表示与块托普利兹卷积矩阵之间关系,并在此基 附近滤波器加入张量滤波器共享权重. 础上利用一组结构化卷积矩阵来实现深度卷积网络 评价:参数共享主要是让网络中多个参数共享 并取得显著效果.Sindhwani等[3]提出统一框架来 一值.此方法从原理上可以极大的降低模型参数 学习一大类以低秩为特征的结构参数矩阵.结构化 量,但是在实际操作过程中,通常会需要进行k均值 转换允许快速函数和梯度评估,并跨越丰富参数共 聚类,模型最终结果与聚类效果息息相关.而且,如 享配置范围,其统计建模能力可以沿着从结构化到 果过分追求模型压缩比,使用参数共享后模型精度
工程科学学报,第 41 卷,第 10 期 他方法的重要区别. He 等[25] 提出软滤波器剪枝加 速深度神经网络的推断. 此方法允许被剪掉滤波器 在训练中继续更新,这使得网络有更大模型容量与 优化空间,并且可以减少对预训练模型依赖,使得模 型能从头训练. He 等[26]提出一种递归两阶段通道剪枝算法去 有效地对每层进行剪枝. 首先利用 lasso 回归方法 对卷积通道进行选择性删除,然后利用最小二乘重 构删除之前网络响应. 进一步将此方法推广到多分 支情况,在保证性能前提下降低模型参数量与计算 量. Hu 等[27]认为存在的剪枝方法直接重构特征图 误差来进行通道选择,这忽略了特征图特征和语义 分布以及通道对整体表现的真正贡献,因此提出同 时利用基础模型输出以及被剪枝的分类损失函数去 监督每层通道选择,尤其引入附加损失去编码基础 模型和被剪枝模型特征图内特征与语义分布差异, 通过同时考虑重构误差、附加损失和分类损失,被剪 枝后模型精度获得极大提高. Zhuang 等[28] 提出一 个简单有效判别力驱动的通道剪枝去选择真正有助 于判别力的通道. 引入判别力驱动损失函数去增加 网络中间层判别力并通过考虑附加损失和重构误差 去选择出每层最有判别力通道,最后提出一种贪婪 算法去进行通道选择以及参数优化. He 与 Han [29] 提出一种自动深度压缩方法,利用强化学习去采样 设计空间实现了更高的模型压缩率. 评价:网络剪枝是为了移除网络中冗余参数,从 而降低网络复杂度,提高网络泛化能力. 因此最重 要的问题就是如何确定网络中哪些参数是冗余的, 不论是哪种剪枝方式都必须要面对此问题. 为此, 许多方法已经被提出来,但是目前并没有明确准则 来解决此问题. 大多数方法都需要反复实验来确 定,这造成人力与物力的极大浪费. 此外,剪枝后的 网络有可能需要额外的存储开销以及计算库,这对 于模型在嵌入式或者移动设备上部署造成影响. 2 参数共享 参数共享或者权值共享主要思想就是让网络中 多个参数共享同一值,但是具体实现方式不尽相同. Appuswamy 等[30] 推导了高效能神经形态结构中网 络表示与块托普利兹卷积矩阵之间关系,并在此基 础上利用一组结构化卷积矩阵来实现深度卷积网络 并取得显著效果. Sindhwani 等[31] 提出统一框架来 学习一大类以低秩为特征的结构参数矩阵. 结构化 转换允许快速函数和梯度评估,并跨越丰富参数共 享配置范围,其统计建模能力可以沿着从结构化到 非结构化的连续体显式调整. Cheng 等[32]提出使用 循环推测方法去代替全连接层中卷积线性预测. 此 循环结构可以持续减少内存占用并可以使用快速傅 里叶变换来加速计算,大大降低模型空间复杂度. 以上三种方法均是基于结构化矩阵方式来减少内存 消耗并加速网络的推理以及训练速度. Chen 等[33]提出利用网络本身冗余去实现模型 压缩的哈希网络. 此方法利用低成本哈希函数随机 地将有连接权重分组到哈希桶中,同一个哈希桶内 参数将共享同一值,这些参数可以使用反向传播进 行调整. 哈希程序不需要额外内存消耗并可以大大 提高网络的速度. Shi 等[34] 在哈希网络基础上进一 步提出函数哈希网络. 对于网络每一层,使用多个 低成本哈希函数在压缩空间取值,然后使用小重构 网络去恢复那一层输出. Han 等[14]使用 k 均值聚类 的方法进行参数共享. 首先修剪不重要连接,重新 训练稀疏连接网络,然后使用权重共享连接权重,再 对量化后的权重和码本使用霍夫曼编码,以进一步 降低压缩率. 如图 2 所示,对训练好的模型,使用 k 均值聚类算法确定每一层共享权重数值,所有属于 同一簇权重共享相同权值,但是对不同层权值不共 享. 将 n 个原始权重 W = {w1 ,w2 ,…,wn }划分到 k 个聚类中 C = { c1 ,c2 ,…,cn },n垌k,最小化簇内平 方和(within鄄cluster sum of squares, WCSS): argmin C 移 k i = 1 移w沂ci |w - ci | 2 (1) Wu 等[35]提出对权重使用 k 均值算法,通过仅 记录 k 个聚类中心以及权重分配指数进行权值共享 压缩算法. Lu 等[36]提出对循环神经网络 (recurrent neural networks,RNN) 使用低秩分解与参数共享机 制减少循环结构冗余. Jin 等[37] 提出权重采样网 络,从一个紧密可学习参数集中采样来学习模型参 数. 这种方式天然迫使网络参数共享,且可以同时 提升权重与计算共享,最终结合权值量化可以在模 型大小以及计算量上取得巨大下降. Yang 等[38] 提 出卷积滤波器表示的权重共享方法进行模型压缩. 该方法通过学习三维张量滤波器 ( filter summary, FS),减少卷积层参数个数. 将卷积滤波器作为重叠 三维块从张量滤波器中提取,并在它们重叠区域将 附近滤波器加入张量滤波器共享权重. 评价:参数共享主要是让网络中多个参数共享 一值. 此方法从原理上可以极大的降低模型参数 量,但是在实际操作过程中,通常会需要进行 k 均值 聚类,模型最终结果与聚类效果息息相关. 而且,如 果过分追求模型压缩比,使用参数共享后模型精度 ·1232·
李江昀等:深度神经网络模型压缩综述 ·1233. 权重 聚类索引 32位浮点数 2位无符号整型数 聚类中心 微调过来的聚类中心 209 -0.98 1.48 0.09 2.00 1.96 0.05 -0.14 -1.08 2.12 1.50 1.48 聚类 091 192 0 -1.03 0.00 0.04 乘以 187 0 1.53 1.49 3 -1.00 学习率 -0.97 梯度 -0.03 -0.01 0.03 0.02 0.03 012 0.02 007 04 0.01 0.01 0.02 0.12 0.03 0.01 0.02 0.02 分组 降维 -0.01 0.02 0.04 0.01 0.02 -0.01 0.01 0.04 -0.02 0.04 0.07 -0.02 0.01 -0.02 -0.01 -0.02 0.01 0.01 0.03 图2 通过标量量化与中心体微调实现权重共享[4) Fig.2 Weight sharing by sealar quantization (top)and centroid fine-tuning bottom)(4) 会明显下降 络,分别为二值权重网络(binary-weight-networks)和 3量化 同或网络(XNOR-networks).二值权重网络通过对 滤波器权重进行二值量化节省32倍内存.同或网 量化主要思想是降低权重所需要的比特数来压 络对输入以及滤波器权重均进行二值量化,结果可 缩原始网络,主要包括低精度和重编码两类方法. 以提速58倍,减少内存32倍.Li等]对同或网络 对于卷积神经网络来说,网络模型权重都是单精度 改进,将卷积神经网络网络层输入进行高精度二值 浮点型32位.低精度方法使用更低位数的浮点数 量化,从而实现高精度二值网络计算,同或网络也是 或整型数对其进行训练、测试或存储:重编码方法对 对每个卷积神经网络网络层权值和输入进行二值 原有数据进行重新编码,采用更少的位数对原有数 化,这样整个卷积神经网络计算都是二值化,计算速 据进行表示,实现了模型的压缩. 度快,占内存小.Hwang与Sung[4s]提出基于重训练 低精度:Gupta等〔]基于随机修约的卷积神经 的反向传播优化定点设计.定点网络使用3值权重 网络训练中使用16比特定点表示法,显著降低内存 和3位表示信号,结果与浮点型网络相比精度下降 和浮点运算,同时分类准确率几乎没有受到损失. 很微弱.Hou等6)提出具有对角近似牛顿算法直 Han等人[4]提出对数据冗余精度进行裁剪.原本 接最小化二值化权值损失的海森近似.底层近端步 的32位精度浮点数由“1,8,23”结构构成,根据预 骤有封闭形式解决方案,二阶信息可以从Adam优 训练得到的全精度神经网络模型中的数据分布分别 化器已经计算的二阶矩有效获得.Lee等[an]提出基 对阶码和位数的长度进行适当的减少.实验表明, 于迭代解决L1正则化最小二乘和L2约束最小二乘 对于大部分人物来说,6比特或者8比特的数据已 问题的稀疏编码算法.此算法明显加快稀疏编码速 经足够保证测试的准确率.目前工业界对于8位整 度,并获得比之前更大的稀疏码本.Gudovskiy与 型或者16位半精度浮点数量化技术已经成熟,比如 Rigazio)提出用于无乘法卷积神经网络推理的普 TensorFlow-lite[o]和Nvidia的TensorRT均已经支持 遍低精度结构ShiftCNN.ShiftCNN基于2的幂加权 8位整型数据的网络训练以及存储. 表示,因此只执行移位和加法操作.Meller等[9]提 重编码:Courbariaux等[al-]提出在运行时使用 出适当因子分解可以显著降低量化引起的退化.一 二值化权重和激活二值化神经网络.网络训练时, 个给定网络有许多因子分解,它们在不改变网络功 二值化权重与激活用来计算参数梯度,并在前传过 能情况下改变网络权重.Xu等提出基于强化学 程中用位运算代替算术运算大大降低内存大小 习的动态网络量化框架,由位宽控制器与量化器组 Rastegari等[s]提出两个标准卷积神经网络近似网 成.利用策略梯度训练一个中间体通过位宽控制器
李江昀等: 深度神经网络模型压缩综述 图 2 通过标量量化与中心体微调实现权重共享[14] Fig. 2 Weight sharing by scalar quantization (top) and centroid fine鄄tuning (bottom) [14] 会明显下降. 3 量化 量化主要思想是降低权重所需要的比特数来压 缩原始网络,主要包括低精度和重编码两类方法. 对于卷积神经网络来说,网络模型权重都是单精度 浮点型 32 位. 低精度方法使用更低位数的浮点数 或整型数对其进行训练、测试或存储;重编码方法对 原有数据进行重新编码,采用更少的位数对原有数 据进行表示,实现了模型的压缩. 低精度:Gupta 等[39] 基于随机修约的卷积神经 网络训练中使用 16 比特定点表示法,显著降低内存 和浮点运算,同时分类准确率几乎没有受到损失. Han 等人[14]提出对数据冗余精度进行裁剪. 原本 的 32 位精度浮点数由“1,8,23冶 结构构成,根据预 训练得到的全精度神经网络模型中的数据分布分别 对阶码和位数的长度进行适当的减少. 实验表明, 对于大部分人物来说,6 比特或者 8 比特的数据已 经足够保证测试的准确率. 目前工业界对于 8 位整 型或者 16 位半精度浮点数量化技术已经成熟,比如 TensorFlow鄄lite [40]和 Nvidia 的 TensorRT 均已经支持 8 位整型数据的网络训练以及存储. 重编码:Courbariaux 等[41鄄鄄42] 提出在运行时使用 二值化权重和激活二值化神经网络. 网络训练时, 二值化权重与激活用来计算参数梯度,并在前传过 程中用位运算代替算术运算大大降低内存大小. Rastegari 等[43]提出两个标准卷积神经网络近似网 络,分别为二值权重网络(binary鄄weight鄄networks)和 同或网络(XNOR鄄networks). 二值权重网络通过对 滤波器权重进行二值量化节省 32 倍内存. 同或网 络对输入以及滤波器权重均进行二值量化,结果可 以提速 58 倍,减少内存 32 倍. Li 等[44] 对同或网络 改进,将卷积神经网络网络层输入进行高精度二值 量化,从而实现高精度二值网络计算,同或网络也是 对每个卷积神经网络网络层权值和输入进行二值 化,这样整个卷积神经网络计算都是二值化,计算速 度快,占内存小. Hwang 与 Sung [45]提出基于重训练 的反向传播优化定点设计. 定点网络使用 3 值权重 和 3 位表示信号,结果与浮点型网络相比精度下降 很微弱. Hou 等[46] 提出具有对角近似牛顿算法直 接最小化二值化权值损失的海森近似. 底层近端步 骤有封闭形式解决方案,二阶信息可以从 Adam 优 化器已经计算的二阶矩有效获得. Lee 等[47]提出基 于迭代解决 L1 正则化最小二乘和 L2 约束最小二乘 问题的稀疏编码算法. 此算法明显加快稀疏编码速 度,并获得比之前更大的稀疏码本. Gudovskiy 与 Rigazio [48]提出用于无乘法卷积神经网络推理的普 遍低精度结构 ShiftCNN. ShiftCNN 基于 2 的幂加权 表示,因此只执行移位和加法操作. Meller 等[49] 提 出适当因子分解可以显著降低量化引起的退化. 一 个给定网络有许多因子分解,它们在不改变网络功 能情况下改变网络权重. Xu 等[50] 提出基于强化学 习的动态网络量化框架,由位宽控制器与量化器组 成. 利用策略梯度训练一个中间体通过位宽控制器 ·1233·
.1234· 工程科学学报.第41卷,第10期 来学习每一层的位宽.该控制器可以在精度和压缩 5 网络蒸馏 比之间进行权衡.在给定量化位宽序列情况下,量 化器采用量化距离作为量化过程中权重重要性 网络蒸馏或知识蒸馏(knowledge distillation, 判据. KD)的概念最早由Bucilucǎ等[s6]提出.他们训练一 评价:目前对于图像分类任务,许多量化技术都 个带有伪数据标记强分类器的压缩/集成模型,并恢 可以达到无损压缩,但是当任务变得复杂时,例如图 复原始较大网络输出.但这项工作仅限于浅层模 像分割等等,使用量化通常会对模型精度带来巨大 型.后来Ba与Caruana[s)]将深度较广的网络压缩 影响.尤其对于模型较大的卷积神经网络,比如 成较浅的网络,其中压缩模型模仿复杂模型学习函 GoogLeNet,二值网络会使网络精度大幅下降.此 数.知识蒸馏方法主要思想是通过softmax学习类 外,目前存在的二值化策略都是基于简单的矩阵相 分布输出,将知识从一个大的教师模型转化到一个 乘,这忽略了二值化对精度损失的影响 小的学生模型 Hinton等ss]引入知识蒸馏压缩框架,使用教师 4网络分解 模型最终softmax的输出对学生模型的输出进行监 卷积神经网络主要包括卷积层以及全连接层, 督,使得教师模型的信息可以传递到学生模型中. 卷积层计算量较大而参数量较少,而全连接层与之 知识蒸馏算法虽然简单,但在各种图像分类任务中 相反.因此,网络分解主要是将矩阵二维张量奇异 显示出良好效果.Romero等[s]提出当模型层数较 值分解(singular value decomposition,SVD)s推广 多时,直接使用教师模型的输出对学生模型进行监 到三维卷积核或者使用多个一维张量外积求和逼近 督会比较困难,因此提出Fitnets模型,将教师模型 来减少网络推断的时间 的中间层输出作为对学生模型的中级监督信息,使 Jaderberg等Is提出通过利用跨通道或滤波器 得两者中间层的响应尽量一致.如图3所示,首先 使用中级监督训练学生模型前半部分参数,然后再 冗余来构造一个在空间域中秩为1的低秩滤波器. 利用教师模型最后输出监督整个学生模型参数训 使用秩为1的卷积核作用在输入图上产生相互独立 练.其中,W,表示教师网络的训练参数,W、表示 的M个基本特征图.此方法与架构无关,可以很容 FitNet的训练参数,Wa表示教师网络从第一层到 易应用到现有的CPU和GPU卷积框架上,从而提 高性能.Kim等[]首先进行变分贝叶斯矩阵分解 第h层的训练参数,Wciu表示FitNet从第一层到 指导层的训练参数,W,是回归参数.Chen等o提 的秩选择,然后再进行核张量Tucker分解,最后再 出使用网络生长方法来获得学生模型网络结构. 次对模型进行调整.Denil等[s]提出给定每个特征 与Hoiem61]提出分别从横向和纵向上进行网络生 一部分权重值就可能准确预测剩下的值,并进一步 长,再利用知识蒸馏方法训练学生模型 说明不仅参数值可以被预测,而且许多参数甚至不 Zagoruyko与Komodakis[62]将注意力图(atten- 需要学习.Clvi等[s]提出塔克张量层去代替全连 tion ma即)作为知识从教师模型迁移到学生模型.注 接层的稠密矩阵,将这些权值矩阵视为高阶权值张 意力机制很早就被用在自然语言处理中,后来被证 量展开.利用张量分解压缩特性,提出利用权张量 明将注意力应用在卷积神经网络中也可以取得不错 多途径性质来有效减少参数个数的框架.塔克分解 效果.Mirzadeh等]引入多级知识蒸馏,利用一个 将权张量分解为核张量和因子矩阵.通过将矩阵导 中等规模网络来弥合学生和教师之间鸿沟.研究教 数的概念扩展到张量,在这个框架内重新推导反向 师助理粒度影响,并将该框架扩展到多级蒸馏.并 传播,通过计算梯度,利用的塔克分解物理可解释性 对教师助理知识提炼框架进行实证和理论分析 来洞察训练 Lu等64]为了同时达到良好性能和可解释性,将深 评价:网络分解方法对于模型压缩与加速非常 度神经网络引入决策树.将此问题表示为一个多输 直接,但是由于涉及到矩阵分解操作,实现起来并不 出回归问题,实验表明,在相同树深水平上,学生模 容易.此外,由于不同层含有不同的信息,因此全局 型比普通决策树具有更好精度性能 压缩对于网络至关重要,但目前方法是按层来进行 Yang等[6s]叼引入快照蒸馏(snapshot distillation, 矩阵分解,这不能进行全局参数压缩.最后,矩阵分 SD),这是第一个支持师生一代优化的框架.快照 解需要大量模型重训练已达到与原模型一致的收敛 蒸馏的概念非常简单:不借用前辈监督信号,而是从 效果 同一代人早期时代中提取信息,同时确保教师和学
工程科学学报,第 41 卷,第 10 期 来学习每一层的位宽. 该控制器可以在精度和压缩 比之间进行权衡. 在给定量化位宽序列情况下,量 化器采用量化距离作为量化过程中权重重要性 判据. 评价:目前对于图像分类任务,许多量化技术都 可以达到无损压缩,但是当任务变得复杂时,例如图 像分割等等,使用量化通常会对模型精度带来巨大 影响. 尤其对于模型较大的卷积神经网络,比如 GoogLeNet,二值网络会使网络精度大幅下降. 此 外,目前存在的二值化策略都是基于简单的矩阵相 乘,这忽略了二值化对精度损失的影响. 4 网络分解 卷积神经网络主要包括卷积层以及全连接层, 卷积层计算量较大而参数量较少,而全连接层与之 相反. 因此,网络分解主要是将矩阵二维张量奇异 值分解( singular value decomposition, SVD) [51] 推广 到三维卷积核或者使用多个一维张量外积求和逼近 来减少网络推断的时间. Jaderberg 等[52]提出通过利用跨通道或滤波器 冗余来构造一个在空间域中秩为 1 的低秩滤波器. 使用秩为 1 的卷积核作用在输入图上产生相互独立 的 M 个基本特征图. 此方法与架构无关,可以很容 易应用到现有的 CPU 和 GPU 卷积框架上,从而提 高性能. Kim 等[53] 首先进行变分贝叶斯矩阵分解 的秩选择,然后再进行核张量 Tucker 分解,最后再 次对模型进行调整. Denil 等[54] 提出给定每个特征 一部分权重值就可能准确预测剩下的值,并进一步 说明不仅参数值可以被预测,而且许多参数甚至不 需要学习. Calvi 等[55] 提出塔克张量层去代替全连 接层的稠密矩阵,将这些权值矩阵视为高阶权值张 量展开. 利用张量分解压缩特性,提出利用权张量 多途径性质来有效减少参数个数的框架. 塔克分解 将权张量分解为核张量和因子矩阵. 通过将矩阵导 数的概念扩展到张量,在这个框架内重新推导反向 传播,通过计算梯度,利用的塔克分解物理可解释性 来洞察训练. 评价:网络分解方法对于模型压缩与加速非常 直接,但是由于涉及到矩阵分解操作,实现起来并不 容易. 此外,由于不同层含有不同的信息,因此全局 压缩对于网络至关重要,但目前方法是按层来进行 矩阵分解,这不能进行全局参数压缩. 最后,矩阵分 解需要大量模型重训练已达到与原模型一致的收敛 效果. 5 网络蒸馏 网络蒸馏或知识蒸馏 ( knowledge distillation, KD)的概念最早由 Bucilu伲 等[56] 提出. 他们训练一 个带有伪数据标记强分类器的压缩/ 集成模型,并恢 复原始较大网络输出. 但这项工作仅限于浅层模 型. 后来 Ba 与 Caruana [57] 将深度较广的网络压缩 成较浅的网络,其中压缩模型模仿复杂模型学习函 数. 知识蒸馏方法主要思想是通过 softmax 学习类 分布输出,将知识从一个大的教师模型转化到一个 小的学生模型. Hinton 等[58]引入知识蒸馏压缩框架,使用教师 模型最终 softmax 的输出对学生模型的输出进行监 督,使得教师模型的信息可以传递到学生模型中. 知识蒸馏算法虽然简单,但在各种图像分类任务中 显示出良好效果. Romero 等[59] 提出当模型层数较 多时,直接使用教师模型的输出对学生模型进行监 督会比较困难,因此提出 Fitnets 模型,将教师模型 的中间层输出作为对学生模型的中级监督信息,使 得两者中间层的响应尽量一致. 如图 3 所示,首先 使用中级监督训练学生模型前半部分参数,然后再 利用教师模型最后输出监督整个学生模型参数训 练. 其中,WT 表示教师网络的训练参数,WS 表示 FitNet 的训练参数,WHint 表示教师网络从第一层到 第 h 层的训练参数,WGuided表示 FitNet 从第一层到 指导层的训练参数,Wr 是回归参数. Chen 等[60] 提 出使用网络生长方法来获得学生模型网络结构. Li 与 Hoiem [61]提出分别从横向和纵向上进行网络生 长,再利用知识蒸馏方法训练学生模型. Zagoruyko 与 Komodakis [62] 将注意力图( atten鄄 tion map)作为知识从教师模型迁移到学生模型. 注 意力机制很早就被用在自然语言处理中,后来被证 明将注意力应用在卷积神经网络中也可以取得不错 效果. Mirzadeh 等[63]引入多级知识蒸馏,利用一个 中等规模网络来弥合学生和教师之间鸿沟. 研究教 师助理粒度影响,并将该框架扩展到多级蒸馏. 并 对教师助理知识提炼框架进行实证和理论分析. Liu 等[64]为了同时达到良好性能和可解释性,将深 度神经网络引入决策树. 将此问题表示为一个多输 出回归问题,实验表明,在相同树深水平上,学生模 型比普通决策树具有更好精度性能. Yang 等[65]引入快照蒸馏( snapshot distillation, SD),这是第一个支持师生一代优化的框架. 快照 蒸馏的概念非常简单:不借用前辈监督信号,而是从 同一代人早期时代中提取信息,同时确保教师和学 ·1234·
李江昀等:深度神经网络模型压缩综述 ·1235· 教师网络 FitNet W w w. Weud-argminWW) W=argmin Lo(W。) W。 W Wcuiad W W W W yue W W (a) b C 图3使用知识提示方式训练学生网络[].(a)教师学生网络:(b)暗示学习:(c)知识蒸馏 Fig.3 Training a student network using hints[s):(a)teacher and student networks;(b)hints training:(c)knowledge distillation 生之间差异足够大.Wang等[6o]设计了专用模型压 引入了注意力的损失 缩框架.基于知识蒸馏范式,联合使用暗示学习、蒸 评价:基于网络蒸馏的方法可以使很深的模型 馏学习和自学习来训练一个紧凑、快速神经网络. 变得更浅,从而帮助网络减少大量计算量.但是目 从繁琐模型中提取知识是自适应有界的,并小心地 前网络蒸馏主要适用在分类任务上,对于检测、分割 加以扰动,以加强差异隐私.进一步提出一种查询 等复杂任务应用有很大的局限性,而且学生模型的 样本选择方法,以减少查询数量和控制隐私.Lee 设计缺少重要指导导致学生模型很难能训成功,这 等6)提出基于奇异值分解的知识提取方法.此外, 些都导致网络蒸馏方法还无法成为模型压缩的主流 将知识转移定义为一个自我监督任务,并提出连续 方法 接收教师模型信息的方法.Lan等6]提出用于在线 6紧凑网络设计 蒸馏的实时本地集成学习策略.Liu等[]将经过不 同初始化训练的多个模型集合提取为一个模型.除 以上模型压缩方法大多是针对已经训练好的模 了学习如何匹配集成对参考状态的概率输出外,还 型,通过各种手段降低其模型大小.然而紧凑网络 使用集成来探索搜索空间,并从探索中遇到的状态 设计是为了设计更加精简有效的网络,这是模型压 中学习. 缩另一个新颖的思路.近年来,紧凑网络设计取得 目前网络蒸馏方法大多用于分类任务,但对于 了巨大进展,大致方向可以分为紧凑卷积结构和网 更加复杂的检测、分割任务也存在一定应用.目标 络结构搜索 检测:Li等0]将网络蒸馏的方法引入到目标检测 紧凑卷积结构:卷积操作是深度神经网络中最 中,提出利用区域候选框采样后的特征图进行蒸馏, 重要的操作,网络的参数量与计算量占比颇高,因此 使用L2损失减小大小网络上局部特征采样结果的 很多工作都尝试对通常的卷积操作做出改进.lan- 差别,在检测任务上取得了一定的效果.Chen等] dola等[s]提出SqueezeNet,.大量使用1×1卷积核来 将himt学习、软目标和硬目标的方法同时引入到目 替换3×3卷积,降低3×3卷积核的通道数,延迟下 标检测蒸馏里面,通过对不同的损失函数赋予不同 采样等,最终参数量比AlexNet!)少50倍但精度类 权重实现整个网络的训练.Wang等[n)通过实验说 似.谷歌团队Howard等[6-]提出了MobileNet系列 明直接使用分类的蒸馏方式在检测中表现不足的原 移动端网络模型.MobileNetvl提出使用深度可分离 因,并在此基础上引入区域周边的锚点作为监督信 卷积(depth-wise separable convolution)来替代传统 息,避免了完全模拟时的背景噪声问题.语义分割: 卷积,极大的减少了网络的参数量:MobileNetv2.在 u等[]将相对嫡损失,注意力图损失以及生成对 MobileNetv1的基础上引入Linear Bottlenecks逆残差 抗网络(generative adversarial network,GAN)损失 结构来实现非线性修正单元的输入信息完整性,并 一起引入到分割任务中,在分割表现上取得了一定 提出Inverted Residuals来提升模型的表现能力; 提升.He等[4]提出使用自动编码器对教师模型特 MobileNetv3采用了神经网络搜索的方法,网络中引 征进行迁移使其更容易被学生模型所学习,同时也 入了SENet[例]中的轻量级注意力模块,在表现与
李江昀等: 深度神经网络模型压缩综述 图 3 使用知识提示方式训练学生网络[59] . (a)教师学生网络;(b)暗示学习;(c)知识蒸馏 Fig. 3 Training a student network using hints [59] : (a)teacher and student networks; (b)hints training;(c)knowledge distillation 生之间差异足够大. Wang 等[66] 设计了专用模型压 缩框架. 基于知识蒸馏范式,联合使用暗示学习、蒸 馏学习和自学习来训练一个紧凑、快速神经网络. 从繁琐模型中提取知识是自适应有界的,并小心地 加以扰动,以加强差异隐私. 进一步提出一种查询 样本选择方法,以减少查询数量和控制隐私. Lee 等[67]提出基于奇异值分解的知识提取方法. 此外, 将知识转移定义为一个自我监督任务,并提出连续 接收教师模型信息的方法. Lan 等[68]提出用于在线 蒸馏的实时本地集成学习策略. Liu 等[69] 将经过不 同初始化训练的多个模型集合提取为一个模型. 除 了学习如何匹配集成对参考状态的概率输出外,还 使用集成来探索搜索空间,并从探索中遇到的状态 中学习. 目前网络蒸馏方法大多用于分类任务,但对于 更加复杂的检测、分割任务也存在一定应用. 目标 检测:Li 等[70] 将网络蒸馏的方法引入到目标检测 中,提出利用区域候选框采样后的特征图进行蒸馏, 使用 L2 损失减小大小网络上局部特征采样结果的 差别,在检测任务上取得了一定的效果. Chen 等[71] 将 hint 学习、软目标和硬目标的方法同时引入到目 标检测蒸馏里面,通过对不同的损失函数赋予不同 权重实现整个网络的训练. Wang 等[72] 通过实验说 明直接使用分类的蒸馏方式在检测中表现不足的原 因,并在此基础上引入区域周边的锚点作为监督信 息,避免了完全模拟时的背景噪声问题. 语义分割: Liu 等[73]将相对熵损失,注意力图损失以及生成对 抗网络 ( generative adversarial network, GAN) 损失 一起引入到分割任务中,在分割表现上取得了一定 提升. He 等[74]提出使用自动编码器对教师模型特 征进行迁移使其更容易被学生模型所学习,同时也 引入了注意力的损失. 评价:基于网络蒸馏的方法可以使很深的模型 变得更浅,从而帮助网络减少大量计算量. 但是目 前网络蒸馏主要适用在分类任务上,对于检测、分割 等复杂任务应用有很大的局限性,而且学生模型的 设计缺少重要指导导致学生模型很难能训成功,这 些都导致网络蒸馏方法还无法成为模型压缩的主流 方法. 6 紧凑网络设计 以上模型压缩方法大多是针对已经训练好的模 型,通过各种手段降低其模型大小. 然而紧凑网络 设计是为了设计更加精简有效的网络,这是模型压 缩另一个新颖的思路. 近年来,紧凑网络设计取得 了巨大进展,大致方向可以分为紧凑卷积结构和网 络结构搜索. 紧凑卷积结构:卷积操作是深度神经网络中最 重要的操作,网络的参数量与计算量占比颇高,因此 很多工作都尝试对通常的卷积操作做出改进. Ian鄄 dola 等[75]提出 SqueezeNet,大量使用 1 伊 1 卷积核来 替换 3 伊 3 卷积,降低 3 伊 3 卷积核的通道数,延迟下 采样等,最终参数量比 AlexNet [2] 少 50 倍但精度类 似. 谷歌团队 Howard 等[76鄄鄄78]提出了 MobileNet 系列 移动端网络模型. MobileNetv1 提出使用深度可分离 卷积( depth鄄wise separable convolution) 来替代传统 卷积,极大的减少了网络的参数量;MobileNetv2 在 MobileNetv1 的基础上引入 Linear Bottlenecks 逆残差 结构来实现非线性修正单元的输入信息完整性,并 提出 Inverted Residuals 来提升模型的表现能力; MobileNetv3 采用了神经网络搜索的方法,网络中引 入了 SENet [79] 中的轻量级注意力模块,在表现与 ·1235·
·1236· 工程科学学报.第41卷,第10期 MobileNetv2类似的情况下速度明显提升.旷视科技 不宜使用:网络分解很难实现模型大小的明显降低, Zhang等[o-1]提出了ShuffleNet系列轻量化模型. 收效甚微:网络蒸馏实现起来比较困难,需要额外设 ShuffleNetv1采用了组卷积(group convolution)来降 计教师网络,且针对不同任务蒸馏难度也不一致,比 低模型参数量,利用通道重排(channel shuffle)来实 如针对一个无人超市行人监测的任务,使用蒸馏的 现不同组之间的信息交互.ShuffleNetv2探讨了网 方法就很难取得巨大提升而对超市里的物品进行分 络设计时所需要考虑的问题以及设计理念,并针对 类,蒸馏的成功率就会明显提升.目前工业界更偏 ShuffleNetv1中设计的不足进行了改进.此外,Xcep- 向于使用量化的方式进行模型压缩,因为目前使用 tion[]、ResNeXt[8]、ChannelNett]以及Incep- 半精度浮点数以及8位整型数对网络进行训练的技 tionv4s5]等等也都是在卷积设计上做了相关工作. 术已经成熟并可以达到商用的标准.但对于未来的 网络结构搜索:传统的网络模型均为人工设计, 工业界应用,使用神经网络结构搜索的方法对网络 网络的结构以及参数均是人为设定,这些都导致了 进行搜索是必然的趋势,脱离手工设计是迈向真正 设计出的模型并非最优,因此神经网络结构搜索 智能的重要一步 (neural architecture search,NAS)应运而生.Tan (3)尽管这些压缩方法取得了巨大成就,但黑 等6]提出了用于寻找在移动端最优的神经网络架 盒机制仍然是采用这些方法的关键障碍.探索知识 构搜索方法MnasNet,例如MobileNetv.3以及谷歌大 的解释能力仍然是一个重要的问题. 脑Tan与Lels]提出的EfficientNet..Liu等[]提出 7.2未来研究方向 了Auto-DeepLab,在图像语义分割问题上超越了很 (1)神经网络结构搜索:对于未来的工业界应 多业内最佳模型,甚至可以在未经过预训练的情况 用,使用神经网络结构搜索的方法对网络进行搜索 下达到预训练模型的表现 是必然的趋势,脱离手工设计是迈向真正智能的重 此外,Huang等[s9)提出根据不同难度的输入进 要一步 行动态推断,实现了网络的多级输出,提高了推断的 (2)自动模型压缩:基于自动机器学习的自动 效率.Shelhamer等[o]提出了ClockNet对特征进行 模型压缩,利用强化学习提供模型压缩策略,在模型 复用,实现了更高效的推断 大小、速度和准确率之间做出权衡. 评价:紧凑网络设计致力于设计出更加精简有 (3)任务驱动的压缩:目前存在的网络都是基 效的网络,目前已经有很多工作在尝试.对于未来 于存在的公开数据集进行训练与测试,但是针对具 的工业界应用,此方法是很重要的选择.尤其是神 体任务以及场景,可能仅需要其中的几个子类别 经网络结构搜索,一旦此方法发展成熟,那么将彻底 因此,如何从一个大网络压缩得到适用于具体任务 摆脱手工设计网络模型的问题,这将极大的推动工 的模型具有丰富的市场需求 业应用的发展.但目前来看神经网络结构搜索还有 (4)网络可解释性的探索:可解释性一直都是 待发展,并且使用神经网络结构搜索需要很大的硬 卷积神经网络的重要问题,一旦此问题得到突破,那 件与时间消耗,如何使用更少的资源、花费更少的时 么对于基于卷积神经网络的方法都将带来巨大的提 间来搜索出想要的网络是今后的重要目标. 升,都将有法可寻.因此,研究网络的可解释性将会 7存在的问题及未来研究方向 是卷积神经网络领域的核心问题 模型压缩是为了在保证模型精度情况下尽量的 上文总结了当前用于模型压缩的几种主流方 减少模型参数并尽量降低模型的计算量.本文从网 法,接下来主要讨论模型压缩存在的问题和未来研 络剪枝、参数共享,量化、网络分解、网络蒸馏以及紧 究方向. 凑网络设计六个方向对当前模型压缩方法进行总 7.1存在的问题 结,并对当前模型压缩存在的问题和未来的发展方 (1)目前大多数最先进的方法都是建立在精心 向进行阐述.当前模型压缩技术尚未完全成熟,仍 设计的卷积神经网络模型之上,这些模型对网络结 有很多方面等待挖掘与研究,希望本文可以使读者 构以及超参数配置有限.为了处理更复杂任务,应 对模型压缩有比较全面的认识,并能针对具体任务 该提供更合理的方法来配置压缩模型, 加以利用 (2)对于工业界的应用,网络剪枝需要大量的 人力以及物力的消耗,并且很难获得想要的提升:参 参考文献 数共享技术难度很高,容易使网络的精度下降过大, [1]LeCun Y,Bengio Y,Hinton G.Deep learning.Nature,2015
工程科学学报,第 41 卷,第 10 期 MobileNetv2 类似的情况下速度明显提升. 旷视科技 Zhang 等[80鄄鄄81] 提出了 ShuffleNet 系列轻量化模型. ShuffleNetv1 采用了组卷积( group convolution) 来降 低模型参数量,利用通道重排(channel shuffle)来实 现不同组之间的信息交互. ShuffleNetv2 探讨了网 络设计时所需要考虑的问题以及设计理念,并针对 ShuffleNetv1 中设计的不足进行了改进. 此外,Xcep鄄 tion [82] 、 ResNeXt [83] 、 ChannelNet [84] 以 及 Incep鄄 tionv4 [85]等等也都是在卷积设计上做了相关工作. 网络结构搜索:传统的网络模型均为人工设计, 网络的结构以及参数均是人为设定,这些都导致了 设计出的模型并非最优,因此神经网络结构搜索 ( neural architecture search, NAS ) 应 运 而 生. Tan 等[86]提出了用于寻找在移动端最优的神经网络架 构搜索方法 MnasNet,例如 MobileNetv3 以及谷歌大 脑 Tan 与 Le [87] 提出的 EfficientNet. Liu 等[88] 提出 了 Auto鄄DeepLab,在图像语义分割问题上超越了很 多业内最佳模型,甚至可以在未经过预训练的情况 下达到预训练模型的表现. 此外,Huang 等[89]提出根据不同难度的输入进 行动态推断,实现了网络的多级输出,提高了推断的 效率. Shelhamer 等[90] 提出了 ClockNet 对特征进行 复用,实现了更高效的推断. 评价:紧凑网络设计致力于设计出更加精简有 效的网络,目前已经有很多工作在尝试. 对于未来 的工业界应用,此方法是很重要的选择. 尤其是神 经网络结构搜索,一旦此方法发展成熟,那么将彻底 摆脱手工设计网络模型的问题,这将极大的推动工 业应用的发展. 但目前来看神经网络结构搜索还有 待发展,并且使用神经网络结构搜索需要很大的硬 件与时间消耗,如何使用更少的资源、花费更少的时 间来搜索出想要的网络是今后的重要目标. 7 存在的问题及未来研究方向 上文总结了当前用于模型压缩的几种主流方 法,接下来主要讨论模型压缩存在的问题和未来研 究方向. 7郾 1 存在的问题 (1)目前大多数最先进的方法都是建立在精心 设计的卷积神经网络模型之上,这些模型对网络结 构以及超参数配置有限. 为了处理更复杂任务,应 该提供更合理的方法来配置压缩模型. (2)对于工业界的应用,网络剪枝需要大量的 人力以及物力的消耗,并且很难获得想要的提升;参 数共享技术难度很高,容易使网络的精度下降过大, 不宜使用;网络分解很难实现模型大小的明显降低, 收效甚微;网络蒸馏实现起来比较困难,需要额外设 计教师网络,且针对不同任务蒸馏难度也不一致,比 如针对一个无人超市行人监测的任务,使用蒸馏的 方法就很难取得巨大提升而对超市里的物品进行分 类,蒸馏的成功率就会明显提升. 目前工业界更偏 向于使用量化的方式进行模型压缩,因为目前使用 半精度浮点数以及 8 位整型数对网络进行训练的技 术已经成熟并可以达到商用的标准. 但对于未来的 工业界应用,使用神经网络结构搜索的方法对网络 进行搜索是必然的趋势,脱离手工设计是迈向真正 智能的重要一步. (3)尽管这些压缩方法取得了巨大成就,但黑 盒机制仍然是采用这些方法的关键障碍. 探索知识 的解释能力仍然是一个重要的问题. 7郾 2 未来研究方向 (1)神经网络结构搜索:对于未来的工业界应 用,使用神经网络结构搜索的方法对网络进行搜索 是必然的趋势,脱离手工设计是迈向真正智能的重 要一步. (2)自动模型压缩:基于自动机器学习的自动 模型压缩,利用强化学习提供模型压缩策略,在模型 大小、速度和准确率之间做出权衡. (3)任务驱动的压缩:目前存在的网络都是基 于存在的公开数据集进行训练与测试,但是针对具 体任务以及场景,可能仅需要其中的几个子类别. 因此,如何从一个大网络压缩得到适用于具体任务 的模型具有丰富的市场需求. (4)网络可解释性的探索:可解释性一直都是 卷积神经网络的重要问题,一旦此问题得到突破,那 么对于基于卷积神经网络的方法都将带来巨大的提 升,都将有法可寻. 因此,研究网络的可解释性将会 是卷积神经网络领域的核心问题. 模型压缩是为了在保证模型精度情况下尽量的 减少模型参数并尽量降低模型的计算量. 本文从网 络剪枝、参数共享,量化、网络分解、网络蒸馏以及紧 凑网络设计六个方向对当前模型压缩方法进行总 结,并对当前模型压缩存在的问题和未来的发展方 向进行阐述. 当前模型压缩技术尚未完全成熟,仍 有很多方面等待挖掘与研究,希望本文可以使读者 对模型压缩有比较全面的认识,并能针对具体任务 加以利用. 参 考 文 献 [1] LeCun Y, Bengio Y, Hinton G. Deep learning. Nature, 2015, ·1236·
李江昀等:深度神经网络模型压缩综述 ·1237· 521(7553):436 Netorks Learn Syst,2019:1. [2]Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification [19]Guo Y W,Yao A B.Chen Y R.Dynamic network surgery for ef- with deep convolutional neural networks//Adrances in Neural In- ficient DNNs//Adrances in Neural Information Processing Sys- formation Processing Systems.Lake Tahoe,2012:1097 tems.Barcelona,2016:1379 [3]Simonyan K,Zisserman A.Very deep convolutional networks for [20]Jia H P,Xiang X S,Fan D,et al.DropPruning for model com- large-scale image recognition [J/OL].ArXir Preprint(2015-04- pression [J/OL].ArXir Preprint (2018-12-05)[2019-03- 10)[2019-03-22].https:/aniv.org/ahs/1409.1556 22].https://arxiv.org/abs/1812.02035 [4]Szegedy C.Liu W,Jia Y Q,et al.Going deeper with convolutions [21]Li H,Kadav A,Durdanovic I,et al.Pruning filters for efficient /Proceedings of the IEEE Conference on Computer Vision and convnets [J/OL].ArXiv Preprint (2017-03-10)[2019-03- Pattern Recognition.Boston,2015:1 22].https://arxiv.org/abs/1608.08710 [5]He K M,Zhang X Y,Ren S Q,et al.Deep residual learning for [22]Hu H Y.Peng R,Tai Y W,et al.Network trimming:a data- image recognition /Proceedings of the IEEE Conference on Com- driven neuron pruning approach towards efficient deep architec- puter Vision and Pattern Recognition.Washington DC,2016:770 tures[J/0L].arXin preprint(2016-07-12)[2019-03-22]. [6]Huang G,Liu Z,van der Maaten L,et al.Densely connected https://arxiv.org/abs/1607.03250 convolutional networks /Proceedings of the IEEE Conference on [23]Tian Q,Arbel T,Clark J J.Deep LDA-pruned nets for efficient Computer Vision and Pattern Recognition.Hawaii,2017:4700 facial gender classification//Proceedings of IEEE Conference on [7]Le Q V,Ngiam J,Coates A,et al.On optimization methods for Computer Vision and Pattern Recognition Workshops.Hawai, deep learning /Proceedings of the 28th International Conference 2017:10 on International Conference on Machine Learning.Omnipress, [24]Luo J H,Wu JX,Lin W Y.ThiNet:a filter level pruning meth- 2011:265 od for deep neural network compression//Proceedings of the [8]Han Y F,Jiang T H,Ma Y P,et al.Compression of deep neural IEEE International Conference on Computer Vision.Venice, networks.Comput Appl Res,2018,35(10):2894 2017:5058 (韩云飞,蒋同海,马玉鹏,等.深度神经网络的压缩研究。 [25]He Y,Kang G L,Dong X Y,et al.Soft filter pruning for accel- 计算机应用研究,2018,35(10):2894) erating deep convolutional neural networks [J/OL].ArXi Pre- [9]Setiono R,Liu H.Neural-network feature selector.IEEE Trans print(2018-08-21)[2019-03-22].htps:/aniv.org/ahs/ Neural Netcorks,1997,8(3):654 1808.06866 [10]LeCun Y,Denker JS,Solla S A.et al.Optimal brain damage [26]He Y H,Zhang X Y,Sun J.Channel pruning for accelerating /Adrances in Neural Information Processing Systems.Denver, very deep neural networks [J/OL].ArXir Preprint (2017-08- 1989:598 21)[2019-03-22].http5:/arxiv.og/ahs/1707.06168 [11]Hassibi B,Stork D G,Wolff G J.Optimal brain surgeon and [27]Hu Y M,Sun S Y,Li JQ,et al.Multi-loss-aware channel prun- general network pruning /IEEE International Conference on ing of deep networks [J/OL].ArXie Preprint (2019-02-27) Neural Netcorks.San Francisco,1993:293 [2019-03-22].htps://axiv.org/ahs/1902.10364 [12]Hassibi B.Stork DG.Second order derivatives for network prun- [28]Zhuang Z W,Tan M K,Zhuang B H,et al.Discrimination-a- ing:optimal brain surgeon /Adrances in Neural Information Processing Systems.Denver,1993:164 ware channel pruning for deep neural networks [J/OL].ArXir [13]Han S,Pool J,Tran J,et al.Learning both weights and connec- Preprint(2019-01-14)[2019-03-22].https:/axiv.og/ tions for efficient neural network//Advances in Neural Informa- ahs/1810.11809 tion Processing Systems.Montreal,2015:1135 [29]He Y H,Han S.ADC:automated deep compression and accel- [14]Han S,Mao H,Dally W J.Deep compression:compressing eration with reinforeement learning J/OL].ArXir Preprint deep neural networks with pruning,trained quantization and huff- (2019-01-16)[2019-03-22].https:/aniv.org/abs/1802. man coding [J/OL].ArXir Preprint (2016-02-15)[2019-03- 03494v1 22].https://arxiv.org/abs/1510.00149 [30]Appuswamy R,Nayak T,Arthur J,et al.Structured convolution [15]Srinivas S,Subramanya A,Venkatesh Babu R.Training sparse matrices for energy-efficient deep learning [J/OL].ArXir Pre- neural networks//Proceedings of IEEE Conference on Computer pint(2016-06-08)[2019-03-22].https:/aiw.og/abs/ Vision and Pattern Recognition Workshops.Hawaii,2017:138 1606.02407 [16]Anwar S.Hwang K.Sung W.Structured pruning of deep convo- [31]Sindhwani V,Sainath T N,Kumar S.Structured transforms for lutional neural networks.ACM J Emerg Technol Comput Syst, small-footprint deep learning [J/OL].ArXir Preprint (2015-10- 2017,13(3):32 06)[2019-03-22].htps:/aiw.org/abs/1510.01722 [17]Wen W,Wu C P,Wang Y D,et al.Learning structured sparsity [32]Cheng Y.Yu F X,Feris R S,et al.An exploration of parameter in deep neural networks //Adrances in Neural Information Pro- redundancy in deep networks with circulant projections [JOL]. cessing Systems.Barcelona,2016:2074 ArXir Preprint (2015-10-27)[2019-03-22].https://arxiv. [18]Lin S H,Ji RR,Li Y C.et al.Toward compact ConvNets via org/abhs/1502.03436 structure-sparsity regularized filter pruning.IEEE Trans Neural [33]Chen WL,Wilson JT,Tyree S,et al.Compressing neural net-
李江昀等: 深度神经网络模型压缩综述 521(7553): 436 [2] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks / / Advances in Neural In鄄 formation Processing Systems. Lake Tahoe, 2012: 1097 [3] Simonyan K, Zisserman A. Very deep convolutional networks for large鄄scale image recognition [J/ OL]. ArXiv Preprint (2015鄄鄄04鄄鄄 10) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1409. 1556 [4] Szegedy C, Liu W, Jia Y Q, et al. Going deeper with convolutions / / Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Boston, 2015: 1 [5] He K M, Zhang X Y, Ren S Q, et al. Deep residual learning for image recognition / / Proceedings of the IEEE Conference on Com鄄 puter Vision and Pattern Recognition. Washington DC, 2016: 770 [6] Huang G, Liu Z, van der Maaten L, et al. Densely connected convolutional networks / / Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Hawaii, 2017: 4700 [7] Le Q V, Ngiam J, Coates A, et al. On optimization methods for deep learning / / Proceedings of the 28th International Conference on International Conference on Machine Learning. Omnipress, 2011: 265 [8] Han Y F, Jiang T H, Ma Y P, et al. Compression of deep neural networks. Comput Appl Res, 2018, 35(10): 2894 (韩云飞, 蒋同海, 马玉鹏, 等. 深度神经网络的压缩研究. 计算机应用研究, 2018, 35(10): 2894) [9] Setiono R, Liu H. Neural鄄network feature selector. IEEE Trans Neural Networks, 1997, 8(3): 654 [10] LeCun Y, Denker J S, Solla S A, et al. Optimal brain damage / / Advances in Neural Information Processing Systems. Denver, 1989: 598 [11] Hassibi B, Stork D G, Wolff G J. Optimal brain surgeon and general network pruning / / IEEE International Conference on Neural Networks. San Francisco, 1993: 293 [12] Hassibi B, Stork D G. Second order derivatives for network prun鄄 ing: optimal brain surgeon / / Advances in Neural Information Processing Systems. Denver, 1993: 164 [13] Han S, Pool J, Tran J, et al. Learning both weights and connec鄄 tions for efficient neural network / / Advances in Neural Informa鄄 tion Processing Systems. Montreal, 2015: 1135 [14] Han S, Mao H, Dally W J. Deep compression: compressing deep neural networks with pruning, trained quantization and huff鄄 man coding [J/ OL]. ArXiv Preprint (2016鄄鄄02鄄鄄15) [2019鄄鄄03鄄鄄 22]. https:/ / arxiv. org / abs/ 1510. 00149 [15] Srinivas S, Subramanya A, Venkatesh Babu R. Training sparse neural networks / / Proceedings of IEEE Conference on Computer Vision and Pattern Recognition Workshops. Hawaii, 2017: 138 [16] Anwar S, Hwang K, Sung W. Structured pruning of deep convo鄄 lutional neural networks. ACM J Emerg Technol Comput Syst, 2017, 13(3): 32 [17] Wen W, Wu C P, Wang Y D, et al. Learning structured sparsity in deep neural networks / / Advances in Neural Information Pro鄄 cessing Systems. Barcelona, 2016: 2074 [18] Lin S H, Ji R R, Li Y C, et al. Toward compact ConvNets via structure鄄sparsity regularized filter pruning. IEEE Trans Neural Networks Learn Syst, 2019: 1. [19] Guo Y W, Yao A B, Chen Y R. Dynamic network surgery for ef鄄 ficient DNNs / / Advances in Neural Information Processing Sys鄄 tems. Barcelona, 2016: 1379 [20] Jia H P, Xiang X S, Fan D, et al. DropPruning for model com鄄 pression [J/ OL]. ArXiv Preprint (2018鄄鄄 12鄄鄄 05 ) [2019鄄鄄 03鄄鄄 22]. https: / / arxiv. org / abs/ 1812. 02035 [21] Li H, Kadav A, Durdanovic I, et al. Pruning filters for efficient convnets [J/ OL]. ArXiv Preprint (2017鄄鄄 03鄄鄄 10) [2019鄄鄄 03鄄鄄 22]. https: / / arxiv. org / abs/ 1608. 08710 [22] Hu H Y, Peng R, Tai Y W, et al. Network trimming: a data鄄 driven neuron pruning approach towards efficient deep architec鄄 tures [J/ OL]. arXiv preprint (2016鄄鄄07鄄鄄12) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1607. 03250 [23] Tian Q, Arbel T, Clark J J. Deep LDA鄄pruned nets for efficient facial gender classification / / Proceedings of IEEE Conference on Computer Vision and Pattern Recognition Workshops. Hawaii, 2017: 10 [24] Luo J H, Wu J X, Lin W Y. ThiNet: a filter level pruning meth鄄 od for deep neural network compression / / Proceedings of the IEEE International Conference on Computer Vision. Venice, 2017: 5058 [25] He Y, Kang G L, Dong X Y, et al. Soft filter pruning for accel鄄 erating deep convolutional neural networks [ J/ OL]. ArXiv Pre鄄 print (2018鄄鄄08鄄鄄21) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1808. 06866 [26] He Y H, Zhang X Y, Sun J. Channel pruning for accelerating very deep neural networks [ J/ OL]. ArXiv Preprint (2017鄄鄄 08鄄鄄 21) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1707. 06168 [27] Hu Y M, Sun S Y, Li J Q, et al. Multi鄄loss鄄aware channel prun鄄 ing of deep networks [ J/ OL]. ArXiv Preprint (2019鄄鄄 02鄄鄄 27) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1902. 10364 [28] Zhuang Z W, Tan M K, Zhuang B H, et al. Discrimination鄄a鄄 ware channel pruning for deep neural networks [ J/ OL]. ArXiv Preprint (2019鄄鄄 01鄄鄄 14) [2019鄄鄄 03鄄鄄 22 ]. https: / / arxiv. org / abs/ 1810. 11809 [29] He Y H, Han S. ADC: automated deep compression and accel鄄 eration with reinforcement learning [ J/ OL ]. ArXiv Preprint (2019鄄鄄01鄄鄄16) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1802. 03494v1 [30] Appuswamy R, Nayak T, Arthur J, et al. Structured convolution matrices for energy鄄efficient deep learning [ J/ OL]. ArXiv Pre鄄 print (2016鄄鄄06鄄鄄08) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1606. 02407 [31] Sindhwani V, Sainath T N, Kumar S. Structured transforms for small鄄footprint deep learning [J/ OL]. ArXiv Preprint (2015鄄鄄10鄄鄄 06) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1510. 01722 [32] Cheng Y, Yu F X, Feris R S, et al. An exploration of parameter redundancy in deep networks with circulant projections [J/ OL]. ArXiv Preprint (2015鄄鄄10鄄鄄27) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1502. 03436 [33] Chen W L, Wilson J T, Tyree S, et al. Compressing neural net鄄 ·1237·
·1238· 工程科学学报.第41卷,第10期 works with the hashing trick /Proceedings of the 32nd Interna- [48]Gudovskiy D A,Rigazio L.ShiftCNN:generalized low-precision tional Conference on Machine Learning.Lille,2015:2285 architecture for inference of convolutional neural networks [J/ [34]Shi L,Feng S K,Zhu Z F.Functional hashing for compressing 0L].ArXie Preprint(2017-06-07)[2019-03-22].https:/ neural networks [J/OL].ArXir Preprint (2016-05-20)[2019- arxiv.org/abs/1706.02393 03-22].https://arxiv.org/abs/1605.06560 [49]Meller E,Finkelstein A,Almog U,et al.Same,same but dif- [35]Wu J R,Wang Y,Wu Z Y,et al.Deep k-Means:Re-training ferent-recovering neural network quantization error through weight and parameter sharing with harder cluster assignments for com- factorization [J/OL].ArXin Preprint (2019-02-05)[2019-03- pressing deep convolutions [J/OL].ArXie Preprint (2018-06- 22].https://arxiv.org/abs/1902.01917 24)[2019-03-22].htps:/ariv.org/ahs/1806.09228 [50]Xu Y H,Zhang S,Qi YY,et al.DNQ:Dynamic network [36]Lu Z Y,Sindhwani V,Sainath T N.Leaming compact recurrent quantization [J/OL].ArXie Preprint (2018-12-06)[2019-03- neural networks [J/OL].ArXir Preprint (2016-04-09)[2019- 22].https://arxiv.org/abs/1812.02375 03-22].htps:/axiw.org/abs/1604.02594 [51]Golub G H,Reinsch C.Singular value decomposition and least [37]Jin X J,Yang Y Z,Xu N.et al.WSNet:compact and efficient squares solutions /Linear Algebra.Springer,Berlin,1971: 134 networks through weight sampling J/OL ]ArXir Preprint [52]Jaderberg M,Vedaldi A,Zisserman A.Speeding up convolution- (2018-05-22)[2019-03-22].https:/aim.org/ahs/1711. al neural networks with low rank expansions [J/OL].ArYir Pre- 10067 pmiu(2014-05-15)[2019-03-22].https:/aiv.org/ahs/ [38] Yang YZ,Jojic N,Huan J.FSNet:Compression of deep convo- 1405.3866 lutional neural networks by filter summary J/OL].ArXir Pre- [53]Kim Y D,Park E,Yoo S,et al.Compression of deep convolu- prit(2019-02-13)[2019-03-22].htps:/axiv.org/ahs/ tional neural networks for fast and low power mobile applications 1902.03264 [J/0L].ArKiv Preprint(2016-02-24)[2019-03-22].ht- [39]Gupta S,Agrawal A,Gopalakrishnan K,et al.Deep leaming tps://arxiv.org/abs/1511.06530 with limited numerical precision [/OL].ArXir Preprint (2015- [54]Denil M,Shakibi B.Dinh L,et al.Predicting parameters in 02-09)[2019-03-22].https:/amiv.org/abs/1502.02551 deep leaming//Advances in Neural Information Processing Sys- [40]Jacob B,Kligys S,Chen B,et al.Quantization and training of tems.Lake Tahoe,2013:2148 neural networks for efficient integer-arithmetic-only inference// [55]Calvi GG,Moniri A,Mahfouz M,et al.Tucker tensor layer in Proceedings of the IEEE Conference on Computer Vision and Pat- fully connected neural networks [J/OL].ArXig Preprint (2019- tern Recognition.Salt Lake City.2018:2704 03-14)[2019-03-22].htps:/aiv.org/abs/1903.06133 [41] Courbariaux M,Bengio Y,David J P.BinaryConnect:training [56]Bucilua C,Caruana R,Niculescu-Mizil A.Model compression deep neural networks with binary weights during propagations// /Proceedings of the 12th ACM SIGKDD International Conference Adrances in Neural Information Processing Systems.Canada, on Knowledge Discovery and Data Mining.Philadelphia,2006: 2015:3123 535 [42]Courbariaux M,Hubara I,Soudry D,et al.Binarized neural net- [57]Ba J.Caruana R.Do deep nets really need to be deep?//Ad- works:training deep neural networks with weights and activations tances in Neural Information Processing Systems.Canada,2014: constrained to +1 or -1 [J/OL].ArXig Preprint (2016-03- 2654 17)[2019-03-22].https:/arxiv.og/abs/1602.02830 [58]Hinton G.Vinyals O,Dean J.Distilling the knowledge in a neu- [43]Rastegari M,Ordonez V,Redmon J,et al.XNOR-Net:Ima- ral network[J/OL].ArXin Preprint (2015-03-09)[2019-03- geNet classification using binary convolutional neural networks 22].https://arxiv.org/abs/1503.02531 [J/0L].ArXiv Preprint(2016-08-02)[2019-03-22].ht- [59]Romero A,Ballas N,Kahou S E,et al.FitNets:hints for thin tps://arxiv.org/abs/1603.05279 deep nets[J/PL].ArXin Preprint (2015-03-27)[2019-03- [44]Li Z F,Ni B B,Zhang WJ,et al.Performance guaranteed net- 22].https://arxiv.org/abs/1412.6550 work acceleration via high-order residual quantization /Proceed- [60]Chen T Q,Goodfellow I,Shlens J.Net2Net:accelerating leam- ings of the IEEE International Conference on Computer Vision. ing via knowledge transfer[J/OL].ArXie Preprint (2016-04- Venice,2017:2584 23)[2019-03-22].htps:/aiv.og/abs/1511.05641 [45]Hwang K.Sung W.Fixed-point feedforward deep neural network [61]Li ZZ,Hoiem D.Learing without forgetting./EEE Trans Pat- design using weights 1,0,and -1 //2014 IEEE Workshop tern Anal Mach Intell,2018,40(12):2935 on Signal Processing Systems (SiPS).Belfast,2014:1 [62]Zagoruyko S,Komodakis N.Paying more attention to attention: [46]Hou L,Yao Q M,Kwok J T.Loss-aware binarization of deep Improving the performance of convolutional neural networks via networks [J/OL].ArXin Preprint (2018-05-10)[2019-03- attention transfer J/OL ]ArXiv Preprint (2017-02-12) 22].https://arxiv.org/abs/1611.01600 [2019-03-22].htps:/axiv.org/abs/1612.03928 [47]Lee H,Battle A,Raina R,et al.Efficient sparse coding algo- [63]Mirzadeh S I,Farajtabar M,Li A,et al.Improved knowledge rithms /Adeances in Neural Information Processing Systems. distillation via teacher assistant:bridging the gap between student Canada,2007 and teacher [J/OL].ArXir Preprint (2019-02-09)[2019-03-
工程科学学报,第 41 卷,第 10 期 works with the hashing trick / / Proceedings of the 32nd Interna鄄 tional Conference on Machine Learning. Lille, 2015: 2285 [34] Shi L, Feng S K, Zhu Z F. Functional hashing for compressing neural networks [J/ OL]. ArXiv Preprint (2016鄄鄄05鄄鄄20) [2019鄄鄄 03鄄鄄22]. https: / / arxiv. org / abs/ 1605. 06560 [35] Wu J R, Wang Y, Wu Z Y, et al. Deep k鄄Means: Re鄄training and parameter sharing with harder cluster assignments for com鄄 pressing deep convolutions [ J/ OL]. ArXiv Preprint (2018鄄鄄 06鄄鄄 24) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1806. 09228 [36] Lu Z Y, Sindhwani V, Sainath T N. Learning compact recurrent neural networks [J/ OL]. ArXiv Preprint (2016鄄鄄04鄄鄄09) [2019鄄鄄 03鄄鄄22]. https: / / arxiv. org / abs/ 1604. 02594 [37] Jin X J, Yang Y Z, Xu N, et al. WSNet: compact and efficient networks through weight sampling [ J/ OL ]. ArXiv Preprint (2018鄄鄄05鄄鄄22) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1711. 10067 [38] Yang Y Z, Jojic N, Huan J. FSNet: Compression of deep convo鄄 lutional neural networks by filter summary [ J/ OL]. ArXiv Pre鄄 print (2019鄄鄄02鄄鄄13) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1902. 03264 [39] Gupta S, Agrawal A, Gopalakrishnan K, et al. Deep learning with limited numerical precision [J/ OL]. ArXiv Preprint (2015鄄鄄 02鄄鄄09) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1502. 02551 [40] Jacob B, Kligys S, Chen B, et al. Quantization and training of neural networks for efficient integer鄄arithmetic鄄only inference / / Proceedings of the IEEE Conference on Computer Vision and Pat鄄 tern Recognition. Salt Lake City, 2018: 2704 [41] Courbariaux M, Bengio Y, David J P. BinaryConnect: training deep neural networks with binary weights during propagations / / Advances in Neural Information Processing Systems. Canada, 2015: 3123 [42] Courbariaux M, Hubara I, Soudry D, et al. Binarized neural net鄄 works: training deep neural networks with weights and activations constrained to + 1 or - 1 [ J/ OL]. ArXiv Preprint (2016鄄鄄 03鄄鄄 17) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1602. 02830 [43] Rastegari M, Ordonez V, Redmon J, et al. XNOR鄄鄄 Net: Ima鄄 geNet classification using binary convolutional neural networks [J/ OL]. ArXiv Preprint (2016鄄鄄 08鄄鄄 02) [2019鄄鄄 03鄄鄄 22]. ht鄄 tps: / / arxiv. org / abs/ 1603. 05279 [44] Li Z F, Ni B B, Zhang W J, et al. Performance guaranteed net鄄 work acceleration via high鄄order residual quantization / / Proceed鄄 ings of the IEEE International Conference on Computer Vision. Venice, 2017: 2584 [45] Hwang K, Sung W. Fixed鄄point feedforward deep neural network design using weights + 1, 0, and - 1 / / 2014 IEEE Workshop on Signal Processing Systems (SiPS). Belfast, 2014: 1 [46] Hou L, Yao Q M, Kwok J T. Loss鄄aware binarization of deep networks [J/ OL]. ArXiv Preprint (2018鄄鄄 05鄄鄄 10) [2019鄄鄄 03鄄鄄 22]. https: / / arxiv. org / abs/ 1611. 01600 [47] Lee H, Battle A, Raina R, et al. Efficient sparse coding algo鄄 rithms / / Advances in Neural Information Processing Systems. Canada, 2007 [48] Gudovskiy D A, Rigazio L. ShiftCNN: generalized low鄄precision architecture for inference of convolutional neural networks [ J/ OL]. ArXiv Preprint (2017鄄鄄06鄄鄄07) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1706. 02393 [49] Meller E, Finkelstein A, Almog U, et al. Same, same but dif鄄 ferent鄄recovering neural network quantization error through weight factorization [J/ OL]. ArXiv Preprint (2019鄄鄄02鄄鄄05) [2019鄄鄄03鄄鄄 22]. https: / / arxiv. org / abs/ 1902. 01917 [50] Xu Y H, Zhang S, Qi Y Y, et al. DNQ: Dynamic network quantization [J/ OL]. ArXiv Preprint (2018鄄鄄12鄄鄄06) [2019鄄鄄03鄄鄄 22]. https: / / arxiv. org / abs/ 1812. 02375 [51] Golub G H, Reinsch C. Singular value decomposition and least squares solutions / / Linear Algebra. Springer, Berlin, 1971: 134 [52] Jaderberg M, Vedaldi A, Zisserman A. Speeding up convolution鄄 al neural networks with low rank expansions [J/ OL]. ArXiv Pre鄄 print (2014鄄鄄05鄄鄄15) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1405. 3866 [53] Kim Y D, Park E, Yoo S, et al. Compression of deep convolu鄄 tional neural networks for fast and low power mobile applications [J/ OL]. ArXiv Preprint (2016鄄鄄 02鄄鄄 24) [2019鄄鄄 03鄄鄄 22]. ht鄄 tps: / / arxiv. org / abs/ 1511. 06530 [54] Denil M, Shakibi B, Dinh L, et al. Predicting parameters in deep learning / / Advances in Neural Information Processing Sys鄄 tems. Lake Tahoe, 2013: 2148 [55] Calvi G G, Moniri A, Mahfouz M, et al. Tucker tensor layer in fully connected neural networks [J/ OL]. ArXiv Preprint (2019鄄鄄 03鄄鄄14) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1903. 06133 [56] Bucilu觍 C, Caruana R, Niculescu鄄Mizil A. Model compression / / Proceedings of the 12th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Philadelphia, 2006: 535 [57] Ba J, Caruana R. Do deep nets really need to be deep? / / Ad鄄 vances in Neural Information Processing Systems. Canada, 2014: 2654 [58] Hinton G, Vinyals O, Dean J. Distilling the knowledge in a neu鄄 ral network[J/ OL]. ArXiv Preprint (2015鄄鄄03鄄鄄09) [2019鄄鄄03鄄鄄 22]. https: / / arxiv. org / abs/ 1503. 02531 [59] Romero A, Ballas N, Kahou S E, et al. FitNets: hints for thin deep nets[ J/ PL]. ArXiv Preprint (2015鄄鄄 03鄄鄄 27) [2019鄄鄄 03鄄鄄 22]. https: / / arxiv. org / abs/ 1412. 6550 [60] Chen T Q, Goodfellow I, Shlens J. Net2Net: accelerating learn鄄 ing via knowledge transfer[ J/ OL]. ArXiv Preprint (2016鄄鄄 04鄄鄄 23) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1511. 05641 [61] Li Z Z, Hoiem D. Learning without forgetting. IEEE Trans Pat鄄 tern Anal Mach Intell, 2018, 40(12): 2935 [62] Zagoruyko S, Komodakis N. Paying more attention to attention: Improving the performance of convolutional neural networks via attention transfer [ J/ OL ]. ArXiv Preprint ( 2017鄄鄄 02鄄鄄 12 ) [2019鄄鄄03鄄鄄22]. https: / / arxiv. org / abs/ 1612. 03928 [63] Mirzadeh S I, Farajtabar M, Li A, et al. Improved knowledge distillation via teacher assistant: bridging the gap between student and teacher [J/ OL]. ArXiv Preprint (2019鄄鄄02鄄鄄09) [2019鄄鄄03鄄鄄 ·1238·