ここで使うCNNというのは、畳み込みニューラルネットワーク(Convolutional Neural Network)の頭文字をとったもので、機械学習の一つの深層学習(ディープラーニング)の一つです。アメリカのテレビ局ではありません。
シンプルな深層学習モデルで分類した時は、精度は0.6台前半でした。CNNを使うと精度がなんと0.8116へと跳ね上がりました。データの数が足りないので、ここまでの精度は全く期待していませんでしたが、さすがCNN。CNNは一言でいうと、特徴量の全部を見るのではなくて、特徴のあるとことだけを際立たせて、どうでもいいところは捨ててしまうといったイメージです。
特徴量はたくさんあったほうがいいような気がします。僕も学び始めたころはそう思っていました。でも今回の結果のとおりで、意味のない特徴量というのはあるだけ無駄どころか、あること自体が精度の低下につながります。
結果をよく見ると、学習曲線のとおりでやや過学習しています。繰り返す回数は7回でよかったようです。
予測の結果の内訳は、
正解 予測 数
シータ シータ 30
キキ 5
ナウシカ 5
キキ シータ 7
キキ 51
ナウシカ シータ 9
ナウシカ 31
まとめると、シータは40中30正解、キキは58中51正解、ナウシカは40中31正解となりました。また、キキとナウシカを間違えたものはありません。
繰り返しになりますが、データが少ない(各人物の画像は約180枚)中でここまで精度が出るとは、やはりCNNは画像を扱うタスクでは欠かせない技術です。
Comments