nnc_sony_で自前データで画像分類

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
nnc_sony_で自前データで画像分類 [2017/08/23]
adash333 [見出し]
nnc_sony_で自前データで画像分類 [2018/10/07] (現在)
ライン 7: ライン 7:
 http://​twosquirrel.mints.ne.jp/?​p=19813 http://​twosquirrel.mints.ne.jp/?​p=19813
  
 +動画にしてみました。
 +
 +<​html>​
 +<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​iuazqlhc-FA"​ frameborder="​0"​ gesture="​media"​ allowfullscreen></​iframe>​
 +</​html>​
 +
 +<​html>​
 +<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​_MoPfG5UpMs"​ frameborder="​0"​ allowfullscreen></​iframe>​
 +</​html>​
 +
 +<​html>​
 +<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​4xRDMXqR8EA"​ frameborder="​0"​ gesture="​media"​ allowfullscreen></​iframe>​
 +</​html>​
 ===== 開発環境 ===== ===== 開発環境 =====
 Panasonic CF-RZ4\\ Panasonic CF-RZ4\\
 Windows8.1 Pro (64-bit)\\ Windows8.1 Pro (64-bit)\\
-Microsoft Visual C++ 2015 再頒布可能パッケージ Update 3 RC\/+Microsoft Visual C++ 2015 再頒布可能パッケージ Update 3 RC\\
 Neural Network Console_V1.0.0 Neural Network Console_V1.0.0
  
-===== 1. フォルダの作成と、画像ファイルの用意。 =====+なお、Neural Network Consoleのインストールフォルダ(ダウンロードしたZIPファイルを解凍した中身保存フォルダ)は、
  
-りんご30枚+5枚、オレンジ30枚+5枚を、googleの画像検索で拾ってきて保存するための場所を作成す+C:​\neural_network_console_100\ フォルダ 
 + 
 +とします。 
 +===== 1. フォルダの作成と、画像ファイルの用意 ===== 
 + 
 +りんご30枚+5枚、オレンジ30枚+5枚を、googleの画像検索で拾ってきて保存するための場所を作成します。 
 + 
 +C:​\neural_network_console_100\ フォルダの下に、新たに、\\ 
 +images\  フォルダ\\ 
 +datasets\ フォルダ\\ 
 +projects\    フォルダ\\ 
 +を作成します。 
 + 
 +(作成前) 
 +{{:​pasted:​20171110-175245.png}} 
 + 
 +(作成後) 
 +{{:​pasted:​20171110-180333.png}} 
 + 
 +さらに、images\ フォルダの中に、\\ 
 + 
 +appleorange\ フォルダ\\ 
 + 
 +を作成し、その中に、 
 + 
 +training\ \\ 
 +  |-apple\ \\ 
 +  |-orange\ \\ 
 +validation\ \\ 
 +  |-apple\ \\ 
 +  |-orange\ 
 + 
 +のフォルダを作成します。 
 + 
 +{{:​pasted:​20171110-180454.png}}
 ===== 2. 画像のダウンロードと保存 ===== ===== 2. 画像のダウンロードと保存 =====
  
-りんご30枚+5枚、オレンジ30枚+5枚を、googleの画像検索で拾ってきて、以下のように、名前を、半角英数字で保存。おそらく、半角英数字でないととでうまくいかなくなってしまう可能性が高いです。+りんご30枚+5枚、オレンジ30枚+5枚を、googleの画像検索で拾ってきて、以下のように、名前を、半角英数字でjpg画像を保存しますこのときの注意点としては<wrap hi>半角英数字かつjpg画像</​wrap>​ある必要があります。名前に日本語どの全角文字が入って至りpng画像などのjpg以外の画像だ、後うまくいかな可能性が高いです。
  
 +C:​\neural_network_console_100\images\appleorange\training\apple\\
 +りんご画像、約30枚(名前は半角英数字でjpg画像にする)
  
 +{{:​pasted:​20171110-180844.png}}
  
 +C:​\neural_network_console_100\images\appleorange\training\orange\\
 +オレンジ画像、約30枚(名前は半角英数字でjpg画像にする)
  
 +{{:​pasted:​20171110-180913.png}}
  
