Matrix profiles and non-stationary time series forecasting #472
Replies: 2 comments
-
The Matrix Profile is a tool for pattern-recognition and motif-search in timeseries. Matrix Profile uses the Pearson Correlation Coefficient as similarity metric.
|
Beta Was this translation helpful? Give feedback.
-
@dirtyValera Thank you for your question and welcome to the STUMPY community! @JaKasb provided some useful responses but I wanted to provide some additional considerations: Regarding non-stationarity, one thing to remember is that, by default in STUMPY, matrix profiles are computed by first z-normalizing each subsequence before comparing the pair-wise subsequence Euclidean distances. Essentially, this normalizes the amplitude of each subsequence being compared and results in a comparison of the shapes of the subsequences. So, you aren't required to, say, diff your time series first before computing the matrix profile but it is possible that doing so beforehand may be useful. You'll want to test-and-learn but I usually just run While not exactly time series forecasting, in one of the original matrix profile papers they describe a technique called "Time Series Chains" that somewhat resemble forecasting. You can read more about it in our Time Series Chains Tutorial. In our experience, the success of the approach largely depends on your data. However, after you compute the matrix profile, time series chains are very cheap to compute and so it's worth a quick test. I hope this helps. |
Beta Was this translation helpful? Give feedback.
-
I have recently discovered all the work around matrix profiles and first of all wanted to thank authors for this project.
The question I have is regarding the way matrix profiles fit in forecasting techniques of non-stationary time series. To my knowledge, the conventional way of forecasting (pattern search) time series of non-stationary data requires deriving stationary data first (e.g. using differencing) and then, using hand-crafted features (usually variation of rolling window aggregates such as Exponential Moving Average, etc.) and labeling output data, feed them into some form supervised learning framework. What is not clear to me is where exactly matrix profiles fit in this pipeline. Given this context, the questions are:
In general, any links to relevant research covering this topics would be greatly appreciated. Thank you!
Beta Was this translation helpful? Give feedback.
All reactions