NVIDIA DIGITSでトレーニング時の精度を表示する方法

digits

NVIDIA DIGITSでトレーニング時の精度が表示できたら良いと思いませんか?

この記事では、その方法を実際の画面キャプチャーを使って紹介します。

元ネタは、こちら(https://github.com/NVIDIA/DIGITS/issues/190)。

スポンサーリンク

設定方法

ここでは、以下の記事でインストールしたDIGITSを使用します。

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

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

digits-home1

DIGITS「Home」ページの右側にあるModelsのImagesボタンをクリックし、プルダウンメニューからClassificationを選択すると、「New Image Classification Model」 ページが表示されます。

このページの中段に、ネットワークの設定パネル(下の図の右側)があります。

acc-train-1

表示されているネットワークの中から、「LeNet」「AlexNet」「GoogLeNet」のいずれかを(ここでは、「AlexNet」)を選択すると、その右端に「Customize」という文字(リンク)が現れます。

acc-train-2

「Customize」の文字(リンク)をクリックすると、下の図のように選択したネットワークの定義が確認できます。

acc-train-3

このネットワークの定義を下の方へスクロールして行くと、「accuracy」という名前のレイヤーの定義があります。

acc-train-4

この中の

  include {
    phase: TEST
  }

の部分(下の図のオレンジ色の部分)が、TESTフェーズ(DIGITSではvalidation時)に対するaccuracyの表示のみ行うように設定している部分なので、これを削除します。

acc-train-5

「accuracy」レイヤーのinclude {...}を削除すると、「AlexNet」の場合は、下の図のように最後の「loss」レイヤーの定義が見えてきます。

acc-train-6

上記の設定を行った後、学習を開始すると、下の図のようにvalidationの精度「accuracy (val)」と共にtrainingの精度「accuracy (train)」が表示されるようになります。

alexnet-dogs12-2out

まとめ

NVIDIA DIGITSでトレーニング時の精度「accuracy (train)」を表示する方法を紹介しました。

なお、NVIDIA DIGITSの使い方は、以下の記事をご覧ください。

NVIDIA DIGITSで犬の詳細画像分類モデルを作成してみた
Stanford Dogs Datasetの一部(12カテゴリー・2,289枚)の犬の画像を使って、NVIDIAのDIGITS(Caffeバックエンド)で詳細画像分類(Fine-Grained Visual Categorization)モデルを作成してみました。