チュートリアル:サンプルプロジェクトを用いた学習

Friday, November 03, 2017

App

Posted by Yoshiyuki Kobayashi

1 Neural Network Consoleを起動する

neural_network_console.exeをダブルクリックして実行します。

 

2 サンプルプロジェクトを開く

起動後に表示されるプロジェクト一覧から、01_logistic_regression.sdcprojを選択して開きます。

 

ご参考

最初にサンプルプロジェクトを開いたタイミングで、以下のサイトからサンプルプロジェクトで用いるMNISTデータセットのダウンロード、およびデータセットファイルの準備が実行されます。データセットの準備は通常数分で完了します。

http://yann.lecun.com/exdb/mnist/

 

プロキシを使用している環境でデータセットのダウンロードが正常に完了しない場合は、設定画面のENGINEタブにて、既存の設定項目に加えて環境変数(Environment Variable)にプロキシの設定を追加します。

 

HTTP_PROXY=http://(HTTPプロキシサーバのアドレス):(ポート番号)

HTTPS_PROXY=https:// (HTTPSプロキシサーバのアドレス):(ポート番号)

 

3 開いたサンプルプロジェクトの内容を確認する

EDITタブにて、手書き文字認識データセットMNISTの1x28x28のモノクロ手書き文字画像(4と9の画像)を、9かどうかの2値判別を行うための1層ネットワーク(Logistic Regression)が読み込まれていることを確認します。

 

データセットタブにて、MNISTデータセットから一部を抽出して作成したSmall MNISTデータセットの学習用、評価用データセット(4と9の画像、および画像が9であるかどうかを示すラベル、「4」=カテゴリIndex 0、「9」=カテゴリIndex 1)が読み込まれていることを確認します。

 

4 学習を実行する

EDITタブにて学習実行ボタンをクリックし(ショートカット:F5)、学習処理を開始します。

 

TRAININGタブにて、学習の進捗状況が学習曲線と共に表示されます。

 

グラフの横軸、Epochは最適化の繰り返し世代数を示します。また、Costは最適化段階でのロス関数の出力値を、ErrorはEpochの終了時点での学習データ、評価データそれぞれにおけるロス関数の出力値を示します。図のように世代数の増加に従いCost、Errorの値が下がっていれば正しく最適化が実行されていると考えられます。

 

5 評価を実行する

TRAININGタブにて評価実行ボタンをクリックし(ショートカット:F6)、評価処理を開始します。

 

EVALUATIONタブで評価の進捗状況と評価結果が表示されます。

 

評価結果として、評価用データセットに学習したニューラルネットワークによる推定結果(y’列)が追加された表が表示されます。01_logistic_regression.sdcproj におけるy’は、yが1である(入力画像が9である)確率を示します。

 

Confusion Matrixをチェックして、精度評価結果を表示します。

 

Accuracyが分類精度を示します。この例では評価データセットの「4」と「9」を95.2%の精度で分類できたことが分かります。