字节跳动提出面向GAN压缩的在线多粒度蒸馏算法,算力降至1/46

简介: 字节跳动 - 智能创作团队提出了一种用于学习轻量级 GAN 的在线多粒度蒸馏算法 OMGD。该算法能够把 GAN 模型的计算量减少到最低 1/46、参数量减少到最低 1/82 的程度,并保持原来的图像生成质量。

近年来,生成对抗网络(GAN)在图像生成、图像翻译等多种视觉应用中取得了显著成果。尽管 GAN 模型给图像生成带来了不同程度的提升,但大部分模型的部署都涉及巨大的计算资源和内存消耗。这成为在资源受限的移动设备或其他轻量级物联网设备上部署 GAN 的一个关键瓶颈。

GAN 压缩方向已经成为业界的挑战之一,不少高校和科技公司对此投入研究力量。但当前的 GAN 压缩算法主要存在两个方面的问题:一方面,当前研究倾向于直接采用成熟的模型压缩技术来进行压缩,而这些技术不是面向 GAN 定制的,缺乏对 GAN 复杂特性和结构的探索;另一方面,GAN 压缩通常被规划为一个多阶段的任务,多阶段设置中对时间和计算资源的要求较高。

为了解决上述问题,字节跳动 - 智能创作团队提出了一种面向 GAN 压缩的在线多粒度蒸馏算法(Online Multi-Granularity Distillation,简称 OMGD)。该算法能够把 GAN 模型的计算量减少到最低 1/46、参数量减少到最低 1/82 的程度,并保持原来的图像生成质量。这为在资源受限的设备上部署实时图像翻译的 GAN 模型提供了一个可行的解决方案。
OMGD 研究论文已入选 ICCV2021,相关代码也已开源。 

微信图片_20211206112224.jpg


论文链接:https://arxiv.org/abs/2108.06908GitHub 链接:https://github.com/bytedance/OMGD

引言

论文提出了一种新的在线多粒度蒸馏(OMGD)方案来获得轻量级的 GAN,以较低的计算成本生成高保真图像。OMGD 放弃了复杂的多级压缩过程,设计了一种面向 GAN 的在线蒸馏策略,可以一步获得压缩模型。OMGD 还从多个层次和粒度挖掘潜在的图像信息,以帮助优化压缩模型。这些概念可以看作是辅助监督线索,这对于突破低计算成本模型的容量瓶颈至关重要。 

微信图片_20211206112227.jpg


方法

微信图片_20211206112230.jpg


1. 在线蒸馏

论文提出了一种面向 GAN 的在线蒸馏算法来解决离线蒸馏中的三个关键问题:

第一,传统离线蒸馏方法中的学生生成器应保持一定的容量,以保持与鉴别器的动态平衡,避免模型崩溃和消失梯度。然而,OMGD 的学生生成器仅利用教师网络的输出信息来进行优化,并且在无判别器的设定中进行训练。学生生成器不再与鉴别器紧密绑定,它可以更灵活地训练并获得进一步的压缩。具体来说,在每个迭代步骤中反向传播教师生成器和学生生成器之间的蒸馏损失。这样学生生成器可以模仿教师生成器的训练过程以逐步学习。其中蒸馏的损失函数由结构相似化损失函数和感知损失函数构成。

微信图片_20211206112234.jpg


第二,预先训练的教师生成器无法引导学生逐步学习信息,并且容易导致在训练阶段过度拟合。而 OMGD 的教师生成器有助于渐进地引导学生生成器的优化方向。

第三,对于 GAN 任务来说,评估指标是主观的。因此选择合适的预训练的教师生成器并非易事。而在线策略不需要一个预先训练好的教师生成器,可以避免这个问题;同时 OMGD 的学生生成器在优化过程中不需要使用真实标签,而仅学习教师生成器的输出,这大大降低了直接拟合真实标签的难度。

2. 多粒度蒸馏

OMGD 进一步从两个角度将在线蒸馏策略扩展为多粒度方案。

一方面,其采用基于不同结构的教师生成器来捕获更多的互补的信息,从更多样化的维度提高视觉逼真度。具体来说,从深度和宽度两个互补维度将学生模型扩展为教师模型。给定一个学生生成器,通过扩展学生生成器的通道来获得更宽的教师生成器。接着在学生生成器每个下采样层和上采样层之后插入几个 Resnet block 构建一个更深的教师生成器。该研究直接将互补教师生成器的两个蒸馏损失合并为多教师设置中的知识蒸馏损失。 

微信图片_20211206112238.jpg


