SlideShare a Scribd company logo
1 of 35
InfoGAN
논문 리뷰
모두의 연구소 GAN찮아 3기
김태엽
Contents
1.IntroandRelatedworks
1-1. RepresentationLearning
1-3.RelatedWorks
3.실험결과
3-1.MutualInformationMaximization
3-2.DisentangledRepresentation
3-3.논의
4. 구현
4-1.AuxiliaryDistributionQ
4-2.LatentCodeandQdistribution
4-3.HyperParameterLambda
4-4.논의
5.결론및요약
6.자료출처
2. InfoGAN모델
2-1.정보이론
1-2. RepresentationLearning
1-4. 논의
2-2.MutualInformationforlatentcodes
2-3.VariationalMutualInformationMaximization
2-4.논의
1.IntroandRelatedWorks
1. Representation Learning
 Unsupervised Learning : 다량의 unlabeled data로부터 feature를 뽑아내는 문제
 Representation Learning : 모델이 unlabeled data로부터 중요한 semantic feature를
나타내는 표현체계(기호체계)를 학습하는 것
 기계는 Tensor라는 숫자 덩어리로 기호체계를 학습한다.
1.IntroandRelatedWorks
1. Representation Learning
1.IntroandRelatedWorks
1. Representation Learning
 Representation Learning의 종류 및 예시
- Manifold Learning, Clustering, Auto Encoder, RBM, etc…
Manifold Learning
1.IntroandRelatedWorks
2. Disentangled Representation
 Representation Learning을 할 때 보통은 학습된 Representation이 entangle하다.
 Data instance의 특성을 나타내는 Representation을 disentangled하게 만들면 해석
하기 용이하고 후속 작업에 적용하기 쉬워진다
1.IntroandRelatedWorks
2. Disentangled Representation
 DCGAN에선 저자들이 Z Representation에 대한 벡터 값을 일일이 수동으로 변화
시키면서 결과를 얻었음.
 Info GAN에선 이런 특징을 나타내는 Representation을 스스로 학습하도록 함
1.IntroandRelatedWorks
2. Disentangled Representation
1.IntroandRelatedWorks
2. Disentangled Representation
 Disentangled Representation Demo : http://mattya.github.io/chainer-DCGAN/
3. Related Works
1.IntroandRelatedWorks
 Unsupervised Representation Learning과 관련해서 RBM, VAE, DCGAN 등이
Representation을 배울 수 있다는 것을 보여줌
 대부분의 이전 연구들은 Representation을 disentangle할 때에 Supervised한 접근
을 시도함
 Autoencoder, VAE, RBM에 기초하여 Supervision을 완화하여 Representation
Disentangle을 하려는 다양한 접근방법이 있었음
 연구할 당시 Unsupervised형태로 Disentangled Representation을 학습한 모델은
hossRBM이 유일했음
4. 논의
1.IntroandRelatedWorks
Well Posed Problem
1)Existence : For all suitable data, a solution exists
2)Uniqueness : For all suitable data, the solution is exists
3)Stability : The solution depends continuously on the data.
1페이지두번째문단첫번째문장
1페이지두번째문단마지막문장
1. 정보 이론
ShannonEntropy
2.InfoGAN모델
RelativeEntropy(KL-Divergence)
TheJointEntropyofX,Y
1. 정보 이론
TheMutualInformationbetweenXandY
2.InfoGAN모델
TheconditionalentropyofXgivenY
TheConditionalentropyofXgiveny=bk
1. 정보 이론
2.InfoGAN모델
RelationshipbetweenEntropyandMutualInformation
2. Mutual Information for Inducing Latent Codes
2.InfoGAN모델
 기존 GAN에서는 Input Noise Vector Z에 어떠한 제한도 부과하지 않아서
Entangled한 형태로 사용되었음 -> 이로 인해 Z의 각각 dimension이 데이터의
semantic feature에 대응되지 않음
 Z를 바로 사용하지 않고 두 개로 분리함( Incompressible Noise + Latent Code)
 각각의 latent variable에 대한 distribution은 factored distribution을 갖는다고 가정
 예를 들어 MNIST에서 c1은 1-9 digit type에 대응되도록 하고 c2, c3은 회전이나 두