-===== 参考 =====+C:​\neural_network_console_100\images\appleorange\validation\apple\\ 
 +りんご画像、約5枚(名前は半角英数字でjpg画像にする) 
 + 
 +{{:​pasted:​20171110-180958.png}} 
 + 
 +C:​\neural_network_console_100\images\appleorange\validation\orange\\ 
 +オレンジ画像、約5枚(名前は半角英数字でjpg画像にする) 
 + 
 +{{:​pasted:​20171110-181026.png}} 
 + 
 + 
 +===== 3. Neural Network Console(SONY)の起動 ===== 
 +C:​\neural_network_console_100\ フォルダの中の、neural_network_console.exe をダブルクリックして起動します。 
 + 
 +{{:​pasted:​20171110-181058.png}} 
 +===== 4. サンプルプロジェクトを名前をつけて保存 ===== 
 + 
 +サンプルプロジェクトの、”02_binary_cnn.sdcproj”をクリック。 
 + 
 +{{:​pasted:​20171110-181154.png}} 
 + 
 +画面右上のimage(Save as)をクリックして、 
 + 
 +{{:​pasted:​20171110-183222.png}} 
 + 
 +C:/​neural_network_console/​projects/​ フォルダの下に、「101_apple_orange_cnn.sdcproj」という名前でプロジェクトを名前をつけて保存(02_binary_cnn.sdproj ​ を別名で保存)。 
 + 
 +{{:​pasted:​20171110-183312.png}} 
 + 
 +以下のような画面になります。 
 + 
 +{{:​pasted:​20171110-183335.png}} 
 + 
 + 
 +==== この後の流れ ==== 
 + 
 +このサンプルは、28 x 28 pixelのグレースケールの画像を数字の4と9に画像分類するCNN(畳み込みニューラルネットワーク)です。 
 + 
 +今回は、(画像ファイルを用意した後、) 
 + 
 +<1>このネットワークをコピペして、 
 + 
 +<2>最初の入力を、28 pixelのカラー画像(りんごとオレンジ)に変更。つまり、Input Datasetを、(1,​28,​28)→(3,​28,​28)にして 
 + 
 +<3>りんごとオレンジの、trainingデータセット、validationデータセットを読み込んで、 
 + 
 +<4>機械学習(training)を行い、 
 + 
 +<5>学習結果を評価(validation)を行う 
 + 
 +という流れとなります。 
 +===== 5. ネットワークのInputの変更 ===== 
 +最初の入力を、28 pixelのカラー画像(りんごとオレンジ)に変更。つまり、Input Datasetを、(1,​28,​28)→(3,​28,​28)にします。 
 + 
 +以下の画面の黒い長方形の、「Input」をクリック。 
 + 
 +{{:​pasted:​20171110-183425.png}} 
 + 
 +画面左下に、Layer Property “Input”の詳細が表示されるので、Sizeの1,​28,​28のところをクリック。 
 + 
 +{{:​pasted:​20171110-183443.png}} 
 + 
 +1, 28, 28 が編集できるようになるので、一番左側の “1” を、 “3”に変更する。 
 +(これは、最初の入力画像を、28x28pixelのグレースケール画像から、28x28pixelのカラー画像(RGBの3)に変更している。) 
 + 
 +{{:​pasted:​20171110-183509.png}} 
 + 
 +そうすると、Main画面の数値も微妙に自動的に変更される。 
 + 
 +{{:​pasted:​20171110-183528.png}} 
 + 
 +ネットワークの変更はこれで終了です。 
 +===== 6. 自前のデータ画像の読み込み ===== 
 +りんごとオレンジの、trainingデータセット、validationデータセットを読み込みます。 
 + 
 +===== 7. 学習(training) ===== 
 + 
 +画面右上の CONFIG をクリック 
 + 
 +Batch Size を、64 から1に変更する。 
 + 
 +画面右上の Training の下の△ボタンをクリックすると、学習が始まり、グラフが自動的に生成されていきます。 
 +===== 8. 学習結果を評価(evaluation) ===== 
 + 
 + 
 + 
 + 
 +===== 参考文献 ​=====
 公式マニュアル\\ 公式マニュアル\\
 https://​blog.dl.sony.com/​259/​\\ https://​blog.dl.sony.com/​259/​\\
 日本語のドキュメントがあります!とにかく、公式マニュアルを読んでやるのが一番です! 日本語のドキュメントがあります!とにかく、公式マニュアルを読んでやるのが一番です!
 +
 +===== リンク =====
 +
 +次:
 +<wrap hi>
 +[[NNC(SONY)で回帰分析]]
 +</​wrap>​\\
 +
 +[[sidebar|目次]]\\
 +
 +前:
 +<wrap hi>
 +[[NNC(SONY)で初めての機械学習]]
 +</​wrap>​\\

nnc_sony_で自前データで画像分類.1503465247.txt.gz · 最終更新: 2018/10/07 (外部編集)