A.I. Flower Classification


Deep Learning Model

The task here is muti-class classification. Especially this task is an example of fine-grained recognition.
The number of classes is 406. This number comes from the availability of photos (see Dataset section below).
The model used is GoogleNet with batch normalization. We used the code written in torch by Dr. Soumith Chintala (https://github.com/soumith/imagenet-multiGPU.torch ). Only the last layer was modified to match with the number of classes, 406 (see below).
We experimented with the model pre-trained using ImageNet dataset, but the result was not so different from the one trained from scratch.


Images of flowers are collected from ImageNet (http://www.image-net.org ). There are many flower nodes in ImageNet, but some don't have enough number of images. The list of adopted 406 nodes (WNID) is here. For each of 406 nodes, we collected at least 700 images.
Attention: Some images stored in ImageNet are incorrectly labeled. So if you want to use them for your own deep learning experiment, first you need data-cleaning by removing incorrectly labeled images. You may also need to add images to supplement the deleted images. This is what we did. Indeed this is the hardest part of this experiment.


Using the test dataset that has 50 images for each nodes, the model achieve the following.
top1 accuracy = 77.5%
top5 accuracy = 96.5%