Learning to Compare: Relation Network for Few-Shot Learning
![](https://www.deeplearningdaily.com/wp-content/uploads/2021/08/learning-to-compare-relation-network-for-few-shot-learning_61086df23bbcd-375x210.png)
Pytorch Implementation for Paper: Learning to Compare: Relation Network for Few-Shot Learning
download mini-imagenet and make it looks like:
mini-imagenet/
├── images
├── n0210891500001298.jpg
├── n0287152500001298.jpg
...
├── test.csv
├── val.csv
└── train.csv
LearningToCompare-Pytorch/
├── compare.py
├── MiniImagenet.py
├── Readme.md
├── repnet.py
├── train.py
└── utils.py
python train.py
current code support multi-gpus on single machine training, to disable it and train on single machine,
just set device_ids=[0] and downsize batch size according to your gpu memory capacity.
make sure ckpt
directory exists, otherwise mkdir ckpt
.
Model | Fine Tune | 5-way Acc. | 20-way Acc | ||
---|---|---|---|---|---|
1-shot | 5-shot | 1-shot | 5-shot | ||
Matching Nets | N | 43.56% | 55.31% | 17.31% | 22.69% |
Meta-LSTM | 43.44% | 60.60% | 16.70% | 26.06% | |
MAML | Y | 48.7% | 63.11% | 16.49% | 19.29% |
Meta-SGD | 50.49% | 64.03% |