Meta learning is an exhilarating research in machine learning which enables the model to learn the learning process. Unlike other ML paradigms, with meta learning, we can learn from smaller datasets in a significantly less amount of time. Also, meta learning takes us a step closer towards artificial general intelligence.
The book starts with explaining the fundamentals of meta learning and takes the readers to understand the concept of learning to learn. We will learn various one-shot learning algorithms like Siamese, prototypical, relation and memory-augmented networks by implementing them in TensorFlow and Keras. Going ahead we will dive into state of the art meta learning algorithms like MAML, Reptile, CAML and more. We will then explore how to learn quickly with meta SGD and how can we perform unsupervised learning using meta learning. We will also learn about recent trends in meta learning like adversarial meta learning, meta learning by Baldwin effect, continuous adaptation with meta learning, and many more.
- 1.1. What is Meta Learning?
- 1.2. Meta Learning and Few-Shot
- 1.3. Types of Meta Learning
- 1.4. Learning to Learn Gradient Descent by Gradient Descent
- 1.5. Optimization As a Model for Few-Shot Learning
- 2.1. What are Siamese Networks?
- 2.2. Architecture of Siamese Networks
- 2.3. Applications of Siamese Networks
- 2.4. Face Recognition Using Siamese Networks
- 2.5. Audio Recognition Using Siamese Networks
- 3.1. Prototypical Network
- 3.2. Algorithm of Prototypical Network
- 3.3. Omniglot character set classification using prototypical network
- 3.4. Gaussian Prototypical Network
- 3.5. Algorithm
- 3.6. Semi prototypical Network
- 4.1. Relation Networks
- 4.2. Relation Networks in One-Shot Learning
- 4.3. Relation Networks in Few-Shot Learning
- 4.4. Relation Networks in Zero-Shot Learning
- 4.5. Building Relation Networks using Tensorflow
- 4.6. Matching Networks
- 4.7. Embedding Functions
- 4.8. Architecture of Matching Networks
- 4.9. Matching Networks in Tensorflow
- 5.1. Neural Turing Machine
- 5.2. Reading and Writing in NTM
- 5.3. Addressing Mechansims
- 5.4. Copy Task using NTM
- 5.5. Memory Augmented Neural Networks
- 5.6. Reading and Writing in MANN
- 5.7. Building MANN in Tensorflow
- 6.1. Model Agnostic Meta Learning
- 6.2. MAML Algorithm
- 6.3. MAML in Supervised Learning
- 6.4. MAML in Reinforcement Learning
- 6.5. Building MAML from Scratch
- 6.6. Adversarial Meta Learning
- 6.7. Building ADML from Scratch
- 6.8. CAML
- 6.9. CAML Algorithm
- 7.1. Meta-SGD
- 7.2. Meta-SGD in Supervised Learning
- 7.3. Meta-SGD in Reinforcement Learning
- 7.4. Building Meta-SGD from Scratch
- 7.5. Reptile
- 7.6. Reptile Algorithm
- 7.7. Sine Wave Regression Using Reptile
- 8.1. Gradient Agreement
- 8.2. Weight Calculation
- 8.3. Gradient Agreement Algorithm
- 8.4. Building Gradient Agreement with MAML from scratch
- 9.1. Task Agnostic Meta Learning
- 9.2. TAML Algorithm
- 9.3. Meta Imitation Learning
- 9.4 MIL Algorithm
- 9.5. CACTUs
- 9.6. Task Generation using CACTUs
- 9.7. Learning to Learn in the Concept Space