Robust Anomaly Detection And Recognition (RADAR)
Project description
Robust Anomaly Detection And Recognition (RADAR)
📌 Description
Robust Anomaly Detection And Recognition (RADAR) is an anomaly detection platform designed to unify and integrate diverse approaches and libraries from the literature, along with innovative model variants. The goal is to provide a flexible and extensible framework that ranges from classical methods to advanced techniques based on Transformer architectures, also including support for Federated Learning in distributed scenarios. For more details, refer to the official documentation here.
Specifically, it includes:
- Classical methods for static data: integration with PyOD and Scikit-learn.
- Time series and deep learning models: integration with libraries such as TSFE-DL.
- Representative Transformer models: Informer, Autoformer, and Vanilla Transformer (implemented within the
time_series/folder). - Federated anomaly detection: integration with flex-anomalies, developed as part of the Flexible platform.
📚 Integrated Libraries
| Library / Model | Brief Description | Citation |
|---|---|---|
| PyOD | Collection of classical algorithms for anomaly detection on static data. | PyOD |
| Scikit-learn | Traditional machine learning methods applied to anomaly detection. | Scikit-learn |
| TSFE-DL | Framework for anomaly detection in time series using deep learning. | TSFE-DL |
| Informer | Transformer-based model optimized for long time series forecasting and anomaly detection. | Informer |
| Autoformer | Transformer specialized in time series forecasting and pattern detection. | Autoformer |
| Vanilla Transformer | Base Transformer implementation applied to anomaly detection. | Attention Is All You Need |
| flex-anomalies | Library for anomaly detection in Federated Learning environments, part of the Flexible platform. | flex-anomalies |
📂 Repository Structure
RADAR/
│── notebooks_test/ # Test notebooks and examples
│
│── RADAR/ # Core library
│ ├── federated_data/ # Methods and utilities for Federated Learning
│ ├── static_data/ # Anomaly detection on static data
│ ├── time_series/ # Methods for time series and deep learning
│ ├── base_algorithm_module.py # Base class for anomaly detection algorithms
│ ├── base_preprocessing_module.py # Data preprocessing utilities
│ ├── base_utils_module.py # General helper functions
│ ├── metrics_module.py # Evaluation metrics for anomaly detection
│ ├── pos_process_module.py # Post-processing of results
│ └── visualization_module.py # Visualization tools
🧪 Examples and Utilities
The library provides a set of practical examples and utilities to make experimentation easier:
- Test Notebooks: The
notebooks_test/folder contains a notebook for each library integration, showing how to use the algorithms with different types of data. - Preprocessing Scripts: Each
time_series/andstatic_data/folder includes apreprocessing/folder with techniques tailored to the specific data type:preprocessing/preprocessing_static.pyfor static datapreprocessing/preprocessing_ts.pyfor time series data
- Dataset Loaders: The same folders provide a
datasets_uci.pyfile with functions to load datasets from the UCI repository, making it easy to test and experiment with the library:static_datasets_uci.pyfor static datatime_series_datasets_uci.pyfor time series data
- Metrics:
metrics_module.pyprovides evaluation metrics for anomaly detection. - Visualization:
visualization_module.pyincludes functions to plot results and anomalies. - Post-processing:
pos_process_module.pycomputes anomaly labels from predictions.
Note that federated_data/ does not contain its own preprocessing or dataset loader scripts, since it can work with either static or time series data. The example notebooks cover usage for both types.
This setup allows users to explore the library’s functionality, apply the appropriate preprocessing, and test algorithms on real datasets efficiently.
Installation
Clone the repository:
git clone https://github.com/ari-dasci/RADAR.git
PyPi: The module is uploaded to PyPi for an easy installation:
pip install anomaly-radar
Install the necessary dependencies:
pip install -r requirements.txt
License
This project is licensed under the MIT License - see the LICENSE file for details.
Citation
If you use this repository in your research work, please cite the paper:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file anomaly_radar-0.2.0.tar.gz.
File metadata
- Download URL: anomaly_radar-0.2.0.tar.gz
- Upload date:
- Size: 72.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dac7229466a439cffda070e7602d83525417c8b3a586654ea977d04c1e969a4e
|
|
| MD5 |
7d53034f9a0980b9765e37875833cdf5
|
|
| BLAKE2b-256 |
09e3d9bcfbda943024025049c8202d97d310cec519ab50befee6896ea41a5af9
|
File details
Details for the file anomaly_radar-0.2.0-py3-none-any.whl.
File metadata
- Download URL: anomaly_radar-0.2.0-py3-none-any.whl
- Upload date:
- Size: 80.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cb2ddfdba59b48f4af0ea8f7f2fdd8259fdf8237b63711e7298a3bdcedeb0af
|
|
| MD5 |
1f5b18355f871b28ba73b37664a69db7
|
|
| BLAKE2b-256 |
ca4b297db3a395eae5ad7a83f9507ef5c0ced51de79271d599cbb078aa5d95a3
|