立早作家

ResNet压缩20倍,Facebook提出新型无监视模子压缩量化方法

怎样用量化方法办理模子压缩题目?Facebook 即日提出了一个基于向量的量化方法,无需标注数据即可对 ResNet 模子举行20倍压缩,槐ボ够取得很高的准确率。

概述

本文旨办理相似 ResNet [1] 这类卷积收集的模子过大,推理速率慢的题目。比较拟之前的量化方法,本文提出来一个向量量化方法,其主要思念是保管收集重修之后的输出而不是原始无压缩收集的权重。本文提出的方法无需标注数据,而且运用对 CPU 推理友好的字节对齐码本。实行标明,运用本文方法可对 ResNet 模子举行20倍压缩,并ImageNet 上取得 76.1% 的 top-1准确率。与此同时,可将 Mask R-cnn 压缩至6MB的大小并保持不错的准确率。

论文地址:https://arxiv.org/abs/1907.05686

压缩方法的先容和比较

神经收集压缩不停是个热门的研讨偏向,目前的主流方法主要有以下几种:

  • 低精度教练[2]。这类方法用低bit权重,优点是可以加速推理进程,应用位操作替代繁杂的逻辑操作,可是同时也会带来一个比较大的精度下降。

  • 量化。向量量化(VQ[3])和乘积量化(PQ[4])是此中的典范。这种量化方法是将原始的高维向量剖析至低维笛卡尔积,然后对剖析取得的低维向量做量化,这种方法的缺陷是关于深度收集会发生一个笛卡尔漂移。

  • 剪枝。依据少许特定的规矩去除部分冗余的连接或者构造,剪枝方法的教练时间较长,且需求剪枝和再微调的重复迭代举行。

  • 调解构造。相似 SqueezeNet[5],NASnet,shuffleNet,MobileNet等,主要依赖的 DepthWise 和 PointWise 卷积,或者通道分类和通道打乱等等。

  • 蒸馏[6-7]。这种方法一般应用大模子或模子组的常识(概率分布)来教练小模子。

比较拟以上的压缩方法,本文提出的量化方法注重于恢复收集的输出。跟PQ方法比较,本文是注反恢复压缩后的权重。同时,教练的进程中,本文也运用了蒸馏的思念,用于晋升压缩收集的精度。

算法先容

全连接层量化

  • 配景先容--PQ 方法先容

我们晓得,PQ 算法(Product Quantization)一开端是由法国 INRIA 实行室团队提出的用于图像压缩的一种算法,一般被用于新闻压缩和检索偏向。PQ 算法中,以全连接层量化为例。处理全连接层时,我们体恤全连接权重,疏忽偏向。起首将 W 的每一列支解成 m 个延续的子向量,然后对m*的子向量进修一个码本。

关于包罗 k 个聚类中心的模板 C={c1,c2,,,ck},恣意 W 的列向量 Wj 可以映照为量化的版本 q(wj)= (ci1,,,cim),此中下标 i1 外示的是 wj 的第一个子向量归属的码本的索引,以此类推其余的下标。通过量化如下的目标函数(1)来进修码本。

此中,w^ 外示量化的权重。这个目标函数可以通过 k-means 来最小化。当 m=1 时,PQ等价于 VQ(Vector Quantization),当 m=Cin 时,PQ  等价于标量 k-means。着末,PQ 生成了一个 k^m 大小的隐式码本。

通过对该算法的一个简明的回忆,我们不难看出,PQ 算法的要点点于对权重的恢复,旨减小压缩前后的权重新闻耗损。那么,这个方法运用时有何缺陷呢?我们可以看看如下的图(1)。

  • 本文算法以及算法求解

这之前,我们不停夸张本文的主要目标是恢复收集之后的输出值,而不是权重值。这此中的启事可以追溯到模子对样本的拟合才能,精细如下图所示:  

图1:量化保管权重和本文方法的比较

图1中,灰色线代外实的分类器,血色线外示量化保管权重的标准方法教练取得的分类器,而绿色线是本文提出的方法。in-domain中,可以看出,本文的方法可以比较好的拟合实的分类器,而标准方法为了拟合out-of-domin范畴的数据,in-domain中反而带来了过失的分类。

笔者认为,该图从实质上显示了神经收集模子拟合样布分布的时分,有必定的容错才能,也便是说关于噪声点或者十分新闻有忽所疏忽,而体恤于准确的样本的分布,可以避免模子的过拟合。于是,量化的时分,算法应当同时进修到模子的拟合才能以及泛化新闻,而不是仅仅进修模子的参数新闻。于是,引申出本文算法的压缩目标,恢复压缩输出新闻,而不是PQ的恢复压缩权重新闻。

于是,本文提出直叫☆小化重修输出值偏向,给定的输入值x的条件下,本文旨缩小输出和重修输出之间的偏向。改写目标函数(1)为如下函数(2)。

此中,y=xW外示原始收集的输出,

外示重修输出。

  • EM求解


    • E步:分派向量至近来的聚类中心

    • M步:依据E步构成的汇合,更新码本C。

  • 繁杂度剖析

