0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

可以克服GAN训练缺点的一些解决方案,有助于提高GAN性能

DPVg_AI_era 来源:lq 2019-02-13 09:33 次阅读

生成对抗网络GAN很强大,但也有很多造成GAN难以使用的缺陷。本文介绍了可以克服GAN训练缺点的一些解决方案,有助于提高GAN性能。

生成对抗网络 (GAN) 是一类功能强大的神经网络,具有广泛的应用前景。GAN 本质上是由两个神经网络组成的系统——生成器 (Generator)和鉴别器 (Discriminator)——二者相互竞争。

GAN 的原理示意图

给定一组目标样本,生成器试图生成能够欺骗鉴别器的样本,使鉴别器认为这些样本是真实的。鉴别器试图从假的 (生成的) 样本中分辨出真实的 (目标) 样本。使用这种迭代训练方法,我们最终能得到一个非常擅长生成足以以假乱真的样本的生成器。

GAN 有很多应用,因为它们可以学习模仿几乎所有类型的数据分布。通常,GAN 用于移除图像伪影、超分辨率、姿势转换,以及任何类型的图像翻译,例如下面这些:

使用 GAN 进行图像翻译 (Source:https://phillipi.github.io/pix2pix/)

然而,由于其无常的稳定性,GAN 非常难以使用。不用说,许多研究人员已经提出了很好的解决方案来减轻 GAN 训练中涉及的一些问题。

然而,这一领域的研究进展如此之快,以至于很难跟踪所有有趣的想法。本文列出了一些常用的使 GAN 训练稳定的技术。

使用 GAN 的缺点

GAN 难以使用的原因有很多,这里列出一些主要的原因。

1、模式坍塌 (Modecollapse)

自然数据分布是高度复杂且多模态的。也就是说,数据分布有很多“峰值”(peaks)或“模式”(modes)。每个 mode 表示相似数据样本的集中度,但与其他 mode 不同。

在 mode collapse 期间,生成器生成属于一组有限模式集的样本。当生成器认为它可以通过锁定单个模式来欺骗鉴别器时,就会发生这种情况。也就是说,生成器仅从这种模式来生成样本。

顶部的图像表示没有发生 mode collapse 的 GAN 的输出。底部的图像表示发生了 mode collapse 的 GAN 的输出

(Source: https://arxiv.org/pdf/1611.02163.pdf)

鉴别器最终会发现这种模式下的样本是假的。但生成器仅仅是锁定到另一种模式。这个循环无限重复,从根本上限制了生成样本的多样性。

2、收敛 (Convergence)

GAN 训练中一个常见的问题是 “我们应该在什么时候停止训练?”。由于鉴别器损失降低时,生成器损失增加 (反之亦然),我们不能根据损失函数的值来判断收敛性。如下图所示:

一个典型的 GAN 损失函数

3. 质量

与前一个问题一样,很难定量地判断生成器何时产生高质量的样品。在损失函数中加入额外的感知正则化可以在一定程度上缓解这种情况。

4. 度量标准 (Metrics)

GAN 目标函数可以解释生成器或鉴别器相对于其他方法的性能表现。然而,它并不代表输出的质量或多样性。因此,我们需要不同的度量标准。

8大技巧提高GAN性能

有很多技巧可以用来使 GAN 更加稳定或更加强大。这里只解释了相对较新的或较复杂的一些技术。

1、替代损失函数 (Alternative Loss Functions)

针对 GAN 的缺陷,最常用的一种修复方法是Wasserstein GAN。它本质上用Earth Mover distance(Wasserstein-1 distance 或 EM distance) 来替代传统 GAN 的Jensen Shannon 散度。EM 距离的原始形式是难以处理的,因此我们使用它的 dual 形式。这要求鉴别器为 1-Lipschitz,它是通过削减鉴别器的权重来维持的。

使用 Earth Mover distance 的优点是,即使真实的数据和生成的数据分布不相交,它也是连续的,这与 JS 散度或 KL 散度不同。同时,生成的图像质量与损失值之间存在相关性。缺点是,我们需要对每个生成器更新执行多个鉴别器更新。此外,作者认为,利用权重削减来确保 1-Lipschitz 约束是一种糟糕的方法。

即使分布不连续,earth mover distance(左)也是连续的,与 JS 散度 (右) 不同

另一个解决方案是使用均方损失 (mean squared loss)来替代对数损失。LSGAN 的作者认为,传统的 GAN 损失函数并没有提供太多的激励来将生成的数据分布 “拉” 到接近真实数据分布的位置。

原始 GAN 损失函数中的 log loss 并不关心生成的数据与决策边界的距离 (决策边界将真实数据和虚假数据分开)。另一方面,LSGAN 对远离决策边界的生产样本实施乘法,本质上是将生成的数据分布 “拉” 得更接近真实的数据分布。LSGAN 用均方损失代替对数损失来实现这一点。

2、Two Timescale Update Rule(TTUR)

在这种方法中,我们对鉴别器和生成器使用不同的学习率。通常,生成器使用较慢的更新规则 (update rule),鉴别器使用较快的更新规则。使用这种方法,我们可以以 1:1 的比例执行生成器和识别器的更新,只需要修改学习率。SAGAN 实现正是使用了这种方法。

3、梯度惩罚 (GradientPenalty)

在 Improved Training of WGANs 这篇论文中,作者声称weight clipping会导致优化问题。

作者表示, weight clipping 迫使神经网络学习最优数据分布的 “更简单的近似”,从而导致较低质量的结果。他们还声称,如果没有正确设置 WGAN 超参数,那么 weight clipping 会导致梯度爆炸或梯度消失问题。

作者在损失函数中引入了一个简单的gradient penalty,从而缓解了上述问题。此外,与最初的 WGAN 实现一样,保留了 1-Lipschitz 连续性。

与 WGAN-GP 原始论文一样,添加了 gradient penalty 作为一个正则化器

DRAGAN的作者声称,当 GAN 所玩的游戏达到 “局部平衡状态” 时,就会发生 mode collapse。他们还声称,鉴别器围绕这些状态产生的梯度是“尖锐的”。当然,使用 gradient penalty 可以帮助我们避开这些状态,大大增强稳定性,减少模式崩溃。

4、谱归一化 (Spectral Normalization)

Spectral Normalization 是一种权重归一化技术,通常用于鉴别器上,以增强训练过程。这本质上保证了鉴别器是K-Lipschitz连续的。

像 SAGAN 这样的一些实现,也在生成器上使用 spectral Normalization。该方法比梯度惩罚法计算效率更高。

5、Unrolling 和Packing

防止 mode hopping 的一种方法是预测未来,并在更新参数时预测对手。Unrolled GAN 使生成器能够在鉴别器有机会响应之后欺骗鉴别器。

防止 mode collapse 的另一种方法是在将属于同一类的多个样本传递给鉴别器之前 “打包” 它们,即packing。这种方法被 PacGAN 采用,在 PacGAN 论文中,作者报告了 mode collapse 有适当减少。

6、堆叠 GAN

单个 GAN 可能不足以有效地处理任务。我们可以使用多个连续堆叠的 GAN,其中每个 GAN 可以解决问题中更简单的一部分。例如,FashionGAN 使用两个 GAN 来执行局部图像翻译。

FashionGAN 使用两个 GAN 进行局部图像翻译

把这个概念发挥到极致,我们可以逐渐加大 GAN 所解决的问题的难度。例如,Progressive GAN (ProGAN)可以生成高质量的高分辨率图像。

7、Relativistic GAN

传统的 GAN 测量生成的数据是真实数据的概率。 Relativistic GAN 测量生成的数据比真实数据 “更真实” 的概率。正如 RGAN 论文中提到的,我们可以使用适当的距离度量来度量这种“相对真实性”。

使用标准 GAN loss 时鉴别器的输出 (图 B)。图 C 表示输出曲线的实际样子。图 A 表示 JS 散度的最优解。

作者还提到,鉴别器的输出在达到最优状态时应该收敛到 0.5。然而,传统的 GAN 训练算法强迫鉴别器对任何图像输出 “real”(即 1)。这在某种程度上阻止了鉴别器达到其最优值。 relativistic 方法也解决了这个问题,并取得了相当显著的效果,如下图所示:

经过 5000 次迭代后,标准 GAN(左) 和 relativistic GAN(右) 的输出

8、自注意力机制

Self Attention GANs 的作者表示,用于生成图像的卷积会查看局部传播的信息。也就是说,由于它们限制性的 receptive field,它们错过了全局性的关系。

将 attention map(在黄色框中计算) 添加到标准卷积操作中

Self-Attention GAN 允许对图像生成任务进行注意力驱动的长期依赖建模。 Self-Attention 机制是对普通卷积运算的补充。全局信息 (远程依赖) 有助于生成更高质量的图像。网络可以选择忽略注意机制,也可以将其与正常卷积一起考虑。

对红点标记的位置的 attention map 的可视化

总结

研究社区已经提出了许多解决方案和技巧来克服 GAN 训练的缺点。然而,由于新研究的数量庞大,很难跟踪所有重要的贡献。

由于同样的原因,这篇文章中分享的细节并非详尽无疑,可能在不久的将来就会过时。尽管如此,还是希望本文能够成为人们寻找改进 GAN 性能的方法的一个指南。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4575

    浏览量

    98773
  • GaN
    GaN
    +关注

    关注

    19

    文章

    1766

    浏览量

    68028
  • 生成器
    +关注

    关注

    7

    文章

    302

    浏览量

    20222
  • 鉴别器
    +关注

    关注

    0

    文章

    8

    浏览量

    8734

原文标题:GAN最新进展:8大技巧提高稳定性

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    GaN FET重新定义电源电路设计

    。每个阶段都会对效率产生影响。这里,通过实现不同的电路拓扑和较少的阶段来提高电力系统的效率。图2显示了这个问题的解决方案。PFC级拓扑结构随着可以在更高电压和更高速度下工作的GaN晶体
    发表于 05-03 10:41

    非线性模型如何帮助进行GaN PA设计?

    涵盖70 多款裸片和封装形式的Qorvo GaN 晶体管。这些模型有助于PA 设计人员准确预测设计中集成的晶体管性能。Modelithics 的仿真模型与最新的电子设计自动化(EDA) 仿真工具无缝
    发表于 08-04 14:55

    GaN已为数字电源控制做好准备

    应用。这可能是因为数字化控制的灵活性较好,能够让设计人员精确控制开关波形。也可能是数字控制可以提供克服任意GaN缺点的多个控制回路和保护电路。我认为,“
    发表于 08-30 15:05

    TI助力GaN技术的推广应用

    的较低电容可通过最大限度地减小寄生振铃并优化转换次数来将失真降到最低,从而有助于尽可能地较少噪声。在数据中心和服务器中,GaN减少了为云端供电的电源损耗。此外,GaN在缩小电源解决方案
    发表于 09-10 15:02

    TI全集成式原型机助力GaN技术推广应用

    限度地减小寄生振铃并优化转换次数来将失真降到最低,从而有助于尽可能地较少噪声。 在数据中心和服务器中,GaN减少了为云端供电的电源损耗。此外,GaN在缩小电源解决方案尺寸方面所具有的功
    发表于 09-11 14:04

    应用GaN技术克服无线基础设施容量挑战

    数据流。但这会带来一些其他挑战。基站需要更多功率来驱动64个通道,因此,能效和散热变成了更大的问题,进提高GaN的功效相应地变得更具价值。  大规模MIMO的另
    发表于 12-05 15:18

    GaN HEMT在电机设计中有以下优点

    。这些优点让工程师能够设计出高度紧凑的电动机,其输出功率与传统电机相同,体积仅为传统电机的二分之,而且功耗低得多,唯缺点GaN HEMT设计需要更高水平的电路开发和测试的专业知
    发表于 07-16 00:27

    GaN解决方案门户上查看TI完整的GaN直流/直流转换产品组合

    的氮化镓(GaN)直流/直流解决方案去除了中间母线直流/直流转换级,设计师可以在单级中将48V电压降至更低的输出电压。去除中间母线直流/直流转换器使得功率密度和系统成本显着增加,同时提高
    发表于 07-29 04:45

    如何利用非线性模型帮助GaN PA进行设计?

    的“大师”知识来完成,使用测得的负载牵引数据可以提高PA设计的成功率,但不定能够获得所需应用频率下的负载牵引数据。而使用精确的非线性模型可以更快地生成设计数据,关注更精确的PA 行为
    发表于 07-31 08:13

    基于GaN的CrM模式的图腾柱无桥PFC参考方案的设计

    功率因数校正 (PFC) 是种使用 GaN 设计高密度功率解决方案的简便方法。TIDA-0961 参考设计使用 TI 的 600V GaN 功率级 LMG3410 和 TI 的 Pi
    发表于 01-20 07:36

    GaN和SiC区别

    的主要原因。系统封装配置有助于降低EMI,例如三维空间。利用多层PCB技术和表面贴装技术(SMT)组件的布局。 可以使用导电材料的屏障来阻挡EMI。通常将此屏蔽应用于外壳以将电气设备与其周围环境隔离
    发表于 08-12 09:42

    GaN在开关速度方面的优势

    我想大多数听众都已经了解了GaN在开关速度方面的优势,及能从这些设备中获得的利益。缩小功率级极具吸引力,而更高的带宽则更是锦上添花。电力工程师已考虑在正在开发的解决方案中使用GaN
    发表于 11-16 08:05

    ST GaN产品创新型快速充电器解决方案

    在消费类应用领域,由于快速充电器的快速增长,GaN 技术在 2020-2021 跨越了鸿沟,目前其他交直流应用场景中也采用了GaN• 带有嵌入式驱动程序 / 控制器(MasterGaN、VIPerGaN)的系统封装 (SiP) 由于集成简单,将
    发表于 09-07 07:20

    可以克服GAN训练缺点解决方案介绍

    生成对抗网络GAN很强大,但也有很多造成GAN难以使用的缺陷。本文介绍了可以克服GAN训练
    的头像 发表于 02-13 09:33 4965次阅读

    使用集成 GaN 解决方案提高功率密度

    使用集成 GaN 解决方案提高功率密度
    的头像 发表于 12-01 16:35 220次阅读
    使用集成 <b class='flag-5'>GaN</b> <b class='flag-5'>解决方案</b><b class='flag-5'>提高</b>功率密度