께에 대한 continuous한 정보를 대응시킴
2. Mutual Information for Inducing Latent Codes
2.InfoGAN모델
 일반적인 GAN에선 Latent Code를 같이 Generator에 제공하면 그냥 무시한 형태
의 해를 찾아버릴 수 있음.
 이것을 방지하기 위해 Generator G(z, c)와 Latent Code c 사이의 상호 정보량을 최
대화 하는 Regularization을 제시함
 그렇게 되면𝑥~𝑃𝐺 𝑥 에 대해 𝑃𝐺 𝑐 𝑥 의 엔트로피가 작아지고 불확실성이 줄어듬
 Generation 과정 중에 Latent Code c의 정보가 소실되지 않기 위해 Objective
function에 상호 정보량 관련 Mutual Information Term을 추가한다.
3.Variational Mutual Information Maximization
2.InfoGAN모델
 그런데 I(c;G(z,c)) 를 바로 최대화하려면 Posterior 𝑃 𝑐 𝑥 를 계산해야 함
 즉, 바로 I(c; G(z, c))를 계산하기 어렵기 때문에 Lower Bound를 구하여 사용하는
테크닉(Variational Mutual Information Maximization)을 이용함
 Auxiliary distribution 𝑄 𝑐 𝑥 를 통해서 𝑃 𝑐 𝑥 를 근사시킴
𝐼 c; 𝐺 z, 𝑐 = 𝐻 𝑐 − 𝐻 𝑐 𝑥) = 𝑃 𝑐 log
1
𝑃(𝑐)
+ 𝑃 c,𝑥 log
1
𝑃 c 𝑥
3.Variational Mutual Information Maximization
2.InfoGAN모델
 𝑃 𝑐 𝑥 에 대한 계산은 피했지만 여전히 𝑃 𝑐 𝑥 으로부터 샘플링을 해야함
 Lemma 5.1 을 사용해서 𝐿𝐼 G,𝑄 를 다음과 같이 바꿀 수 있다.
3.Variational Mutual Information Maximization
2.InfoGAN모델
 Lower bound 가𝑃 𝑐 𝑥 와 관련 없고 G에 대해 Q를 최대화하는 문제가 됨
 기존 GAN의 학습 과정에 큰 변화없이 Lower bound를 더할 수 있음
 따라서 Info GAN은 다음과 같은 Mutual Information Regularization이 추가된
minimax 게임 문제는 풀게 됨
4.논의
2.InfoGAN모델
3페이지마지막문단
4페이지Lemma밑에문단
4페이지마지막문단
1. Mutual Information Maximization
3.실험결과
• LatentCodec 와G(z,c)간의상호정보량이최대화되는지
를평가하기위한실험
• C는categoricaldistribution(K=10,p=0.1)을따름
• H(c)=2.3로빠르게최대화되어Lowerbound가빠르게수
렴하였음
• 일반GAN을Q분포와함께학습시켜보았는데상호정보량
이증가하지않는다
2. Disentangled Representation
3.실험결과
• LatentCode를 categoricalcodeC1과continuouscodeC2,C3로구성함
• C1은categoricaldistribution(K=10,p=0.1)을따르고C2,C3는uniformdistribution(-1,1)을따른다
• C1을바꾸면DigitType이바뀐다.
• C2는숫자의회전을나타내고C3는숫자의넓이정보를모델링한다.
2. Disentangled Representation
3.실험결과
• 얼굴데이터셋에선5개의continuouscodes를사용
• 𝑐𝑖 ~uniformdistribution(-1,1)
• InfoGAN에선변화를주는요소들을supervision없
이스스로찾을수있음
2. Disentangled Representation
3.실험결과
• 의자데이터셋에선 𝑐𝟏, 𝑐𝟐,𝑐𝟑,𝑐𝟒~Categorical(K=20,p=0.05), 𝑐𝟓~𝑼𝒏𝒊 𝒇 𝒐𝒓𝒎 −𝟏,𝟏
• 𝑐𝟓를사용해서서로다른넓이의비슷한종류의의자로자연스럽게보간할수있음
2. Disentangled Representation
3.실험결과
• SVHN데이터셋은Noisy하고해상도가다양하고숫자형태가깔끔하지못해서Interpretable
Representation을배우기가힘들었음
• 10개의Categoricalvariable과2개의Uniformcontinuousvariable을이용한LatentCode를사용
• 조명에연속적으로변화하는것과Plate내용을이해하고가운데나타나는숫자에대한
Representation을학습함
2. Disentangled Representation
3.실험결과
• 10개의UniformCategoricalvariable을이용
• 안경의유무,헤어스타일,감정의변화같은고차원의Semantic한변화들도Disentangle할수있음
3.논의
3.실험결과
5페이지세번째문단
1.Auxiliary Distribution Q
4.구현
 Q를 구현하기 위해서 Recognition Network Q를 추가로 둔다.
 Q는 Discriminator와 Convolutional layer를 공유함(Discriminator 뒤쪽에 Q를
연결하여 만든다)
 마지막단에 Q(c | x)를 출력하는 Fully Connected Layer가 있다.
 𝐿𝐼 G,𝑄 는 항상 Normal GAN보다 빨리 수렴하고 Computation Cost가 많이
