SSD: A Unified Framework for Self-Supervised Outlier Detection

Authors: Vikash Sehwag, Mung Chiang, Prateek Mittal

ICLR 2021 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental We demonstrate that SSD outperforms most existing detectors based on unlabeled data by a large margin. Additionally, SSD even achieves performance on par, and sometimes even better, with supervised training based detectors. Finally, we expand our detection framework with two key extensions. First, we formulate few-shot OOD detection, in which the detector has access to only one to five samples from each class of the targeted OOD dataset. Second, we extend our framework to incorporate training data labels, if available. We find that our novel detection framework based on SSD displays enhanced performance with these extensions, and achieves state-of-the-art performance.
Researcher Affiliation Academia Vikash Sehwag Princeton University vvikash@princeton.edu Mung Chiang Purdue University chiang@purdue.edu Prateek Mittal Princeton University pmittal@princeton.edu
Pseudocode Yes Algorithm 1: Self-supervised outlier detection framework (SSD)
Open Source Code Yes Our code is publicly available at https://github.com/inspire-group/SSD
Open Datasets Yes CIFAR-10 (Krizhevsky et al., 2009). CIFAR-100 (Krizhevsky et al., 2009). SVHN (Netzer et al., 2011). STL-10 (Coates et al., 2011). DTD (Cimpoi et al., 2014). Image Net3 (Deng et al., 2009).
Dataset Splits Yes Parition Xin in training set (Xtrain) and calibration set (Xcal);
Hardware Specification No The paper does not provide specific hardware details such as GPU/CPU models, processor types, or memory amounts used for running the experiments. It only mentions network architectures like ResNet-50.
Software Dependencies No The paper mentions using "NT-Xent loss function from Sim CLR (Chen et al., 2020)" and "Res Net-50 network" but does not specify software dependencies like programming languages, libraries, or frameworks with version numbers (e.g., Python 3.x, PyTorch 1.x, TensorFlow 2.x).
Experiment Setup Yes We train each network, for both supervised and self-supervised training, with stochastic gradient descent for 500 epochs, 0.5 starting learning rate with cosine decay, and weight decay and batch size set to 1e-4 and 512, respectively. We set the temperature parameter to 0.5 in the NT-Xent loss. We set the perturbation budget to 0.0014 and temperature to 1000 for ODIN