Contenido del Curso
Neural Networks with TensorFlow
Neural Networks with TensorFlow
Transfer Learning
Transfer learning is a powerful machine learning technique where a model developed for one task is reused as the starting point for another related task.
This approach is particularly beneficial when you have a limited amount of data for the new task or when training a model from scratch is computationally expensive.
Strategies in Transfer Learning
Fine-Tuning
Fine-tuning is the simplest form of transfer learning. Fine-tuning adjusts the weights of a pre-trained model to tailor it more closely to the specific features of a new dataset.
This process typically includes training the model on new data with the same input and output structure as the original model.
During fine-tuning, you can choose to freeze some of the base layers of the model, especially the earlier ones, as they contain more generic features that are likely useful across different tasks. The top layers, which capture more specific features, are usually fine-tuned to adapt to the nuances of the new dataset.
The rationale behind fine-tuning is to leverage the knowledge the model has already acquired and refine it to better suit the new task, enhancing its performance without the need for training from scratch. This approach is particularly effective when the new dataset is smaller or when you want to save computational resources.
Note
The
model.layers
attribute holds the layers of the model in a list-like structure, enabling access to individual layers using index notation. Consequently, we can slice a subset of layers of the model, such as usingpretrained_model.layers[:-3]
to set theirtrainable
parameter toFalse
.
Feature Extraction
Feature extraction involves adapting a pre-trained model to a completely new task by updating it, for example, using a model trained on a regression task to extract features for a classification task.
Note
- Every layer possesses
input
andoutput
attributes, which can be utilized as the input and output for constructing a new model.- Each model can be treated as a separate layer.
¡Gracias por tus comentarios!