Hey everyone,
I am a French architect and I just finished the first lesson of Fast.ai. Can’t hide that I’m very excited about this course! The material is great the community seems very positive and creative.
So for my first project I tried to train Resnet34 to recognise the different types of clouds.
That is something that I never learned and I thought It would so cool to train a computer to recognise them for me!
But boy it was hard to get good results I think at this point It would have been far quicker to learn it myself! ( minus the fun of trainning a CNN)
Yes, .35 of error_rate is very far from the .04 in lesson 1.
My model not good at all to recognise clouds !
Here are my guesses for the reasons of this poor results:
-
It’s all in the Dataset building : Even searching for very specific types of clouds in google image often gave me results with other types of clouds.
So much that I decided to gather large quantities of urls for each types and then use python to remove automatically all urls not containing the specific name of the cloud. Which reduced largely the size of the dataset.
For example, the “Cumulus” name is often poorly used to name whatever could is in the picture so the dataset for this type might have been particularly noisy. -
AI need human! : I am a human that cannot help the model when an image is poorly labeled because I can’t differentiate clouds
So for the data cleaning widget I could only filter images that were not clouds.
So maybe I’ll restart from scratch my dataset with another gathering method. Maybe there is out there a good dataset for this task.
To cheer me up I went to Kaggle to play with one of their datasets.
I took the HAM10000 skin cancers dataset
I train the Resnet50 model to recognise the type diagnostic categories:
- Actinic keratoses and intraepithelial carcinoma / Bowen’s disease (akiec),
- Basal cell carcinoma (bcc)
- Benign keratosis-like lesions
- Dermatofibroma (df)
- Melanoma (mel)
- Melanocytic nevi (nv)
- Vascular lesions (vasc).
And got some pretty good results:
No far from the best kernel I found achieving .89 precision
And I was mainly training Resnet50 with the default parameters, I just played a little bit with the LR after unfreeze.
So the Fast.ai is indeed very powerful!
Thanks a lot to the team!