What is a pre-trained model
In short, the pre-training model (pre-trained models) is a model created by predecessors to solve similar problems. When you're solving a problem, you don't have to train a new model from scratch and start with a model you've trained in a similar problem.
For example, if you want to be a self-driving car, it can take years to build a good image recognition algorithm from scratch, or you can start with the inception model (a pre-trained one) that Google trained on the imagenet dataset to identify images.
A pre-trained model may not be a 100% accurate counterpart to your application, but it can save you a lot of effort.
Why use a pre-trained model
Significantly reduce training time
How to use a pre-trained model
What are our goals when we train a neural network? We want the network to be able to find the right weight in the process of multiple forward reverse iterations. By using pre-trained models that were previously trained on large datasets, we can use the corresponding structures and weights directly to apply them to the problems we are facing. This is called "Migration learning" and the pre-trained model is "migrated" to the specific problem we are dealing with.
You need to be very careful when choosing a pre-trained model, and if your problem is very much in the context of the pre-training model training scenario, the predicted results from the model will be very inaccurate.
In the migration learning, these pre-trained networks for imagenet datasets outside the picture also shows a good generalization performance, since the pre-training model has been trained very well, we will not be in a period of time to modify too much weight, in the migration learning to use it, often just fine-tuning (fine tune).
In the process of modifying the model, we adopt a lower learning rate than the general training model.
TF Model weight Baidu Cloud
Http://pan.baidu.com/s/1dE9giOD
VGG16:
Weights_path = ' https://github.com/fchollet/deep-learning-models/releases/download/v0.1/vgg16_weights_tf_dim_ Ordering_tf_kernels.h5 '
Weights_path_no_top = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.1/vgg16_weights_tf_ Dim_ordering_tf_kernels_notop.h5 '
VGG19:
Tf_weights_path = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.4/xception_weights_tf_ Dim_ordering_tf_kernels.h5 '
Tf_weights_path_no_top = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.4/xception_ Weights_tf_dim_ordering_tf_kernels_notop.h5 '
RESNET50:
Weights_path = ' https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ Ordering_tf_kernels.h5 '
Weights_path_no_top = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_ Tf_dim_ordering_tf_kernels_notop.h5 '
Inceptions_v3:
Weights_path = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.5/inception_v3_weights_tf_ Dim_ordering_tf_kernels.h5 '
Weights_path_no_top = ' https://github.com/fchollet/deep-learning-models/releases/download/v0.5/inception_v3_ Weights_tf_dim_ordering_tf_kernels_notop.h5 '
Xception:
Tf_weights_path = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.4/xception_weights_tf_ Dim_ordering_tf_kernels.h5 '
Tf_weights_path_no_top = ' Https://github.com/fchollet/deep-learning-models/releases/download/v0.4/xception_ Weights_tf_dim_ordering_tf_kernels_notop.h5 '
Pre-training model and Keras.applications.models weight resource address