Tips/Ubuntu/機械学習環境設定 のバックアップ(No.5)



目的

  • nvidia driverをインストールする
  • NVIDIAが提供するリポジトリを利用して機械学習関連の環境を設定する
  • jyupyter notebookを設定する

前提条件

Ubuntu 18.04.3 LTS (Bionic Beaver)

自動アップデートを禁止する

  • アップデート設定をOFFする
    カーネルが自動更新されるとnvidiaドライバが動作しなくなったりする
    /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Unattended-Upgrade "1";
APT::Periodic::Unattended-Upgrade "0";

nvidia driver

  1. 標準ドライバを削除
    sudo apt --purge remove nvidia-*
  2. 最新ドライバをインストールし再起動
    sudo ubuntu-drivers autoinstall
    sudo reboot
  3. 確認
    nvidia-smi

機械学習環境設定

  1. cudaリポジトリ追加
    wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
    sudo apt install ./cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
  2. 公開鍵を追加する
    cudaリポジトリ追加時に表示されるコマンドで公開鍵を追加する
    sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
  3. 機械学習リポジトリ追加
    wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
    sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
  4. CUDA&cuDNNインストール
    sudo apt update
    sudo apt install --no-install-recommends cuda-10-0 libcudnn7 libcudnn7-dev -y
  5. TensorRTインストール
    sudo apt install --no-install-recommends libnvinfer5 libnvinfer-dev -y
  6. 関連ライブラリインストール
    sudo apt install build-essential pkg-config libopenblas-dev liblapack-dev libhdf5-serial-dev graphviz -y
  7. python3インストール
    sudo apt install python3-venv python3-pip python3-dev python3-tk -y
  8. 各種ライブラリをインストール
    sudo -H pip3 install numpy scipy matplotlib pyyaml h5py\
     pydot-ng opencv-python keras jupyter pillow python-dateutil
    sudo -H pip3 install tensorflow-gpu

jupyter notebook設定

jyupyter notebookの拡張機能をインストールする

  1. nbextensionsインストール
    sudo -H pip3 install jupyter-contrib-nbextensions
    sudo -H pip3 install jupyter-nbextensions-configurator
  2. nbextensions有効化
    jupyter contrib nbextension install --user
    jupyter nbextensions_configurator enable --user
  3. jupyter-notebook 起動
    jupyter-notebook --ip=* &