トップページ -> 最新情報技術の実習と研究ツール -> TensorFlow のインストールおよびその応用例 -> DCGANの例、carpedm20/DCGAN-tensorflow を使い,新しい顔を生成してみる
[サイトマップへ]  

DCGANの例、carpedm20/DCGAN-tensorflow を使い,新しい顔を生成してみる

carpedm20/DCGAN-tensorflow は,GitHub で公開されているソフトウエアで, Age Progression/Regression by Conditional Adversarial Autoencoder (DCGAN) を 実装したもの.

先人に感謝

DCGAN (Deep Convolutional Generative Adversarial Networks) の参考文献情報: https://arxiv.org/abs/1511.06434

GitHub の carpedm20/DCGAN-tensorflow の Webページ: https://github.com/carpedm20/DCGAN-tensorflow


前準備

Anaconda, git のインストール

前準備として,Python 開発環境のAnaconda, git のインストールが終わっていること.


隔離された Python 環境の作成

  1. 今から作成するPython 環境の名前と、Pythonのバージョンを決めておく

  2. Windows のコマンドプロンプトを実行する.

  3. 隔離された Python 環境を作成する

    次のコマンドを実行

    conda create -n tf
    

  4. Python 環境が作成できたことを確認
    conda info -e 
    

これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 3名前は tf)の共存ができた。


新規作成された Python 環境で、インストールの前準備を行う

いま作成した Python 環境で、パッケージの更新などの前準備を行う

  1. Windows で、コマンドプロンプトを実行

  2. Python 環境(名前は tf)を有効にする

    次のコマンドを実行

    ※ 「activate tf 」は Python 環境(名前はtf)を有効にするためのコマンド(各自の環境の名前にあわせること

    activate tf 
    

    「Could not find conda environment: tf」というメッセージが出たときは、 上に説明した手順で、隔離された Python 環境の作成(名前は tf)を行う.

  3. Anaconda の conda パッケージの更新、古い conda パッケージファイルの削除

    「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作(エラーメッセージが出たとしても無視してください).

    conda config --remove channels conda-forge
    
    conda upgrade --all
    
    conda clean --packages
    

    (途中省略)

    (途中省略)

  4. conda の動作確認

    エラーメッセージが出ないことを確認

    conda info
    

ZZUTK/Face-Aging-CAAE のための Python パッケージをインストールする

いま作成した Python 環境に、種々の Python パッケージをインストールする

  1. Windows でコマンドプロンプトを実行

  2. Python 環境(名前は tf)を有効にする

    次のコマンドを実行

    activate tf 
    

  3. TensorFlow をインストールしたいので、次のコマンドを実行

    時間がかかるので待つ

    conda install -y tensorflow 
    

  4. その他のパッケージのインストール
    conda install -y numpy scipy pillow
    conda install -y -c spyder-ide spyder 
    

  5. (オプション) TenforFlow GPU 版のインストール

    ※ 動作には、 CUDA Compute Capability 3.0 は以上に適合するグラフィックスカード、NVIDIA グラフィックスカードのドライバのインストールが必要です

    1. NVIDIA グラフィックスカード・ドライバのインストール

      Windows で NVIDIA グラフィックスカード・ドライバのインストール」で説明しています

    2. NVIDIA CUDA ツールキットのインストール

      Windows で NVIDIA CUDA ツールキットのインストール」で説明しています

    3. tensorflow-gpu 及び関連のconda パッケージのインストール

      conda install -y cudnn cudatoolkit tensorflow-gpu 
      

  6. (オプション) moviepyのインストール

    Microsoft Build Tools がインストール済みであるとして手順を示します

    conda install -y imageio tqdm 
    
    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q moviepy
    

    cd c:\pytools
    git clone https://github.com/Zulko/moviepy
    cd moviepy
    python setup.py build
    python setup.py install 
    

プログラムのダウンロードと展開(解凍)

GitHub の carpedm20/DCGAN-tensorflow の配布サイト(https://github.com/carpedm20/DCGAN-tensorflow)で公開されている プログラムを,ダウンロードし展開(解凍)します。

  1. Windows のコマンドプロンプトを管理者として実行する.

  2. Python 環境(名前は tf)を有効にする

    activate tf 
    

    「Could not find conda environment: tf」というメッセージが出たときは、 上に説明した手順で、隔離された Python 環境の作成(名前は tf)を行う.

  3. carpedm20/DCGAN-tensorflow のインストール

    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q DCGAN-tensorflow
    

    git clone https://github.com/carpedm20/DCGAN-tensorflow
    cd DCGAN-tensorflow
    

MNIST と celebA データセットのダウンロードと展開(解凍)

  1. Windows で、コマンドプロンプトを実行

  2. Python 環境(名前は tf)を有効にする

    次のコマンドを実行

    ※ 「activate tf 」は Python 環境(名前はtf)を有効にするためのコマンド(各自の環境の名前にあわせること

    activate tf 
    

  3. MNIST と celebA データセットのダウンロード

    時間がかかるので待つ.

    ※ GitHub の carpedm20/DCGAN-tensorflow の配布サイト(https://github.com/carpedm20/DCGAN-tensorflow)の説明通り

    cd C:\pytools\DCGAN-tensorflow
    python download.py mnist celebA 
    

  4. celebA データセットの確認

    C:\pytools\DCGAN-tensorflowdata

MNIST データセットを使って動かしてみる

  1. MNIST データセットを用いて学習

    時間がかかるので待つ.

    python main.py --dataset mnist --input_height=28 --output_height=28 --train
    

  2. 学習の終了の確認

  3. tensorboard save/summary を使い、中間結果を確認できる

    次のコマンドを実行

    tensorborard --logdir .
    

    Web ブラウザで http://localhost:6006 を開く

  4. dcgan の機能を動かしてみる
    python main.py --dataset mnist --input_height=28 --output_height=28
    

  5. samples の下に結果があるので確認

celebA データセットを使って動かしてみる

  1. celebA データセットを用いて学習

    時間がかかるので待つ.

    python main.py --dataset celebA --input_height=108 --train --crop
    

  2. 学習の終了の確認

  3. tensorboard save/summary を使い、中間結果を確認できる

    次のコマンドを実行

    tensorborard --logdir .
    

    Web ブラウザで http://localhost:6006 を開く

  4. dcgan の機能を動かしてみる
    python main.py --dataset celebA --input_height=108 --crop
    

  5. samples の下に結果があるので確認