ruk·si

Transfer Learning

Updated at 2018-09-21 19:52

Transfer learning is taking an already trained predictive model and replacing parts of it (e.g. neural network layers) to apply the model to a different task.

For example, cat detection neural network:

1st layer = detects edges 2nd layer = detects curves and corners 3rd layer = detects circles and squares 4th layer = detects cats

Replace the 4th layer...

1st layer = detects edges 2nd layer = detects curves and corners 3rd layer = detects circles and squares 4th layer = detects dogs

Transfer learning is faster to train than an equal model from scratch. Enterprises like Google have trained image recognition models with millions of images with huge machines. It can easily take weeks to train a model with equal complexity.

Transfer learning requires less data than full training. For example in image recognition context, the model has already learned to recognize edges and basic shapes, you only need to make it combine those simpler features to make it find what you are interested in.

Transfer learned models won't be as accurate as one trained from scratch. It won't but it is an excellent starting point.