ParCorr

Efficient Parallel Methods to Identify Similar Time Series Pairs across Sliding Windows


Abstract

Consider the problem of finding the highly correlated pairs of time series over a time window and then sliding that window to find the highly correlated pairs over successive co-temporous windows such that each successive window starts only a little time after the previous window. Doing this efficiently and in parallel could help in applications such as sensor fusion, financial trading, or communications network monitoring, to name a few. We have developed a parallel incremental random vector/sketching approach to this problem and compared it with the state-of-the-art nearest neighbor method iSAX . Whereas iSAX achieves 100% recall and precision for Euclidean distance, the sketching approach is, empirically, at least 10 times faster and achieves 95% recall and 100% precision on real and simulated data. For many applications this speedup is worth the minor reduction in recall. Our method scales up to 100 million time series and is linearly scalable in its expensive steps (but quadratic in the less expensive ones).

Implementations

  • Java implementation of the approaches on top of Apache-Spark 1.6.2.

  • Scala implementation of ParrCorr using Apache-Spark 2.11. To clone from the GIT repository:
    git clone https://scm.gforge.inria.fr/anonscm/git/parcorr/parcorr.git

Datasets

We carried out our experiments on synthetic, seismic and financial datasets.


This research has been partially funded by the European Commission under the H2020 programme project #732051