추가 되는게 아니다
1.Auxiliary Distribution Q
4.구현
 Discriminator의 레이어를 거치다가 Discriminator는 아웃풋을 따로 내놓음
 Q는 Leaky Relu 다음에 연결되어서 추가로 Fully Connected가 연결됨
1.Auxiliary Distribution Q
4.구현
2. Latent Code and Q distribution
4.구현
 Categorical Latent Code 𝑐𝑖 에 대해선 조건부 분포 𝑄 𝑐𝑖 𝑥 를 표현하기 위해
Soft Max를 사용함
 Continuous Latent Code 𝑐𝒋 에 대해선 Posterior 에 따라서 𝑄 𝑐𝑖 𝑥 를 다양하
게 표현할 수 있음
 이번 논문에선 𝑄 𝑐𝑖 𝑥 를 Factored Gaussian으로 표현해도 충분하였다
3. Hyper Parameter Lambda
4.구현
 Lower Bound에 대한 Regularization Hyper parameter λ 추가 되었음
 Discrete Latent Code에 대해선 1로 셋팅해도 충분함
 Continuous Latent Code에 대해서 1보다 더 작은 값으로 셋팅함
4. 논의
4.구현
5페이지Implementation3번째문단
5.결론및요약
 InfoGAN이라는 Representation Learning 알고리즘을 제시함
 Latent Code와 Noise Z를 분할하여 사용
 Generator가 Latent Code 정보를 생성과정 중 잃지 않도록 상호 정보량
을 최대화 시키도록 함
 Supervision없이도 복잡한 Datasets으로 부터 Interpretable and
Disentangled Representation을 학습할 수 있음
 Representation을 학습하도록 하는 상호 정보량을 도입하는 아이디어는
VAE 같은 모델에도 적용될 수 있음
6.참고자료및출처
• Representation Learning (표현학습), http://hugman.re.kr/blog/repr_learning/
• Factored Gaussian,
http://ipfs.io/ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco/w
iki/Gaussian_function.html/
• Differential Entropy, https://www.icg.isy.liu.se/en/courses/tsbk08/lect9.pdf
• Information Theory, Inference, and Learning Algorithms David J.C. MacKay
• 초짜 대학원생의 입장에서 이해하는 InfoGAN,
http://jaejunyoo.blogspot.com/2017/03/infogan-1.html
• 상호정보량https://en.wikipedia.org/wiki/Mutual_information
• InfoGAN—Generative Adversarial Networks Part III
https://towardsdatascience.com/infogan-generative-adversarial-networks-
part-iii-380c0c6712cd
• InfoGANTheory
https://github.com/maestrojeong/infoGAN/blob/master/Theory.ipynb
• InfoGAN: Interpretable Representation Learning by Information Maximizing
Generative Adversarial Nets
https://www.slideshare.net/ssuser06e0c5/infogan-interpretable-
representation-learning-by-information-maximizing-generative-adversarial-
nets-72268213
• InfoGAN Review https://kangbk0120.github.io/articles/2017-08/info-gan
• Deep Learning, Yoshua Bengio, Ian Goodfellow and Aaron Courville
https://www.deeplearningbook.org/version-2015-10-03/

