初めに
ふとある画像判別のアプリが作りたくなったのでまずはWindow環境でjupyterをつかって
簡単に画像を判別するプログラムを動かすところまでを作ってみた。
開発環境
OS: Windows10 Home
GPU: Geforce GTX1660Ti
Anaconda: 4.8.2
各種インストール
まずは以下のサイトからAnacondaをダウンロードしインストール
https://www.anaconda.com/products/individual
続いて画像認識に必要なライブラリであるTensorFlowを導入する。
そのまえに一応いま使用しているPCにGPUが入っているためせっかくなのでGPUを使って計算させたい。しかしNvidiaドライバとCUDAとcuDNNというものをインストールする必要があるらしく、しかもこれらのツールは最新ならよいというわけではなくバージョンに気を付けないとGPUが認識しないらしい...
ということで、まずはNvidiaドライバを以下のサイトから自分のGPUを検索してダウンロード・インストール
https://www.nvidia.co.jp/Download/index.aspx?lang=jp
ダウンロードタイプはよくわからないけどGame Readyドライバーのほうを選択。
自分がインストールした際はバージョン445.87だった。
先ほど書いたように各バージョンの対応に注意しながらインストールする必要があるのでこちらのサイトの対応表を見て
Nvidiaドライバのバージョン⇒対応するCUDAのインストール⇒さらに対応するcuDNNのダウンロードを行う
対応表が載ってるページ
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
https://www.tensorflow.org/install/source_windows
ダウンロードページ
CUDA: https://developer.nvidia.com/cuda-downloads
cuDNN: https://developer.nvidia.com/cudnn-download-survey
私の場合はCUDAのバージョンが10.0.130、cuDNNが7.4.2 for CUDA10.0となった。
インストール後下記をそれぞれ行う。
・ダウンロードしたcudnnのフォルダ内のデータをすべて
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0内へコピー
・システム環境変数に
変数名: CUDNN_PATH
値: "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0"
を新規で追加
これでGPU側で必要なインストールが終わったので最後にTensorFlowのライブラリのインストールを行う。
まずはAnaconda上でTensorFlow用の環境を別で作る。
conda create -n tf37 python=3.7 anaconda
conda activate tf37
その環境の中で
tensorflowをインストール
conda install tensorflow-gpu==2.0.0
最後にpython上でコマンドを動かしてちゃんとGPUが認識されていることを確認。
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
これで各種インストールが終わりTensorFlowを使用できるようになった。
以下少しつまずいたところ
最初他の記事を頼りにpipでインストールを行っていたがいざtensorflowを使うときに以下のようなエラーが出てしまった。
おそらくjupyterなどで使う際はcondaでインストールしないとだめっぽい。