LoginSignup
3
3

More than 5 years have passed since last update.

Ubuntu18.10にPython+Keras+Tensorflow-gpu環境をつくる

Last updated at Posted at 2019-01-19

初投稿です。どうぞお手柔らかに...
自分が初心者なので、だいぶゆるい内容となっています。

nvidia周りを整備

前提条件として、nvidiaのグラフィックドライバがすでに入っている状態から始めます。

CUDA9.0を導入する

CUDA9.0を下記のサイトからダウンロードします。
https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604
今回はUbuntu18.10ですが、Ubuntu16.04版でも問題なく動作しました。
端末(ターミナル)上で

$ sudo dpkg -i "ダウンロードしたdebファイル"

でインストールします。一応、先程のリンクにあった4つのパッチも当てておきます。

cuDNN7.4を導入する

下記のサイトからダウンロードします。ダウンロードにはアカウントの登録が必要です。
https://developer.nvidia.com/cudnn
「Download cuDNN v7.4.2 (Dec 14, 2018), for CUDA 9.0」と書かれているリンクをクリックし、
「cuDNN Runtime Library for Ubuntu16.04 (Deb)」
「cuDNN Developer Library for Ubuntu16.04 (Deb)」
「cuDNN Code Samples and User Guide for Ubuntu16.04 (Deb)」
の3つのファイルをダウンロードします。これらはUbuntu16.04版ですが、問題なく動作しました。

$ sudo dpkg -i "ダウンロードしたdebファイル"

の動作を先ほどと同じように3つのファイルについて実行しましょう。

仕上げ

$ export PATH="/usr/local/cuda/bin:$PATH"
$ export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

を端末で実行してください。仕上げです。

おまけ

私がこの操作で使用したファイルはこちらです。なにか問題があったら自分のと確かめてみてください。
cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb
cuda-repo-ubuntu1604-9-0-local-cublas-performance-update_1.0-1_amd64.deb
cuda-repo-ubuntu1604-9-0-local-cublas-performance-update-2_1.0-1_amd64.deb
cuda-repo-ubuntu1604-9-0-local-cublas-performance-update-3_1.0-1_amd64.deb
cuda-repo-ubuntu1604-9-0-176-local-patch-4_1.0-1_amd64.deb
libcudnn7-dev_7.4.1.5-1+cuda9.0_amd64.deb
libcudnn7-doc_7.4.1.5-1+cuda9.0_amd64.deb
libcudnn7_7.4.1.5-1+cuda9.0_amd64.deb

Python側を整備

非Anaconda環境で、Python 3.6.7です。
端末で、

$ pip3 install numpy, tensorflow-gpu, keras

これで完了です。

動作確認

Kerasの公式サンプルを使います。gitコマンドについては調べてください。

$ git clone https://github.com/keras-team/keras.git
$ cd keras/examples
$ python3 mnist_cnn.py

いろいろズラズラと出て、最終的にこんな感じに表示されたら成功です。

c: 0.9918 - val_loss: 0.0273 - val_acc: 0.9914
Test loss: 0.0273339375382
Test accuracy: 0.9914

Numpyのインポートでエラーが発生する場合

こんな感じのエラーが...

AttributeError: type object 'numpy.ndarray' has no attribute '__array_function__

私もこれに一時は悩まされましたが、

$ pip3 --no-cache-dir install -I numpy

で解決しました。解決しない場合は、Numpyのバージョンを落としてみるといいかもしれません。

最後に

私の書いたものが誰かの役に立ってくれることを願っています。
ではみなさん、良いTensorflowライフを!

3
3
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
3
3