2020/03/03 Updated by

Anaconda

TensorFlow2 を GPU で実行する環境 (Windows)


[Up] Japanese English

TensorFlow 2 をGPUで実行する環境を Windows 上に作る。

前提条件

[注意事項 (2020/Mar/02)] 2020/Mar/02 時点で anaconda3 上の python 3.6 + pip 1.9以上 で 'tensorflow' パッケージとしてインストールされるのは tensorflow2 (version 2.1.0) である。 これを動かすには CUDA v10.1 が必要。 cuDNNは最新版のうち CUDA v10.1 に対応したものを入れればよい。


python + GPU環境を生成する

  1. Anaconda で python 3.X の環境がインストールされているものとする。(X ≥ 7)
  2. conda promptを起動して、condaが生成したウィンドウの中で以下の作業を行う。
  3. condaを最新版にしておく。
  4.     conda update -n base -c defaults conda
    
    [注意]update途中で必要なファイルが存在しない、というエラーがでて、anacondaの再インストールが必要になることがあった。
  5. tensorflow 2のインストールには pip のversionが19.0 より大きい必要があるそうだ。
  6.     (gpu2) C:\Users\nitta>  pip install --upgrade pip
    
    [注意]pipをupgradeすると、ほぼ確実に pip 実行プログラムが壊れる。なぜ? anaconda自体を一旦消してインストールし直した。 最新のanacondaではpipのバージョンは最初から19.0より大きいのでpipの更新作業は省略した。
  7. conda で新しい python 環境を作成する。 ここではpython環境の名前は gpu2 とする。 tensorflow や pytorch との親和性から python 3.6 を使うこと。
  8.     (base) C:\Users\nitta>  conda create -n gpu2 python=3.6 jupyter 
    
  9. 作成したpython 環境に切り換える
  10.     (base) C:\Users\nitta>  conda activate gpu2  
    
  11. tensorflow 2 GPU 版をインストールする。(tensorflow2では cpu版もgpu版も同梱されているようだ)
  12.     (gpu2) C:\Users\nitta>  pip install tensorflow  
    
  13. kerasのインストール。 [注意] kerasはtensorflow2に含まれているので、特別にインストール作業はいらなくなった。
  14.     (gpu2) C:\Users\nitta>  pip install keras  
    
  15. よく使うモジュールのインストール
  16.     (gpu2) C:\Users\nitta>   pip install scipy scikit-learn pillow h5py matplotlib pandas  
    
  17. 自然言語関係のモジュールのインストール
  18.     (gpu2) C:\Users\nitta>  pip install nltk  
    
  19. 自然言語(word2vec)関係のモジュールのインストール
  20.     (gpu2) C:\Users\nitta>  pip install gensim  
    
  21. OpenCVのインストール
  22.     (gpu2) C:\Users\nitta>  conda install opencv  
        (gpu2) C:\Users\nitta>  conda deactivate    ← 環境の中でcondaコマンドを使った場合は、一旦環境を抜けてactivateし直すべし。
        (base) C:\Users\nitta>  conda activate gpu2  
        (gpu2) C:\Users\nitta>
    

    condaでインストールするのが嫌な場合は、pipで次のようにしてインストールする。

      pip install opencv-python