This package is derived from the former package tsmp. It is intended to make a clear separation of what is the
Matrix Profile computation and what are the data mining process we can do using Matrix Profile.
Details
The Matrix Profile, has the potential to revolutionize time series data mining because of its generality, versatility, simplicity and scalability. In particular it has implications for time series motif discovery, time series joins, shapelet discovery (classification), density estimation, semantic segmentation, visualization, rule discovery, clustering etc.
Multithreading
This package uses RcppThread for multithreaded computations. Thread counts
can be controlled directly via the n_workers argument in each function.
Parallel execution and forked processes
matrixprofiler uses native threads for parallel computation. To parallelize
a single computation, use the function's n_workers argument.
Avoid calling package functions from fork-based workers, such as those created
by parallel::mclapply(), particularly after multithreaded libraries have been
initialized in the parent R session. Forked processes inherit library state
that may cause deadlocks or crashes.
Where fork detection is implemented, requesting multiple workers in a forked
child triggers a warning and reduces n_workers to 1. This precaution does
not make fork-based execution safe, because it cannot undo inherited library
state.
To process multiple time series concurrently, prefer a PSOCK cluster, which
starts independent R sessions (see parallel::makePSOCKcluster()). Use
n_workers = 1 within each worker to avoid excessive thread creation.
This limitation concerns the execution environment and applies to both STOMP and MPX; switching algorithms does not remove it.
References
Yeh CCM, Zhu Y, Ulanova L, Begum N, Ding Y, Dau HA, et al. Matrix profile I: All pairs similarity joins for time series: A unifying view that includes motifs, discords and shapelets. Proc - IEEE Int Conf Data Mining, ICDM. 2017;1317-22.
Zhu Y, Imamura m, Nikovski D, Keogh E. Matrix Profile VII: Time Series Chains: A New Primitive for Time Series Data Mining. Knowl Inf Syst. 2018 Jun 2;1-27.
Zhu Y, Zimmerman Z, Senobari NS, Yeh CM, Funning G. Matrix Profile II : Exploiting a Novel Algorithm and GPUs to Break the One Hundred Million Barrier for Time Series Motifs and Joins. Icdm. 2016 Jan 22;54(1):739-48.
