Home Artificial Intelligence Singular Spectrum Evaluation — A Hidden Treasure of Time Series Forecasting

Singular Spectrum Evaluation — A Hidden Treasure of Time Series Forecasting

2
Singular Spectrum Evaluation — A Hidden Treasure of Time Series Forecasting

Unlock powerful SSA methods to generate highly accurate forecasts.

As a machine learning researcher and data science practitioner, I’m all the time interested to learn and discover recent time series forecasting methods early. I Follow myself on LinkedIn and Twitter to get regular updates on a number of the most revolutionary technologies in machine learning and AI, including time series, forecasting and blazing-hot Conformal Prediction and take a look at my book ‘Practical Guide to Applied Conformal Prediction: Learn and apply the most effective uncertainty frameworks to your industry applications.’

At NeurIPS2019, an interesting paper, ‘On Multivariate Singular Spectrum Evaluation and its Variants’, was published by MIT researchers, prompting me to explore Singular Spectrum Evaluation methods for time series forecasting.

It turned out, Singular Spectrum Evaluation (SSA) methods have been around for a while, but this powerful technique was less familiar to the mainstream whilst it has been successfully utilized in meteorology, hydrology, geophysics, climatology, economics, biology, physics, medicine and other sciences.

The Singular Spectrum Evaluation (SSA), also referred to as the ‘Caterpillar’ method for reasons explained below, is a model-free technique for time series evaluation. The ideas for the caterpillar methods were independently developed within the USSR and the USA.

Singular Spectrum Evaluation (SSA) is a non-parametric technique used to analyse and forecast time series data. It’s a robust method that mixes elements from classical time series evaluation, multivariate statistics, and signal processing. SSA can decompose a time series right into a set of interpretable components, each having a meaningful interpretation.

Singular Spectrum Evaluation (SSA) is a fairly general time series method used for decomposition, trend extraction, periodicity detection and extraction, signal extraction, denoising, filtering, forecasting, missing data imputation, change point detection, and spectral evaluation. The strategy is model-free and nonparametric, making it well fitted to exploratory evaluation of time series.

The principal steps in Singular Spectrum Evaluation (SSA) include embedding, Singular Value Decomposition (SVD), Grouping and Reconstruction.

Within the the time series is transformed into higher dimensional space by forming a trajectory matrix . This is finished by dividing the time series into overlapping segments of equal length (the length of those vectors is named the window length L), called lagged vectors; the segments are then arranged as columns of the trajectory matrix.

Embedding step maps time series of length N into the Hankel matrix of L x K dimension

The resulting matrix is a , named after Hermann Hankel, during which each ascending skew-diagonal from left to right is constant.

Next, Singular Value Decomposition is applied to the trajectory matrix. SVD is a method that decomposes a matrix into the product of three other matrices: an orthogonal matrix (U), a diagonal matrix (Σ), and the transpose of one other orthogonal matrix (V). The diagonal elements of the Σ matrix are called singular values and are arranged in descending order. The columns of the U and V matrices are called left and right singular vectors, respectively.

The singular values and their corresponding left and right singular vectors are used to construct a set of Principal Components (PCs) and their associated time series, referred to as Elementary Series (ES). The PCs are computed as a product of the trajectory matrix and the correct singular vectors, while the ES are obtained by projecting the unique time series onto the left singular vectors.

The results of the trajectory matrix X decomposition is a decomposition of the matrix into matrix components: X = X1 + … + Xd.

once the expansion X = X1 + … + Xd has been obtained, the grouping procedure partitions the set of indices {1,..,d} into m disjoint sets I1,…, Im and for every subset, the matrix Xi corresponding to group i is defined as simply sum of the component matrices that constitute the group.

The results of grouping X = Xi_1 + … + Xi_m.

The grouping of the PCs and ES could be made based on the features they represent, comparable to trends or periodic components. The grouping could be done using various criteria, comparable to variance contribution or visual inspection of the time series.

that is the ultimate step where each of the matrixes within the decomposition Xi_1,…, Xi_m is transformed back to the shape of the input object X — the shape of time series. This step is named diagonal averaging, where the matrices are transformed into one-dimensional time series. The resulting time series components could be used for further evaluation, comparable to trend extraction, noise reduction, or forecasting.

To recap, the entire process looks like this.

Back to the NeurIPS2019 paper ‘Multivariate Singular Spectrum Evaluation and its Variants’ — the paper was accompanied by Time Series Prediction Database (tspDB) enabling predictive functionality for a set of time series in SQL and, more importantly, the discharge of mSSA open source Python package.

The package may be very easy to run (see mSSA jupyter notebook example) and allows producing each point and probabilistic forecasts (caveat: probabilistic forecasts use normality assumption, so in case you need better-calibrated forecasts, it is advisable to calibrate them after using conformal prediction).

2 COMMENTS

LEAVE A REPLY

Please enter your comment!
Please enter your name here