This week I learned about transfer learning. The goal was to reach an accuracy of 87% or higher. I was able to get the results needed with a InceptionResNetV2 model trained with Adam Optimization with an accuracy of 91.57% and validation accuracy of 91.04%.
While doing transfer learning I had to take an existing model and modify it to fit the data I needed as a return. I couldn't just choose anything it needed to have an accuracy of 87% or higher.
In this project, I used the CIFAR 10 dataset which comes with 50000 trained images for 10 different classes including frogs, dogs, and cars. And then includes another 10000 just for testing.
I also used a few models from Keras Applications to test which worked best with the results I wanted. These include pre-trained weights to make the transfer learning process easier to apply.
Google collab was also a really useful resource as it allowed me to test my models efficiently.
For this project, I picked a few different models from the Keras Applications and ran them through the program. After running them I found that the InceptionResNetV2 was the best of what I choose. Having run multiple lets me understand why some work better than others and why it is better to have certain layers. Not to mention how Amam optimization helped out a lot. I did also only run with 4 epochs because I didn't want the program to overtrain and get too detailed as this could cause the model to be worse.
As a result, I found that the InceptionResNetV2 model trained the best from the few I had tested with an accuracy of 91.57% and validation accuracy of 91.04%.
In the end, as previously mentioned InceptionResNetV2 did come out on top with over a 90% accuracy while other models did not perform as well. This did take about an hour and a half to finish training and I was surprised with the results compared to the others I have seen. If I had more time I would have possibly been able to fine toon to get better results.
Keras documentation: Keras Applications
Keras Applications are deep learning models that are made available alongside pre-trained weights. These models can be…
CIFAR-10 and CIFAR-100 datasets
aquatic mammals beaver, dolphin, otter, seal, whale fish aquarium fish, flatfish, ray, shark, trout flowers orchids…