ディープラーニングを 15分でさらりと理解 - Neural Network Console 編-

ソニー社が提供するNeural Network Consoleを15分で体験！
![AI_sony_neural_network_console_15min.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/1a60a765-8b51-5ccb-ce4c-99148f6e5336.png)


今日皆さんに紹介するのは、ソニー社が提供するプログラミング不要の、ニューラル ネットワーク コンソール(長！！)と呼ばれるクラウドサイトです。ではまずは15分でAIを無料で試しましょう！

ニューラルネットワークとは、人間の脳内神経細胞（ニューロン）とその神経回路網を人工的に数式モデル。機械学習（マシーンラーニング）と呼ばれる手法のひとつ。

目次
その1) Neural Network Consoleでサインイン
その2) 雛形を選んで、文字認識の学習するよ
その3) 学習結果から文字認識(推論)しよう！
その4) 文字認識の結果を見よう！
まとめ


その1) Neural Network Consoleでサインイン
なまえと最低限の情報でOK。
![sony_nnc_00_main.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/46c3d82a-d980-873c-a1aa-304c52d2d2d3.jpeg)
![sony_nnc_01_welcome.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/6d50f35e-1cc4-3ea4-684d-e0567e46be47.jpeg)


最初のページはダッシュボード。プロジェクトを選択して雛形を見よう。

その2) 雛形を選んで、文字認識の学習するよ
![sony_nnc_02_samples.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/a306e7c0-0a3d-c773-2448-349942e14440.jpeg)
サンプルプロジェクトはたくさんあるよ。目的やカテゴリ、又はデータセット（アルゴリズム別）でも選択できるよ。
今回はとってもシンプルな文字認識「01_logistic_regression.sdcproj 」のサンプルを選んだよ。
![sony_nnc_03_tutorial_basics_01_logistic_regression.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/ef1083a8-9ea2-7f1c-4749-cb4f6230deb9.jpeg)



その3) 学習結果から文字認識(推論)しよう！
サンプルプロジェクトが読み込まれたね。グラフィカルでわかりやすい画面だね。簡単に言うと手書き文字認識データセットの1x28x28のモノクロ手書き文字画像（4と9の画像）が読み込まれるよ。その手書き文字が「9」かどうかの判別を行うためのネットワーク(Sigmoid)が読み込まれていることを確認。

![sony_nnc_04_tutorial_basics_01_logistic_regression_layers.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/2c6059f9-9250-df41-8c7d-81b3c69a7f1a.jpeg)
画面右上のコントローラ「実行」を押すと「学習」が始まるよ。
PS: AIの「学習」とは、人間が勉強するのと同じで、たくさん「4」や「9」を読み込ませるよ。「9」と覚えることでコンピュータが「判別(推論)」ができるようになるよ。
![sony_nnc_04_tutorial_basics_01_logistic_regression_01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/93d3cbb8-7bea-3a09-7294-dd026de932a6.jpeg)
学習が終わるとTRAININGタブにて、学習の進捗状況が学習曲線と共に表示。クラウド（CPU実行）上で3分ほどかかったよ。
PS:複雑な学習や、たくさんの画像や音声を取り込みたいときは「コントローラ」のNVIDIA**等を有料で使えるよ。
![sony_nnc_05_tutorial_basics_01_logistic_regression_execution.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/86ae300b-ac95-21b6-a92c-e612faa5d7b7.jpeg)
難しい説明はさておき、学習曲線（グラフ）の横軸(Epoch)は最適化の繰り返した世代だね。深いとError(ミス）が減るよ、でも時間もかかるよ。縦軸（Cost）は最適化段階で学習データ、評価データそれぞれにおけるロスした値を示しめしているよ。要は図のように右に移動(世代数の増加)するにつれて、従いCost、Errorの値が下がっているので、正しく最適化(文字認識)が出来ているね。
![sony_nnc_06_tutorial_basics_01_logistic_regression_learning_01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/766e9edd-59ca-5d71-e49c-5008bd028635.jpeg)


その4) 文字認識の結果を見よう！
次に画面左上の「評価」タブを選択し、「実行」ボタンをクリック。数分で学習データから文字認識（推論・評価）結果がでるよ。
![sony_nnc_07_tutorial_basics_01_logistic_regression_result.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/fc929340-3f87-fa84-cf5e-5a061f2703bc.jpeg)

無事「9」と「4」を評価値(無関係0.0 ~そっくり1.0の数値）でコンピュータが答えをだしているね。枠線の画像は「0.9955」「0.9705」「0.9906」など「そっくり1.0」に近いね。反対に「4」の画像は、「0.0024」など数値が低いね。

最後に「評価」タブの「混同行列」を選択して、精度を見てみましょう。
「Accuracy」が精度「そっくり1.0」だね。
![sony_nnc_07_tutorial_basics_01_logistic_regression_result_matrix.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707380/0ae57e8c-9b36-6c1c-4f17-2c7176ea8149.jpeg)

ニューラルネットワークの仕組みと構造
　一つひとつの人工ニューロンはシンプルだよ。それを多数組み合わせて複雑な近似するのが、ニューラルネットワークの特徴。一般的に、分類や回帰ができない事象では、従来型の機械学習手法ではうまくいかないケースも。そんなケースには、ディープラーニング手法がマッチ。ディープラーニングは、従来の機械学習に比べて飛躍的に認識精度が向上するケースもあるよ。

まとめ
ソニー社のAIクラウドサービスの特徴は以下を解決するサービスだよ。
- Pythonや数式を学ばないといけない 
- ネットワーク構造やパラメータを変更,コーディングで試行錯誤
- 学習した何十種類ものニューラルネットワークの管理に苦労
- ニューラルネットワークのチューニングを自動化したい
- 開発環境の構築に手間と費用がかかる
尚無償は10時間だけなので、時間が取れる日に試してね！