2
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Win10にTensorflow2.0.0rc0, CUDA10.0, cudnn7.4.1, 機械学習環境一式を入れる

Last updated at Posted at 2019-05-20

本記事の内容

Windows10マシンにCUDA使ってTensorflowが動くところまで機械学習環境を構築します。

導入環境

CPU: Intel core-i9 9900K
GPU: RTX2080Ti
OS: Windows10 Pro

入れるもの

Visual Studio 2017 community
CUDA 10.0
cuDNN 7.4.1 for CUDA10.0
Anaconda 2019.03 for Windows 64 bit
tensorflow-gpu==2.0.0rc0
python packageいろいろ (numpy, pandas, scipy, matplotlib, seaborn, scikit-learn)

CUDA, cuDNN, tensorflowのバージョン選定

今回使うGPUはturingアーキテクチャのRTX2080TiですのでCUDAは10.0以降でないと使えません。
https://en.wikipedia.org/wiki/CUDA

PyPIに置いてあるtensorflow-gpuは特定のバージョンのCUDA用にビルドされたものですので、例えばwindows用にビルドされたtensorflow-gpu==1.13.0ではCUDA9しか使えません。2019年5月20日現在CUDA10以降対応のビルドはtensorflow-gpu==2.0.0alphaのみで、CUDA10.0用のビルドとなります。自分でビルドすれば1.13.0でCUDA10.1を使うようなことも出来るようですがpipでインストール出来ちゃうならそれで良いですよね。tensorflow2では書き方含めいろいろ変わっちゃいますが、今回の用途ならそれで構いません。
https://www.tensorflow.org/install/source_windows

cuDNNのバージョンは〇〇以降という指定がされてる筈なんですが、どこに書いてあるのか見つけられませんでした。こちらの記事にcuDNN 7.4.1以降対応とありましたので、7.4.1を使うことにしました。
https://dev.infohub.cc/tensorflow2-alpha-gpu/

ということで、使用バージョンは以下となります。
CUDA 10.0
cuDNN 7.4.1 for CUDA10.0
tensorflow-gpu==2.0.0alpha

1. Visual Studio 2017 communityをインストールする

MicrosoftのサイトからVisual Studio 2017 communityをダウンロードしてインストールします
https://visualstudio.microsoft.com/ja/vs/older-downloads/

オプション設定メニューでC++によるデスクトップ開発とユニバーサルWindowsプラットフォーム開発を有効にしてインストールします

2. CUDA, cuDNNをインストールする

NVIDIAの公式サイトからダウンロードしてインストールします。僕の環境だとWin10, x86_64になります。
https://developer.nvidia.com/cuda-downloads

インストールを実行します。グラフィックドライバーも一緒に入れてくれます。

システムの環境変数のPATHに以下3つを追加します。

環境変数{PATH}
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64

PATHが通ったか確認しておきます。

コマンドプロンプト
> where nvcc.exe nvvp.exe cupti64*
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin\nvcc.exe
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp\nvvp.exe
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\lib64\cupti64_100.dll

ついでにnvccコマンドを呼んでみます。

terminal
> nvcc -V

これでバージョン情報が表示されたら正常です。

3. cuDNNをインストールする

公式サイトからダウンロードします。
今回はcuDNN v7.4.1 for CUDA10.0のWindows10用のものを使用しました。
https://developer.nvidia.com/rdp/cudnn-download

ダウンロードしてきたcudnn-10.0-windows10-x64-v7.4.1.5.zipを解凍し、出てきたフォルダを「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0」にコピーします。

これを

ここにコピーですね

4. Anacondaでpython環境をインストール

公式サイトからWindows用python3系64bit版インストーラーをダウンロードしてインストールします。
https://www.anaconda.com/distribution/

5. conda環境を作ってpackageをインストールする

Anaconda Promptを起動してconda環境をつくります。2019年8月時点でtensorflowはpython3.5~3.6にしか対応していません。必ずpythonのバージョンを指定するようにします。指定しないとpython 3.7がインストールされてしまってtensorflowが正常に動きません (importに失敗するはずです)。以下では「tf」という名前でpython=3.6のconda環境を作成します。

Anaconda_prompt
(base) > conda create -n tf python=3.6

conda環境をつくったら有効にしてtensorflow-gpuをインストールします。他のpackageをインストールした後にtensorflow-gpuをインストールするとtensorflow-gpuのimportに失敗するようになる事があるので最初にインストールして動作を確認するのがオススメです。

Anaconda_prompt
(base) > conda activate tf
(tf) > pip install tensorflow-gpu==2.0.0rc0
(tf) > python
>>> import tensorflow as tf

上記でインポートがすんなり通ったらCUDA, cuDNNが正常にインストールされています。

6. 機械学習系パッケージをインストールする

Anaconda_prompt
(tf) $ pip install pip optuna tensorflow_addons numpy pandas xlrd sklearn scipy catboost xgboost lightgbm matplotlib seaborn boruta pydot3 graphviz ipywidgets jupyter tqdm pyarrow psutil

これでとりあえずの機械学習環境は用意できたと思います。
えんじょい

上手くいかないときにチェックすべきこと

  • pythonのバージョンが3.5または3.6か (3.7はダメ)
  • VC++コンパイラが入っているか (CUDAインストール時にVC++コンパイラがないことを警告されていないか)
  • グラフィックボードに対応したCUDAを使っているか (2080TiだとCUDA10.0以降)
  • CUDAバージョンに合ったcuDNNを使っているか (CUDAバージョンごとにcuDNNは別になるので注意)
  • nvcc.exe, nvvp.exe, cupti64_***.dllにパスが通っているか
  • tensorflow-gpuのバージョンは適切か (pipでインストールできるビルド済みtensorflowは特定のCUDAバージョンでしか使えない)
  • ぜんぶ合ってるのにimportが通らない場合はconda環境を作り直して最初にtensorflowをインストールすると直ることがある

詳しくはこの辺を参照
https://en.wikipedia.org/wiki/CUDA
https://www.tensorflow.org/install/source_windows
https://dev.infohub.cc/tensorflow2-alpha-gpu/

更新履歴

20190905: conda環境作成~パッケージインストール手順を修正しました
20190905: 上手くいかないときにチェックすべきことを追記しました

2
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?