另一方面,除了输出层的概念外,OMGD 还将中间通道的粒度信息作为辅助的监督信号进行蒸馏优化。具体地说,OMGD 计算在通道维度上的注意力权重来衡量特征图中每个通道的重要性,并将注意力信息迁移到学生模型中。通道蒸馏损失的定义如下所示: 

微信图片_20211206112241.jpg


综上所述,整个在线多粒度蒸馏的损失函数定义: 

微信图片_20211206112244.jpg

实验

在 Pix2Pix 的结果表明,OMGD 对 U-Net 和 Resnet 两种类型的 GAN 都显著优于当前最先进的方法,且计算成本减少许多。 

微信图片_20211206112247.jpg


在 CycleGAN 的结果表明,OMGD 以更小的计算成本获得了更好的性能表现。

微信图片_20211206112250.jpg


可视化结果表示,OMGD 能够在压缩过程中保持图像的细节信息。

微信图片_20211206112253.jpg


总结

论文提出了一种用于学习轻量级 GAN 的在线多粒度蒸馏算法 OMGD。大量实验表明,OMGD 能够将 Pix2Pix 和 CycleGAN 压缩到极低的计算成本,而不会造成明显的视觉保真度损失,这为在资源受限的设备上部署实时 GAN 提供了一个可行的解决方案。

相关文章
|
6月前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
125 0
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
【EMNLP2024】基于多轮课程学习的大语言模型蒸馏算法 TAPIR
阿里云人工智能平台 PAI 与复旦大学王鹏教授团队合作,在自然语言处理顶级会议 EMNLP 2024 上发表论文《Distilling Instruction-following Abilities of Large Language Models with Task-aware Curriculum Planning》。
|
14天前
|
存储 JSON 算法
TDengine 检测数据最佳压缩算法工具,助你一键找出最优压缩方案
在使用 TDengine 存储时序数据时,压缩数据以节省磁盘空间是至关重要的。TDengine 支持用户根据自身数据特性灵活指定压缩算法,从而实现更高效的存储。然而,如何选择最合适的压缩算法,才能最大限度地降低存储开销?为了解决这一问题,我们特别推出了一个实用工具,帮助用户快速判断并选择最适合其数据特征的压缩算法。
26 0
|
24天前
|
人工智能 算法 JavaScript
无界SaaS与AI算力算法,链接裂变万企万商万物互联
本文介绍了一种基于无界SaaS与AI算力算法的商业模式的技术实现方案,涵盖前端、后端、数据库及AI算法等关键部分。通过React.js构建用户界面,Node.js与Express搭建后端服务,MongoDB存储数据,TensorFlow实现AI功能。提供了项目结构、代码示例及部署建议,强调了安全性、可扩展性和性能优化的重要性。
|
24天前
|
前端开发 算法 JavaScript
无界SaaS模式深度解析:算力算法、链接力、数据确权制度
私域电商的无界SaaS模式涉及后端开发、前端开发、数据库设计、API接口、区块链技术、支付和身份验证系统等多个技术领域。本文通过简化框架和示例代码,指导如何将核心功能转化为技术实现,涵盖用户管理、企业店铺管理、数据流量管理等关键环节。
|
4月前
|
算法 Java
Java面试题:解释垃圾回收中的标记-清除、复制、标记-压缩算法的工作原理
Java面试题:解释垃圾回收中的标记-清除、复制、标记-压缩算法的工作原理
57 1
|
4月前
|
算法 Java 程序员
Java面试题:解释Java的垃圾回收机制,包括常见的垃圾回收算法。介绍一下Java的垃圾回收算法中的标记-压缩算法。
Java面试题:解释Java的垃圾回收机制,包括常见的垃圾回收算法。介绍一下Java的垃圾回收算法中的标记-压缩算法。
46 0
|
6月前
|
存储 编解码 算法
图像的压缩算法--尺寸压缩、格式压缩和品质压缩
图像的压缩算法--尺寸压缩、格式压缩和品质压缩
114 0
|
6月前
|
机器学习/深度学习 人工智能 算法
【图像版权】论文阅读:CRMW 图像隐写术+压缩算法
【图像版权】论文阅读:CRMW 图像隐写术+压缩算法
48 0
|
6月前
|
机器学习/深度学习 存储 编解码
利用深度学习优化视频压缩算法
【4月更文挑战第28天】随着数字媒体时代的到来,视频数据量急剧增加,有效的视频压缩技术变得尤为重要。本文探讨了一种基于深度学习的视频压缩框架,旨在提高压缩效率同时保持较高的视频质量。通过使用卷积神经网络(CNN)对视频帧进行特征提取,并结合先进的编码技术,本研究提出了一种新的率失真优化算法。实验结果表明,该算法在多个标准测试序列上相比传统方法能显著降低比特率,同时维持了良好的视觉质量。
下一篇
无影云桌面