More Related Content

What's hot

【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action DiffusionDeep Learning JP
 
Large scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalLarge scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalKCS Keio Computer Society
 
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...Deep Learning JP
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks남주 김
 
[DL輪読会]GANとエネルギーベースモデル
[DL輪読会]GANとエネルギーベースモデル[DL輪読会]GANとエネルギーベースモデル
[DL輪読会]GANとエネルギーベースモデルDeep Learning JP
 
(文献紹介) 画像復元:Plug-and-Play ADMM
(文献紹介) 画像復元:Plug-and-Play ADMM(文献紹介) 画像復元:Plug-and-Play ADMM
(文献紹介) 画像復元:Plug-and-Play ADMMMorpho, Inc.
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門tmtm otm
 
Image-to-Image Translation pix2pix
Image-to-Image Translation pix2pixImage-to-Image Translation pix2pix
Image-to-Image Translation pix2pixYasar Hayat
 
[DL輪読会]Temporal Abstraction in NeurIPS2019
[DL輪読会]Temporal Abstraction in NeurIPS2019[DL輪読会]Temporal Abstraction in NeurIPS2019
[DL輪読会]Temporal Abstraction in NeurIPS2019Deep Learning JP
 
오토인코더의 모든 것
오토인코더의 모든 것오토인코더의 모든 것
오토인코더의 모든 것NAVER Engineering
 
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANsIcml2018読み会_overview&GANs
Icml2018読み会_overview&GANsKentaro Tachibana
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理Taiji Suzuki
 
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...Deep Learning JP
 
Finding connections among images using CycleGAN
Finding connections among images using CycleGANFinding connections among images using CycleGAN
Finding connections among images using CycleGANNAVER Engineering
 
[DL輪読会]Learning Latent Dynamics for Planning from Pixels
[DL輪読会]Learning Latent Dynamics for Planning from Pixels[DL輪読会]Learning Latent Dynamics for Planning from Pixels
[DL輪読会]Learning Latent Dynamics for Planning from PixelsDeep Learning JP
 
알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder홍배 김
 
Flow based generative models
Flow based generative modelsFlow based generative models
Flow based generative models수철 박
 
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement LearningDeep Learning JP
 
Variational AutoEncoder
Variational AutoEncoderVariational AutoEncoder
Variational AutoEncoderKazuki Nitta
 

What's hot (20)

【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
【DL輪読会】Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
 
Large scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalLarge scale gan training for high fidelity natural
Large scale gan training for high fidelity natural
 
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks
 
[DL輪読会]GANとエネルギーベースモデル
[DL輪読会]GANとエネルギーベースモデル[DL輪読会]GANとエネルギーベースモデル
[DL輪読会]GANとエネルギーベースモデル
 
(文献紹介) 画像復元:Plug-and-Play ADMM
(文献紹介) 画像復元:Plug-and-Play ADMM(文献紹介) 画像復元:Plug-and-Play ADMM
(文献紹介) 画像復元:Plug-and-Play ADMM
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門
 
Image-to-Image Translation pix2pix
Image-to-Image Translation pix2pixImage-to-Image Translation pix2pix
Image-to-Image Translation pix2pix
 
[DL輪読会]Temporal Abstraction in NeurIPS2019
[DL輪読会]Temporal Abstraction in NeurIPS2019[DL輪読会]Temporal Abstraction in NeurIPS2019
[DL輪読会]Temporal Abstraction in NeurIPS2019
 
