[논문 리뷰] InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets

2020. 10. 16. 17:54카테고리 없음

  • Objective

    InfoGAN, an information-theoretic extension to the Generative Adversarial Network that is able to learn disentangled representations in a completely unsupervised manner.

  • How?

    • Information-theoretic regularization: 정보 이론을 GAN에 접목.
    • noise z와 Code c로 생성 샘플을 생성할 때, Latent Code c~P(c)에 대해서 c와 생성 샘플 G(z,c) 사이에 mutual information이 최대화 되도록 유도하는 손실 함수를 추가하여 GAN을 학습.
    • Variational Mutual Information Maximization: mutual information의 하한(lower bound)을 유도하여 효율적으로 계산.
  • Results

    • MNIST 숫자 데이터에 학습하였을 때, Latent code는 필기체, 두께, 회전, 그리고 숫자 카테고리를 비지도학습 기반으로 구별한다.

왜 InfoGAN이 좋은가?

  • 온전한 비지도 학습 기반 disentanglement
  • 불연속/연속적인 latent factor를 disentangle
  • 추가되는 학습 cost가 매우 적다.

Intuition

  • Problem of Original GAN

    • z는 random noise로 제한 조건이 없기 때문에 entangle될 수 밖에 없다.

    • P(x|c) = P(x) 로 생성할 수 있으므로 단순히 GAN에 latent code c를 추가해도 큰 의미를 갖지 못한다.

    • z의 각 차원 값이 의미론적 특징을 반영하지 못함

      The GAN formulation uses a simple factored continuous input noise vector z, while imposing no restrictions on the manner in which the generator may use this noise. As a result, it is possible that the noise will be used by the generator in a highly entangled way, causing the individual dimensions of z to not correspond to semantic features of the data.

  • 샘플 생성 시에 latent code c에 대한 정보를 잃지 않게 하자!
    • latent code c와 생성 샘플 G(z,c) 간의 Mutual Information을 최대화

BackGround: Information Theory

  • Mutual Information I(X;Y)
    • I(X;Y) = H(X) - H(X|Y) = H(Y) - H(Y|X) = I(Y;X)
    • The "amount of information" learned from knowledge of random variable Y about the other random variable X.
    • The reduction of "uncertainty" in X when Y is observed.
    • If X and Y are independent: I(X;Y) = 0

Network Architecture

  • Auxiliary distribution Q
    • Parameterized as a Neural Network
    • Encoder Structure: 주어진 생성 샘플에 대한 latent code c' 을 예측하고 기존 latent code c 와 reconstruction loss를 계산.