記事の最終更新日 : 2019-04-20
もしこの情報が古すぎる場合には、回れ右して、他の記事を当たってください。
どうかあなたの時間を無駄に消費しないでください。
この記事はなにか
Chainerのインストールにつまづいて、人生の残り時間を消費しました。
この記事が誰かの問題解決の参考になれれば 消費した時間にも意味があった と思うことができます。
私の環境
- Windows 10
- Nvidia GTX 1080
- Python 3.6.8 (Anaconda)
Chainerをインストールする前に
下記を順番にインストールしていきます。
CUDA
これはGPUアクセラレーションを使うためのライブラリです。
あなたの実行環境にあったものをダウンロードしてインストールしましょう。cuDNN
DNN(Deep Neural Network)向けのGPUアクセラレーションライブラリです。
ユーザー登録が必要です。自分でファイルを配置する必要がありました。
インストーラーを提供してほしいところ。
Python環境へインストール
※理由は後述しますが、この時点でpip/condaどちらにするのか決めておけばよかった
下記を順番にインストールしていきます。
Pythonの仮想環境をあなたのお好みへ切り替えます
-
CuPyのインストール
- CuPyのサイトはこちら
- NumPyをCUDAへ最適化したライブラリ
- 上記でインストールしたCUDAのバージョンにあわせる
# (For CUDA 10.1)
$ pip install cupy-cuda101
※1 ここで$pip install cupy
ではインストールできませんでした
※2 インストールの確認は、$python -c 'import cupy as cp'
でエラーが返ってこなければOKです。
※3 私は、cuDNNがnot availableというwarningに悩まされました
※4 Anaconda Navigaterにて、cudatoolkitをapplyしたら解消しました
※5 cuDNNはon/offスイッチがなく、ファイルと環境変数のパスが正しくインストールされていれば、cupyが自動で認識してくれます
Chainerのインストール
$pip install chainer
先にcupyをインストールしておく必要があるらしいです。
こういう依存がよくない!!つまづきの元になりやすい。
つまづく
上記の ※3 に書きましたが、ここでつまづきました。
※2 インストールの確認は、
$python -c 'import cupy as cp'
でエラーが返ってこなければOKです。
これをすると、
※3 私は、cuDNNがnot availableというwarningに悩まされました
なのです。
結局は、下記で解決はしたのですが、
※4 Anaconda Navigatorにて、cudatoolkitをapplyしたら解消しました
pipには、cudatoolkit がないのです。(2019-04-20現在)
https://pypi.org/search/?q=cudatoolkit
(おまけ) Chainerの実行環境をみる
$python -c 'import chainer; chainer.print_runtime_info()'
Platform: Windows-10-10.0.17134-SP0
Chainer: 5.3.0
NumPy: 1.16.2
CuPy:
CuPy Version : 4.1.0
CUDA Root : C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
CUDA Build Version : 9000
CUDA Driver Version : 10010
CUDA Runtime Version : 9000
cuDNN Build Version : 7104
cuDNN Version : 7500
NCCL Build Version : None
iDeep: Not Available
おわりに
pip/condaの混在はよくないかな?という印象です。やっぱりね。
依存のあるパッケージをインストールするなら、Anaconda Navigatorをonlyで使ったほうがいいかもしれませんし、
そもそも、Google Colaboratory みたいなクラウド環境を使ったほうが、
インストールやアップデートで起こるトラブルに、時間を消費しなくていいと思います。
環境構築も1つのスキルだとは思いますが、それが目的でないなら、あなたの時間を大事にしてほしいな、と思います。