> For the complete documentation index, see [llms.txt](https://ramsane.gitbook.io/deep-learning/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ramsane.gitbook.io/deep-learning/few-shot-learning/how-to-solve-this.md).

# How to solve this ?

There are few different approaches and are briefly described here.&#x20;

### Transfer Learning

It is fairly simple algorithm and easy to implement. Unlike the typical case of transfer learning, there is a subtle difference in how we handle train and validation as this involves training and validation through tasks , not just with some batch of images and labels.

{% content-ref url="/pages/-M2RxQLR5hCsA-0LDhhp" %}
[Transfer Learning](/deep-learning/few-shot-learning/how-to-solve-this/transfer-learning.md)
{% endcontent-ref %}

### Metric Learning

In this approach, we will learn a metric that differentiate between the classes in the support set. It is quite popular and it is the first kind of approach towards solving this problem.

{% content-ref url="/pages/-M2RxU4TiBCLafnzDZlH" %}
[Metric Learning](/deep-learning/few-shot-learning/how-to-solve-this/metric-learning.md)
{% endcontent-ref %}

### Data Augmentation

It is basically learning to augment. Most of it is based on GANs.  **DAGAN** is the popular one.

{% content-ref url="/pages/-M2RxXK8pXqMrCuoemUj" %}
[Data Augmentation](/deep-learning/few-shot-learning/how-to-solve-this/data-augmentation.md)
{% endcontent-ref %}

### Meta Learning

It is like learning to learn. The basic algorithms in these area are **MAML.**  There are other variations like **MAML++, Meta-SGD** etc.,.&#x20;

{% content-ref url="/pages/-M2RxgOAVrTiIr0-u8UM" %}
[Meta Learning](/deep-learning/few-shot-learning/how-to-solve-this/meta-learning.md)
{% endcontent-ref %}
