The field of computer vision by itself has existed since probably the 1960s, where the initial key objective was to build an artificial system to mimic human visual capabilities. Deep learning models like CNNs have caused a resurgence in the last decade owing to a number of factors which include better algorithms, faster compute (GPUs), easy to use software and tools (TensorFlow, PyTorch) and more data availability.

Gradually CNNs have become large and complex but also good enough to be the goto solutions for most tasks related to computer vision (especially classification). Yet, not everyone (or every project) has the resources (or feasibility) to make use of a large GPU cluster to make use of these state of the art behemoth models. Enter Transfer Learning!

Without deviating too much, transfer learning is a method of leveraging such state of the art models (pre-trained on huge datasets) for specific use-cases without the hassles of worrying about preparing large datasets or access to the latest GPU setup on the planet.

This article was featured on Towards DataScience on medium.