Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

StackGAN++: Realistic Image Synthesis with Stacked Generative Adversarial Networks (IEEE 2018) #5

Open
shionhonda opened this issue Apr 25, 2019 · 0 comments

Comments

@shionhonda
Copy link

shionhonda commented Apr 25, 2019

0. 論文

タイトル: StackGAN++: Realistic Image Synthesis with Stacked Generative Adversarial Networks
リンク: https://arxiv.org/abs/1710.10916
著者: Han Zhang, Tao Xu, Hongsheng Li, Shaoting Zhang, Xiaogang Wang, Xiaolei Huang, Dimitris Metaxas
所属: Rutgers University, Lehigh University, The Chinese University of Hong Kong, University of North Carolina at Charlotte
発表年: 2017
掲載: IEEE

1. どんなもの?

StackGAN-v1の改良版。複数の生成器と識別器を木構造のように並べ、様々なサイズの画像への対応・説明文無しでの画像生成を可能にした。生成画像の色に関する正則化を追加。end-to-endに安定して訓練できるようになり、画像の品質も向上。
Screenshot from 2019-04-25 17-24-32

論文ではStackGAN-v1についても述べられているが、それは#2 に譲り、ここではStackGAN-v2についてまとめる。

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

StackGAN-v1(#2 )からの差分は「複数の分布を学習させていること」で、メリットは以下の5点。

  • 生成画像の品質向上
  • 様々なサイズの画像を生成できる
  • 説明文なし(unconditional)での画像生成も可能
  • end-to-endな訓練
  • 学習の安定化(モード崩壊の軽減)

3. 技術や手法のキモはどこ?

Screenshot from 2019-04-25 16-17-11
生成器と識別器を3つずつ用意して、分岐させながらstackしている。
図に描かれていないが、Conditioning AugmentationはStackGAN-v1から引き継いでいる。

Multi-scale image distributions approximation

木の幹の部分で特徴マップをアップサンプリングしながら、枝の部分の生成器で64*64、128*128、256*256pxの画像を生成する。各ステージで条件変数cを入力する。3サイズの画像はそれぞれ識別器に識別させる。損失関数は生成器、識別器とも3つの和をとる。

Joint conditional and unconditional distribution approximation

Screenshot from 2019-04-25 16-47-19
Screenshot from 2019-04-25 16-47-29
1つ1つの損失は、conditional lossとunoconditional lossの和である。

Color-consistency regularization

ステージを経て解像度を上げるときに、低解像度画像と高解像度画像でだいたいの色が一致してほしいということで、生成器の損失関数に色に関する正則化項を加える。正則化項は、ピクセル間の平均ベクトル(RGBの3次元)のL2ノルムと共分散行列(3*3)のフロベニウスノルムからなる。
Screenshot from 2019-04-25 17-02-31

4. どうやって有効だと検証した?

StackGAN-v1と同じく、IS、FID、人によるランク付けの3点で評価した。
データセットは説明文付きのCUB、Oxford-102、COCOに加えて説明文なしのLSUN-bedroom、LSUN-church、ImageNet-dog、ImageNet-catの計7種類を利用。
Screenshot from 2019-04-25 17-09-05
StackGAN-v1と比較して多くのデータセットで改善が見られた。

5. 議論はある?

Screenshot from 2019-04-25 17-18-48
生成画像をt-SNEで次元削減して並べたもの。StackGAN-v1(左)で激しいモード崩壊が起きているのがわかる。StackGAN-v2(右)では多様性が確保されているように見える。

Screenshot from 2019-04-25 17-26-22
Ablation Studiesの結果。JCUもISの向上に寄与している。

6. 次に読むべき論文は?

Guojun Yin, Bin Liu, Lu Sheng, Nenghai Yu, Xiaogang Wang, Jing Shao, Semantics Disentangling for Text-to-Image Generation. In CVPR, 2019.

S. Reed, Z. Akata, S. Mohan, S. Tenka, B. Schiele, and H. Lee. Learning what and where to draw. In NIPS, 2016.

S. Reed, Z. Akata, X. Yan, L. Logeswaran, B. Schiele, and H. Lee. Generative adversarial text-to-image synthesis. In ICML, 2016.
Han Zhang, Tao Xu, Hongsheng Li, Shaoting Zhang, Xiaogang Wang, Xiaolei Huang, Dimitris Metaxas, StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks. In ICCV 2017.

コメント

小さい解像度の画像を識別器に評価させて勾配を前のステージに直接渡すのは、ProgressiveGANと通じるアイディアで有効性がわかりやすいです。
一方、unconditionalでの画像生成がどのように学習の安定化に寄与するのかはよくわかりませんでした。また、unconditionalのときにcをどのように決めるか(おそらく乱数?)もわかりませんでした。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant