Home

Awesome

LearningToCompare

Pytorch Implementation for Paper: Learning to Compare: Relation Network for Few-Shot Learning

Howto

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

NOTICE

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.

mini-Imagenet

ModelFine Tune5-way Acc.20-way Acc
1-shot5-shot1-shot5-shot
Matching NetsN43.56%55.31%17.31%22.69%
Meta-LSTM43.44%60.60%16.70%26.06%
MAMLY48.7%63.11%16.49%19.29%
Meta-SGD50.49%64.03%17.56%28.92%
TCML55.71%68.88%--
Learning to CompareN57.02%71.07%--
Ours, similarity ensembleN55.2%68.8%
Ours, feature ensembleN55.2%70.1%