GAN Dissection: Visualizing and Understanding Generative Adversarial Networks

GAN Dissection: Visualizing and Understanding Generative Adversarial Networks 该论文介绍了一个可视化和理解生成网络学得结构的框架,通过定义一些可解释的单元并通过干涉这些单元来探究生成网络中的因果关系。

GANpaint工具

本文还提供了一个非常有意思的demo,只要鼠标划过,GAN 就可以立即在你指定的地方画出云彩、草地、门和树等景物,并直接改变构图以保持图像的「合理性」。

可以去demo地址
选中「draw」功能和特定的对象,如tree,就能在图中随意用画笔涂抹,GAN会在涂抹区域自动生成树木。选中「remove」功能和特定的对象,如grass,GAN会在涂抹区域自动删除草地。读者可以自己尝试一下。
GAN paint app 的工作原理是直接激活或者去激活深度网络中的神经元组,这些神经元被训练用来生成图像。左边每个按钮(如 door、brick 等)都对应20个神经元。该app表明,通过学习绘画,GAN网络还能学习树、门还有屋顶等对象。通过直接切换神经元,你可以观察该网络建模的视觉世界的结构。
下面来看看这篇论文。


Abstract

生成对抗网络(GAN)近期在很多现实世界任务中取得了巨大成就,很多 GAN 的变体都在样本质量和训练稳定性上获得了很大的进展。然而,对GAN的可视化和理解仍然是缺乏探究的课题。AN 网络是如何表征视觉世界的?导致GAN输出结果失真的原因是什么?架构选择如何影响GAN学习?回答这些问题能够帮助我们发展新的理论洞察和更好的模型。
在 MIT CSAIL 主导的这项工作中,研究者展示了在单元、对象和场景级别上可视化和理解GAN的框架。研究者首先通过基于分割的网络剖析方法(network dissection method)识别出一组和对象概念很相关的可解释单元。然后通过评估人类干预(控制输出中的对象)的能力来量化可解释单元的因果效应。最后,通过将发现的对象概念嵌入到新图像中来测试这些单元和周围事物之间的语境关系。研究者展示了通过该框架实现的多种实际应用,从对比不同层、模型和数据集的内部表征,到通过定位和移除导致失真的单元来改善GAN,从而实现交互式地控制场景中的对象。


大体思路

先看下网络结构:

作者的目的是为了探究在生成器的生成过程中Object(e.g tree)是如何被encode的。
z是从低纬空间中采样的一个latent vector
x是生成器生成的图像
r是生成器中某一个层的输出。
r=h(z) 并且 x=f®=f(h(z))=G(z)
既然r包含了生成图像x的所有信息,那么r中就包含了可以推理并且生成出c类(e.g tree)的信息。
之前的问题就变成了这些信息是如何被encode到r中的。
作者试图理解r是否以某种方式明确地表示c,其中可以将位置P处的r分解为两个分量

在位置P处是否生成Object c主要取决于 r U , P r_{U,P} rU,P
作者将feature map的每一个channel定义为一个nuit U表示所有感兴趣(与Object c相关)的unit的集合, U ‾ \overline{U} U是它的补集。
主要通过以下两种方式来探究r的结构:

  • Dissection: 通过计算每个class与独立的unit之间的一致性来验证在r中是否有c的显示表示。
  • Intervention:通过激活/抑制unit来验证units的因果集和units与Object class之间的因果关系。

CHARACTERIZING UNITS BY DISSECTION

首先关注表示中的各个独立单元, r u , P

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值