NVIDIA DIGITS 4.0をインストールしてみた

digits4-1
NVIDIAからDeep Learning用トレーニングシステムのDIGITS 4がリリースされたので、Ubuntu 14.04にインストールしてみました。

今回のアップデートでは、DIGITS 3からDIGITS 4、cuDNN 5.0からcuDNN 5.1、NVIDIAフォークのCaffe「NVcaffe(caffe-nv)」のcuDNN 5.1対応などが行われています。

なお、以下の記事のように、既にNVIDIAのMachine Learningリポジトリを登録していれば、Ubuntuのランチャーに「ソフトウェアの更新」アイコンが現れますので、このアイコンをクリックして、インストールを行います。

NVIDIA DIGITS 3.0をインストールしてみた
NVIDIAからDeep Learning用トレーニングシステムのDIGITS 3.0がリリースされていたので、Ubuntu 14.04にインストールしてみました。
スポンサーリンク

DIGITS 4

DIGITS 4の特徴は、物体検出(object detection)機能が付加されたことなので、さっそく、チュートリアル(https://github.com/NVIDIA/DIGITS/tree/digits-4.0/examples/object-detection)を試してみます。

DIGITS 4 Dataset

Firefox等のブラウザを起動し、URLにlocalhostを入力すると、DIGITS「Home」ページが表示されます。

digits4-2
上の図のように、DIGITS 4では、作成済みのDatasetsやModelsの表示は、タブで切り替えるようになりました。

DIGITS「Home」ページの「New Dataset」下の「Images」ボタンをクリックし、プルダウンメニューから「Object Detection」を選択すると、以下の「Login」ページが表示されます。

digits4-3
DIGITS 4では、DatasetやModelを作成する場合、「Login」ページが現れ、作成したDatasetやModelのOwnerを表示するように変更されています。

Usernameを入力すると、以下の「New Object Detection Dataset」ページが表示されます。

このページでは、チュートリアルのようにprepare_kitti_data.pyを実行して作成されたtrain/images、train/labels、val/images、val/labelsディレクトリを「Training image folder」等に指定します。

digits4-4
「Dataset Name」に名前(ここでは、「KITTI」)を入力した後、「Create」ボタンをクリックします。

しばらく待っていると、Dataset「KITTI」の作成が終了します。ページの再読み込みを行うと、以下のようなページが表示されます。

digits4-5
このページ左上の「DIGITS」ロゴをクリックして、DIGITS「Home」ページに戻ります。

DIGITS 4 Model

DIGITS「Home」ページの「New Model」下の「Images」ボタンをクリックし、プルダウンメニューから「Object Detection」を選択します。

digits4-6
すると、以下の「New Object Detection Model」ページが表示されます。このページの左側の「Select Dataset」では、上で作成した「KITTI」を選択します。

中央の「Solver type」と「Base Learning Rate」に、それぞれAdamと0.0001を設定します。なお、VRAMが4GBの場合、「Batch size」と「Batch Accumulation」に、それぞれ2と5を入力します。

digits4-7
「New Object Detection Model」ページの下側のNetwork(s)では、「Custom Network」タブを選択し、「Torch」タブではなく「Caffe」タブが選択されていることを確認し、テキストボックスにdetectnet_network.prototxt(https://raw.githubusercontent.com/NVIDIA/caffe/caffe-0.15/examples/kitti/detectnet_network.prototxt)の内容をコピー・ペーストします。

また、予めここ(https://github.com/BVLC/caffe/tree/rc3/models/bvlc_googlenet)からbvlc_googlenet.caffemodelをダウンロードしておき、「Pretrained model(s)」に(パスとファイル名を)設定します。

「Model Name」に名前(ここでは、「Detector」)を入力した後、「Create」ボタンをクリックします。

今回は、一時間半経過したところで、次のエラーが発生しました。

digits4-8

まとめ

NVIDIA DIGITS 4がリリースされたので、Ubuntu 14.04にインストールしてみました。

DIGITS 4には、新たに物体検出(object detection)機能が付加されましたが、チュートリアルの難易度が高い気がします。

まずは、エラーの原因を調査して対策すること、また、トレーニングに時間が掛かっているので、この対策を行って機能確認を進めることが当面の目標です。

(2016/08/21追記)
エラーの原因と対策は、以下の記事をご覧ください。

NVIDIA DIGITS 4の物体検出トレーニング時のエラーに対策してみた
DIGITS 4の物体検出トレーニングにおいてエラーが発生した原因が分かりましたので、対策を行いました。結論から言うと、CaffeとPythonで利用するOpenCVのバージョンが違っていることが原因でした。

また、DIGITS 4の使い方(一連の流れ)は、以下の記事をご覧ください。

NVIDIA DIGITS 4で物体検出モデルを作成してみた
Ubuntu 14.04にインストールしたNVIDIA DIGITS 4で、物体検出(object detection)モデルを作成してみました。KITTIの約1/10のデータセットを用いて、DIGITS 4の使い方を説明しています。