Neural Network Console

ソニーが提供する、コーディング無しでディープラーニングを用いた高度なAI開発を実現できるツールNeural Network Consoleを試してみました。

https://dl.sony.com/ja/

クラウドバージョンとWindowsアプリがありますが、YouTueのビデオ動画がとても充実しているためどちらも簡単に使うことができました。

Scratchで人工知能

先日こちらのブログで矢印標識を識別するプログラムを作成しましたが、これと同じ方法で4方向の矢印を識別できるかどうか試しました。(スマホに映した矢印の向きを変える)

メイン画面ともいえる編集画面で左のメニューからコンポーネントを選択してブロックを並べるように学習・評価モデルを作ります。入力画像サイズ、結合方法、活性化関数、損失関数を順に決めていきます。
右側RUNボタンで開始。


学習が進んでいる過程を確認できます。
右側RUNボタンで評価開始。


各ラベルが識別された確率が確認できます。
テストデータはScratchのときと同様各方角5枚づつ計20枚撮影して、80%の16枚をTraning用、残り4枚をValidation用としました。


元のデータは下のように配置して、あとはツールでサイズを調整しデータセット記述用のcsvファイルを出力してくれから便利です。

機会学習というとPythonのフレームワークがどうだとか、そういった方面に関心がいきがちですが、実際はどんなデータをそろえたらいいかとか、どういったネットワークモデルにしたらいいかとか、そちらの方にかけるエネルギーの方が大きい(重要)と感じました。
もちろんNeural Network Consoleで作った学習済結果をPythonで利用するライブラリも用意されていて、実用性も十分に考えられています。こういったGUIだと入門用とかと思いがちですが、これはちょっと違うと思いました。

今回はシンプルなテストなので処理時間は気になりませんが、サンプルのプロジェクトの中には学習にかなり時間がかかるものがあります。

GPUはやはり必要ですね。