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

Synthesizing Programs for Images using Reinforced Adversarial Learning #37

Open
kogaki opened this issue Apr 16, 2018 · 0 comments
Open

Comments

@kogaki
Copy link
Member

kogaki commented Apr 16, 2018

画像等を直接生成するのではなく,"生成プロセス"を生成する.強化学習+GANのフレームワーク.

論文本体・著者

解きたい問題

  • 例えば画像を生成するときに,直接そのラスタ画像をピクセル単位で出力するのではなく,ペイントソフトがその画像を生成するような命令を生成したい.
    • ラスタ画像の生成はある程度うまく行っているが,非常に細かいディティールは失ってしまいがち.Rendererを介すことで,細かいディティールを確実に保つことができる.
    • 一方で既存のRenderer+MLの手法はhand-craftedなものばかり

新規性

  • using the discriminator’s output as a reward signal is the key to allow the agent to make meaningful progress

    • "Discriminatorを強化学習のRewardとして扱うのが鍵"
    • 系列データをGANで扱うための手法に道を示した
  • 画像を系列データとして解く問題設定が新しい

実装

  • 系列のGANとは

    • Actor-Criticの
      • image
    • 報酬をDiscriminatorにする
      • image
        • R_t = sum(r_t)
  • ここでDにはWasserstein discriminatorを用いている

    • 結果画像をみればわかるが,まだ生成画像とデータセット画像には結構見た目の乖離がある,それでもうまくGANを学習できる必要がある
    • employs Wasserstein distance … as it appears to handle vastly dissimilar pg and pd more gracefully

    • WGANを用いることで,かなりfakeとtrueの見た目に差があるものでも学習できているのかもしれない
      • この性質は他の研究にも使えそう

実験・議論

image
論文 Fig.2より
  • Discriminatorは普通にGANとして"完成された静的な画像を"既存のデータセットと比較して学習できる
  • Generatorはポリシーπによる系列生成で,絵が完成したときのDiscriminatorを騙すように学習
image
論文 Fig.3より
  • ポリシーは,毎ターン筆圧,方向,色などのアクションを出力する.

読んだ中での不明点などの感想

  • GANの静的な学習 + 強化学習による動的な生成,組み合わせかたがとってもリーズナブル
  • ただ,近いことをやろうとした論文はいくつかあるので,少し煽りが強いようには感じた.

関連論文

  • SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient
    • https://arxiv.org/abs/1609.05473
    • 系列+GAN.系列生成は同様に強化学習を用いる.どうして引用されてないかは謎
    • ただしSeqGANは自然言語処理の文脈で,Dの学習も系列データになっている.今回はDは静的なデータで学習できるのが安定性向上につながっていると考えられる
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

2 participants