This repository contains the implementation of the methods proposed in the paper A probability theoretic approach to drifting data in continuous time domains by Fabian Hinder, André Artelt and Barbara Hammer.
- The Single-Window-Independence-Drift-Detector (SWIDD) is implemented in SWIDD.py. If your want to use a different/custom test for independence, you have to overwrite the method
_test_for_drift
. - The Hellinger-Distance-Drift-Detection-Method (HDDDM) is implemented in HDDDM.py.
- The experiments for comparing different drift detection methods are implemented in experiments_drift_detectors.py.
- The Least-Squares-Independence-Test (LSIT) is implemented in lsit.py.
- The experiments on the toy data sets are implemented in experiment_hdddm.py and experiment_adwin.py.
- The k-curve-DriFDA is implemented in k_curve_DriFDA.py. A toy example is implemented in k_curve_example.py.
- The linear-DriFDA is implemented in linear_DriFDA.py. A toy example is implemented in linear_DriFDA_example.py.
- Python >= 3.6
- Packages as listed in REQUIREMENTS.txt
- kernel_two_sample_test.py is taken from GitHub and implements the kernel two-sample tests as in Gretton et al 2012 (JMLR).
- HSIC.py is taken from GitHub and implements the Hilbert-Schmidt Independence Criterion (HSIC).
- mutual_info.py is taken from GitHub and contains an implementation for a non-parametric computation of entropy and mutual-information.
You can cite the version on arXiv.