Rohan Mahadev

Computer Science, Machine Learning, Computer Vision,
Game Theory, Applied Math,
Music, Philosophy



I recently decided to understand what Transfer Learning is. Apparently its the cure to cancer, going to end poverty and bring about world peace.

Well, that was meant as a joke but it's not too far away from reality. Transfer learning is letting doctors detect early signs of breast and skin cancer[1],[2]. I got a job recently because of my ability to do transfer learning so its definitely ending my poverty and Transfer Learning used in DeepFakes will one day cause civilization to end, hence bringing total and absolute world peace.

So, I thought I'll give this thing a go and alongside my colleagues at AitoeLabs, I wrote a Transfer Learning layer on top of Caffe which uses DATK (our ML framework) to do logistic regression.

And what better way to test if my code actually was good that running it on a Kaggle Competition - The Dog Breed Classification Challenge. The best ever Kaggle Competition, that is, because every second of going through the dataset, cleaning it was so much fun because of the endless source of puppy pics. Thanks Kaggle and Stanford!

[1] - https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0217293

[2] - https://www.computer.org/csdl/proceedings-article/aipr/2017/08457948/13xI8A6FLUB

Update: I unfortunately had to take down the Github code and the only thing I'm left with are the data cleaning scripts I wrote for Kaggle. The earlier version of this post was a walkthrough over my custom code but I'm planning to write another, more visual explanation of transfer learning soon, so stay put!

I know this is disappointing so here are some pictures of my favourite dogs from this dataset :P dog1 dog1 dog1


And just for your added pleasure, I created a "Cute Pup or not" Classifier!