韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

作者: Muyang Li等 2020-03-23 15:10:49

 GAN 也可以大幅压缩,MIT 韩松团队的最新研究让众多研究者们为之一振。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

生成模型 GAN 是机器学习领域里最为重要的发展方向之一。但这类算法需要消耗巨量算力,大多数研究者已经很难得出新成果。近年来,这一方向颇有被大型机构垄断的趋势。

但近日,来自麻省理工学院(MIT)、Adobe、上海交通大学的研究者提出了一种用于压缩条件 GAN 的通用方法。这一新技术在保持视觉保真度的同时,将 pix2pix,CycleGAN 和 GauGAN 等广泛使用的条件 GAN 模型的计算量减少到 1/9~1/21。该方法适用于多种生成器架构、学习目标,配对或非配对设置。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

目前该研究的论文已被 CVPR 2020 大会收录,有关 GAN 压缩框架的 PyTorch 版实现也已开源。

项目链接:https://github.com/mit-han-lab/gan-compression

GAN 压缩后的具体性能如何?在研究者们展示的 Demo 中,使用 CycleGAN 为视频中的马添加斑马条纹所需的算力不到 1/16,帧数提高了三倍,而且效果还有所提升:

值得一提的是,该研究所使用的硬件平台是英伟达的边缘 AI 计算芯片 Jetson Xavier GPU。根据官方公布的数据,Jetson Xavier 的 INT8 算力为 22+10TOPS,骁龙 865 则是 15TOPS。压缩后的 GAN 现在看来已经可以跑在机器人、无人机等小型设备上了,未来塞进手机指日可待。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

论文链接:https://arxiv.org/pdf/2003.08936v1.pdf

总体介绍

生产对抗网络(GANS)擅长合成十分逼真的图像。GAN 的一种变体——条件式生成对抗网络(conditional generative adversarial network,cGAN)在很多计算机视觉和图像学应用中都能够实现可控制的图像合成。但这些应用大都需要模型与人互动,因此需要低延迟的设备上才能获得更好的用户体验。

然而,近来推出的一些 cGAN 在计算强度上比当前识别卷积神经网络(CNN)大 1 至 2 个量级。举例而言,GanGAN 每张图像消耗 281G Macs,而 MobileNet-v3 仅需 0.44G Macs,这就导致前者很难用于交互式部署。

而且,就目前来看,边缘设备又多数受到内容以及电池之类硬件层面上的限制,也阻碍了 GAN 在边缘设备上的部署。

因此,基于 GAN 和 cGAN 在图像合成领域存在的这些问题,韩松团队提出了 GAN 压缩,这是一种通用压缩方法,用于减少 GAN 的推理时间以及计算成本。同时,压缩生成模型面临两个基本困难:GAN 训练不稳定,尤其是在未配对的情况下;生成器与 CNN 不同,因此很难使用现有的 CNN 设计。为了解决此问题,团队将知识从原始的教师生成器中间表示层传递到其相应的学生生成器层中。

为了降低训练成本,团队还通过训练包含所有可能通道数的「once- for-all network」,将模型训练与架构搜索分离。这个「once-for-all network」可以通过权重共享产生许多子网络,无需训练就可以评估每个子网络的性能。该模型可应用至各种条件下的 GAN 模型,不管其属于哪种模型架构、学习算法或监督设置(配对或未配对)。

通过大量的实验,团队已证明了此方法可以将 pix2pix,CycleGAN 以及 GauGAN 三种广泛使用的 GAN 模型计算量减少至 1/9 到 1/21,同时还不会损失生成图像的保真度。

具体方法

我们都知道,对用于交互式应用的条件式生成模型进行压缩具有挑战性,这主要是由以下两方面原因造成的。其一,从本质上讲,GAN 的动态训练非常不稳定;其二,识别和生成模型之间存在的巨大架构差异导致很难直接使用现有的 CNN 压缩算法。

基于这些原因,研究者提出了专门针对高效生成模型的训练方案,并利用神经架构搜索(NAS)进一步增加压缩比。GAN 压缩框架整体架构如下图 3 所示,其中他们利用 ResNet 生成器作为示例。需要强调的是,同一框架可以应用于不同的生成器架构和学习目标。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

图 3:文中 GAN 压缩框架的整体架构图。

目标函数

1. 统一配对学习和非配对学习

广泛的训练目标使得构建通用压缩框架非常困难。为了解决这一问题,研究者在模型压缩设置中统一了配对和非配对学习,不管教师模型最初是如何训练的。给定原始教师生成器 G′,研究者将非配对训练设置转换为配对设置。对于非配对设置,可以将原始生成器输出视为真值并使用配对训练目标训练压缩后的生成器 G。

学习目标总结如下:

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

