LoginSignup
1
3

More than 5 years have passed since last update.

CUDA+KerasでDeep Learningを行うときの最低限の環境構築

Last updated at Posted at 2018-05-14

ubuntuをインストールした際にGPUでKerasを使用するために行った設定を覚えておくためのページです

  • 環境
OS Ubuntu16
GPU Geforce GTX 1080 Ti
GPU Driver nvidia-396
CUDA cuda9.2
cudnn cudnn7.1

いろいろセッティングを行う前に

下のとこで書かれているパッケージのインストールなどは基本的に(terminal)コマンドラインを使用する
そのために知っておくと楽な操作方法や知っていてほしい最低限のコマンドを並べていく

  • ターミナルを開くショートカットキー

    • Ctrl+Alt+t
  • ターミナルでのコピー&ペースト

    • コピー: Ctrl+Shift+c
    • ペースト: Ctrl+Shift+v
  • ターミナルでのファイルの開き方

    • gedit ファイルのあるパス
  • 知っていてほしいコマンドリスト

コマンドリスト コマンドの意味
sudo 管理者権限
gedit(or vim) ファイル編集
cp(mv) ファイルやディレクトリのコピー(移動)
ls 現在いるディレクトリにあるファイル(フォルダ)一覧
cd 作業ディレクトリの変更
cat ファイルの中身を確認する
tar(unzip) tar(zip)ファイルを解凍する
pip pythonのインストールパッケージ管理

セッティング

  • 環境の更新

    sudo apt-get update
    sudo apt-get upgrade
    
  • 必要なパッケージをインストール

    sudo apt-get install git build-essential cmake
    sudo apt-get install vim
    

GPU環境の構築

  • NVIDIAのドライバーのインストール

    Ctrl+Alt+F1でCUI画面に切り替え, コマンドでGUIを停止後ドライバーをインストールする
    インストールするドライバのバージョン(今回はnvidia-396)はここでGPUの製品の種類などを入力していき,自分の環境にあったものを使用する

    sudo service lightdm stop   #GUI画面の停止
    sudo add-apt-repository ppa/:graphics-drivers/ppa
    sudo apt-get update
    sudo apt-get install nvidia-396
    sudo reboot    #再起動
    

    インストールできているかの確認
    ターミナルに

    nvidia-smi
    

    と入力し,下記のように表示されれば問題なし

    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 396.26                 Driver Version: 396.26                    |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |===============================+======================+======================|
    |   0  GeForce GTX 1070    Off  | 00000000:01:00.0  On |                  N/A |
    | 27%   32C    P8     6W / 151W |    412MiB /  8117MiB |      0%      Default |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                       GPU Memory |
    |  GPU       PID   Type   Process name                             Usage      |
    |=============================================================================|
    |    0      1427      G   /usr/lib/xorg/Xorg                           278MiB |
    |    0      3134      G   compiz                                        41MiB |
    |    0      4488      G   ...-token=22AC0E09E25E7BBA3D989DD67581E063    90MiB |
    +-----------------------------------------------------------------------------+
    
  • CUDAのインストール

    CUDAダウンロードページに行き, 順にLinux->x86_64->Ubuntu->16.04->dev[network]などを選択してDownloadボタンを押す
    Downloadボタンの下に書かれているようにコマンドを入力していく

    例)
    cd (ダウンロードしたファイルのディレクトリパス)
    sudo dpkg -i (ダウンロードファイル名)
    sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
    sudo apt-get upadate
    sudo apt-get install cuda-9-2
    

    CUDAを使用するために~/.bashrcにPATHを通す

    .bashrc
    export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64:$LD_LIBRARY_PATH
    export PATH=/usr/local/cuda-9.2/bin:$PATH
    

    CUDAがきちんと入っているかの確認

    nvcc -V
    

    と入力し,下記のように表示されれば問題なし

    nvcc: NVIDIA (R) Cuda compiler driver
    Copyright (c) 2005-2018 NVIDIA Corporation
    Built on Wed_Apr_11_23:16:29_CDT_2018
    Cuda compilation tools, release 9.2, V9.2.88
    
  • cudnnのインストール

    cudnnのダウンロードページに行き, アカウント作成後
    I Agree To the Terms of the cuDNN Software License Agreementのチェックボタンを押し, Download cuDNN v7.1.4 (May 16, 2018), for CUDA 9.2を押す
    ホームページで下記の4つをクリックしダウンロードする(ダウンロードした時どれがどんな名前でダウンロードされたかを覚えておく)

    • cuDNN v7.1.4 Library for Linux
    • cuDNN v7.1.4 Runtime Library for Ubuntu16.04 (Deb)
    • cuDNN v7.1.4 Developer Library for Ubuntu16.04 (Deb)
    • cuDNN v7.1.4 Code Samples and User Guide for Ubuntu16.04 (Deb)

    下記のコマンドを実行しインストールする

    cd (ダウンロード先のパス)
    sudo tar -xvf cudnn-9.2-linux-x64-v7.1.tgz
    sudo cp cuda/include/* /usr/local/lib/cuda-9.2/include
    sudo cp cuda/lib64/* /usr/local/lib/cuda-9.2/lib64
    sudo dpkg -i libcudnn7_7.1.4.18-1+cuda9.2_amd64.deb
    sudo dpkg- i libcudnn7-dev_7.1.4.18-1+cuda9.2_amd64.deb
    sudo dpkg -i libcudnn7-doc_7.1.4.18-1+cuda9.2_amd64.deb
    

必要なパッケージのインストール

  • ubuntu環境用パッケージのインストール(必要そうなのがあれば追加します)

    sudo apt-get install ssh build-essential pydot graphviz
    

仮想環境の構築

  • python環境の構築

    sudo apt-get install virtualenv virtualenvwrapper
    sudo apt-get install python-dev python-pip python-numpy python-tk
    sudo apt-get install python3-dev python3-pip python3-numpy python3-tk
    sudo pip install virtulaenv virtualenvwrapper
    sudo pip3 install virtualenv virtualenvwrapper
    
  • pythonの実行用仮想環境の構築用の設定PATHを通す

    .bashrc
    source /usr/local/bin/virtualenvwrapper.sh
    export WORKON_HOME=~/.virtualenvs
    
  • 仮想環境の作成
    virtualenv環境の構築参考サイト

    mkvirtualenv (作成する環境名) --python=python3.5
    
  • 仮想環境に入リ方&出方

    workon (環境名)    #入り方
    deactivate        #抜け方
    
  • Kerasを使用したDeep Learining用環境の構築

    pip install --upgrade pip
    pip install tensorflow_gpu keras Pillow scikit-learn opencv-python pydot pydot3 pydotplus graphviz
    


  • エディタのインストール 

    atomの場合
    atomホームページからdebファイルをダウンロード

    cd (ダウンロードファイルのあるパス)
    sudo dpkg -i (ダウンロードファイル名)
    sudo apt-get update
    

    visual studio codeの場合
    vscodeホームページからdebファイルをダウンロード

    cd (ダウンロードファイルのあるパス)
    sudo dpkg -i (ダウンロードファイル名)
    sudo apt-get update
    

終了!

参考サイト

http://www.iandprogram.net/entry/2015/09/11/181208
http://www.iandprogram.net/entry/2016/06/24/210724
https://sicklylife.jp/ubuntu/1604/settings.html
https://qiita.com/yukoba/items/3692f1cb677b2383c983
https://qiita.com/caad1229/items/325ca5c8ad198b0ebce7

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