오토인코더의 모든 것
오토인코더의 모든 것오토인코더의 모든 것
오토인코더의 모든 것
 
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANsIcml2018読み会_overview&GANs
Icml2018読み会_overview&GANs
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
 
Deep sets
Deep setsDeep sets
Deep sets
 
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
 
Finding connections among images using CycleGAN
Finding connections among images using CycleGANFinding connections among images using CycleGAN
Finding connections among images using CycleGAN
 
[DL輪読会]Learning Latent Dynamics for Planning from Pixels
[DL輪読会]Learning Latent Dynamics for Planning from Pixels[DL輪読会]Learning Latent Dynamics for Planning from Pixels
[DL輪読会]Learning Latent Dynamics for Planning from Pixels
 
알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder
 
Flow based generative models
Flow based generative modelsFlow based generative models
Flow based generative models
 
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning
【DL輪読会】Contrastive Learning as Goal-Conditioned Reinforcement Learning
 
Variational AutoEncoder
Variational AutoEncoderVariational AutoEncoder
Variational AutoEncoder
 

Similar to InfoGAN Paper Review

인공신경망
인공신경망인공신경망
인공신경망종열 현
 
딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해Hee Won Park
 
딥러닝을 위한 Tensor flow(skt academy)
딥러닝을 위한 Tensor flow(skt academy)딥러닝을 위한 Tensor flow(skt academy)
딥러닝을 위한 Tensor flow(skt academy)Tae Young Lee
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usageTae Young Lee
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기Myeongju Kim
 
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic용진 조
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderLee Seungeun
 
Chapter 17 monte carlo methods
Chapter 17 monte carlo methodsChapter 17 monte carlo methods
Chapter 17 monte carlo methodsKyeongUkJang
 
집단지성 프로그래밍 06-의사결정트리-01
집단지성 프로그래밍 06-의사결정트리-01집단지성 프로그래밍 06-의사결정트리-01
집단지성 프로그래밍 06-의사결정트리-01Kwang Woo NAM
 
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...태엽 김
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
 
Papago/N2MT 개발이야기
Papago/N2MT 개발이야기Papago/N2MT 개발이야기
Papago/N2MT 개발이야기NAVER D2
 
