Adversarial AutoEncoder をGoogleColaboratoryで試してみた

シェアする

  • このエントリーをはてなブックマークに追加
スポンサーリンク

はじめに

今回は、GoogleColaboratoryを使ってKeras-GANに実装されているAdversarial AutoEncoder を試していきたいと思います。Adversarial AutoEncoderは、オートエンコーダをGANを用いて生成モデルにしようというものです。論文では、教師あり・半教師あり・教師なしクラスタリング・クラスタを考慮した次元削減といったものを行なっています。この論文についてまとめようかと思いましたが既に良記事があったのでリンクを張っておきます。気になる方は読んでみてください。しかし、Kerasで書かれたものがあまりなかったので今度書くかもしれません。

Adversarial Autoencoders

GoogleColaboratoryの使い方はこちら

論文:https://arxiv.org/abs/1511.05644

Keras-GAN にあるAdversarial AutoEncoder のコードはこちら


対象者

 Adversarial AutoEncoder を手っ取り早く試してみたい方。色々なGANに興味があるけど書き方がわからない方。Kerasでの実装を知りたい方。

 GANの基本を知っていることが前提になっています。

 こちらはGANの基本を押さえることができる良記事になっているので、読んでから進むことをお勧めします。


Adversarial AutoEncoder

前回同様、Keras-GANにあるコードではGoogleColaboratoryではエラーが返ってきてしまうので、書き直しました。今回もMNISTFashion-MNISTを使っていきたいと思います。


MNIST

 GoogleColaboratory上では見づらいので20000epoch学習させて5000epoch毎にサンプル画像を出力させています。学習回数とサンプル画像を出力するインターバルはtrain関数の引数で変更できるので、変更しながら試してみてください。

コード

出力結果


Fashion-MNIST

コード

出力結果


 今回は、Adversarial AutoEncoderGoogleColaboratory上で試してみました。GoogleColaboratoryを使うことで10分程度で試すことができると思うのでぜひやってみてください。

最後まで読んでいただきありがとうございました。よろしければこの記事をシェアしていただけると励みになります。よろしくお願いします。

スポンサーリンク
レクタングル広告(大)
レクタングル広告(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
レクタングル広告(大)

コメント

  1. KK より:

    Colab上で試したのですが以下のようなエラーが出てしまい、実行できませんでした、、、
    また、Adversarial AutoEncoderを自作のデータセットで試せるようなコードなどを公開される予定はないでしょうか?
    差し出がましいお願いですが、お願いいたします。

    • むぅ より:

      コメントありがとうございます。
      自身で試したところ、原因はkerasのバージョンアップでkeras.layers.mergeが使えなくなっていた事でした。なので一番早く解決する方法としては、kerasのバージョンを下げてみてください。試しにGoogleColaboratory上で
      !pip install keras==2.1.5
      でkerasのバージョンを下げたところ正常に動作することを確認しました(うまくいかなかった場合はバージョンを下げた後、ランタイムをリセットしてみてください)。自作データセットを試すコードについては、kerasのバージョンが上がったことで一部エラーが起こる事がわかったのでそれを一緒に直して公開しようと思います。