TensorFlow環境再導入
訳あってTensorFlow環境(GPU連携有)を再構築することにしたので、再度覚え書きを作成することにする。
基本環境
Anaconda
以下のページよりWindows向けのPython 3.7 version を選択してダウンロード、インストール。
Anaconda起動後、 Environments→Create をクリック。以下の内容で環境を作成する。
- Name:任意
- Python:3.6
- R:チェックなし
TensorFlow
作成された環境の▼マークをクリックしてOpen Terminalを実行。以下の公式サイトの指示に従ってGPU向けTensorFlowをインストール。
以下のコマンドで安定版をインストール。また今後の学習で必要となる各種ライブラリもこのターミナルからpipコマンドでインストールすればよい。
pip install tensorflow-gpu
GPU関連ツール
GPU連携に必要な以下のソフトウェアをインストールしていく。いずれも指定されたバージョンをインストールすれば問題なさそうだ。
Software requirements
The following NVIDIA® software must be installed on your system:
- NVIDIA® GPU drivers —CUDA 10.0 requires 410.x or higher.
- CUDA® Toolkit —TensorFlow supports CUDA 10.0 (TensorFlow >= 1.13.0)
- CUPTI ships with the CUDA Toolkit.
- cuDNN SDK (>= 7.4.1)
- (Optional) TensorRT 5.0 to improve latency and throughput for inference on some models.
GPUドライバーは一応最新化しておいた。リンク先でドライバーを選択する際にWindows Driver TypeとDownload Typeという項目を選択する必要があるが、とりあえず初期選択されているStandardとGame Ready Driver を指定しておけばよさそう。
CUPTIが何なのかはよくわからないが、CUDA Toolkitをインストールすれば勝手に付属してくるようなので気にする必要なし。
cuDNNはzipファイルで提供されていてダウンロード後解凍してどこかへ配置する必要があるが、この後のパス設定の都合上、特に問題なければC:\tools\cudaフォルダを作成し、その内部に展開されたファイルを配置する。
各ツールのインストール先を環境変数PATHに設定する。デフォルトのインストール先であれば以下の通りとなっているはずである。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include
C:\tools\cuda\bin
以上の手順でGPU連携下でのTensorFlow環境が構築できているはずである。正常にGPUを認識しているかどうかの確認方法は、Googleで調べれば出てくるので確認してみてほしい。
ディープラーニング学習環境構築メモ
GPU環境でのTensorFlow導入メモ(Windows10 Pro 64bit)
1.https://www.anaconda.com/download/ からインストーラダウンロード実行(Python3.6 versionを選択)インストール時に実行ファイルのあるフォルダを環境変数PATHに追加するかどうか聞かれる → 非推奨だが面倒くさいのでそちらを選択した。
2.PATHを通したのでコマンドラインから普通にPythonが呼べるはず。
3.https://www.tensorflow.org/install/ の記述に従って必要なソフトウェアをインストール。Windows環境なので Installing TensorFlow on Windows を参照。
4.GPUサポート有で環境構築するのでCUDA Toolkit 9.0のインストールが必要(最初9.2をインストールしてしまってハマった)。
5.https://developer.nvidia.com/cuda-gpus を参照してCUDAに対応しているGPUを選定。学習目的なので安価なGTX1050モデルを選択した。
詳解ディープラーニングのサンプルを実行してみたところ、結構早くなった、気がする。