Closed hieulem closed 2 years ago
Hi, the dataset organization is the same between FEAT and other baselines. Please check the default parameters of the code. For example, we do not use data augmentation during the meta-training stage.
Based on the given pre-trained weights, please try the following commands. For MiniImageNet:
python train_fsl.py --max_epoch 200 --model_class FEAT --backbone_class Res12 --dataset MiniImageNet --way 5 --eval_way 5 --shot 1 --eval_shot 1 --query 15 --eval_query 15 --balance 0.01 --temperature 64 --temperature2 64 --lr 0.0002 --lr_mul 10 --lr_scheduler step --step_size 40 --gamma 0.5 --gpu 1 --init_weights ./saves/initialization/miniimagenet/Res12-pre.pth --eval_interval 1 --use_euclidean
python train_fsl.py --max_epoch 200 --model_class FEAT --backbone_class Res12 --dataset MiniImageNet --way 5 --eval_way 5 --shot 5 --eval_shot 5 --query 15 --eval_query 15 --balance 0.1 --temperature 64 --temperature2 32 --lr 0.0002 --lr_mul 10 --lr_scheduler step --step_size 40 --gamma 0.5 --gpu 0 --init_weights ./saves/initialization/miniimagenet/Res12-pre.pth --eval_interval 1 --use_euclidean
For TieredImageNet
python train_fsl.py --max_epoch 200 --model_class FEAT --backbone_class Res12 --dataset TieredImageNet --way 5 --eval_way 5 --shot 1 --eval_shot 1 --query 15 --eval_query 15 --balance 0.1 --temperature 64 --temperature2 64 --lr 0.0002 --lr_mul 10 --lr_scheduler step --step_size 20 --gamma 0.5 --gpu 0 --init_weights ./saves/initialization/tieredimagenet/Res12-pre.pth --eval_interval 1 --use_euclidean
python train_fsl.py --max_epoch 200 --model_class FEAT --backbone_class Res12 --dataset TieredImageNet --way 5 --eval_way 5 --shot 5 --eval_shot 5 --query 15 --eval_query 15 --balance 0.1 --temperature 32 --temperature2 64 --lr 0.0002 --lr_mul 10 --lr_scheduler step --step_size 40 --gamma 0.5 --gpu 0 --init_weights ./saves/initialization/tieredimagenet/Res12-pre.pth --eval_interval 1 --use_euclidean
Hi authors,
Thank you for the great work! We are preparing a submission and we would really love to use FEAT as a baseline. However, we couldn't reproduce the numbers for FEAT on the tieredImageNet and miniImagenet. We have the same numbers for all other 3 methods: ProtoNet, DeepSet, and GCN.
Could you please let us know if there are some differences in the way you organize the datasets for FEAT, compared to the other 3 methods?
As the deadline is approaching, we would highly appreciate if you can help us in the next 2 days! 🙏
Best, Hieu