2.supervised learning(epoch#2)-3
2.supervised learning(epoch#2)-32.supervised learning(epoch#2)-3
2.supervised learning(epoch#2)-3Haesun Park
 
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...gohyunwoong
 
Refactoring tutorial
Refactoring tutorialRefactoring tutorial
Refactoring tutorialBingu Shim
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorialLee Seungeun
 
Survey of activation functions
Survey of activation functionsSurvey of activation functions
Survey of activation functions창기 문
 

Similar to InfoGAN Paper Review (20)

Deep learning overview
Deep learning overviewDeep learning overview
Deep learning overview
 
인공신경망
인공신경망인공신경망
인공신경망
 
딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해딥러닝 기본 원리의 이해
딥러닝 기본 원리의 이해
 
딥러닝을 위한 Tensor flow(skt academy)
딥러닝을 위한 Tensor flow(skt academy)딥러닝을 위한 Tensor flow(skt academy)
딥러닝을 위한 Tensor flow(skt academy)
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usage
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기
 
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding Autoencoder
 
Chapter 17 monte carlo methods
Chapter 17 monte carlo methodsChapter 17 monte carlo methods
Chapter 17 monte carlo methods
 
집단지성 프로그래밍 06-의사결정트리-01
집단지성 프로그래밍 06-의사결정트리-01집단지성 프로그래밍 06-의사결정트리-01
집단지성 프로그래밍 06-의사결정트리-01
 
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...
Progressive Growing of GANs for Improved Quality, Stability, and Variation Re...
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
 
Papago/N2MT 개발이야기
Papago/N2MT 개발이야기Papago/N2MT 개발이야기
Papago/N2MT 개발이야기
 
2.supervised learning(epoch#2)-3
2.supervised learning(epoch#2)-32.supervised learning(epoch#2)-3
2.supervised learning(epoch#2)-3
 
서울 R&D 캠퍼스 자연어 수업자료
서울 R&D 캠퍼스 자연어 수업자료서울 R&D 캠퍼스 자연어 수업자료
서울 R&D 캠퍼스 자연어 수업자료
 
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
 
Refactoring tutorial
Refactoring tutorialRefactoring tutorial
Refactoring tutorial
 
메이크챗봇 자연어기초
메이크챗봇 자연어기초메이크챗봇 자연어기초
메이크챗봇 자연어기초
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial
 
Survey of activation functions
Survey of activation functionsSurvey of activation functions
Survey of activation functions
 

InfoGAN Paper Review

  • 1. InfoGAN 논문 리뷰 모두의 연구소 GAN찮아 3기 김태엽
  • 3. 1.IntroandRelatedWorks 1. Representation Learning  Unsupervised Learning : 다량의 unlabeled data로부터 feature를 뽑아내는 문제  Representation Learning : 모델이 unlabeled data로부터 중요한 semantic feature를 나타내는 표현체계(기호체계)를 학습하는 것  기계는 Tensor라는 숫자 덩어리로 기호체계를 학습한다.
  • 5. 1.IntroandRelatedWorks 1. Representation Learning  Representation Learning의 종류 및 예시 - Manifold Learning, Clustering, Auto Encoder, RBM, etc… Manifold Learning
  • 6. 1.IntroandRelatedWorks 2. Disentangled Representation  Representation Learning을 할 때 보통은 학습된 Representation이 entangle하다.  Data instance의 특성을 나타내는 Representation을 disentangled하게 만들면 해석 하기 용이하고 후속 작업에 적용하기 쉬워진다
  • 7. 1.IntroandRelatedWorks 2. Disentangled Representation  DCGAN에선 저자들이 Z Representation에 대한 벡터 값을 일일이 수동으로 변화 시키면서 결과를 얻었음.  Info GAN에선 이런 특징을 나타내는 Representation을 스스로 학습하도록 함
  • 9. 1.IntroandRelatedWorks 2. Disentangled Representation  Disentangled Representation Demo : http://mattya.github.io/chainer-DCGAN/
  • 10. 3. Related Works 1.IntroandRelatedWorks  Unsupervised Representation Learning과 관련해서 RBM, VAE, DCGAN 등이 Representation을 배울 수 있다는 것을 보여줌  대부분의 이전 연구들은 Representation을 disentangle할 때에 Supervised한 접근 을 시도함  Autoencoder, VAE, RBM에 기초하여 Supervision을 완화하여 Representation Disentangle을 하려는 다양한 접근방법이 있었음  연구할 당시 Unsupervised형태로 Disentangled Representation을 학습한 모델은 hossRBM이 유일했음
  • 11. 4. 논의 1.IntroandRelatedWorks Well Posed Problem 1)Existence : For all suitable data, a solution exists 2)Uniqueness : For all suitable data, the solution is exists 3)Stability : The solution depends continuously on the data. 1페이지두번째문단첫번째문장 1페이지두번째문단마지막문장
  • 15. 2. Mutual Information for Inducing Latent Codes 2.InfoGAN모델  기존 GAN에서는 Input Noise Vector Z에 어떠한 제한도 부과하지 않아서 Entangled한 형태로 사용되었음 -> 이로 인해 Z의 각각 dimension이 데이터의 semantic feature에 대응되지 않음  Z를 바로 사용하지 않고 두 개로 분리함( Incompressible Noise + Latent Code)  각각의 latent variable에 대한 distribution은 factored distribution을 갖는다고 가정  예를 들어 MNIST에서 c1은 1-9 digit type에 대응되도록 하고 c2, c3은 회전이나 두 께에 대한 continuous한 정보를 대응시킴
  • 16. 2. Mutual Information for Inducing Latent Codes 2.InfoGAN모델  일반적인 GAN에선 Latent Code를 같이 Generator에 제공하면 그냥 무시한 형태 의 해를 찾아버릴 수 있음.  이것을 방지하기 위해 Generator G(z, c)와 Latent Code c 사이의 상호 정보량을 최 대화 하는 Regularization을 제시함  그렇게 되면𝑥~𝑃𝐺 𝑥 에 대해 𝑃𝐺 𝑐 𝑥 의 엔트로피가 작아지고 불확실성이 줄어듬  Generation 과정 중에 Latent Code c의 정보가 소실되지 않기 위해 Objective function에 상호 정보량 관련 Mutual Information Term을 추가한다.
  • 17. 3.Variational Mutual Information Maximization 2.InfoGAN모델  그런데 I(c;G(z,c)) 를 바로 최대화하려면 Posterior 𝑃 𝑐 𝑥 를 계산해야 함  즉, 바로 I(c; G(z, c))를 계산하기 어렵기 때문에 Lower Bound를 구하여 사용하는 테크닉(Variational Mutual Information Maximization)을 이용함  Auxiliary distribution 𝑄 𝑐 𝑥 를 통해서 𝑃 𝑐 𝑥 를 근사시킴 𝐼 c; 𝐺 z, 𝑐 = 𝐻 𝑐 − 𝐻 𝑐 𝑥) = 𝑃 𝑐 log 1 𝑃(𝑐) + 𝑃 c,𝑥 log 1 𝑃 c 𝑥
  • 18. 3.Variational Mutual Information Maximization 2.InfoGAN모델  𝑃 𝑐 𝑥 에 대한 계산은 피했지만 여전히 𝑃 𝑐 𝑥 으로부터 샘플링을 해야함  Lemma 5.1 을 사용해서 𝐿𝐼 G,𝑄 를 다음과 같이 바꿀 수 있다.
  • 19. 3.Variational Mutual Information Maximization 2.InfoGAN모델  Lower bound 가𝑃 𝑐 𝑥 와 관련 없고 G에 대해 Q를 최대화하는 문제가 됨  기존 GAN의 학습 과정에 큰 변화없이 Lower bound를 더할 수 있음  따라서 Info GAN은 다음과 같은 Mutual Information Regularization이 추가된 minimax 게임 문제는 풀게 됨
  • 21. 1. Mutual Information Maximization 3.실험결과 • LatentCodec 와G(z,c)간의상호정보량이최대화되는지 를평가하기위한실험 • C는categoricaldistribution(K=10,p=0.1)을따름 • H(c)=2.3로빠르게최대화되어Lowerbound가빠르게수 렴하였음 • 일반GAN을Q분포와함께학습시켜보았는데상호정보량 이증가하지않는다
  • 22. 2. Disentangled Representation 3.실험결과 • LatentCode를 categoricalcodeC1과continuouscodeC2,C3로구성함 • C1은categoricaldistribution(K=10,p=0.1)을따르고C2,C3는uniformdistribution(-1,1)을따른다 • C1을바꾸면DigitType이바뀐다. • C2는숫자의회전을나타내고C3는숫자의넓이정보를모델링한다.
  • 23. 2. Disentangled Representation 3.실험결과 • 얼굴데이터셋에선5개의continuouscodes를사용 • 𝑐𝑖 ~uniformdistribution(-1,1) • InfoGAN에선변화를주는요소들을supervision없 이스스로찾을수있음
  • 24. 2. Disentangled Representation 3.실험결과 • 의자데이터셋에선 𝑐𝟏, 𝑐𝟐,𝑐𝟑,𝑐𝟒~Categorical(K=20,p=0.05), 𝑐𝟓~𝑼𝒏𝒊 𝒇 𝒐𝒓𝒎 −𝟏,𝟏 • 𝑐𝟓를사용해서서로다른넓이의비슷한종류의의자로자연스럽게보간할수있음
  • 25. 2. Disentangled Representation 3.실험결과 • SVHN데이터셋은Noisy하고해상도가다양하고숫자형태가깔끔하지못해서Interpretable Representation을배우기가힘들었음 • 10개의Categoricalvariable과2개의Uniformcontinuousvariable을이용한LatentCode를사용 • 조명에연속적으로변화하는것과Plate내용을이해하고가운데나타나는숫자에대한 Representation을학습함
  • 26. 2. Disentangled Representation 3.실험결과 • 10개의UniformCategoricalvariable을이용 • 안경의유무,헤어스타일,감정의변화같은고차원의Semantic한변화들도Disentangle할수있음
  • 28. 1.Auxiliary Distribution Q 4.구현  Q를 구현하기 위해서 Recognition Network Q를 추가로 둔다.  Q는 Discriminator와 Convolutional layer를 공유함(Discriminator 뒤쪽에 Q를 연결하여 만든다)  마지막단에 Q(c | x)를 출력하는 Fully Connected Layer가 있다.  𝐿𝐼 G,𝑄 는 항상 Normal GAN보다 빨리 수렴하고 Computation Cost가 많이 추가 되는게 아니다
  • 29. 1.Auxiliary Distribution Q 4.구현  Discriminator의 레이어를 거치다가 Discriminator는 아웃풋을 따로 내놓음  Q는 Leaky Relu 다음에 연결되어서 추가로 Fully Connected가 연결됨
  • 31. 2. Latent Code and Q distribution 4.구현  Categorical Latent Code 𝑐𝑖 에 대해선 조건부 분포 𝑄 𝑐𝑖 𝑥 를 표현하기 위해 Soft Max를 사용함  Continuous Latent Code 𝑐𝒋 에 대해선 Posterior 에 따라서 𝑄 𝑐𝑖 𝑥 를 다양하 게 표현할 수 있음  이번 논문에선 𝑄 𝑐𝑖 𝑥 를 Factored Gaussian으로 표현해도 충분하였다
  • 32. 3. Hyper Parameter Lambda 4.구현  Lower Bound에 대한 Regularization Hyper parameter λ 추가 되었음  Discrete Latent Code에 대해선 1로 셋팅해도 충분함  Continuous Latent Code에 대해서 1보다 더 작은 값으로 셋팅함
  • 34. 5.결론및요약  InfoGAN이라는 Representation Learning 알고리즘을 제시함  Latent Code와 Noise Z를 분할하여 사용  Generator가 Latent Code 정보를 생성과정 중 잃지 않도록 상호 정보량 을 최대화 시키도록 함  Supervision없이도 복잡한 Datasets으로 부터 Interpretable and Disentangled Representation을 학습할 수 있음  Representation을 학습하도록 하는 상호 정보량을 도입하는 아이디어는 VAE 같은 모델에도 적용될 수 있음
  • 35. 6.참고자료및출처 • Representation Learning (표현학습), http://hugman.re.kr/blog/repr_learning/ • Factored Gaussian, http://ipfs.io/ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco/w iki/Gaussian_function.html/ • Differential Entropy, https://www.icg.isy.liu.se/en/courses/tsbk08/lect9.pdf • Information Theory, Inference, and Learning Algorithms David J.C. MacKay • 초짜 대학원생의 입장에서 이해하는 InfoGAN, http://jaejunyoo.blogspot.com/2017/03/infogan-1.html • 상호정보량https://en.wikipedia.org/wiki/Mutual_information • InfoGAN—Generative Adversarial Networks Part III https://towardsdatascience.com/infogan-generative-adversarial-networks- part-iii-380c0c6712cd • InfoGANTheory https://github.com/maestrojeong/infoGAN/blob/master/Theory.ipynb • InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets https://www.slideshare.net/ssuser06e0c5/infogan-interpretable- representation-learning-by-information-maximizing-generative-adversarial- nets-72268213 • InfoGAN Review https://kangbk0120.github.io/articles/2017-08/info-gan • Deep Learning, Yoshua Bengio, Ian Goodfellow and Aaron Courville https://www.deeplearningbook.org/version-2015-10-03/

Editor's Notes

  1. http://image.shoenet21.com/114ICC/images/20090525/9.jpg
  2. http://octavia.zoology.washington.edu/teaching/429/lecturenotes/lecture3.pdf