Home

Awesome

This repository contains the code accompanying the ICCV 2021 paper "Meta Learning on a Sequence of Imbalanced Domains with Difficulty Awareness" Paper link:

network structure

Requirements to run the code:


  1. Python 3.7
  2. PyTorch 1.8.0
  3. torchmeta 1.7.0
  4. numpy 1.20.3
  5. tqdm

Download dataset:


Download six datasets ( ['Quickdraw', 'MiniImagenet', 'Omniglot', 'CUB', 'Aircraft', 'Necessities']) from google drive here and put the dataset folder in the root directory of this project

Experiments on one domain sequence:


Usage for training Prototypical network with the Proposed Method of Memory Management with Domain Distribution and Difficulty Awareness

python train_protonet.py

Usage for training ANIL (MAML) with the Proposed Method of Memory Management with Domain Distribution and Difficulty Awareness

python train_ANIL.py

Note that ANIL-based method currently only contains the domain shift detection component for illustration, other components have not been cleaned yet, but they are almost the same as Protonet-based method.

Reference


@InProceedings{Wang_2021_ICCV,
    author    = {Wang, Zhenyi and Duan, Tiehang and Fang, Le and Suo, Qiuling and Gao, Mingchen},
    title     = {Meta Learning on a Sequence of Imbalanced Domains With Difficulty Awareness},
    booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
    month     = {October},
    year      = {2021},
    pages     = {8947-8957}
}

Acknowledgment


Some codes of ANIL-based method are from GBML Thanks.