Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
23
Help us understand the problem. What is going on with this article?

More than 1 year has passed since last update.

@s059ff

Chainer 5.2.0 インストール方法

前置き

  • Chainer…東大発日本ベンチャー企業 Preferred Networks が開発するオープンソースのディープラーニング フレームワーク。
  • cupy…Python の標準数値計算ライブラリ numpy の GPU 移植版。
  • CUDA Toolkit…NVIDIA 製の GPU で GPGPU をするのに必要なライブラリ。
  • cuDNN…CUDA を用いてディープラーニングをする際に必要なライブラリ。
  • Anaconda…科学計算に必要なパッケージ一式が入った python 環境。
  • conda…python のパッケージ管理システム + 環境分離システム。
  • pip…conda より昔からあるパッケージ管理システム。

Chainer 5.2.0 インストール

2019年2月1日時点で、 chainer の最新のバージョンである 5.2.0 及び GPU で実行するための cupy 5.2.0 をクリーンインストールする手順をメモしておきます。
chainer 5.2.0 は以下の外部ソフトウェアに依存しています。 (バージョンは一例、できるだけ現時点で最新のもの)

  • CUDA Toolkit 10.0 (最新)
  • cuDNN 7.4.2 (最新)
  • Python 3.7.2 (最新)

インストール手順

  1. Anaconda のインストール Anaconda 公式サイトから自分のOSにあったインストーラーをダウンロードして実行する。
    • システム全体にインストールするか、ユーザーごとにインストールするかはどちらでもよい。

conda でインストールする場合

conda でインストールする場合は、 CUDA Toolkit 及び cuDNN をすでにシステムにインストールしていたとしても、 依存パッケージとして CUDA Toolkit と cuDNN がもれなくついてくるので、システムに CUDA Toolkit, cuDNN をインストールしておく必要はない。 (インストールしていたとしても conda でインストールしたものが優先されるので問題はない。)

ターミナルで以下を実行する。
conda install cupy chainer

  • 依存パッケージでついてくる CUDA Toolkit と cudnn は少し古いバージョンになる。(CUDA Toolkit 9.2.0, cuDNN 7.3.1)

chainer は pip と conda のいずれかのパッケージマネージャでインストールできる。

pip でインストールする場合

pip でインストールする場合は、手動で CUDA Toolkit と cuDNN をインストールする必要がある。

  1. CUDA Toolkit のインストール
    NVIDIA CUDA Toolkit 公式サイト から OS にあったインストーラーをダウンロードして実行。

    • Windows の場合は exe 形式のインストーラ。
    • Linux の場合は run 形式のシェルスクリプト。
    • インストール後、以下を確認してください。
      • 環境変数 CUDA_PATH に CUDA Toolkit をインストールしたディレクトリが指定されていること。
      • 環境変数 PATH に (CUDA Toolkit をインストールしたディレクトリ)/bin が指定されていること。またターミナルで nvcc コマンドが実行できること。
  2. cuDNN のインストール
    インストールと銘打ってあるが、 CUDA Toolkit をインストールしたフォルダにいくつかのファイルをコピーするだけ。
    NVIDIA cuDNN 公式サイト から OS にあったもの (cuDNN Library for XXX) をダウンロードして、含まれる以下の CUDA Toolkit をインストールしたディレクトリ内の対応するディレクトリにコピーする。 cuDNN は CUDA Toolkit のバージョンに対応するバージョンをインストールする必要がある。

    • include/cudnn.h
    • lib64/libcudnn.so*
    • lib64/libcudnn_static.a
  3. cupy と chainer のインストール
    pip install cupy chainer

    • cupy をインストールするとき、ソースコードからビルドが行われ、インストールされている CUDA Toolkit と cuDNN 用の cupy がインストールされる。そのため、 CUDA Toolkit や cuDNN をアップグレードした場合は、 cupy を再インストールする必要がある。
    • cupy をインストールするときに、上記の CUDA Toolkit あるいは cuDNN のインストールが正しく行われていない場合、エラーが発生する

備考: conda と pip のどちらでインストールすべきか

  • conda
    • CUDA Toolkit, cuDNN がついてくるので、別途インストールしなくてもいいため、より簡単。
    • CUDA 絡みのエラーが出にくい(気がする)
  • pip
    • 公式サポート。
    • 最新バージョンが提供されている。 (執筆時点で pip は chainer 5.2.0, conda は 5.1.0 が最新)
    • 最新の CUDA Toolkit, cuDNN を使えるためパフォーマンスが良い(正直違いは分からない)

個人的な意見ですが、 pip で試みて問題が発生したら conda でインストールするのが良いかと思われます。
conda でインストールする際は仮想環境を作れば失敗しても簡単にリカバリーできます。

23
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
23
Help us understand the problem. What is going on with this article?