Awesome
awesome anomaly detection
A curated list of awesome anomaly detection resources. Inspired by awesome-architecture-search
and awesome-automl
.
Last updated: 2021/11/22
What is anomaly detection?
<p align="center"> <img width="600" src="/assets/anomaly_detection_example1.PNG" "Example of anomaly detection."> </p>Anomaly detection is a technique used to identify unusual patterns that do not conform to expected behavior, called outliers. Typically, this is treated as an unsupervised learning problem where the anomalous samples are not known a priori and it is assumed that the majority of the training dataset consists of “normal” data (here and elsewhere the term “normal” means not anomalous and is unrelated to the Gaussian distribution). [Lukas Ruff et al., 2018; Deep One-Class Classification]
In general, Anomaly detection is also called Novelty Detection
or Outlier Detection
, Forgery Detection
and Out-of-distribution Detection
.
Each term has slightly different meanings. Mostly, on the assumption that you do not have unusual data, this problem is especially called One Class Classification
, One Class Segmentation
.
and Novelty Detection
and Outlier Detection
have slightly different meanings. Figure below shows the differences of two terms.
Also, typically there are three types of target data. (time-series data
, and image data
, video data
)
In time-series data, it is aimed to detect a abnormal sections.
In image, video data, it is aimed to classify abnormal images or to segment abnormal regions, for example, defect in some manufacturing data.
Survey Paper
- Deep Learning for Anomaly Detection: A Survey | [arXiv' 19] |
[pdf]
- Anomalous Instance Detection in Deep Learning: A Survey | [arXiv' 20] |
[pdf]
- Deep Learning for Anomaly Detection: A Review | [arXiv' 20] |
[pdf]
- A Unifying Review of Deep and Shallow Anomaly Detection | [arXiv' 20] |
[pdf]
- A Unified Survey on Anomaly, Novelty, Open-Set, and Out-of-Distribution Detection: Solutions and Future Challenges | [arXiv' 21] |
[pdf]
Table of Contents
Time-series anomaly detection (need to survey more..)
- Anomaly Detection of Time Series | [Thesis' 10] |
[pdf]
- Long short term memory networks for anomaly detection in time series | [ESANN' 15] |
[pdf]
- LSTM-Based System-Call Language Modeling and Robust Ensemble Method for Designing Host-Based Intrusion Detection Systems | [arXiv' 16] |
[pdf]
- Time Series Anomaly Detection; Detection of anomalous drops with limited features and sparse examples in noisy highly periodic data | [arXiv' 17] |
[pdf]
- Anomaly Detection in Multivariate Non-stationary Time Series for Automatic DBMS Diagnosis | [ICMLA' 17] |
[pdf]
- Truth Will Out: Departure-Based Process-Level Detection of Stealthy Attacks on Control Systems | [ACM CCS '18] |
[pdf]
- DeepAnT: A Deep Learning Approach for Unsupervised Anomaly Detection in Time Series | [IEEE Access' 18] |
[pdf]
- Time-Series Anomaly Detection Service at Microsoft | [KDD' 19] |
[pdf]
- Robust Anomaly Detection for Multivariate Time Series through Stochastic Recurrent Neural Network | [KDD' 19] |
[pdf]
- A Systematic Evaluation of Deep Anomaly Detection Methods for Time Series | Under Review |
[code]
- BeatGAN: Anomalous Rhythm Detection using Adversarially Generated Time | [IJCAI 19] |
[pdf]
- MIDAS: Microcluster-Based Detector of Anomalies in Edge Streams | [AAAI' 20] |
[pdf]
|[code]
- Timeseries Anomaly Detection using Temporal Hierarchical One-Class Network | [NeurIPS' 20]
- Anomaly Detection of Time Series With Smoothness-Inducing Sequential Variational Auto-Encoder | [TNNLS' 20]
Video-level anomaly detection
- Abnormal Event Detection in Videos using Spatiotemporal Autoencoder | [ISNN' 17] |
[pdf]
- Real-world Anomaly Detection in Surveillance Videos | [arXiv' 18] |
[pdf]
[project page]
- Unsupervised Anomaly Detection for Traffic Surveillance Based on Background Modeling | [CVPR Workshop' 18] |
[pdf]
- Dual-Mode Vehicle Motion Pattern Learning for High Performance Road Traffic Anomaly Detection | [CVPR Workshop' 18] |
[pdf]
- Detecting Abnormality without Knowing Normality: A Two-stage Approach for Unsupervised Video Abnormal Event Detection | [ACMMM' 18] |
[link]
- Motion-Aware Feature for Improved Video Anomaly Detection | [BMVC' 19] |
[pdf]
- Challenges in Time-Stamp Aware Anomaly Detection in Traffic Videos | [CVPRW' 19] |
[pdf]
- Learning Regularity in Skeleton Trajectories for Anomaly Detection in Videos | [CVPR' 19] |
[pdf]
- Graph Convolutional Label Noise Cleaner: Train a Plug-and-play Action Classifier for Anomaly Detection | [CVPR'19] |
[pdf]
- Graph Embedded Pose Clustering for Anomaly Detection | [CVPR' 20] |
[pdf]
- Self-Trained Deep Ordinal Regression for End-to-End Video Anomaly Detection | [CVPR' 20] |
[pdf]
- Learning Memory-Guided Normality for Anomaly Detection | [CVPR' 20] |
[pdf]
- Clustering-driven Deep Autoencoder for Video Anomaly Detection | [ECCV' 20] |
[pdf]
- CLAWS: Clustering Assisted Weakly Supervised Learning with Normalcy Suppression for Anomalous Event Detection | [ECCV' 20] |
[pdf]
- Cloze Test Helps: Effective Video Anomaly Detection via Learning to Complete Video Events | [ACM MM' 20] |
[pdf]
|[code]
- A Self-Reasoning Framework for Anomaly Detection Using Video-Level Labels | [IEEE SPL' 20] |
[pdf]
- Few-Shot Scene-Adaptive Anomaly Detection | [ECCV' 20]
- Re Learning Memory Guided Normality for Anomaly Detection | [Arxiv' 20] |
[pdf]
- Weakly-supervised Video Anomaly Detection with Robust Temporal Feature Magnitude Learning | [ICCV' 21] |
[pdf]
|[code]
Image-level anomaly detection
One Class (Anomaly) Classification target
- Estimating the Support of a High- Dimensional Distribution [OC-SVM] | [Journal of Neural Computation' 01] |
[pdf]
- A Survey of Recent Trends in One Class Classification | [AICS' 09] |
[pdf]
- Anomaly detection using autoencoders with nonlinear dimensionality reduction | [MLSDA Workshop' 14] |
[link]
- A review of novelty detection | [Signal Processing' 14] |
[link]
- Variational Autoencoder based Anomaly Detection using Reconstruction Probability | [SNU DMC Tech' 15] |
[pdf]
- High-dimensional and large-scale anomaly detection using a linear one-class SVM with deep learning | [Pattern Recognition' 16] |
[link]
- Transfer Representation-Learning for Anomaly Detection | [ICML' 16] |
[pdf]
- Outlier Detection with Autoencoder Ensembles | [SDM' 17] |
[pdf]
- Provable self-representation based outlier detection in a union of subspaces | [CVPR' 17] |
[pdf]
- [ALOCC]Adversarially Learned One-Class Classifier for Novelty Detection | [CVPR' 18] |
[pdf]
[code]
- Learning Deep Features for One-Class Classification | [arXiv' 18] |
[pdf]
[code]
- Efficient GAN-Based Anomaly Detection | [arXiv' 18] |
[pdf]
- Hierarchical Novelty Detection for Visual Object Recognition | [CVPR' 18] |
[pdf]
- Deep One-Class Classification | [ICML' 18] |
[pdf]
- Reliably Decoding Autoencoders’ Latent Spaces for One-Class Learning Image Inspection Scenarios | [OAGM Workshop' 18] |
[pdf]
- q-Space Novelty Detection with Variational Autoencoders | [arXiv' 18] |
[pdf]
- GANomaly: Semi-Supervised Anomaly Detection via Adversarial Training | [ACCV' 18] |
[pdf]
- Deep Anomaly Detection Using Geometric Transformations | [NIPS' 18] |
[pdf]
- Generative Probabilistic Novelty Detection with Adversarial Autoencoders | [NIPS' 18] |
[pdf]
[code]
- A loss framework for calibrated anomaly detection | [NIPS' 18] |
[pdf]
- A Practical Algorithm for Distributed Clustering and Outlier Detection | [NIPS' 18] |
[pdf]
- Efficient Anomaly Detection via Matrix Sketching | [NIPS' 18] |
[pdf]
- Adversarially Learned Anomaly Detection | [IEEE ICDM' 18] |
[pdf]
- Anomaly Detection With Multiple-Hypotheses Predictions | [ICML' 19] |
[pdf]
- Exploring Deep Anomaly Detection Methods Based on Capsule Net | [ICMLW' 19] |
[pdf]
- Latent Space Autoregression for Novelty Detection | [CVPR' 19] |
[pdf]
- OCGAN: One-Class Novelty Detection Using GANs With Constrained Latent Representations | [CVPR' 19] |
[pdf]
- Unsupervised Learning of Anomaly Detection from Contaminated Image Data using Simultaneous Encoder Training | [arXiv' 19] |
[pdf]
- Using Self-Supervised Learning Can Improve Model Robustness and Uncertainty | [NeurIPS' 19] |
[pdf]
[code]
- Effective End-to-end Unsupervised Outlier Detection via Inlier Priority of Discriminative Network | [NeurIPS' 19] |
[pdf]
[code]
- Classification-Based Anomaly Detection for General Data | [ICLR' 20] |
[pdf]
- Robust Subspace Recovery Layer for Unsupervised Anomaly Detection | [ICLR' 20] |
[pdf]
- RaPP: Novelty Detection with Reconstruction along Projection Pathway | [ICLR' 20] |
[pdf]
- Novelty Detection Via Blurring | [ICLR' 20] |
[pdf]
- Deep Semi-Supervised Anomaly Detection | [ICLR' 20] |
[pdf]
- Robust anomaly detection and backdoor attack detection via differential privacy | [ICLR' 20] |
[pdf]
- Classification-Based Anomaly Detection for General Data | [ICLR' 20] |
[pdf]
- Old is Gold: Redefining the Adversarially Learned One-Class Classifier Training Paradigm | [CVPR' 20] |
[pdf]
- Deep End-to-End One-Class Classifier | [IEEE TNNLS' 20] |
[pdf]
- Mirrored Autoencoders with Simplex Interpolation for Unsupervised Anomaly Detection | [ECCV' 20] |
[pdf]
- Backpropagated Gradient Representations for Anomaly Detection | [ECCV' 20]
- CSI: Novelty Detection via Contrastive Learning on Distributionally Shifted Instances | [NeurIPS' 20] |
[pdf]
|[code]
- Deep Unsupervised Image Anomaly Detection: An Information Theoretic Framework | [arXiv' 20] |
[pdf]
- Regularizing Attention Networks for Anomaly Detection in Visual Question Answering | [AAAI' 21] |
[pdf]
- Attribute Restoration Framework for Anomaly Detection | [IEEE Transactions on Multimedia 21] |
[pdf]
- Modeling the distribution of normal data in pre-trained deep features for anomaly detection | [ICPR' 20] |
[pdf]
|[code]
- Discriminative Multi-level Reconstruction under Compact Latent Space for One-Class Novelty Detection | [ICPR' 20] |
[pdf]
- Deep One-Class Classification via Interpolated Gaussian Descriptor | [arXiv' 21] |
[pdf]
|[code]
- Multiresolution Knowledge Distillation for Anomaly Detection | [CVPR' 21] |
[pdf]
|[code]
- Elsa: Energy-based learning for semi-supervised anomaly detection | [BMVC' 21] |
[pdf]
|[code]
Out-of-Distribution(OOD) Detection target
- A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks | [ICLR' 17] |
[pdf]
- [ODIN] Enhancing The Reliability of Out-of-distribution Image Detection in Neural Networks | [ICLR' 18] |
[pdf]
- Training Confidence-calibrated Classifiers for Detecting Out-of-Distribution Samples | [ICLR' 18] |
[pdf]
- Learning Confidence for Out-of-Distribution Detection in Neural Networks | [arXiv' 18] |
[pdf]
- Out-of-Distribution Detection using Multiple Semantic Label Representations | [NIPS' 18] |
[pdf]
- A Simple Unified Framework for Detecting Out-of-Distribution Samples and Adversarial Attacks | [NIPS' 18] |
[pdf]
- Metric Learning for Novelty and Anomaly Detection | [BMVC' 18] |
[pdf]
[code]
- Deep Anomaly Detection with Outlier Exposure | [ICLR' 19] |
[pdf]
- Why ReLU networks yield high-confidence predictions far away from the training data and how to mitigate the problem | [CVPR' 19] |
[pdf]
- Outlier Exposure with Confidence Control for Out-of-Distribution Detection | [arXiv' 19] |
[pdf]
[code]
- Likelihood Ratios for Out-of-Distribution Detection | [NeurIPS' 19] |
[pdf]
- Outlier Detection in Contingency Tables Using Decomposable Graphical Models | [SJS' 19] |
[pdf]
[code]
- Input Complexity and Out-of-distribution Detection with Likelihood-based Generative Models | [ICLR' 20] |
[pdf]
- Soft Labeling Affects Out-of-Distribution Detection of Deep Neural Networks | [ICML Workshop' 20] |
[pdf]
- Generalized ODIN: Detecting Out-of-Distribution Image Without Learning From Out-of-Distribution Data | [CVPR' 20] |
[pdf]
- A Boundary Based Out-Of-Distribution Classifier for Generalized Zero-Shot Learning | [ECCV' 20] |
[pdf]
- Provable Worst Case Guarantees for the Detection of Out-of-distribution Data | [NeurIPS' 20] |
[pdf]
|[code]
- On the Value of Out-of-Distribution Testing: An Example of Goodhart's Law | [NeurIPS' 20] |
[pdf]
- Likelihood Regret: An Out-of-Distribution Detection Score For Variational Auto-encoder | [NeurIPS' 20] |
[pdf]
- OOD-MAML: Meta-Learning for Few-Shot Out-of-Distribution Detection and Classification | [NeurIPS' 20]
- Energy-based Out-of-distribution Detection | [NeurIPS' 20] |
[pdf]
- Towards Maximizing the Representation Gap between In-Domain & Out-of-Distribution Examples | [NeurIPS' 20]
- Why Normalizing Flows Fail to Detect Out-of-Distribution Data | [NeurIPS' 20] |
[pdf]
|[code]
- Understanding Anomaly Detection with Deep Invertible Networks through Hierarchies of Distributions and Features | [NeurIPS' 20] |
[pdf]
- Further Analysis of Outlier Detection with Deep Generative Models | [NeurIPS' 20]
- CSI: Novelty Detection via Contrastive Learning on Distributionally Shifted Instances | [NeurIPS' 20] |
[pdf]
|[code]
- SSD: A Unified Framework for Self-Supervised Outlier Detection | [ICLR' 21]
[pdf]
|[code]
Unsupervised Anomaly Segmentation target
- Anomaly Detection and Localization in Crowded Scenes | [TPAMI' 14] |
[pdf]
- Novelty detection in images by sparse representations | [IEEE Symposium on IES' 14] |
[link]
- Detecting anomalous structures by convolutional sparse models | [IJCNN' 15] |
[pdf]
- Real-Time Anomaly Detection and Localization in Crowded Scenes | [CVPR Workshop' 15] |
[pdf]
- Learning Deep Representations of Appearance and Motion for Anomalous Event Detection | [BMVC' 15] |
[pdf]
- Scale-invariant anomaly detection with multiscale group-sparse models | [IEEE ICIP' 16] |
[link]
- [AnoGAN] Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery | [IPMI' 17] |
[pdf]
- Deep-Anomaly: Fully Convolutional Neural Network for Fast Anomaly Detection in Crowded Scenes | [Journal of Computer Vision and Image Understanding' 17] |
[pdf]
- Anomaly Detection using a Convolutional Winner-Take-All Autoencoder | [BMVC' 17] |
[pdf]
- Anomaly Detection in Nanofibrous Materials by CNN-Based Self-Similarity | [Sensors' 17] |
[pdf]
- Defect Detection in SEM Images of Nanofibrous Materials | [IEEE Trans. on Industrial Informatics' 17] |
[pdf]
- Abnormal event detection in videos using generative adversarial nets | [ICIP' 17] |
[link]
- An overview of deep learning based methods for unsupervised and semi-supervised anomaly detection in videos | [arXiv' 18] |
[pdf]
- Improving Unsupervised Defect Segmentation by Applying Structural Similarity to Autoencoders | [arXiv' 18] |
[pdf]
- Satellite Image Forgery Detection and Localization Using GAN and One-Class Classifier | [IS&T EI' 18] |
[pdf]
- Deep Autoencoding Models for Unsupervised Anomaly Segmentation in Brain MR Images | [arXiv' 18] |
[pdf]
- AVID: Adversarial Visual Irregularity Detection | [arXiv' 18] |
[pdf]
- MVTec AD -- A Comprehensive Real-World Dataset for Unsupervised Anomaly Detection | [CVPR' 19] |
[pdf]
- Exploiting Epistemic Uncertainty of Anatomy Segmentation for Anomaly Detection in Retinal OCT | [IEEE TMI' 19] |
[pdf]
- Uninformed Students: Student-Teacher Anomaly Detection with Discriminative Latent Embeddings | [CVPR' 20] |
[pdf]
- Attention Guided Anomaly Detection and Localization in Images | [ECCV' 20] |
[pdf]
- Encoding Structure-Texture Relation with P-Net for Anomaly Detection in Retinal Images | [ECCV' 20]
- Sub-Image Anomaly Detection with Deep Pyramid Correspondences | [arXiv' 20] |
[pdf]
|[code]
- Patch SVDD, Patch-level SVDD for Anomaly Detection and Segmentation | [arXiv' 20] |
[pdf]
|[code]
- Unsupervised anomaly segmentation via deep feature reconstruction | [Neurocomputing' 20]|
[pdf]
|[code]
- PaDiM: a Patch Distribution Modeling Framework for Anomaly Detection and Localization | [ICPR IML Workshop' 20]|
[pdf]
|[code]
- Explainable Deep One-Class Classification | [ICLR' 21]|
[pdf]
|[code]
- Semi-orthogonal Embedding for Efficient Unsupervised Anomaly Segmentation | [arXiv' 21]
[pdf]
- Constrained Contrastive Distribution Learning for Unsupervised Anomaly Detection and Localisation in Medical Images | [MICCAI' 21]|
[pdf]
|[code]
- Multiresolution Knowledge Distillation for Anomaly Detection | [CVPR' 21]|
[pdf]
Contact & Feedback
If you have any suggestions about papers, feel free to mail me :)