Awesome
Fast Decision Boundary based Out-of-Distribution Detector
This repository contains code for the paper Fast Decision Boundary based Out-of-Distribution Detector (ICML 2024) by Litian Liu and Yao Qin.
Besides this codebase, our algorithm fDBD is also available on the OpenOOD Benchmark.
Setup
# create conda env and install dependencies
$ conda env create -f environment.yml
$ conda activate fdbd
# set environmental variables
$ export DATASETS='data'
# download datasets and checkpoints
$ bash download.sh
Please download ImageNet dataset manually to your own $IMAGENET
dir by following this instructions.
Demo
CIFAR-10 Benchmark
python feat_extract.py --in-dataset CIFAR-10 --out-datasets SVHN iSUN dtd places365 --name resnet18-supcon --model-arch resnet18-supcon
python run_cifar.py --in-dataset CIFAR-10 --out-datasets SVHN iSUN dtd places365 --name resnet18-supcon --model-arch resnet18-supcon
ImageNet Benchmark
python feat_extract_largescale.py --in-dataset imagenet --imagenet-root $IMAGENET --out-datasets inat sun50 places50 dtd --name resnet50-supcon --model-arch resnet50-supcon
python run_imagenet.py --in-dataset imagenet --out-datasets inat sun50 places50 dtd --name resnet50-supcon --model-arch resnet50-supcon
fDBD with activation shaping
python feat_extract_largescale.py --in-dataset imagenet --imagenet-root /data/chenhe/datasets/imagenet --out-datasets inat sun50 places50 dtd --name resnet50 --model-arch resnet50
python run_imagenet_w_ASH.py --in-dataset imagenet --out-datasets inat sun50 places50 dtd --name resnet50 --model-arch resnet50
Inference Efficiency
python e2e_timing.py --in-dataset CIFAR-10 --name resnet18 --model-arch resnet18
References
@article{djurisic2022ash,
url = {https://arxiv.org/abs/2209.09858},
author = {Djurisic, Andrija and Bozanic, Nebojsa and Ashok, Arjun and Liu, Rosanne},
title = {Extremely Simple Activation Shaping for Out-of-Distribution Detection},
publisher = {arXiv},
year = {2022},
}
@article{sun2022knnood,
title={Out-of-distribution Detection with Deep Nearest Neighbors},
author={Sun, Yiyou and Ming, Yifei and Zhu, Xiaojin and Li, Yixuan},
journal={ICML},
year={2022}
}
Citations
Please cite our paper if you find this codebase helpful!
@article{liu2024fast,
title={Fast Decision Boundary based Out-of-Distribution Detector},
author={Liu, Litian and Qin, Yao},
journal={ICML},
year={2024}
}