HyProMeta, Mitigating Label Noise using Prompt-Based Hyperbolic Meta-Learning in Open-Set Domain Generalization
This repository provides the source code for Mitigating Label Noise using Prompt-Based Hyperbolic Meta-Learning in Open-Set Domain Generalization:
PACS dataset is available at https://huggingface.co/datasets/flwrlabs/pacs
DigitsDG dataset is available at https://csip.fzu.edu.cn/files/datasets/SSDG/digits_dg.zip
The corrupted labels are inside osdg_nl_files folder
# PACS
Known classes: ['dog', 'elephant', 'giraffe', 'guitar', 'horse', 'house']
Unknown classes: ['person']
The dataset needs to be divided into two folders for training and validation. We provide reference code for automatically dividing data using official split in data_list/split_kfold.py.
root_dir = "path/to/PACS"
instr_dir = "path/to/PACS_data_list"To run the training code, please update the path of the dataset in ml_open.py:
if dataset == 'PACS':
train_dir = 'path/to/PACS_train' # the folder of training data
val_dir = 'path/to/PACS_val' # the folder of validation data
test_dir = 'path/to/PACS_all' or ['path/to/PACS_train', 'path/to/PACS_val']then simply run:
python train_file.py