mate learning = learn to learn
As shown in the figure below, mate learning is to input training data to F, and the output is an f * that can be used to identify the image.
F (training data) = f (a neural network)
Unlike other machine learning models, machine learning is to train a model F and use F to identify images.
f (picture cat) = "cat"
As shown in the figure below, the process of machine learning is like this. The parts marked in red are set manually. For different initializations of theta, you will get different training models.
Thinking, how to let the initialization parameters learn by themselves without artificial setting?
How to evaluate the quality of F, every time a part of the data is selected from the training set for training and the learned f1 is tested. The test result is l1 This is a task, and then there are many such tasks
The sum of all li is the evaluation result of F. If the result of L (F) = Σ (l) is small, the effect of F is good, and vice versa.
The following figure is the division of training data. The overall data set is called training set and the data set in each task is called support set and query set
Loss function
Two ways to achieve mate learning
MAML process
How does maml find Φ using gradient descent; comparing the difference between pre-training and maml, we can see that maml is the sum of θ (green match) in the model trained in each task and then find the Φ of F model ( blue)
And pre_training is the Φ of the current model in the current test set.
To illustrate the difference between the two, we do n’t care whether Φ performs well on the task, we care whether Φ can train a good θ, as shown in the following figure.
For pre-training, Φ may perform well on l2, but on l1, it may fall into local optimum.
So the summary is:
maml ——> Φ is the best potential after training
pre_train ——> Φ Follow it to perform best on the current model
maml only needs to be updated once during training
Pre-train and maml comparison
Mathematical derivation formula
Visually compare the two
pre-train maml reptile comparison
problem with maml
Initially still need to initialize the parameters of the initialization parameters
Finish!