※現在、ブログ記事を移行中のため一部表示が崩れる場合がございます。
順次修正対応にあたっておりますので何卒ご了承いただけますよう、お願い致します。

Chainer:CIFAR-10のカラー画像の学習の最初の一歩


2017年 05月 07日

前回の結果は、こんな感じになった。
エポック数は20から30に増やしている。

CIFAR-10$ python train_cifar1.py -g 0
GPU: 0
# number: 50000
# units: [1000, 1000]
# Minibatch-size: 100
# epoch: 20

epoch       main/loss   validation/main/loss  main/accuracy  validation/main/accuracy  elapsed_time
1           1.86715     1.73653               0.32922        0.3812                    2.75118
2           1.66337     1.59714               0.40486        0.4357                    5.40721
3           1.57334     1.57614               0.44104        0.4358                    8.07569
4           1.51226     1.49099               0.46104        0.4785                    10.7339
5           1.46874     1.46533               0.47504        0.4749                    13.3348
6           1.42551     1.45455               0.49212        0.4804                    15.9548
7           1.39173     1.42694               0.50112        0.4923                    18.5731
8           1.36098     1.43224               0.51336        0.4911                    21.168
9           1.33312     1.4021                0.52336        0.5021                    23.7716
10          1.31362     1.41015               0.52904        0.4992                    26.3923
11          1.27622     1.38601               0.5428         0.5111                    29.0275
12          1.25692     1.4047                0.55126        0.5059                    31.6632
13          1.23182     1.40042               0.5605         0.5099                    34.2548
14          1.20969     1.39606               0.56652        0.5132                    36.8616
15          1.17579     1.40497               0.57774        0.5122                    39.4807
16          1.15794     1.38415               0.58356        0.5161                    42.1522
17          1.13568     1.45162               0.592          0.5038                    44.7706
18          1.11563     1.40237               0.5983         0.5241                    47.4012
19          1.08962     1.41428               0.60758        0.5191                    50.014
20          1.06738     1.45898               0.617439       0.5032                    52.6235
CIFAR-10$
accuracy.png 学習の精度はまだまだ上昇しそうだが、テストの精度が50%をやや超えたあたりでもう上昇する気配がない。

テストの精度が51%としたとき、これは学習していると言えるのだろうか。

まず、画像データについて考えよう。
The CIFAR-10 は、10種類の写真の識別である。これは、手書き数字の判別とまったく同じだ。

もし何も学習できなくてテストをしたら、正解率の期待値は10%のはずである。
デタラメに答えていたら10%なのが、学習により51%になったので、結構学習したと考えられる。

しかし、半分は分類ミスを犯しているので、良い成績とは言いがたい。

まあ、これも、手抜きのせいであるのはわかっている。

そろそろ、単純な全結合ニューラルネットワークだけでなく、畳み込みニューラルネットワークを使うことを模索してみよう。