Ubuntu16.04でディープラーニングの環境構築をするーCUDA8.0、Virtualenv、Tensorflow、Kerasー

スポンサーリンク
python
スポンサーリンク
スポンサーリンク

はじめに

構築する環境

  • OS:Ubuntu 16.04LTS
  • 言語:Python 2.7
  • GPUライブラリ:CUDA8.0
  • 仮想環境:Virtualenv
  • 機械学習ライブラリ:Tensorflow、Keras

今回使うマシン

マウスコンピュータG-tune

  • CPU:8700(K)
  • メモリ:64G
  • GPU:GTX1080Ti
  • HDD:4TB

これからやることの主な流れ

  1. Ubuntu16.04のインストール
  2. Pythonのインストール
  3. GPU driverのインストール
  4. CUDAのインストール
  5. PyenvとVirtualenvのインストール
  6. TensorFlowのインストール
  7. Kerasのインストール

Ubuntu 16.04LTSのインストール

DVDにUbuntuをダウンロードする

下のサイトからUbuntuをダウンロードし、DVDに書き込んでおいてください。

Ubuntu Desktop 日本語 Remixのダウンロード

Ubuntu 16.04 LTSのセットアップ

  1. 電源ボタンを押したのちDeleteまたはF2を連打し、Bios画面を表示させる
  2. CD/DVDドライブの起動優先順位を1番に設定する
  3. F10を押して変更を保存して閉じる
  4. DVDを挿入して再起動する
  5. Ubuntuのインストール

以下のサイトを参考にUbuntuのインストールを行ってください。この時、Windowsは消しておきます。

Ubuntu 16.04 LTSのセットアップ

Pythonのインストール

Ubuntu 16.04LTSでは、Python3.5とPython2.7がすでにイントールされています。しかし、これらはコマンドライン上でしか利用することができません。今回の環境構築では、Virtualenv上で機械学習を行うことを想定しているので、改めて、インストールする必要があります。

以下のサイトを参考に、python2.7をインストールしてください。

Ubuntu環境のPython

なお、デフォルトではpipがインストールされていないので、ここでインストールしておきます。

また、pythonの拡張パッケージをインストールする際に必要となる、開発用パッケージも入れておきます。

Python2.7がうまくインストールされたか確認するには、以下のコードを実行してみてください。

Nvidia driverのインストール

ドライバーのダウンロード前にやること

  1. Ubuntuを再起動し、Bios画面を表示させる
  2. secure boot Disiable(setting → Advanced → Windows8/8.1 configuration)にする
  3. 指導したら、GUIからログイン

以下のコマンドを実行して、GPUの認識状況を確認してください。

次に、Ubuntuの普遍的な映像出力ドライバ:nouveauを無効化します。この作業は、GTX1080Tiのドライバーを入れるために不可欠です。

blacklist-nouveau.confというファイルを開きます。

このファイルに次の行を追加してください。

その後、以下のコマンド実行しinitramfsに登録します。

ドライバーのダウンロード

こちらのサイトでGPU GTX108Tiにふさわしいドライバを探し、Downloadsにダウンロードします。

まず、ドライバーやアプリケーションの相互依存を解消するため、nvidiaとcudaのドライバをアンインストールします。

次に、CUI(Ctrl+Alt+F1)で自分のアカウントにログインして、以下のコマンドを実行します。

ドライバをダウンロードし、インストールします。

ここでGPUのコンソールが表示されればOKです。

HDDの設定

Ubuntuに利用可能なHDDの使用権限を与えます。HDDをフォーマットにして、HDDを追加します。追加するときのファイルシステムタイプはautoに設定してください。以下のサイトが参考になると思います。

HDDをフォーマットする – Ubuntu 16.04LTS編

CUDA8.0のインストール

最新のGPUドライバをインストールすると、最新のCUDAが同時にインストールされます。しかし、TensorFlowはCUDA9.xに対応していないため、CUDA8.0をインストールする必要があります。

CUDA8.0のダウンロード

CUDA8.0のインストールパッケージをhttps://developer.nvidia.com/cuda-80-ga2-download-archiveからダウンロードします。設定条件は以下のように設定しました。

CUDA8.0のインストール

インストール作業に入ります。

PATHの設定

emacsなどでhomeの.bashrc(emacs ~/.bashrc)に以下の4行を書き込み、reloadします。

PATHが通っている確認します。

nvidia-smiでエラーが出た場合はsudo rebootで再起動してください。

cuDNN6.0 for CUDA8.0のインストール

cuDNNはNVIDIAが公開しているDeep Learning用のライブラリです。cuDNNを使うことで、Caffe、Chainer、Keras、MATLABなどのDeep Learning用のソフトウェアの速度が向上します。

まず、こちらのサイトにアクセスし、メンバー登録を完了させます。そして、以下の3つのパッケージをダウンロードしてください。

  • cuDNN v6 Runtime Library for Ubuntu 16.04 (Deb)
  • cuDNN v6 Developer Library for Ubuntu 16.04 (Deb)
  • cuDNN v6 Code Samples and User Guide for Ubuntu 16.04 (Deb)

次に、インストール作業に移ります。ダウンロードしたディレクトリに移動し、以下のコマンドを入力します。

PyenvとVirtualenvのインストール

Pyenvはpython環境を管理するものです。Pyenvを使うことで、標準とは異なるpython環境を構築できます。

VirtualenvはPythonの仮想的な環境を作ることができるパッケージです。プロジェクトごとにPythonのバージョンを変えたり、必要なパッケージを分けてインストールして動かすことができます。

gitのインストール

gitはプログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。以下のコマンドでインストールできます。

Pythonインストール時に必要となるモジュールのインストール

以下のコマンドを実行してください。

Pyenvのインストール

ここからはユーザーのhomeディレクトリ下で作業を行うため、 root権限は不要となります。

そして、Emacsなどを用いて、.bashrcに以下の3行を追記、.bashrc内の環境変数を設定します。

完了したら、.bashrcをreloadしてください。

PyenvにPythonをインストールする

アスタリスクがついているsystemがネイティブの環境です。2.7.12と3.5.2の両方が利用可能であることが分かります。このままだと、ネイティブのPythonがデフォルトになるので、バージョンを2.7.12に切り替えます。

Tensorflowのインストール

PipとVirtualenvのインストール

以下のコマンドでpipとVirtualenvをインストールしてください。

Virtualenvの環境設定

あらかじめ、「tensorflow」というディレクトリをVirtualenv treeの最上位(homeの下)に構築しておきます。ディレクトリ名はなんでも大丈夫です。以下では「tensorflow」をディレクトリ名にした場合を想定して説明します。

上で作成した、ディレクトリ(tensorflow)が、Virtualenvになります。

Virtualenvをactiveにする

ここで、promptが「(tensrflow)$」になることを確認してください。

pipのバージョンが8.1以上であることを確認する

current versionのGPU用のTensorFlowをインストール

ここで、version1.3のGPU用のTensorFlowをインストールする場合は、version1.3のバイナリー仕様に変更してください。

起動と終了

うまくインストールできたか確認

まず、先ほど作成したディレクトリをactivateします。

pythonを起動し、対話モードで入力してみます。

「Hello, TensorFlow!」と出力されればOKです。

Kerasのインストール

KerasはPythonで書かれた、Tensorflow、CNTK、Theano上で実行可能な高水準のニューラルネットワークライブラリです。

先ほど作成したディレクトリをactivateし 、Kerasをインストールします。

以上で、環境構築は終了です。最後まで読んでいただきありがとうございました。

タイトルとURLをコピーしました