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

Data-Efficient GANs with DiffAugment #109

Open
Yagami360 opened this issue Nov 14, 2020 · 0 comments
Open

Data-Efficient GANs with DiffAugment #109

Yagami360 opened this issue Nov 14, 2020 · 0 comments

Comments

@Yagami360
Copy link
Owner

Yagami360 commented Nov 14, 2020

0. 論文情報・リンク

1. どんなもの?

  • noize-to-images タスクでのGAN モデルにおいて、DAをうまく機能させるためには、そのDAが微分可能なDA演算でなくてはならないことを明らかにしている。

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

  • GAN により画像生成モデルでは、一般的に多量の学習用データが必要であるが、このような多量の学習用データの収集は困難であることが多いという問題が存在する。
    学習用データ不足に対する一般的な対策は、学習用データのデータオーギュメント(DA)であるが、DAの程度や確率をうまく調整しないと、入力画像に対してのDAがそのまま出力画像に "漏れる [leak]"(例えば、回転DAをした結果出力画像も回転してしまうなど) ケースが発生する。
    本論文では、GAN モデルでDAをうまく機能させるためには、そのDAが微分可能なDA演算でなくてはならないことを明らかにしている。

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

  • 既存の DA 手法の問題点

    • 入力画像のみにDAを適用する方法
      noize-to-image タスクでの GAN モデルにおいて、DAを適用する最も単純な方法は、識別器の本物画像としての正解入力画像のみに DA を適用する方法である。
      式で書くと、以下の式のようになる。
      ※ noize-to-image モデルで考えているので、入力画像は生成器に入力されず識別器にのみ入力される問題設定になっていることに注意

      GAN では、生成器と識別器の敵対的学習により、生成器が出力する分布(=モデルの分布)を学習用データセットの分布(=真の分布)x に近づけることを目的としている。
      しかしながら、上記のようなDAを行うと、GAN モデルが真の分布 x ではなく、DAした分布 T(x) を学習してしまう。
      その結果として、下図のように入力画像に対してのDAがそのまま出力画像に "漏れる [leak]"(例えば、回転DAをした結果出力画像も回転してしまうなど) ケースが発生してしまう。

    • 生成器からの出力にもDAを適用する方法
      noize-to-image タスクでの GAN モデルにおいて、DAを適用する他の方法は、識別器の本物画像としての正解入力画像だけでなく、識別器の偽物画像としての生成器からの出力にも DA を適用する方法である。
      式で書くと、以下のような式となる。

      しかしながら、この際にの DA 演算 T が微分不可能な DA 演算であった場合は、DA 演算 T により識別器のみが誤差逆伝播で学習されることになるので、GAN の敵対的学習において必要となる生成器と識別器の絶妙なバランス加減が崩れ、下図のように DA を行うことで逆に品質が劣化するという結果になる。

  • 微分可能な DA

    上記 DA の問題点は、DA演算 T が微分不可能であるために識別器のみが学習され、敵対的学習のバランスが崩れることが原因であった。
    そのため、GAN モデルにおいてDAが有効であるためには、DA演算 T が微分可能である必要がある。
    微分可能な DA 演算では、識別器を誤差逆伝播で学習するだけではなく、生成器も誤差逆伝播で学習できるので、敵対的学習のバランスを崩すことなく学習をすすめることが出来る。
    式で書くと、以下のような式になる。

    この微分可能なDA演算 T として、本手法では具体的に以下のような DA 演算を採用している。
    ※ これらの DA 演算は、どれも今まで広く使われているDA手法であって、新たな DA 演算ではないことに注意

    • zero padding
      -1/8 ~ 1/8 の範囲での zero padding

    • cut out
      画像の半分の範囲での cut out (※ Randam erasing の亜種)

    • ランダム色調変換

      • -0.5 ~ 0.5 の範囲でのランダム明るさ [brightness] 変換
      • 0.5 ~ 1.5 の範囲でのランダムコントラスト [contrast] 変換
      • 0 ~ 2 の範囲でのランダム彩度 [saturation] 変換

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

  • 学習用データセット
    ImageNet, FFHQ and LSUN-Cat , CIFAR-10 and CIFAR-100 それぞれで学習したモデル(BigGAN)で評価。

  • 微分可能なDAの定量比較検証


    上図は、それぞれ以下の設定での比較を行ったである。
    ① Aug. reals only : 入力画像のみにDAを適用する方法
    ② Aug. reals fakes (D only) : 入力画像と生成器出力双方に DA(微分不可能なDAで識別器のみ更新)
    ③ Aug. reals fakes (D+G ours) : 入力画像と生成器出力双方に DA(微分不可能なDAで識別器のみ更新)

    本手法(Aug. reals fakes (D+G ours))の方法が、最も優れた品質スコアや汎化性能を実現できている。

5. 議論はあるか?

  • GANモデルでDAを行う場合は、微分可能なDA演算でなくてはうまく行かない理由は明らかにしている点では新規性があるが、具体的な微分可能なDA手法として提示している{ゼロパディング・カットアウト(RamdamErasing亜種)・各種ランダム色調変換}は、どれも今まで広く使われているDA手法であるので、新たに GAN モデルで有効な DA 手法を提案しているわけではない
  • GAN モデルで DA を行う場合は、その DA 演算が微分可能な演算になっているか注意すべきという教訓は得られる。
  • noize-to-image の GAN モデルで DA を行う場合は、その DA 演算が微分可能な演算になっているか注意すべきという教訓は得られる。
  • image-to-image の GAN モデルでは、入力画像のDAが生成器に入力される構造であるので、DAされた入力データで生成器と識別器が双方が学習される。そのため本論文での議論は必ずしも成り立たない気がする。

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

  • xxx

7. 参考文献

  • xxx
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