shimopino / papers-challenge

Paper Reading List I have already read
30 stars 2 forks source link

Diverse Image Generation via Self-Conditioned GANs #156

Open shimopino opened 4 years ago

shimopino commented 4 years ago

論文へのリンク

[arXiv:2006.10728] Diverse Image Generation via Self-Conditioned GANs

著者・所属機関

Steven Liu, Tongzhou Wang, David Bau, Jun-Yan Zhu, Antonio Torralba

投稿日時(YYYY-MM-DD)

2020-06-16

1. どんなもの?

Discriminatorの特徴空間からクラスタリングを行って得られたクラスラベルを使用して、自己条件つき学習を行うモデルを提案した。GeneratorがDiscriminatorが補足しているモードを表現できるようになり、モード崩壊のベンチマークで既存手法を上回った。

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

GANではクラスラベルなどを使用した条件付き学習でモデルの性能が向上することが知られている。

実験的にも理論的にも実データの分布はマルチモーダル、つまり多峰的であることがわかっているが、条件なしでの学習を行うと一部の重要なモード (カテゴリなど) を無視してしまう現象が発生してしまう。

しかしラベルなどの条件付きで学習を行うと、Generatorはどのモードを表現すべきなのか知ることができ、モード崩壊を防ぐことができると考えられている。

本研究では、Discriminatorから得られた特徴空間をクラスタリングを行うことで自動的にラベルを抽出し、条件付き学習を行うことでGeneratorがこれらのクラスタを表現できるようになる新たな学習方法を提案した。

以下が実際のクラスタと対応する生成画像である。

image

3. 技術や手法の"キモ"はどこにある?

3.1 Conditional GAN training

ラベルを使用する条件付き学習では以下の目的関数を最適化させることになる。

image

このラベルcは、学習データの量に比例して各クラスタを重みをつけるカテゴリ分布Pからサンプリングされるものである。

これでDiscriminatorがあるクラスタcの条件下で学習を行っている場合、もしもデータがクラスタcからサンプリングされたものでない場合は、低いスコアを出力するようになる。

そのためGeneratorがクラスタc以外からサンプリングした場合には、Discriminatorからのペナルティが与えられることで結果として、そのクラスタにとどまることなく正しいクラスタのデータを生成できるようになる。

image

3.2 Computing new partition by clustering

学習中にはDiscriminatorが獲得する特徴量は変化するため、周期的にクラスタを更新する方針を採用している。クラスタの計算にはk最近傍法を使用しており、Discriminatorが獲得した特徴空間上でクラスタの平均との差異を最小化するようにしていく。

image

3.3 Clustering initialization

初期化にはk-mean++を採用している。なお連続的にクラスタリングを行うために、1つ前のステップで行ったクラスタ計算をもとに初期化を行っている。

image

新たに得られたDiscriminatorの特徴空間上で計算した画像ベクトルを、1つ前のクラスタから抽出された画像ベクトルで平均することで、クラスタの平均を計算する。

3.4 Matching with old clusters

Generatorに対するTarget分布が大きく変化してしまわないように、過去のクラスタにマッチするように新たなクラスタを計算する。これは新たなクラスタでサンプル数が合うように計算を行うことと同義である。

image

全体のアルゴリズムは以下になる。

image

3.5 Online clustering variant

上記以外にも勾配法によるクラスタの逐次計算を試している。結果としてはモード崩壊用のデータセットに対しては有効に働いたが、実画像のデータセットでは有効に働かなかった。

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

人工的に生成したリング状でデータと格子状のデータで本手法の効果を検証した。ほとんどのデータセットで最も高い効果を発揮していることがわかる。

image

またStacked MNISTとCIFAR10のデータセットを使用して本手法の効果を検証した。本手法はデータセット中のモードをよく再現できており、また実データに対しても最も評価指標が改善されていることがわかる。

image

またCIFAR10データセットに対してクラスタ数を変化させた場合に、どのように評価指標が変化するのかを検証した。デフォルトで設定している100と25がもっとのよい評価指標を達成している。またある程度のクラスタ数の変化に対して頑強であることがわかる。

image

ImageNetに対して本手法を適用すると、他の手法よりも評価指標を改善できていることがわかる。しかしここで提示されているFIDは、従来の教師なしでの学習よりも悪いため、最新手法に本手法を適用した場合にどのように評価指標が変化するのか検証する必要がある。

image

実際に生成された画像を見てみても、従来のGANでは多様性の低い画像を生成しているが、本手法はより多様性のある画像を生成できていることがわかる。これは生成された画像の色や明るさ、背景などを見るとわかる。

image

条件無しで学習させたGANと本手法とで各クラスタの画像を比較した。本手法がよりTargetの画像を再現できていることがわかる。

image

5. 議論はあるか?

shimopino commented 4 years ago

https://github.com/stevliu/self-conditioned-gan