Out-of-Distribution Detection#

The OOD module provides methods for detecting when a model encounters data that is significantly different from its training distribution.

Score-based Methods#

MSP(model)

Maximum-Softmax-Probability (Hendrycks & Gimpel, 2017).

MaxLogit(model)

MaxLogit OOD detection (Hendrycks et al., 2019).

Energy(model[, temperature])

Energy-based score (Liu et al., NeurIPS 2020).

ODIN(model[, temperature, epsilon])

ODIN (Liang et al., ICLR 2018).

Distance-based Methods#

Mahalanobis(model[, layer_name])

Feature-space Mahalanobis (Lee et al., NeurIPS 2018).

KNN(model[, k, layer_name])

KNN-based OOD detection (Sun et al., NeurIPS 2022).

Training Methods#

mixup_data(x, y[, alpha])

Apply mixup data augmentation.

OutlierExposureLoss([lambda_oe])

Outlier Exposure (OE) for improved OOD detection.

Metrics#

auroc(id_scores, ood_scores)

Compute AUROC for OOD detection.

fpr_at_tpr(id_scores, ood_scores[, tpr])

Compute False Positive Rate at a target True Positive Rate.

Visualization#