10

云鹤 · 2020年03月25日

华人团队首创协同进化压缩算法,cycleGAN线上加速三倍以上!已开源

开源链接见原文:
https://mp.weixin.qq.com/s/3\_famaAmkAN-4xVEupSXSAmp.weixin.qq.com
论文地址:
Co-Evolutionary Compression for Unpaired Image Translationarxiv.org

摘要

华为诺亚方舟实验室的论文《Co-Evolutionary Compression for Unpaired Image Translation》被ICCV 2019录用,该论文首次提出针对GAN中生成网络的剪枝算法,在图像迁移任务中,可以在保持迁移效果的情况下,网络参数量和计算量压缩四倍以上,实测推理时间压缩压缩三倍以上。华为诺亚方舟实验室的论文《Co-Evolutionary Compression for Unpaired Image Translation》被ICCV 2019录用,该论文首次提出针对GAN中生成网络的剪枝算法,在图像迁移任务中,可以在保持迁移效果的情况下,网络参数量和计算量压缩四倍以上,实测推理时间压缩压缩三倍以上。

研究背景

随着手机等智能终端的广泛普及,基于移动端的图像风格迁移,人像渲染等应用有着广泛的需求,在智能相机、移动社交、虚拟穿戴等领域有着巨大的应用前景。生成对抗神经网络在图像风格迁移、人脸属性控制等任务中取得了良好的效果。但是生成式模型由于其本身输出结果和优化目标的特点,模型往往需要较大的内存,运行这些模型需要较大的计算开销,一般只能在GPU平台上运行,不能直接将这些模型迁移到移动端上。而现有的针对神经网络的压缩算法都是针对判别式神经网络模型设计,直接应用在生成网络上不能取得令人满意的压缩结果。

生成模型参数冗余建模

对生成对抗模型来说,网络输出是高维的生成图像,很难直接从这些图像本身去量化评价压缩模型的好坏,借鉴传统的剪枝算法,可以直接最小化压缩生成模型前后的重建误差来获得压缩后的模型。可以定义为生成器感知误差,

直接优化公式1可以让压缩后的生成器 和原始生成器 尽量像素相近,但是在图像风格迁移任务中确没必要。比如,一个“斑马”,不管是有5条还是8条白色条纹,都可以看成是成功的风格迁移,但是体现在公式1中的差别可能很大。所以优化公式1并不能准确地去除风格迁移任务中的参数冗余。

虽然在推理阶段,判别器 经常不会被使用,但是判别器中包含了判别图像域的重要信息,因此论文提出了判别器感知损失来牵引生成器的压缩过程。

是原始网络中的判别器。与公式1相比,公式2并不直接关注压缩前后的生成器模型在像素级别的相似性,而是通过判别器,更加关注压缩前后风格的一致性,这对压缩生成器是一个更好的优化方向。

对于两个图像域的互相转换,循环一致性误差的重要性也在多篇论文里得到证明,所以也是压缩生成器重要的优化方向。

所以总体来说,压缩一个生成网络的目标函数如下:

其中表示网络的参数量,用来平衡网络参数量和压缩模型的误差。

对于两个的图像域互相转换,两个生成器一般有相同的网络结构和参数量,如果只优化其中一个生成器会导致网络训练过程不稳定,所以提出同时优化两个生成器,这样也可以节省计算时间和资源。

协同进化压缩

考虑到无法准确地计算生成网络中的每一个通道对于最终输出结果的影响,采用进化算法,对网络进行全局二值编码,如图1所示,对两个对称的生成器分别维持一个种群,将生成器A种群适应值最高的个体与生成器B的种群一起训练,选出B种群中适应值最高的个体,再和A的下一代种群进行训练,以此类推,进行协同交替压缩,最终得到两个压缩的生成器,算法流程如算法1所示。

图1 协同进化交替迭代,最终得到两个压缩后模型

**实验结果:**我们在horse2zebra, summer2winter 和cityscapes三个数据集上分别进行大量实验来说明算法的有效性。

**消融实验:**在实验数据和超参数相同的情况下,我们比较了不用的进化策略和优化目标的影响,如下图3所示。(a)是采用传统的剪枝方法的结果,(c)采用了类似于传统剪枝最小重构误差的生成器感知误差,(b)和(d)则采用了本文提出的判别器感知误差,其中(b)是单独优化一个生成器的结果,而(d)是采用协同的策略同时优化两个生成器的结果。

图2:在不同超参数情况下我们的方法压缩得到的生成器生成的图像对比。第一行是从斑马转化为马的结果,第二行是从马转换到斑马的结果。不同的超参数可以得到不同大小的模型。

图3:使用不同方法在斑马-马转换和夏天-冬天转换数据集得到的结果。第一、二列是输入图片和未压缩CycleGAN生成的结果。(a)代表使用ThiNet剪枝得到的结果,(b)代表使用遗传算法和L\_DisA分开优化两个生成器得到的结果,(c)代表使用协同进化算法优化L\_GenA得到的结果,(d)代表使用协同进化算法优化L\_DisA

与传统剪枝方法比较:表1和表2分别列出了压缩前后,传统的剪枝方法和论文提出的剪枝方法在三个数据集上的量化结果。在cityscapes数据集采用FCN分数,horse2zebra和summer2winter数据集采用FID分数,论文提出方法结果与压缩之前的模型接近,远远好于传统的剪枝方法。

表1:使用不同方法在cityscapes数据集上得到的FCN分数

表2:在horse2zebra和summer2winter数据集上的不同方法FID分数对比

线上推理:表3展示了三个数据集压缩的结果,论文提出的算法在能够得到4倍左右参数量和计算量的压缩,在运行时间上,在Kirin 980芯片上,推理时间从6.8s压缩到了2.1s,线上加速三倍以上。


表3:在不同数据集上使用我们方法的压缩结果


推荐阅读



文章首发知乎,更多深度模型压缩相关的文章请关注深度学习压缩模型论文专栏

推荐阅读
关注数
1853
内容数
25
深度模型压缩、加速、自动搜索。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息