How Does Unlabeled Data Provably Help Out-of-Distribution Detection?

Xuefeng Du, Zhen Fang, Ilias Diakonikolas, Yixuan Li
2/5/2024
cs.LGstat.ML

Official code: deeplearning-wisc/sal (14 stars, last commit 2024-02-01).

Abstract

Using unlabeled data to regularize the machine learning models has demonstrated promise for improving safety and reliability in detecting out-of-distribution (OOD) data. Harnessing the power of unlabeled in-the-wild data is non-trivial due to the heterogeneity of both in-distribution (ID) and OOD data. This lack of a clean set of OOD samples poses significant challenges in learning an optimal OOD classifier. Currently, there is a lack of research on formally understanding how unlabeled data helps OOD detection. This paper bridges the gap by introducing a new learning framework SAL (Separate And Learn) that offers both strong theoretical guarantees and empirical effectiveness. The framework separates candidate outliers from the unlabeled data and then trains an OOD classifier using the candidate outliers and the labeled ID data. Theoretically, we provide rigorous error bounds from the lens of separability and learnability, formally justifying the two components in our algorithm. Our theory shows that SAL can separate the candidate outliers with small error rates, which leads to a generalization guarantee for the learned OOD classifier. Empirically, SAL achieves state-of-the-art performance on common benchmarks, reinforcing our theoretical insights. Code is publicly available at https://github.com/deeplearning-wisc/sal.

View on arXivView PDF

Code Implementations(1)

source code for ICLR'24 paper "How does unlabeled data provably help OOD detection?"

143PythonJan 31, 20242 years ago

Cite this paper

@article{du2024does,
  title  = {How Does Unlabeled Data Provably Help Out-of-Distribution Detection?},
  author = {Xuefeng Du and Zhen Fang and Ilias Diakonikolas and Yixuan Li},
  year   = {2024},
  eprint = {2402.03502},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2402.03502v1},
  journal = {ICLR 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2402.03502.svg)](https://codeofpaper.com/paper/2402.03502)

Discussion