/OWAD

Anomaly Detection in the Open World: Normality Shift Detection, Explanation, and Adaptation (NDSS'23).

Primary LanguagePythonMIT LicenseMIT

Anomaly Detection in the Open World: Normality Shift Detection, Explanation, and Adaptation. Accpeted by NDSS'23.


OWAD aims to tackle distribution shift for deep learning based anomaly detection. In practical security applications, the distribution of data can differ and evolve over time. Such distribution shift can induce dramatic model peformance degradation, if not detected and properly adapted. This is an important reason why learning-based methods always perform well on validation or test set, but become extremely poor in real-world deployments.

In this context, OWAD is a novel framework to detect, explain and adapt to distribution shift. The major advantage of OWAD is to reduce the overhead of manual labeling during investigation and adaptation of shift. The overview of OWAD is shown in the following figure. It includes four key steps:

  • Output Calibration: calibrate the model outputs to provide them a good description and get ready to distributional test in the following step;
  • Shift Detetion: detect shift via distributional test of calibrated outputs;
  • Shift Explanation: select important samples inducing the distribution shift;
  • Shift Adaptation: subtly retrain model with important samples to adapt to the shift.

overview (More details can be found in our paper.)

Environment Setup

Use the following command to install the packages:

pip install -r requirement.txt

Toy Example

OWAD is technically complicated but with an extremely straightforward principle. To prevent you from being intimidated by the complicated technology, we provide a TOY EXAMPLE😎 to help you understand the basic idea of OWAD.

Use Cases

We provide several cases to show how to use OWAD on different use cases (different applications, models, and datasets):

Citation

TBA.

The paper is available at here.

More Info and Notes