■
stackGan-v2をトライ
最近突然話題になり始めたattnGANに関して、 そのコードをトライしようと思ったがまだ公開されていなかった。
そこで著者らの関連作であるstackGAN++をとりあえずトライ。
こちらはコードが既に公開されている。 ちなみにPytorch版。
AWS p2.xlarge Ubuntu 16.04環境, Pytorch=v0.3.0, torchvision=v0.2.0でトライ。
まずはdependencyをインストール。conda createで専用の環境を作成しインストール。
ここでpython2.7指定なのでpython3系でやってしまうと詰まるので注意する。
いずれもpip install
でインストールした。
続いてデータのダウンロード。
1.で指定されているpreprocess済のbirdデータ用 char-CNN-RNN text embeddingsモデルを取得。
ここからダウンロードできるが、
その中のbirds/train/char-CNN-RNN-embeddings.pickle
当たりがおそらくはそう。
次に2.で指定されているbirdデータそのもの をダウンロード。
3.4.ので指定されているimagenetとLSUNデータはとりあえず今回はダウンロードせず。
これで準備が整ったはずなので、さっそくbirdsデータの学習スクリプトをトライ。
python main.py --cfg cfg/birds_3stages.yml --gpu 0
しかし早速エラーを得る。
IOError: [Errno 2] No such file or directory: u'../data/birds/text/002.Laysan_Albatross/Laysan_Albatross_0002_1027.txt'
見てみると、text
というフォルダがたしかに存在せず、代わりにtext_c10
というフォルダがあったのでソフトリンクで
くっつけて対処(これで本当に良いかは不明)。
再度走らせると今度は無事学習が開始。
学習過程はoutput
フォルダにログが存在するので、tensorboard
を使って
モニタ出来る。
またpretrained modelを使って生成テストもできる。
生成できた画像の例。
色々複数体が合体しているものが多い印象で、良くニューロンの可視化でも似たようなことが起きている事から 今時のネットワークは単体とそうでないものの見分けがつかないのかもしれない。