2017년 4월 26일, NDC2017 발표자료입니다.
콘텐츠 제작은 게임 개발에서 많은 노력과 시간 투자를 필요로하는 작업입니다. 최근 폭발적인 관심을 받고 있는 딥러닝을 통해 여기에 드는 시간을 크게 줄일 수 있습니다. 이 발표에서는 VAE(Variational AutoEncoder)를 이용한 모방을 통한 콘텐츠 생성 기법에 대해서 다룹니다.
9. 기술의 빠른 발전
• <Unsupervised Representation Learning with Deep Convolutional
Generative Adversarial Networks>
https://www.semanticscholar.org/paper/Unsupervised-Representation-Learning-with-Deep-Radford-
Metz/35756f711a97166df11202ebe46820a36704ae77
10. 기술의 빠른 발전
• <BEGAN: Boundary Equilibrium Generative Adversarial Networks>
https://github.com/Heumi/BEGAN-tensorflow
11. 기술의 빠른 발전
• <BEGAN: Boundary Equilibrium Generative Adversarial Networks>
https://github.com/Heumi/BEGAN-tensorflow
13. 딥러닝을 이용한 생성 모델
• VAE (Variational Auto-Encoder)
• GAN (Generative Adversarial Networks)
• PixelRNN
https://blog.openai.com/generative-models/
14. GAN (Generative Adversarial
Networks)• 적대적 생성 모델
• 이미지를 생성하는 생성자(Generator, G)와 이미지의 진짜/가짜를 판단하는
판별자(Discriminator, D)가 상호 경쟁하며 발전
https://medium.com/@devnag/generative-adversarial-networks-gans-in-50-lines-of-code-pytorch-e81b79659e3f
28. 이미지의 차이를 줄이는 쪽으로 학습
• 이미지의 차이(error) = MSE = Mean Squared Error
https://blog.insightdatascience.com/isee-removing-eyeglasses-from-faces-using-deep-learning-d4e7d935376f
33. 압축된 정보 = latent variable
https://www.slideshare.net/TJTorres1/deep-style-using-variational-autoencoders-for-image-generation
34. Unit Gaussian → latent variable
• 평균μ, 분산σ2, 표준편차σ를 가지는 분포의 형태
https://www.slideshare.net/TJTorres1/deep-style-using-variational-autoencoders-for-image-generation
43. 4. 생성 사례
- Dungeon Shape, 캐릭터 Portrait, Sprite 등
44. 개발 환경
• Tensorflow v1.0.1 (windows 10)
• Python 3.5
• GTX1070
• Javascript (Web Demo)
45. Network Overview
• VAE Network + recurrent generation
• Pooling Layer 대신 Convolution Layer 에서 stride=2 (2칸씩 건너뛰기)
• Kevin frans 의 코드 참고
http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html
94. Analogy
• 유추
• A : B = C : ?
• ? = (B + C) – A
<Sampling Generative Networks>, Tom White
J-Diagram
http://www.nibcode.com/en/psychometric-training/abstract-reasoning-test/
108. Experiment
3rd frame +3rd frame
mean
+3rd frame
mean
+3rd frame
mean
+3rd frame
mean
+3rd frame
mean
+3rd frame
mean
-3rd frame
mean
-3rd frame
mean
-3rd frame
mean
-3rd frame
mean
-3rd frame
mean
-3rd frame
mean
110. 결론 & 논의
• 레벨 디자인 같은 데이터는 실사용 가능
• 이미지 데이터는 실사용 무리 → 멀지 않은 미래에 가능할 듯 (BEGAN 등)
• Original 데이터는 많을수록 좋음
• 이 방법으로는 최소 N > 2,000
• Latent variable 탐색 방법은 발전의 여지가 많음