Official PyTorch implementation of “PANDA: Adapting Pretrained Features for Anomaly Detection and Segmentation” (CVPR 2021).
Use the following commands:
cd path-to-PANDA-directory
virtualenv venv --python python3
source venv/bin/activate
pip install -r requirements.txt --find-links https://download.pytorch.org/whl/torch_stable.html
Use the following commands:
cd path-to-PANDA-directory
mkdir data
Download:
Extract these files into path-to-PANDA-directory/data
and unzip tiny.zip
To replicate the results on CIFAR10, FMNIST for a specific normal class with EWC:
python panda.py --dataset=cifar10 --label=n --ewc --epochs=50
python panda.py --dataset=fashion --label=n --ewc --epochs=50
To replicate the results on CIFAR10, FMNIST for a specific normal class with early stopping:
python panda.py --dataset=cifar10 --label=n
python panda.py --dataset=fashion --label=n
Where n indicates the id of the normal class.
To run experiments on different datasets, please set the path in utils.py to the desired dataset.
To replicate the results on CIFAR10 for a specific normal class:
python outlier_exposure.py --dataset=cifar10 --label=n
Where n indicates the id of the normal class.
If you find this useful, please cite our paper:
@article{reiss2020panda,
title={PANDA--Adapting Pretrained Features for Anomaly Detection},
author={Reiss, Tal and Cohen, Niv and Bergman, Liron and Hoshen, Yedid},
journal={arXiv preprint arXiv:2010.05903},
year={2020}
}