More Related Content Similar to Generative adversarial nets (20) Generative adversarial nets10. 紹介する論⽂
1. Goodfellow, I. J., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley,
D., Ozair, S., … Bengio, Y. (n.d.). Generative Adversarial Nets.
2. Radford, A., Metz, L., & Chintala, S. (2016). UNSUPERVISED R
EPRESENTATION LEARNING WITH DEEP CONVOLUTIONAL, 1–
16. http://doi.org/10.1051/0004-6361/201527329
9
12. GANsの背景
• DNNを⽣成モデルとして使う試みは結構ある
– Deep Boltzmann machine
– Variational Sampling
– Iterative forward diffusion process
– Recurrent network
– Deconvolution network
※網羅性はありませんし粒度もおかしいかもしれません
(次の勉強のインデックスとして活⽤)
• いろいろ問題点がある
11
16. Generative Adversarial Nets
• 贋作師と鑑定⼠をいずれもDNNとしてAdversarial Learningを⾏うフ
レームワーク
• 贋作師:乱数ベクトルを⼊⼒として、画像を出⼒するDNN
• 鑑定⼠:画像を⼊⼒として、画像が本物である確率を出⼒するDNN
15
https://medium.com/@awjuliani/generative-adversarial-networks-explained-with-a-classic-spongebob-squarepants-episode-54deab2fce39#.8bhybd8oa
22. この問題の最適解は?
• この問題の最適解は であることが⽰せる
• 証明のアウトライン
1. 固定された贋作師Gに対して、最適な鑑定⼠Dが
となることを⽰す
2. Gに関する⽬的関数C(G)は以下のように書ける
3. KLやJSDは0以上なのでKL=JSD=0が最適解。この時
21
贋作師は本物と区別がつかないモノを作
れるようになる!!
24. 実験条件
23
• データ
– MNIST
– TFD(Tronto Face Database)
– CIFAR-10
• 学習条件
– GeneratorではReLUとsigmoid activationを使⽤
– Discriminatorではmaxout activationを使⽤
– Discriminator学習でDropoutを使⽤
– 学習にはmomentum⼊りのminibatch SGDを使⽤
28. 画像⽣成アルゴリズム界隈でも進展があった
27
• Iterative forward diffusion process
• Laplacian pyramid extention to GAN
• Recurrent network approach
• Deconvolution network approach
• Deep Convolutional Generative Adversarial Network ← これ以降で紹介
※網羅性はありませんし粒度もおかしいかもしれません
(次の勉強のインデックスとして活用)
30. DCGAN(deep convolutional generative adversarial networks)
29
• Adversarial learning + Deep Convolutional NN (+ stabilization knowledge)
– Knowledgeにより⾼解像度画像でdeepなモデルが学習可能になった
knowledge 内容
All convolutional net • Deterministic spatial pooling function(maxpooling)をstrided convolutionに
置き換える
• ⾃分⾃⾝の空間的なdownsamplingができるようになる
Global average
pooling
• Eliminating fully connected layers on top of convolutional features
• Increase model stability
• Hurt convergence speed
Batch normalization • Inputをnormalizeする
• 初期化が良くない時に学習がうまくいかないのを防ぐ
• Deepなモデルでもgradientが届くようになる
• generatorから得られるサンプルがすべて同じになるのを防ぐ
GeneratorでReLU
Discriminatorで
Leaky ReLU
• GeneratorでBounded activationを使うことで「learn more quickly to
saturate and cover the color space」
• Discriminatorでleaky ReLUを使うことで⾼解像度モデルがうまくいく
32. 実験条件
31
• データ
– Large-scale Scene Understanding (LSUN)
– Imagenet-1k
– Newly assembled Faces
• 学習条件
– ピクセルの[-1,1]へのスケーリング
– Mini-batch SGDで学習(size=128)
– Initial weights ~ N(0, 0.02)
– LeakyReLUのleakのslopeは0.2
– Adam optimizer
• Learning rate = 0.0002
• Momentum term β1 = 0.5
34. 実験1:DCGANをFeature Extractorとして使ってみる
33
• 実験概要
– DCGANをFeature Extractorとして使い、得られたFeatureを使って線形判別
器を作って精度を⾒る
– 教師なし学習の質の評価の⼀般的な⽅法
• 実験詳細
– CIFAR-10、SVHNを分類
– DCGANをImagenet-1kを使って学習
– Discriminatorの全layerのfeautreを4×4にmaxpoolingし、flatteningして
featureとする(28672features)
– L2-SVMで分類モデルを作る