alessiabertugli / FUSION

PyTorch code for NeurIPSW 2020 paper (4th Workshop on Meta-Learning) "Few-Shot Unsupervised Continual Learning through Meta-Examples"
Apache License 2.0
20 stars 1 forks source link
continual-learning few-shot-learning incremental-learning meta-learning representation-learning self-attention unsupervised-learning

Few-Shot Unsupervised Continual Learning through Meta-Examples

This repository contains the PyTorch code for NeurIPS 2020, 4th Workshop on Meta-Learning paper:

Few-Shot Unsupervised Continual Learning through Meta-Examples
Alessia Bertugli, Stefano Vincenzi, Simone Calderara, Andrea Passerini

Model architecture

FUSION-ME - overview

Scheme of FUSION-ME. The model is composed of 4 phases: embedding learning network phase, unsupervised task construction phase, meta-continual training phase and meta-continual test phase.

Prerequisites

Datasets

Embeddings

You can generate embeddings for Mini-ImageNet and SlimageNet64 using the code of DeepCluster and for Omniglot the code of ACAI or download them from here.

Best models

Available soon.

Usage Example on Omniglot

  1. Download the embeddings from the link above, then set the data_folder variable in the get_embeddings function contained in the dataset/utils.py file equal to your dataset path;
  2. in the file trainers/fusion.py set the arg --dataset equal to the dataset name you want to train on (e.g. Omniglot or Imagenet);
  3. set the arg --attention to exploit the meta-examples and --num_clusters to the desired number of clusters;
  4. run the file trainers/fusion.py.
    • Note that the unsupervised task construction is carried out by the function cactus_unbalance defined in the file dataset/dataset_factory and executed in the trainers/fusion.py file.

Credits

Cite

If you have any questions, please contact alessia.bertugli@unitn.it or stefano.vincenzi@unimore.it, or open an issue on this repo.

If you find this repository useful for your research, please cite the following paper:

@article{Bertugli2020fusion-me,
  title={Few-Shot Unsupervised Continual Learning through Meta-Examples},
  author={Alessia Bertugli and Stefano Vincenzi and Simone Calderara and Andrea Passerini},
  journal={34rd Conference on Neural Information Processing Systems (NeurIPS 2020), 4th Workshop on Meta-Learning},
  year={2020},
  volume={abs/2009.08107}
}