Help us understand the problem. What is going on with this article?

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

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

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ライフを!

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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした