Got my snakeId mvp (copperhead vs corn snake) up and running with FastAI!

I’ve been working on making a CNN for doing snake classification as a learning project, as I hadn’t seen it done elsewhere, and since snake id is largely based on scale patterns, I figured it might be ideal case where AI can maximize it’s skills.
I started it in PyTorch with DenseNet transfer learning, but after seeing that FastAI was doing so many of the things I was trying to hand code for PyTorch, I made the jump and happy to say I got an MVP classifier working far faster than ever.
The basic task was just differentiating between a copperhead vs corn snake - this is one of the most common snake confusion out there for people, and happy to say that both VGG and Resnet in FastAI transfer setup rapidly achieved outstanding results, in part due to all the built ins FastAI has (SGD+restarts, differential learning, etc).
Anyway, really happy I found FastAI as it was a huge timesaver for implementing so many things. Thanks to everyone that’s helped make FastAI and hope I can eventually contribute in the future as I get more expertise built up with FastAI. (i.e. I’m still sold on DenseNet architecture, and would love to get one setup for FastAI as prebuilt model).

1 Like

You can use densenet with fastai 1.0
No promises this code still works against the fast moving library, but it should show you how to move forward. Cannot use SqueezeNet with create_cnn

1 Like

Greatly appreciate the info and code snippet - Thanks very much!