[JPN] Sony Neural Network ConsoleでCIFAR-10のイメージを学習させてみる。(2)

2018-01-25

前回の記事で、CIFAR-10のDATASETを準備しました。     今回は、このDATASETを用いて、Sony Neural Network Console(以下、Sony NN Console)で、Convolution Neural Network(以下、CNN)を構築し、学習させることにします。 まず、下記のような基本的なCNNを作成します。これはTensorflowなどでMNISTデータを認識するときによく紹介される基本的なネットワークです。 簡単に説明しますと、Convolution-ReLU-(Max)Poolingを2回行った後、FC(Fully Connected Layer)-ReLUを2回行います。その後、Softmax関数で認識した画像を分類します。 今回のCIFAR-10に使うSony NN Console版のCNNは、こちらになります。 詳細設定は下記の表を参考にしてください。   それでは、DATASETを読み込む操作について説明します。 まず、DATASETのTabを選択し、Openボタン→Open Datasetを選択します。(下記の絵で赤い枠で表記) ここで、前回の記事で作成したtrain-cifar10.csvを選択します。 そうなりますと、train-datasetの中身が表示されます。x:image列にpngデータ。y:label列にラベルが表示されます。 まずは、train-datasetを読み込み、次にはtest-datasetを読み込みます。 完了したら、下記のようにDatasetsに情報が表示されます。 次に、Trainingを実施します。今回はEpoch = 10までに実施してみました。 使用環境は、CPU: Core-i5 , RAM : 16GB, GPU : Nvidia-Quadro K2000 4GBでした。 Epoch-10までの学習時間は6分13秒でした。 次に、Evaluationを実施し、Accuracyを算出してみます。 なんと29.56%。かなり低いですね。 これは後からの調査でわかりましたが、Batch Normalizationを入れることで、精度がアップするらしいです。 そのBatch Normalizationに関しては、次回の記事に紹介します。 今日はまず、Sony NN ConsoleでCIFAR-10の学習が出来たことで終わります。ありがとうございました。  

Read More >>

[JPN] Sony Neural Network ConsoleでCIFAR-10のイメージを学習させてみる。(1)

2018-01-24

こんにちは。今日はSony Neural Network ConsoleでCIFAR-10のイメージを学習させる方法をご紹介します。   まず、Sony Neural Network Console(以下、Sony NN Console)とは。 : Sonyが開発したディープラーニング統合開発ツール。Neural Networkの設計に特化したツールで、プログラミングに詳しくなくても、すぐ使えることが一番の特徴。 下記のHPでダウンロードできます。 https://dl.sony.com/ja/    CIFAR-10とは? Toronto大学で収集・整理・配布しているイメージDataSet 画像サイズは32*32 ピクセル。カラーイメージ(R,G,B) 10クラス(分類)の画像がそれぞれ6,000枚、計60,000枚の画像で構成 そのうち、50,000枚が学習データ(Train Data)。10,000枚がテストデータ(Test Data)。 クラスは、airplane, automobile, bird, cat, deer, dog, frog, horse, ship, truck https://www.cs.toronto.edu/~kriz/cifar.html Sony NN Console用にCIFAR-10のDATASETを作る手順  CIFAR-10 DATASET (png)をダウンロードする。  Sony NN Networkを起動  ダウンロードしたDATASETをSony NN Networkを利用して、専用のDATASETを作成。 絵で書くと下記のようなイメージです。 まず、CIFAR-10 DATAsetをダウンロードします。 リンク(175MB) → https://drive.google.com/open?id=1Rmmb8YRgIcOU_BleUfVzks_QZCjK66EK 圧縮を解凍すると下記のようなフォルダーが現れます。 Testフォルダの下に、10個に分類(クラス)されたフォルダが現れ、それぞれのフォルダーは、32*32 ピクセルのカラーイメージファイルがpngフォーマットして格納されています。 Trainフォルダには、50,000枚のpngデータ、Testフォルダーには10,000枚のpngデータが入っています。 2. 次は、Sony NN Consoleを立ち上げ、専用のDATASETを作成する方法を説明します。 順番としては、先にTrain DATASETを作成し、次にTest DATASETを作成することにします。 (1) 画面の左部分のDATASETを選択し、 (2) Create Datasetを選択します。 その後、Create DatasetのWindowが表示されます。 Create…

Read More >>

Deeplearning入門書の紹介

2017-06-09

