This repository contains the essential code for the paper Deep Anomaly Detection with Outlier Exposure (ICLR 2019).
Requires Python 3+ and PyTorch 0.4.1+.
Outlier Exposure (OE) is a method for improving anomaly detection performance in deep learning models. Using an out-of-distribution dataset, we fine-tune a classifier so that the model learns heuristics to distinguish anomalies and in-distribution samples. Crucially, these heuristics generalize to new distributions. This repository contains a subset of the calibration and multiclass classification experiments. Please consult the paper for the full results and method descriptions.
Contained within this repository is code for the multiclass and calibration experiments for SVHN, CIFAR-10, CIFAR-100, and Tiny ImageNet.
If you find this useful in your research, please consider citing:
@article{hendrycks2019oe,
title={Deep Anomaly Detection with Outlier Exposure},
author={Hendrycks, Dan and Mazeika, Mantas and Dietterich, Thomas},
journal={Proceedings of the International Conference on Learning Representations},
year={2019}
}
These experiments make use of numerous outlier datasets. Links for less common datasets are as follows, 80 Million Tiny Images, Icons-50, Textures, Chars74K, and Places365.