TensorFlowのInception-v3でStanford Dogsを分類してみた

tensorflow

Stanford Dogs Datasetの120カテゴリーの犬の画像を使って、TensorFlowのInception-v3で詳細画像分類(Fine-Grained Visual Categorization)を実施してみました。

スポンサーリンク

Stanford Dogs Dataset

Stanford Dogs Dataset(http://vision.stanford.edu/aditya86/ImageNetDogs/)は、120カテゴリー、合計20,580枚の犬の画像のデータセットになっています。

Stanford Dogs Datasetに関するこちら(http://people.csail.mit.edu/khosla/papers/fgvc2011.pdf)の文献には、カテゴリー毎の画像の例として、以下の図が示されています。

stanford-dogs-thumbnail

fgvc2011.pdfから引用

Stanford Dogs Datasetは、ImageNetのサブセットになっているようです。また、ImageNetのILSVRC 2012のTask 3の詳細画像分類(fine-grained classification)とも関係ありそうですが、詳細は不明です。

詳細画像分類

TensorFlowのInception-v3で画像を分類してみた(Python API編)
TensorFlowのチュートリアルの画像認識(Python API編)に従って、Inception-v3による画像の分類にチャレンジしてみました。

上の記事のTensorFlowのInception-v3で、Stanford Dogs Datasetのtest用画像(8580枚)の詳細画像分類を実施してみたところ、TOP1の正解が7886枚で、約0.919の正解率となりました。
正解率が高い(or 高すぎる)気がします。

また、カテゴリーの正解率の順に可視化してみると、以下の図のようになりました。
tensorflow-inception-dog

まとめ

Stanford Dogs Datasetのtest用画像の120カテゴリー・8580枚の犬のデータを使って、TensorFlowのInception-v3で詳細画像分類を実施してみたところ、TOP1の全体の正解率が約0.919、カテゴリー単位では、Bedlington_terrier、Dandie_Dinmont、malinois、bull_mastiff、Mexican_hairlessの5カテゴリーの正解率が1.00、逆に、Eskimo_dogの正解率が最も低く、正解率0.34(50枚中、正解17枚)でした。

正解率が高い(or 高すぎる)気がするので、ImageNetのILSVRC 2012のTask 3の詳細画像分類(fine-grained classification)とStanford Dogs Datasetの関係が気になるところです。
少なくとも、Inception-v3は、Task 3のトレーニングも行われている気がします。