Using pre-trained models / their trained weights as a starting point to train a model for a different data set.
Use pre-trained net, initialize last layers with random weights and e.g. create own softmax layer, freeze parameters in previous layers.
Options: Train new layers of network, or even more layers.
Prereqs:
Another trick:
For larger set of samples:
For large set of samples:
Pre-trained models which generalize can be used as a starting model, e.g. https://github.com/KaimingHe/deep-residual-networks ResNet models.
For CNNs more generic features are usually contained in the earlier layers.