Neural Network Console (2)

今回はPythonプログラミングで、Neural Network Console(以下NNC)の学習データを利用して実用的なテストをしてみたいと思います。

まずはNNCで学習と評価の実行。

下記評価結果で、ラベルが示す数値が1.0の確率に近い数値を示しているのが確認されます

(画面が小さいPCだったため全て表示できてませんが、ラベル2,1,0,4で1.0に近いこと確認できる。)

NNCのサンプルプロジェクトbinary_net_mnist_MLP.sdcprojを使って出力される学習済データを使って、手書き数字画像の認識をしてみます。

まずPytonを使う前に、ツールに含まれるコマンドを使って実行してみます。
(環境はMacでAnacondaを使って構築しました。(Python 3.6) 環境構築についてはNNCの動画を参考)

nnabla_cli forward -c mnist_results.nnp -d data_mnist/mnist_test.csv -o res_mnist

mnist_results.nnp: NNCで学習したデータ
data_mnist/mnist_test.csv: NNCで評価に使ったCSVファイル
res_mnist: 出力フォルダ名

出力結果(output_resut.csv)

上記NNCでの出力結果と同じことが確認できます。
次にPythonプログラムを使ってみます。

5と7をコメントで切り替えてテスト。

[[3.8503841e-04 6.6292053e-04 5.0363992e-04 2.7701766e-03 6.9973571e-04
9.8056269e-01 7.7112401e-03 2.3113587e-03 2.3585605e-03 2.0347855e-03]]

[[5.9974744e-05 2.4527191e-05 8.6036489e-06 3.3169879e-05 2.8360124e-05
6.2943509e-05 6.1884864e-05 9.9966741e-01 3.2861382e-05 2.0212263e-05]]

それぞれ5と7で、確率が1.0に近い値を示しています。
学習済みデータを利用するテストでした。