親友の朴さんのため、Deep learningの入門書を紹介します。 人工知能は人間を超えるか ディープラーニングの先にあるもの 東大の松尾豊教授の著書。 人工知能の歴史の説明を中心にわかりやすい説明が特徴。 2015年に発汗され、すぐベストセラーになっている。日本の人工知能を引き起こした一冊とも言える。 https://goo.gl/yWfb3M   ちなみに、韓国にも翻訳され、ベストセラーになっている。 https://goo.gl/1NpJgx      

Read More >>

Pythonの開発環境の構築

2016-12-27

今年は、GNURadioやワイヤレス給電以外に、Deep Learningにもチャレンジすることにしました。 今年の6月に読ませて頂いた松尾豊先生の「人工知能は人間を超えるか」から触発された知的好奇心が、「自分の手で人工知能を走らせてみたい!」の要求に変わり、いろいろ探った結果、下記の本に出会いました。 藤沢駅前のジュンク堂書店に行くと、ベストセラーコーナーに置かれています。O’Reillyの書籍が一般のベストセラーコーナーに置いてあるのは初めて見ました。現在の日本において、一般人の人工知能への関心が如何に高くなっていることを表す証拠でしょう。 さて、いくつの人工知能を説明する書籍を見ると、ほとんどの書籍がPythonをベースに説明されています。MatlabのようなScript言語で使いやすいと聞いたことがあって、興味があったのですが、これを期にインストールしてみました。(下記のHPでダウンロードできます。) https://www.python.org/ インストールシた後、Pythonを実行すると次の画面が表示されます。 うーん。これでは、困りましたね。 黒いプロンプトにいちいち命令語を打ち込まないと行けない。Scriptの編集は、まずWindowsのテキストエディターを使うから、なんか違和感満載。 Matlabの開発環境に慣れた私にとって、すごく不便だと思いました。 そんな中、EmEditorというのがPythonのScript編集には便利だと聞き、早速使ってみました。 確かにPythonの編集モードをサポートし、楽になりました。Python以外のテキストエディターとしてかなり優秀なので、今はWindowsのメインエディターとして活用しています。 でも、まだPythonの黒いプロンプト画面で、Scriptファイルを実行しなければならないので、やる気が半分しか出てませんでした。 噂によると、「PythonはMATLABを凌駕するかもしれない」だそうですが、黒いプロンプト画面では、どうしてもその話は、嘘にしか思えませんでした。   ここで、まず上記のDeep learningの本を読んでみたら、AnacondaというPython Distributionを設置するように書いてありました。 Deep learningには、数学計算としてNumPyとグラフの表示機能としてmatplotlibというライブラリが必要だそうです。 MatlabだとToolboxに相当するものですかね。 例えば、Python本体を設置し、それぞれのライブラリを別途に設置した後、本体とライブラリをリンクさせる… 気が遠くなりますね。 その手間を省くために、科学技術計算に必要なPythonのライブラリを纏め、DistributeするのがAnacondaだそうです。大変ありがたいです。 Anacondaは設置しましたが、未だに統合開発環境には及んでいません。 MATLABのような統合開発環境(Integrated Development Environment ; IDE)が出来ないかといろいろ調べて見た結果、PyCharmというIDEが評判が高いことに気づき、これを設置することにしました。 ちなみに、PyCharmには Professional Edition と Community Editionの2つの種類があります。 Profeesionalは有償、Community Editionは無償で利用できます。 今回はCommunity Editionを設置します。インストールの後、Python InterpreterとしてAnacondaで設置したPythonをリンクするだけです。これも自動でやってくれます。 他のNumPyなどのライブラリも自動的にPyCharmが探し出し、リンクしてくれます。   次の図がPyCharmの起動画面です。 おー!やっと現代の統合開発環境(IDE)のように見えますね。 画面が大きく3つに分けられて、左上のProject Window、中央のCode Editor, 下部のPython ConsolあるいはTerminalが触れるようになっています。 いいですね。MATLABの統合開発環境(IDE)にも似ています。 コードの実行は、画面のあっちこっちにある緑のプレイボタンを押します。 Deep learningの本の例題ファイルを実行してみます。(様々なアルゴリズムによる損失関数の収束率を計算するコードです。) ちゃんと綺麗なグラフも描いてくれます。これならやる気が出ますね。 ここまで読んで頂き、ありがとうございました。   まとめ Pythonを科学計算として使うユーザには、下記の方法で設置することをおすすめします。 (1) PythonのAnaconda Distributionを設置。Python Versionは3.5。 (2) IDEとして、PyCharm (Community Edition)を設置。  

Read More >>