Hands-on Time Series Anomaly Detection using Autoencoders, with Python

Here’s how to use Autoencoders to detect signals with anomalies in a few lines of codes

Photo by davisuko on Unsplash

Anomalous time series are a very serious business.

If you think about earthquakes, anomalies are the irregular seismic signals of sudden spikes or drops in data that hint that something bad is going on.

In financial data, everyone remembers the Wall Street Crush in 1929, and that was a clear example of a signal with anomaly in the financial domain. In engineering, signals with spikes can represent a reflection of an ultrasound to a wall or a person.

All these stories stem from a very well-defined problem:

If I have a bank of normal signals, and a new signal comes in, how can I detect if that signal is anomalous or not?

Note that this problem is slightly different than the problem of detecting the anomaly in a given signal (which is also a well-known problem to solve). In this case, we assume that we get a whole new signal and we want to know if the signal is sufficiently different than the ones that are considered “normal” in our datasets.