基于这些修改,现在可以将同一个压缩框架应用于不同类型的 cGAN。而且,与原始的非配对训练设置相比,使用上述伪对(pseudo pair)进行学习可以使训练更加稳定,并产生更好的结果。

2. 从教师判别器中学习

尽管此研究致力于压缩生成器,但判别器 D 中储存着 GAN 的有用信息。因此,研究者利用了同一个判别器架构,使用来自教师判别器的预训练权重,与压缩生成器一起微调判别器。

在实验中,研究者观察到,预训练判别器可以指导学生生成器的训练。使用一个随机初始化的判别器通常会导致训练不稳定及图像质量下降。这个 GAN 的目标可以写成以下形式:

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

在上式中,研究者使用来自教师判别器 D′的权重来初始化学生判别器 D。他们使用一个标准的极小化极大优化器训练 G 和 D。

3. 中间特征蒸馏

知识蒸馏是 CNN 模型压缩用到的一种普遍方法。通过匹配输出层 logit 的分布,可以将来自教师模型的暗知识(dark knowledge)迁移到学生模型中,提高学生模型的性能。然而,条件 GAN 通常会输出一个确定的图像,而不是概率分布。

为了解决上述问题,研究者匹配了教师生成器的中间表示。中间层包含的通道越多,它们所能提供的信息越丰富,学生模型所获取的输出之外的信息也越多。蒸馏目标如下:

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

其中,G_t(x) 和 G′_t(x) 是学生和教师模型中第 t 个被选层的中间特征激活,T 表示层数。

4. 完整优化目标

最终目标可以写成如下形式:

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

其中,超参数λ_recon 和 λ_distill 控制每个项的重要性。

高效生成器设计空间

选择一个设计良好的学生架构对最终知识蒸馏的效果是至关重要的,研究者发现,光是缩减教师模型的通道数量并不能使学生模型更紧凑:当计算缩减量超过 4 倍时,性能就会显著下降。

1. 卷积分解和层灵敏度

现有的生成器通常采用传统卷积来匹配 CNN 分类和分段设计。近来一些高效的 CNN 设计广泛采用卷积的分解形式(depthwise + pointwise),在性能和计算二者之间的均衡性更好。研究者发现,分解的卷积也可以用在 cGAN 的生成器设计上。

2. 使用 NAS 实现自动裁剪通道

现有的生成器在所有层上使用手动设计(并且几乎统一)的通道数,如此一来就会产生冗余,远非最优方法。为了进一步提升压缩效率,研究者使用通道剪枝(channel pruning)来自动选择生成器中的通道宽度,从而减少冗余,二次减少计算量。这一方法支持有关通道数的细粒度选择,针对每个卷积层,可以从 8 的倍数中选择卷积层,从而平衡 MAC 和硬件并行性。

解耦训练与结构搜索

研究者依照最近 one-shot 的 NAS 方法的研究,将模型训练与架构搜索脱钩。首先,训练一个支持不同通道数量的「once-for-all」网络,其中的每个子网络都经过了同等训练。图 3 阐释了整个框架。研究者假设原始的教师生成器有韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源个通道,对于给定的通道数

,从「once-for-all」的权重张量提取第一个通道,获得子网络的权重网络

在每一个训练步骤中,使用学习目标对具备某一通道数的子网络进行随机取样,计算输出和梯度,更新提取的权重(公式 4)。由于最先被抽取的几个通道更新频率更高,它们在所有权重之中扮演着更为关键的角色。

这个「once-for-all」网络训练好之后,研究者直接在验证集上评估了每个子网络的性能,找出了最佳的子网络。「once-for-all」网络已经经过了权值共享的彻底训练,无需再进行微调(fine-tuning)。这个结果近似于从头开始训练模型的性能。

通过这种方式,只需要训练一次,且无需再进一步训练,就能评估所有评估所有通道的配置,并依据搜索结果找到其中最佳。当然,也可以对选中的架构进行微调来进一步提升其性能。

实验结果

研究者在以下三种条件式 GAN 模型上进行实验以验证文中 GAN 压缩框架的泛化性,它们分别是 CycleGAN、Pix2Pix 和 GauGAN。所使用的四个数据集为 Horse↔zebra、Edges→shoes、Cityscapes 和 Map↔aerial photo。

下表 1 展示了在上述四个数据集上压缩 CycleGAN、Pix2Pix 和 GauGAN 模型的量化结果。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

表 1:三种条件式 GAN 模型压缩的量化评估,其中 Cityscapes 数据集上使用 mAP 度量(越高越好),其他数据集上使用 FID 度量。结果显示,在性能轻微下降的情况下,文中 GAN 压缩方法可以在 MACs 上将当前 SOTA 条件式 GAN 压缩 7 至 21 倍,在模型大小上压缩 5 至 33 倍。对于 CycleGAN 模型压缩,文中 GAN 压缩方法远优于以往的 CycleGAN-specific Co-evolution 方法。

