← all repositories
KDD-OpenSource/DeepADoTS

Seven deep-learning anomaly detectors, one scikit-learn-shaped harness

A benchmarking pipeline that wraps disparate time-series anomaly methods into a uniform API so you can actually compare them.

596 stars Python ML FrameworksDomain Apps
DeepADoTS
Velocity · 7d
+0.2
★ / day
Trend
steady
star history

What it does DeepADoTS corrals seven deep-learning anomaly detectors—LSTM variants, autoencoders, VAEs, energy-based models, and Gaussian mixture hybrids—into a single benchmarking pipeline. Every model speaks the same scikit-learn dialect: fit(X) to learn normal patterns, predict(X) to return anomaly scores. The repo evaluates with ROC AUC and ships with Docker for reproducibility.

The interesting bit The uniformity is the point. These methods hail from half a dozen papers across ESANN, ICML, ICLR, and WWW; getting them to play nice under one API is less “glue code” and more “diplomatic intervention.” The authors even grafted an LSTM autoencoder onto DAGMM, creating LSTM-DAGMM, because the original paper didn’t.

Key highlights

  • Seven implemented algorithms: LSTM-AD, LSTM-ED, Autoencoder, Donut, REBM, DAGMM, LSTM-DAGMM
  • scikit-learn-compatible fit/predict interface across all models
  • Dockerized deployment; CircleCI for continuous integration
  • MNIST example included (despite the temporal mismatch—it’s for demonstration)
  • Extends DAGMM with an LSTM autoencoder variant not in the original paper

Caveats

  • The MNIST example uses image data with “no temporal aspect,” which undermines the time-series premise
  • Real-world datasets require external download scripts (linked but not bundled)
  • README doesn’t report actual benchmark results or comparative numbers—just the pipeline

Verdict Grab this if you’re researching time-series anomaly detection and need a fair, head-to-head comparison framework. Skip it if you want battle-tested production code or published benchmark scores out of the box.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.