此类方法的实质上和 k-means 同等,每一列 m 个维度为 d 的子向量挑选 k 个聚类中心,其算法的时间繁杂度为 mkd。于是一个全连接矩阵的 PQ 的时间繁杂为C_inC_out*k 。

关于一个常睹的收集结果,卷积层是必不可少的部分,接下来,笔者将先容怎样对卷积层举行压缩处理的。

卷积层量化

  • 4D卷积分别求解

全连接的权重是个4D的矩阵,起首将这个矩阵reshape成一个二维的矩阵(C_inKK)Cout。然后将转换之后的矩阵每一维分别成C_in个大小为(kk)大小的子向量。精细如图(2)所示:
图2:4D卷积的reshape示企图

为了包管结果的同等性,同样的将输入 X 也 reshape 一下。然后运用目标函数中量化权重。

  • 算法繁杂度剖析

上面说到,对卷积运用算法压缩时,起首将 4D 的矩阵 reshape 成(C_inKK)Cout的矩阵,该矩阵可以看为全连接层的权重。叫∨,对矩阵运用 PQ压缩。联合3.1中PQ算法的时间繁杂度,本文算法的时间繁杂度可以外示为(C_inKK)C_out*k(可类比k-means算法)。

此中,K 为卷积核大小,k 为聚类中心的个数。

通通收集的量化

  • 自底向上的逐层量化

本文输入一个 batch 的图像,并从底层向上逐层量化收集。需求当心的是,量化的进程中,运用的是目今层的输出值而欠好坏压缩收集的输出值。因为,实行进程中,运用非压缩收集的输出值会带来必定的偏向。

  • 微调 codebook

举行了逐层的量化进修之后,需求对通通收集举行微调。这个进程中,本文运用非压缩收集举措 teacher 收集来指点压缩收集进修。蒸馏进修中,用 Kl 散度来举措蒸馏的耗损,并用 SGD 来更新码本。

  • 全体微调 BN 参数

跟前一个进程比较拟,这个进程将BN修立为教练方式,重复上述微调码本的进程。

实行先容

  • ImageNet实行

图(3):resnet-18和resnet-50的压缩结果
图(3)外示的是resnet-18和resnet-50的压缩大小和TOP-1之间的联系图。比照其他的算法,本文的量化方法更高的压缩率上包管模子的精度。

外(1) 给定大小的条件下的模子准确率比照
外(1)外示的是,限制模子大小的条件下,本文的方法比照目前最优构造的 top-1 准确率,可以发明,本文的方法半监视的状况下,准确率较高。

  • Detection实行

外(2)Mask R-CNN 实行

外(2)展现的是 k=256(8bits) 的状况下,模子压缩因子大约 26 的状况下,量化模子下降约 4 个 AP 。

论文总结和剖析

本文举措一篇收集压缩偏向的论文,从实质上提出来了奇特的量化方法,其提出的保管输出结果而不是保管权重的思念,从而可以拟合in-domain数据而且疏忽out-of-domain的数据,这是很值得鉴戒和考虑的。从这个思念引申出来的量化方法,延续PQ方法的优点。

  1. 本文首要值得鉴戒的是对压缩实质的考虑,离开古板的压缩权重的思念,另辟门路恢复输出。

  2. 从操作上来说,PQ等方法都是经典的算法,本文方法延续实质,于是完成上难度不大。

可是,举措一个算法类的研议论文,笔者认为以下的方面还值得继续研讨和议论。

  1. 教练进程中,k-means的思念是其要点,那么关于算法的繁杂度剖析部分,是否需求更精细的议论。

  2. 本文中,关于样本的采样和盘算进程,也是值得继续研讨的一个课题。

总体来说,本文的实行结果很充沛地阐明该方法的有用性。可是,这种带有教练机制的量化方法,从样本的采样,算法繁杂度,教练进程上来说,都是一个耗时且不太可控的进程。

作家先容:
立早,工学硕士,研讨偏向为方式识别。目前从事人脸识别、检测和神经收集压缩偏向的义务。期望可以不停进修,众众交换,不时进步。

参考文献

[1] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image
recognition. CoRR, 2015.
[2] Shuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu, and Yuheng Zou. Dorefa-net:
Training low bitwidth convolutional neural networks with low bitwidth gradients. CoRR, 2016.
[3] Yunchao Gong, Liu Liu, Ming Yang, and Lubomir Bourdev. Compressing deep convolutional
networks using vector quantization. arXiv preprint arXiv:1412.6115, 2014.
[4] Herv´ e J´ egou, Matthijs Douze, and Cordelia Schmid. Product Quantization for Nearest Neigh-
bor Search. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011.
[5]Jie Hu, Li Shen, and Gang Sun. Squeeze-and-excitation networks. In Conference on Computer
Vision and Pattern Recognition, 2018.
[6] Geoffrey Hinton, Oriol Vinyals, and Jeff Dean. Distilling the knowledge in a neural network.
NIPS Deep Learning Workshop, 2014.
[7] Yu Cheng, Duo Wang, Pan Zhou, and Tao Zhang. A survey of model compression and accel-
eration for deep neural networks. CoRR, 2017.

表面模子压缩Facebook
41
只压缩权重占用空间,盘算量不减。。