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

こんにちは。今日はSony Neural Network ConsoleでCIFAR-10のイメージを学習させる方法をご紹介します。

 

まず、Sony Neural Network Console(以下、Sony NN Console)とは。

: Sonyが開発したディープラーニング統合開発ツール。Neural Networkの設計に特化したツールで、プログラミングに詳しくなくても、すぐ使えることが一番の特徴。

下記のHPでダウンロードできます。

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

 

  •  CIFAR-10とは?
  1. Toronto大学で収集・整理・配布しているイメージDataSet
  2. 画像サイズは32*32 ピクセル。カラーイメージ(R,G,B)
  3. 10クラス(分類)の画像がそれぞれ6,000枚、計60,000枚の画像で構成
  4. そのうち、50,000枚が学習データ(Train Data)。10,000枚がテストデータ(Test Data)。
  5. クラスは、airplane, automobile, bird, cat, deer, dog, frog, horse, ship, truck

https://www.cs.toronto.edu/~kriz/cifar.html

  • Sony NN Console用にCIFAR-10のDATASETを作る手順
  1.  CIFAR-10 DATASET (png)をダウンロードする。
  2.  Sony NN Networkを起動
  3.  ダウンロードしたDATASETをSony NN Networkを利用して、専用のDATASETを作成。

絵で書くと下記のようなイメージです。

  1. まず、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 DatasetのWindowの中を下記のように設定します。

  1. Source Dir : 解凍したpngデータが入っているフォルダーを指定します。
  2. Output Dir : Sony NN Console 専用のDATASET (train data)が入るフォルダーを指定します。
  3. Shaping Modeは、Trimming, Paddingのどちらでも構いません。(32*32 -> 32*32変換なので)
  4. Output Color Channel : 3 (RGB)にします。
  5. Output width, Output height はともに32にします。これで32*32 pixelのデータが作成されます。
  6. File Name : Output file 1にtrain-cifar10.csvを入れ、Ratioを100%にします。
    1. この機能は、DATASETから、Trainとtest DATASETを自動で作成してくれる機能です。
    2. 今回のCIFAR-10では、最初からTrainとTest DATASETが用意されているため、この機能は使いません
  7. Applyを押すと、DATASETが作成されます。

 

同様な方法でTest DATASETも作成します。

Sony NN Consoleで生成されたDATASETのフォルダーです。

 

よく見るとそれぞれ、train-cifar10.csvとtest-cifar10.csvのファイルが生成されています。

このファイルが、Sony NN Consoleとpngファイルを結びつける役割をします。

その中身を見ますと、

A列に x:imageといって、入力パラメータとして、それぞれの画像の場所と、ファイル名が記されています。

B列には y:labelといい、出力パラメータとして、ラベルデータが記されています。

ラベルデータは、0~9の数字として当てられて、下記のように紐付けされています。

airplane(0), automobile(1), bird(2), cat(3), deer(4), dog(5), frog(6), horse(7), ship(8), truck(9)

 

次回は、このDATASETを利用して、Sony NN Consoleでネットワークを作り、学習させてみます。

最後に、Sony NN Consoleで、大いに参考になったBlogを紹介します。

http://cedro3.com/

Leave a Reply