コンテンツにスキップするには Enter キーを押してください

SONY の NeuralNetworkConsole で顔認識。

 

はじめに

つい先日、sonyからGUIでディープラーニングを行えるニューラルネットワークコンソール(以下SDC)というソフトが無料で公開されました。
もともと社内で使っていたようです。
windowsでのみ使用可能ですが、GPUの適応などが一瞬なので非常に助かります。
簡単に使った感じ結構使いやすかったので、簡単に書こうと思います。
とりあえず、動かしてみたという記事は多くあるので今回はインストール等は省きます。
今までchainerやkerasで行ってきたような顔認識をしてみます。





 

データセットを準備する。

SDCではデータセットの前処理を行うことができます。
まず、以下のように画像を準備します。
fist_mydataset
それぞれのラベルをフォルダ名とし、それぞれのフォルダの中に画像が入っている状態です。
SDCにもどって、左上のホームからDatasetをクリックすると、現在設定済みのデータセットの一覧を見ることができます。
dataset list in NeuralNetworkConsole
現在はデフォルトで入っていたMNISTのtrain,test、MNISTの4と9の画像のみのデータセットのtrainとtestの計4つがあります。
自分のデータセットを追加するには、そのうえのcreate datasetをクリックしましょう。
choose dataset
Source Dirに先程の画像が入っているフォルダを指定してあげます。
Output DirにはSDCで使えるように整頓されたデータセットの保存場所を指定してあげます。
これは好きな場所を設定してあげれば良いです。
paddingとTrimmingはもともとの画像のサイズがバラバラであったときにどのように揃えるかということです。
画像サイズやcsvのファイル名やらratioやら設定してあげてApplyしてあげます。
Ratioは足して100になるようにします。
creating dataset
データセットリストに追加されます。
after dataset list

 

NeuralNetworkConsole で学習させてみる

このようにモデルを設定しました。
model
最初のレイヤーのInputをデータセットを作成したときの大きさにします。
今回は3,128,128です。
クラスは7つあります。
分類問題ではsoftmaxCrossEntropy誤差を用いますが、その場合は最終レイヤーの一つ前のAffineレイヤーのOutputを7とします。

右上のDatasetからtrainとtestで使用するデータセットを設定します。
またConfigからEpoch数も決められます。
学習をスタートすると、
train start
破線がテストで通常の線が学習データ。例によって学習データが少ないのであまり良くないですね。
学習が終わったらその右のEvaluationをクリックすることで、テストデータで実際に当たっているか見ることができます。
終わると左上のEvaluationタブに切り替わって結果が表示されます。
Evaluation
このように一枚一枚の画像の正解ラベルと予測結果が表示されます。
この画像では右に切れてしまっていますが、それぞれのラベルのどれに当てはまっているかの数値が表示され、一番大きい数字が予測結果です。
この画像内の5つのデータに関してはIndexが2の画像のみ間違っていました。

そして、Output ResultsからConfution Matrixのラジオボタンをクリックすると、
結果の表が出てきます。

が、今回はなぜかバグなのか表示されませんでした。
まっしろに、、
there is no martix. bug?

ちなみに、MNISTのもともと用意されてたデータセットを使っても表示されなかったので、バグだと思います。
たぶん環境によるのかもしれません
なにかわかったらまた追記します。
感覚的にはsoftmaxCrossEntropyを使うと表示されない感じがします。
予想ですが

(追記 2017/08/22)

SDCでは、分類問題の最終レイヤーにはsoftmaxCrossEntropyではなくCategoricalCrossEntropyを用いるようです。
その一つ前のレイヤーにSoftmaxをはさみます。

結果Matrixも表示されました。
右側にモデルの図も上がっています。
CategoricalCrossEntropy matrix

全体的には8割程度の正解率になっているようです。
その他の画像が多かったこともあり、そこだけは正解率95%を超えていますが、本来正しく分類してほしいメンバーに関しては7割程度といったところです。




コメントする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です