概要
Neural Network Console(NNC)とはGUIを使ってノーコード
での機械学習を可能にしたツールです。
元々機械学習はプログラミング的な要素が薄いので、いいものが出てきたなーという感じ。
中身でPythonが動いてるみたいですね。
誰でも簡単に試せるように、ここに使い方を残しておきます。
事前準備
以下の3点を用意する必要があります。
- 学習データ
- 検証データ
- 学習データと検証データの保管場所
ここで言う学習データと検証データとは、入力データと正解データのペアの塊のことです。
正解データは教師データや正解ラベルとも言われますね。
手書き数字画像データであるMNISTを例にすると、以下を指します。
- 入力データ:手書き数字が書かれた画像
- 正解データ:正解の数字(厳密には0~9を示す要素10の配列のうち、正解の要素を1、他を0にした配列)
また、保管場所については、各データのパス、または正解を以下のような形式でCSVファイルに保存します。
保管場所は学習データと検証データのそれぞれに必要です。
MNISTのサンプルCSVファイルはこのような形になっていました。
x:image,y:9
./validation/4/4.png,0
./validation/4/6.png,0
./validation/9/7.png,1
./validation/9/9.png,1
...
事前準備データは、サンプルを見ながらどうなってるかを理解すると早いと思います。
実装
1. モデル作成
ここがノーコードユーザが最も苦労するところになります。
左上の「編集」タブから作成可能です。
モデルの作成方法については、今回は割愛します。
ドラッグアンドドロップで構造を指定できて使いやすいです。
2. データ登録
右上の「データセット」タブから編集可能です。
事前準備で作成した学習データと検証データのCSVファイルを登録します。
正常に登録できたら、以下のように画像やラベルが表示されます。
3. 設定確認
右上の「コンフィグ」タブから編集可能です。
色々ありますが、基本的に確認すべきところは、「Global Config」にある学習反復世代数とバッチサイズだと思います。
学習反復世代数はエポック数にあたるものです。
最適化などもコンフィグから変更可能です。
4. 学習
「編集」タブ→右上の「実行」ボタンから、学習データを使って実際に学習していきます。
モデル形状やGPU/CPUで処理時間が変わってきます。
グラフに損失などの結果が徐々に出力されていくので、じっと待ってあげてください。
学習が終了したら、グラフが完成します。
5. 検証(評価)
学習が終了したら、「学習」タブ→右上の「実行」ボタンから、検証データを使って評価していきます。
「評価」タブから出力結果を確認できます。
こちらのデータを使って実行した結果が以下の図になります。
モデルが大したことないので精度はイマイチですが、ちゃんとできてますね。
まとめ
ノーコードで機械学習ができるNNCの使い方を紹介しました。
学習以降は簡単にできるのですごく良いと思いました。
ただ、学習データを作ったりをノーコードでできるのかが少し疑問。