>100 Views
April 21, 17
スライド概要
2017/4/21
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
A Neural Representation of Sketch Drawings 冨山翔司 松尾研究室
書誌情報 • A Neural Representation of Sketch Drawings – – – – David Ha, Douglas Eck Google Brain 2017/04/16 https://arxiv.org/pdf/1704.03477.pdf • Twitterでちょっと話題になってた
論文概要 • RNNをもちいて、一筆ずつスケッチを書いていく sketch-rnnを提案 • 特に目新しいことはなし • 図がいっぱいあってカラフル
この論文の意義 • 従来の画像生成において、画像はpixelの値を用いて表 されていた。 – 一貫した画像を生成することが難しい。(coherent structure) • e.g. cats with three or more eyes, dogs with multiple heads • 本論文では画像を線(一筆)の集合として捉える。 – 低次元な画像の捉え方 – より人間っぽい物体の捉え方 – 上の問題が解消されている。
スケッチ例
扱うデータセット [x方向のベクトル,y方向のベクトル,線を描く,線を描かない,終端条件] の5次元で各線が表現される。
アーキテクチャ エンコード部分:Bi-Directional RNN. 潜在変数部分:VAE デコーダ部分:GMMとsoftmaxによって ∆x, ∆y, p1, p2, p3 を出力
デコーダ部 ∆x, ∆yはM個の混合ガウス分布として表す。 各タイムステップでの処理 q, Πは最終的にsoftmaxをかけて得られる。
その他諸々の工夫 • 生成時の終端条件は、訓練時にみた最大のスケッチ長 よりも長くなったら強制的に終了する – 重みを𝑝3 に与えるより良いらしい • 温度パラメータの導入 – 生成されるスケッチのランダムさを調整(0のとき deterministic)
Unconditional Generation • エンコーダ部分がなくても生成できる。 • 温度パラメータを変えた時のUnconditional Generation
Training 工夫として、初めはLRだけで学習させるとか。
Loss
生成例(猫だけで学習) 三つ目が二つ目になってる
生成例(豚だけで学習)
KLの重みの違いによるinterpolationの差
Reconstruction VS KL • 😀 – 例えばこれはほとんどのデータ点は顔の輪郭にある、けど、 顔になるためには目とか重要になる。 – 輪郭が正確に再構成されていれば、目がなくても Reconstruction Errorは小さい – coherentなスケッチを生成するにはどっちのLossを最適化す れば良いの? • 結論:KL項の重みを強くするとよりcoherentなスケッ チが生成されます。
Reconstruction VS KL ・KLの重みが大きいと、より意味のあるスケッチを生成する。(左三つ) ・KLの重みが大きいと、ノイズが加えられた入力でも意味のあるスケッチを 生成できる。(右三つ)
Sketch Drasing Analogies
Multi-Sketch Drawing Interpolation
猫っぽい椅子
書き足しもできるよ
限界 • データ点は300くらいが限界 • マーメイドとか難しいやつはうまくいかない – 個々のスケッチに似たスケッチではなく、なんとなく平均的 なスケッチをしてしまう。(VAEを用いた時の画像生成のぼ やけと同じ) • 75クラスとかあると無理
思ったこと • pix2pixみたいなのもできそう • 長い(20P) • 実験頑張ってるなぁ