ニューラルネットワークだいぶ前にStackGANの実装をサボっていました。tsunotsuno.hatenablog.com理論云々は上の記事を見てもらうとして、実装にフォーカスします。runの実行モデルを頭に叩き込むためにpytorchを使うようにしているので今回はPytorchを使います。Augmentationここで結構ハマりました。下記のデータセットを使うと書いてあるんですが、これの使い方がなかなかわかりませんでした。flowerどこかからか持ってきたREADMEを見てみるとこんな感じで書いてあります。./misc/preprocess_flowers.py'そんなわけで、とりあえずこのあたりからファイルをダウンロードします。https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEEhttps://drive.google.com/open?id=0B3y_msrWZaXLaUc0UXpmcnhaVmM落として来たら、/Dataの下に落とした.zipファイルを展開・配置します。今度はhttp://www.vision.caltech.edu/visipedia/CUB-200-2011.htmlからCUB-200-2011をダウンロードして、これもDataの中に展開・配置します。この次に前処理なんですが、前処理ししようとしたらこんなエラー。"range"に書き換えたら動きました。中身を見てみると、こんなファイル構成になっていました。readme見た感じ、学習はtrain/、テストはtest/から使えばいいみたいですね。中身を見ていくと下のようになっていました。ファイル名が8855個StackGANを実装する上ではEmbedding(Textの数値化したもの)とEmbeddingに対応する画像ファイルが分かれば問題無いはずなので、char-CNN-RNN-embeddings.pickleとfilenames.pickle、画像ファイルがあれば事足りそうです。(他のファイルは別のことに使うんだと信じてます。間違ってたらごめんなさい。Augmentationを作ってみます。TrainerStackGANの学習の特徴として、前半600epochはStage-Iのみを学習、後半600epochはStage-IIのみを学習します。そのため、学習は便宜上前半部と後半部を実行時に指定し、どちらの学習かを確認して、該当の学習を実行します。Stage-Iこんな感じでしょうか。Stage-II実際に動かしてみた結果こんな感じでした。×64256×256もうだいぶ鳥っぽくなってますね。ところどころ、「あれっ?」ってなる部分はあるものの、大枠としては鳥に見えそうです。Stage-IIを100epochくらい回してこんなもんなので、600epochやれば論文みたいにすべて鳥っぽくなりそうですね。使用するデータセットやらGPU使うための環境だったり、いろいろ手こずりました。StackGAN自体も結構なコードのボリュームになるので、初めに作った人すごいなあとしみじみ思いました。(CD4ML)Twitter見てたら、こちらを見かけました。ニュースコーパスで遊んでみる(4回目)この前はtf-idfとwikipedia仕込みのword2vecを組み合わせる事で...2019-02-11自然言語処理について勉強してみた(その4:LSTM)この前は基本的なRNNの仕組みについて勉強していました。tsuno...2019-02-10自然言語処理について勉強してみた(その3:RNN)この前はword2vecの勉強をしていました。(1)月別アーカイブはてなブログをはじめよう!nogawanogawaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。