time series anomaly detection autoencoder
keras-ioIntroduction
This project provides a Keras implementation for time series anomaly detection using an autoencoder. The repository includes a model and an accompanying notebook, demonstrating how a reconstruction convolutional autoencoder can be used to identify anomalies in time series data. Full credits go to Pavithra Vijay for the original work.
Architecture
The model employs a convolutional autoencoder architecture. Autoencoders are neural networks used to learn efficient representations of input data, typically for the purpose of dimensionality reduction or anomaly detection. In this case, the model is designed to reconstruct normal time series patterns, and deviations from these reconstructions can indicate anomalies.
Training
The training process involves feeding the model time series data, allowing it to learn the underlying patterns during a reconstruction phase. Anomalies can be detected by identifying data points where the reconstruction error exceeds a predefined threshold. This error indicates that the model could not accurately reconstruct the input, suggesting it is an anomaly.
Guide: Running Locally
-
Clone the Repository:
Clone the repository to your local machine using Git.git clone https://github.com/keras-io/time-series-anomaly-detection-autoencoder.git
-
Install Dependencies:
Ensure you have Python and Keras installed. You may need additional Python packages specified in therequirements.txt
file.pip install -r requirements.txt
-
Run the Notebook:
Open and run the Jupyter notebook provided in the repository to train the model and detect anomalies in your time series data. -
Use Cloud GPUs (Optional):
For faster training, consider using cloud services like Google Colab, Amazon AWS, or Azure for access to GPUs.
License
The project is licensed under the CC0 1.0 Universal (CC0 1.0) Public Domain Dedication. This means the work is free to use by anyone for any purpose without restriction.