性能与计算之间的权衡

该方法除了能够实现较大的压缩率以外,同时其也可以提升不同模型大小的性能。下图 6 显示了在 pix2pix 模型中,在不同数据集上的性能与计算的权衡。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

图 6:在 Cityscapes 与 Edges→Shoes 数据集上 pix2pix 的权衡曲线。剪枝与蒸馏方法在大型模型中超出了从头开始训练,然而在模型被急剧压缩时表现较差。

效果展示

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

下图 4 为使用该方法得到的效果展示。图中分别给出了输入数据、标准输出、原始模型输出以及压缩后模型的输出。从图中可以看出,即使在较大的压缩率下,研究者所提方法仍然能保持输出图像的视觉可信度。

图 4:Cityscapes、Edges→Shoes 以及 Horse→Zebra 数据集上效果比较。

硬件推理加速

对于真实场景交互应用而言,在硬件设备上推理加速的重要性要远大于减少计算消耗。如下表 2 所示,为验证所提方法在实际应用中的有效性,研究者在具有不同运算性能的设备上面测试了压缩模型的推理速度。

韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源

表 2:在 NVIDIA Jetson AGX Xavier、NVIDIA Jetson Nano、1080Ti GPU 和 Xeon CPU 上测到的内存和延迟下降。

结论

在本文中,韩松团队提出的通用压缩框架能够显著降低条件式 GAN 中生成器的计算花销和模型大小,并且通过知识蒸馏和自然架构搜索来提升训练稳定性以及模型效率。实验表明,文中提出的 GAN 压缩方法能够在保持视觉质量的同时压缩数种条件式 GAN 模型。他们表示,未来的研究工作将侧重于降低模型延迟以及构建生成视频模型的高效框架。

人工智能 机器学习 技术
上一篇:挑战马斯克Neuralink!斯坦福全新脑机接口,直连大脑和硅基芯片 下一篇:人工智能如何支持公司的可持续发展?
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

机器学习变革物流运输和交通出行

云和机器学习的融合催生了自动驾驶技术尤其是人们出行方式的广泛创新,正在改变整个行业的游戏规则。根据普华永道(PWC)的数据,68%的物流运输企业负责人认为,未来5年,提供物流运输服务的核心技术的改变将颠覆整个行业。

AWS大中华区云服务产品管理总经理顾凡 ·  1天前
人工智能可以塑造活动产业的未来吗?

活动组织者可以为活动管理引入AI,以使他们的活动更加成功。现场活动是很好的营销方式,也是增强业务与客户关系的优秀方式。根据一项调查,84%的领导者认为活动是其业务成功的关键因素。技术的使用正在改变活动的计划和组织方式。

佚名 ·  1天前
提升城市气质守护宜居环境 AI打通治理闭环

人工智能被一些研究人员称为“21世纪的电力”,认为其几乎可以为万事万物提供动力。而在城市加速发展的当下,人工智能也渐渐成为了新型智慧城市建设的“推动者”和“守望者”。

今夕何夕 ·  1天前
12个场景应用,百余种算法,AI是如何攻占经济学的?

在虚拟世界中模拟现实经济状况,想法设计更好的制度只是AI和经济学结合方式之一。其实深度强化学习在面临风险参数和不确定性不断增加的现实经济问题时,也可以提供更好的性能和更高的精度。

蒋宝尚 ·  2天前
你在打王者农药,有人却用iPhone来训练神经网络

在 iOS 设备上也可以直接训练 LeNet 卷积神经网络,而且性能一点也不差,iPhone 和 iPad 也能化为实实在在的生产力。

佚名 ·  2天前
未来20年,全自动驾驶和互联汽车会出现吗?

在这篇博文中,重点介绍了汽车技术如何使交通更安全、更智能、更有趣。

Huibert Verhoeven ·  2天前
AI、机器学习和深度学习是 OEM 的主要市场

人工智能(AI)正在迅速改变全球行业参与者的经营方式。人工智能(AI)正在迅速改变全球行业参与者的经营方式。随着人工智能在商业和商业领域的广泛应用,我们看到了从更智能的产品到专注于聚焦客户服务的一切演变。

佚名 ·  2天前
和AI去码一样神奇?AI上色是黑科技还是逗你玩

在图片处理领域这块,AI 刷的存在感越来越多。早前笔者就介绍过 AI 无损放大图片、AI 去除马赛克、AI 自动给线稿上色之类的玩法,现在,又有人给笔者推荐了一个 AI 黑科技——黑白照片一键变彩色。

Aimo ·  2天前
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载