26
Adversarial Training (GAN) ササササ D3 ササササ

[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Embed Size (px)

Citation preview

Page 1: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Adversarial Training (GAN)サーベイ

D3 岩澤有祐

Page 2: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

概要• Adversarial Training (GAN) 系の最近の成果についてまとめました

– 主に ICLR2016 , NIPS2016– 合計 16 本

• ちなみに GAN 論文( 2014, Jun )の引用は約 200– 初出 2013 年の VAE は約 300 なのでペース的には同じくらい

• NIPS2016 で発表に含められてないものもあり– “Coupled Generative Adversarial Networks”(面白そう)– “Disentangling factors of variation in deep

representation using adversarial training” (まだ上がってない?)

Page 3: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

まとめと感想

• Adversarial Training の肝は分布を近づけること– 例えば入力の分布 q(x) だけでなく潜在変数の分布 q(z) を近づけることもできる– 近づけたい分布がランダムなノイズから生成した分布である必要もない

(ex. Censoring representation)• GAN はちょっとずつ使いやすくなってる

& 色んな所で利用されている• 半教師ありでも SOTA• 研究はなんか VAE と似てるの多い

– DRAW vs. VRAN– Censoring vs. Variational Fair Auto Encoder– Info-GAN も似たのあったはず– 動画生成はあんま VAE 見たことない

Page 4: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

目次

• GAN の基本• GAN の問題点とその対策に関する研究• GAN に関する応用研究

Page 5: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generative Adversarial NetsIan J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil

Ozair, Aaron Courville, Yoshua Bengio

概要MinMax ゲームで生成モデル

先行研究と比べてどこがすごい?

結果生成された画像もきれいかつ訓練を覚えてるわけでもない(左図)尤度で当時良かった ?DBN や Generative stochastic networks を上回る ( 右表)

生成モデルの新しい形, VAE みたいに分布を仮定しないので画像がきれい(上図参照)SGD で解ける

イメージは貨幣偽造者 vs. 警察

NIPS2015

Page 6: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Conditional Generative Adversarial NetsMehdi Mirza, Simon Osindero

概要何らかの情報 y で条件付けた画像を表示するための方法を提案G が生成する画像を y で条件付ける以外は基本 GAN と同じ(左図)

結果条件付けた画像が生成できる(右図)たぶん各行がラベル y を固定したもので各列が潜在変数 z を固定したものちゃんと条件付けたものが生成できてる( z での条件付けは微妙な気がする)ちなみに尤度は論文中で GAN に負けてる

Arxiv

Page 7: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

GAN の問題点とその対策に関する研究

Page 8: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

GAN の問題点とその対策手法の個人的対応

1. 学習が難しい– GMMN (ICML2015), CGMMN (NIPS2016)– DCGAN (ICLR2016)– GRAN (Arxiv)– f-GAN (NIPS2016)– Improved Techniques for GAN (NIPS2016)

2. z が解釈できない– Adversarial Autoencoder (ICLR2016, Workshop)– Info-GAN (NIPS2016)3. 評価が難しい– いろんな研究がいろんなことしてる

Page 9: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generative Moment Matching Networks (GMMN)Yujia Li, Kevin Swersky, Richard Zemel

概要- GAN の D を MMD で代替- MMD (Maximum Mean Discrepancy) は,カーネルを使って積率の一致度を測る方法- カーネルが微分可能なら微分可能- MMD を使うと目的関数が単純になる- Con: MMD の正確さはカーネルやそのパラメタの選び方に依存- AutoEncoder と組み合わせること( xじゃなくて z でマッチングする)で GANを上回る

結果GMM+AE で尤度が GAN を上回る(右 2表)GMM だけだと画像が荒い印象(個人的見解)

ICML2015

MMD は計算重いので NN で使う場合普通は近似する(と思う) cf. ”VFAE [Louizos, 2016]”この論文がやってるかは知らない

補足

Page 10: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Conditional Generative Moment-Matching Networks (CGMMN)Yong Ren, Jialian Li, Yucen Luo, Jun Zhu

※ まだちゃんと読んでないのでざっくり

概要GMMN を条件付けられるようにした CGMMNを (Conditional Generative Moment Matching Networks) を提案そのために, MMD を拡張した Conditional MMD を提案

結果クラス分類,画像生成, Bayesian Dark Knowledge (BDK) で評価クラス分類タスクで普通の VAE とかより良い精度(左表),純粋な教師ありには負ける条件付けてちゃんと生成できてる(右図)BDK にも使える(論文中表 3 )

NIPS2016

Page 11: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

DCGANAlec Radford, Luke Metz, Soumith Chintala

概要GAN が安定しない問題を解決するために種々の経験則を入れたもの- プーリングの代わりに畳み込み- G には ReLU を, D には LeakyReLU- BN を G と D どちらにも使う- 全結合は使わない

結果LSUN データセットを使い寝室画像を生成(きれい!中央図)意味の演算っぽい事もできる(右図)D の特徴は教師あり学習にも使える

ICLR2016

Page 12: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generating Images with Recurrent Adversarial Networks (GRAN)Daniel Jiwoong Im, Chris Dongjoo Kim, Hui Jiang, Roland Memisevic

Arxiv

※ まだちゃんと読んでないのでざっくり

概要GAN の生成を系列的に行う( 1 度にすべて書く代わり複数回分けて書く)LAP-GAN が粗い画像から徐々に細かい部分を生成するのに対して GRAN は RNN が勝手に生成する点が違う

結果かなりきれいな画像が生成できる(中央図)右図は徐々に生成されている様子

Page 13: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

f-GAN: Training Generative Neural Samplers using Variational Divergence Minimization

Sebastian Nowozin, Botond Cseke, Ryota Tomioka

概要GAN の目的関数 (JS Divergence) を一般化したf-divergence を利用する f-GAN を提案それぞれの divergence について GAN にどれが良いか検証

結果

GAN:

f-GAN:

尤度を調べると, JS より KL のほうが高いその他諸々 +理論的考察“Note that the difference in the learned distribution Qθ arise only when the generator model is not rich enough.”<- この辺はよくわかってないです

KL

R-KL

Hei

JS

NIPS2016

Page 14: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Improved Techniques for Training GANsTim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, Xi Chen

NIPS2016

概要GAN をうまく学習させるための経験則を 5 つ提案1. Feature matching2. Minibatch discrimination3. Historical averaging4. One-side label smoothing5. Virtual batch normalization

半教師あり学習で State-of-the-art画像を評価する仕組みも提案

結果(一部)- MNIST でラベル 20枚で誤差 1% くらい- ラベル 20枚ということはほぼ One-Shot- SVHN だとラベル 1000枚でエラー率今までの約半分(左表)- 生成事例もキレイ(中央図)- 左の経験則のどれが重要かをの検証(右図)

Page 15: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Adversarial AutoencodersAlireza Makhzani, Jonathon Shlens, Navdeep Jaitly, Ian Goodfellow, Brendan Frey

概要AutoEncoder が学習する z の分布 q(z) が任意の分布 p(z) に近づくように訓練する例えば, p(z) としてガウス分布を選べばガウス分布に押し込むように q(z) を制限することができるVAE よりもうまく押し込める(中央図)

ICLR2016Workshop

結果MNIST を使った例で VAE よりガウス分布に一致できることを確認(図中央)尤度も GAN 系の中では良いその他半教師あり学習,クラスタリング,次元圧縮などで評価実験

Page 16: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets

Xi Chen, Yan Duan, Rein Houthooft, John Schulman, Ilya Sutskever, Pieter Abbeel

NIPS2016

概要Disentangle な表現を学習するように GANを拡張Disentangle な表現= 各次元が何らかの属性に対応するようなもの

手法の詳細- ランダムなノイズの他に,構造を仮定したノイズ c を入力して画像を生成 (G(z) -> G(z, c) )構造を仮定:カテゴリを仮定するなら Cat ,連続値なら Uniform普通にやると GAN は c を無視して生成する可能性があるので, c と G(z, c) の間の相互情報量を最大化する制約を付け加える

結果上図の通り,例えば MNIST なら数値,椅子なら回転,顔なら感情に対応する表現を獲得

Page 17: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

GAN の評価について

いろんな研究がいろんなことしてる1. 尤度 2. 人間評価

3. Inception 4. 異なる D との対戦

- カーネル密度推定とかで尤度を測る- Con: 正確な推定には大量のデータが必要(特にデータが増えた場合)- Con: GAN に不利(ぼやけた画像の方が尤度は高くなる)

URLSee, “Improved Techniques for Training GANs”, NIPS2016

- Inception モデルにサンプル x を入力してp(y|x) を得る

- この時, exp(E[KL(p(y|x)||p(y))) と人間評価には強い相関があるらしい- Again, see “Improved Techniques for

Training GANs”

Page 18: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

GAN に関する応用研究

Page 19: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

まずまとめ - 今回含むものを大別すると - 1. 条件付けの工夫によるタスクに適した画像生成

– 文章から画像生成 (ICLR2016)– 別ドメインの画像から生成 (Arxiv)2. 動画生成– “Deep Multi-scale Video Prediction Beyond Mean Square

Error” (ICLR2016)– VGAN (NIPS2016)3. 入力 X と G(z) 以外を近づけるもの– Fair Representation (ICLR2016)– Imitation Learning (NIPS2016)

Page 20: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generative Adversarial Text to Image SynthesisScott Reed, Zeynep Akata, Xinchen Yan, Lajanugen Logeswaran, Bernt Schiele, Honglak Lee

ICLR2016

概要文章で条件付けた画像を生成GAN との違いは,1. G を文章で条件付け(左図)2. 生成された画像の R/F だけでなく,文章と画像のペアが正しいかどうかも考慮3. 補完によりデータ追加

結果見たことない記述でも尤もらしく生成(右 2 図)“Blue bird with black beak” ->“Red bird with black beak”など 2 つの文の間を保管すると妥当そうな結果

Page 21: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Pixel-Level Domain TransferDonggeun Yoo, Namil Kim, Sunggyun Park, Anthony S. Paek, In So Kweon

Arxiv

概要異なるドメインの画像を生成する GAN モデル違いは1. ランダムノイズからではなくソース画像からターゲット画像を生成2. ターゲット画像の R/F だけでなく,ターゲット画像とソース画像のペアの妥当性も考慮

Page 22: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Deep Multi-scale Video Prediction Beyond Mean Square ErrorMichael Mathieu, Camille Couprie, Yann LeCun

概要動画のフレーム予測に AT を利用Optical Flow とかと比べてかなりきれいに生成できる(右図) +http://cs.nyu.edu/~mathieu/iclr2016extra.htmlhttp://cs.nyu.edu/~mathieu/iclr2016.html

モデルの詳細(左図)動画を生成するネットワーク G と G(z) と本物の動画を区別する D を訓練G部分が変わっただけであとは普通の GAN※GAN 以外にも工夫しているがここでは飛ばします

結果既存手法よりきれいな画像が生成できる定性評価 + 類似度 +シャープさで比較

ICLR2016

Page 23: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generating Videos with Scene Dynamics (VGAN)Carl Vondrick Hamed Pirsiavash Antonio Torralba

概要動画のフレーム予測に AT を利用前頁と比べるとより AT に特化 + モデル構造を工夫フレーム予測以外でも評価して良い精度

モデル詳細(左図)Background と ForegroundおよびにそのMask により生成 時間方向含む 3次元の畳み込みで生成AT のやり方は前頁と同じ

結果- 動き方などは自然な動画を生成できる( ex. 波,左 2 図)- 画像として不自然,解像度が低い等課題も- 学習された表現は事前学習としても優秀(右 2 表,行動認識結果)- G を静止画で条件付けることで静止画を動かすことも可能(右図)- 未来は不確定なので一致はしないが自然な動きをする- http://web.mit.edu/vondrick/tinyvideo/

NIPS2016

Page 24: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Censoring Representation with AdversaryHarrison Edwards, Amos Storkey

ICLR2016

概要利用する特徴量が何らかの情報を含んでほしくない場合がある例 1: Fairness黒人か白人かで推薦結果を変えたくない例 2: Image Anonymization画像中に氏名や住所を含みたくない

結果画像中から顔は再構築しながら氏名は消すようなことができる(右図)Fairness についても既存手法を上回る

難しさFairness や Anonymization とデータの価値がトレードオフになりうる

Page 25: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

Generative Adversarial Imitation LearningJonathan Ho, Stefano Ermon

概要問題設定として,専門家の行動を真似するエージェントを作成することを考える(例:プロ棋士の手を打つエージェント)これを実現する方法としては逆強化学習が有名だが,どう行動するか(ポリシー)ではなく行動の良さの評価関数をまず推定するので,遅い逆強化学習から出発して,評価関数の学習を経ずに直接ポリシーを作ろうとしたら GAN と接続した的な話

NIPS2016

※細かいことはよくわかってない

結果複数のタスク( Open AI Gym )で比較手法を上回る学習したポリシーの事例https://openai.com/assets/research/generative-models/gail-ant_ga_25_short-1f31274a548f6fda15396d607f74c323e1de2eb53ad9b3d9855d5f5c99600d25.gif

Page 26: [DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)

まとめと感想

• Adversarial Training の肝は分布を近づけること– 例えば入力の分布 q(x) だけでなく潜在変数の分布 q(z) を近づけることもできる– 近づけたい分布がランダムなノイズから生成した分布である必要もない

(ex. Censoring representation)• GAN はちょっとずつ使いやすくなってる

& 色んな所で利用されている• 半教師ありでも SOTA• 研究はなんか VAE と似てるの多い

– DRAW vs. VRAN– Censoring vs. Variational Fair Auto Encoder– Info-GAN も似たのあったはず– 動画生成はあんま VAE 見たことない