[论文笔记]Rob-GAN: Generator, Discriminator, and Adversarial Attacker(CVPR 2019)

Rob-GAN: Generator, Discriminator, and Adversarial Attacker(CVPR 2019)

  • 文章简介:

    本文主要是将adversarial attack加入到GAN的训练过程中,来提升训练收敛的速度以及获得更好的生成器。
  • DataSet: CIFAR-10, ImageNet data(subset)

  • Key insights:

    • 如果对图像分布有更深入的了解,可以提高对抗性训练分类器的鲁棒性。因此,Generator可以改进对抗性训练过程。
    • 如果Discriminator在图像流形上有较大的曲率,GAN训练将会非常缓慢地达到平衡。因此,一个经过对抗性训练的识别器可以加速GAN训练。
  • Contribution:

    • 给出了目前的对抗性训练算法不能很好地推广到不可见的数据的见解,并解释了GAN训练缓慢的原因。
    • 将adversarial trainning和GAN trainning进行联系:通过GAN来提高adversarial training的泛化能力,通过adversarial training来加速GAN training速度并且使其收敛到一个更好的Generator
    • 提出一个新框架:Rob-GAN(three player game)
    • 通过对AC-GAN损失的重新定义,提出了一种更好的conditional GAN训练损失模型。
  • Adversaruak training:

    • 挑战: 尽管adversarial training使得模型可以在训练集上获得不错的鲁棒性,但是同在会在测试集上显著下降。直观地说,这是因为在对抗性训练中,网络只“看到”所有训练样本附近小区域内的对抗样本,而数据流形中的其余图像则没有受到保护。
  • Some insight/hypothesis:

    • Does small LLV in training set automatically generalize to test set?

      • Adversarial trainning
      • With a small local Lipschitz value

        因为真实的数据分布 P d a t a \mathcal{P}_{data} Pdata是无法知道的,所以作者利用大数定律来代替( N t r N_{tr} Ntr是训练集中的feature-label pair)
      • Result

        尽管通过在训练集通过控制LLV来进行adversarial trainning很有效,但是这个效果无法泛化到测试集上.

      Figure 2: The local Lipschitz value (LLV) measured by gradient norm ∣ ∣ ∂ ∂ x i l ( f ( x i ; w ) , y i ∣ ∣ 2 ||\frac{\partial}{\partial x_i} \mathcal{l}(f(x_i;w), y_i||_2 xil(f(xi;w),yi2. Data pairs (xi, yi) are sampled from the training and testing set respectively. During the training process, LLV on the training set stabilizes at a low level, while LLV on the test set keeps growing.

    • Fast GAN training relies on robust discriminator:

      • 没有adversarial trainning模块的话,以conditional GANs为例,如果discriminator不够鲁棒的话,Generator就可以利用这个弱点来欺骗Discriminator。即使discriminator可以训练到识别某些adversarial pattern,但Generator可以继续去找出另外的adversarial pattern,因此这个minmax博弈永远不会结束
      • 不严格的证明: 假设在第t步,discriminator能够正确识别fake img, 即对所有的 z z z, D ( G ( z ; w t ) ) ≈ 0 D(G(z;w^t)) \approx 0 D(G(z;wt))0。为了在t+1步generator可以做到 D ( G ( z ; w t + 1 ) ) ≈ 1 D(G(z;w^{t+1})) \approx 1 D(G(z;wt+1))1, 作者假设 D ( x ) D(x) D(x) G ( z ; w ) G(z;w) G(z;w)都是Lipschitz连续的,得到下面推导

      可以发现
∣ ∣ w t + 1 − w t ∣ ∣ ∝ 1 L D L G ||w^{t+1}-w^t|| \propto \frac{1}{L_DL_G} wt+1wtLDLG1
      所以如果discriminator不够robustness, 就会意味着 L D L_D LD可能会很大,所以 w w w的变化就会相当小,使得训练速度比较慢。

  • Discriminator and the new loss function:

其中 S S S是discriminator的输出, C C C是classifier的输出。作者将AC-GAN的损失函数中的 L C \mathcal{L}_C LC分成了 L C 1 \mathcal{L}_{C_1} LC1, L C 2 \mathcal{L}_{C_2} LC2。然后

  • discriminator的目标是最大化 L S + L C 1 \mathcal{L}_{S} + \mathcal{L}_{C_1} LS+LC1, 使其只关注分类正确的图片以及分辨real/fake的图片

  • generator的目标是最大化 L C 2 − L S \mathcal{L}_{C_2} - \mathcal{L}_{S} LC2LS

  • Fine-tuning

    作者将 D D D中原来的classifier loss分支拆分成了2个分类损失(real+fale augmentation strategy)。(作者纠正:并移除了原来的Discriminator Loss)
    L D c l s : = E ( x , y ) ∼ P r e a l L ( f ( x a d v ; w ) , y ) + λ ⋅ E ( x , y ) ∼ P f a k e l ( f ( x a d v ; w ) , y ) \mathcal{L}_D^{cls} := \underset{(x,y)\sim\mathcal{P}_{real}}{\mathbb{E}} \mathcal{L}(f(x_{adv};w),y)+\lambda \cdot \underset{(x,y)\sim\mathcal{P}_{fake}}{\mathbb{E}} \mathcal{l}(f(x_{adv};w),y) LDcls:=(x,y)PrealEL(f(xadv;w),y)+λ(x,y)PfakeEl(f(xadv;w),y)
      通过fine-tuning,D将更加关注与分类任务而不是判别任务。

  实验表明使用fine-tuning后,增强了模型的泛化性。

  相比于Adv. Trainning(state-of-the-art 防御算法), 使用Fine-tuning后的Rob-GAN提高了测试集上对PGD-attack的抵抗能力

  本文的adversarial training(PGD攻击)能够提高GAN训练的收敛速度,并且能够使产生的图片分辨率更高,且在inception score上超越了SN-GAN


如果觉得我有地方讲的不好的或者有错误的欢迎给我留言,谢谢大家阅读(点个赞我可是会很开心的哦)~

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值