Singular Spectrum Analysis with Rssa



Similar documents
1 Example of Time Series Analysis by SSA 1

Possibilities of Automation of the Caterpillar -SSA Method for Time Series Analysis and Forecast. Th.Alexandrov, N.Golyandina

Nonlinear Iterative Partial Least Squares Method

CS Introduction to Data Mining Instructor: Abdullah Mueen

Chapter 4: Vector Autoregressive Models

Manifold Learning Examples PCA, LLE and ISOMAP

Multivariate Analysis of Ecological Data

Principal components analysis

AUTOMATION OF ENERGY DEMAND FORECASTING. Sanzad Siddique, B.S.

Part 2: Community Detection

Linear Algebra Review. Vectors

BEHAVIOR BASED CREDIT CARD FRAUD DETECTION USING SUPPORT VECTOR MACHINES

Principle Component Analysis and Partial Least Squares: Two Dimension Reduction Techniques for Regression

Review Jeopardy. Blue vs. Orange. Review Jeopardy

CHAPTER 2. Eigenvalue Problems (EVP s) for ODE s

Introduction Epipolar Geometry Calibration Methods Further Readings. Stereo Camera Calibration

Time Domain and Frequency Domain Techniques For Multi Shaker Time Waveform Replication

3. Regression & Exponential Smoothing

DATA ANALYSIS II. Matrix Algorithms

Visualizing Data. Contents. 1 Visualizing Data. Anthony Tanbakuchi Department of Mathematics Pima Community College. Introductory Statistics Lectures

4. Matrix Methods for Analysis of Structure in Data Sets:

Multivariate normal distribution and testing for means (see MKB Ch 3)

Going Big in Data Dimensionality:

Lecture 8: Signal Detection and Noise Assumption

Supervised Feature Selection & Unsupervised Dimensionality Reduction

NONLINEAR TIME SERIES ANALYSIS

Principal Component Analysis

Mean value theorem, Taylors Theorem, Maxima and Minima.

Subspace Analysis and Optimization for AAM Based Face Alignment

USING SPECTRAL RADIUS RATIO FOR NODE DEGREE TO ANALYZE THE EVOLUTION OF SCALE- FREE NETWORKS AND SMALL-WORLD NETWORKS

Lecture 2: Descriptive Statistics and Exploratory Data Analysis

Comparison of Non-linear Dimensionality Reduction Techniques for Classification with Gene Expression Microarray Data

Teaching Multivariate Analysis to Business-Major Students

USE OF EIGENVALUES AND EIGENVECTORS TO ANALYZE BIPARTIVITY OF NETWORK GRAPHS

SINGULAR SPECTRUM ANALYSIS HYBRID FORECASTING METHODS WITH APPLICATION TO AIR TRANSPORT DEMAND

x = + x 2 + x

2.2 Elimination of Trend and Seasonality

Structural Health Monitoring Tools (SHMTools)

Orthogonal Diagonalization of Symmetric Matrices

Why Taking This Course? Course Introduction, Descriptive Statistics and Data Visualization. Learning Goals. GENOME 560, Spring 2012

P164 Tomographic Velocity Model Building Using Iterative Eigendecomposition

Machine Learning in Statistical Arbitrage

4 MT210 Notebook Eigenvalues and Eigenvectors Definitions; Graphical Illustrations... 3

Principal Component Analysis

A New Method for Dimensionality Reduction using K- Means Clustering Algorithm for High Dimensional Data Set

Structural Analysis of Network Traffic Flows Eric Kolaczyk

Performance of Dynamic Load Balancing Algorithms for Unstructured Mesh Calculations

Mehtap Ergüven Abstract of Ph.D. Dissertation for the degree of PhD of Engineering in Informatics

Mathematics (MAT) MAT 061 Basic Euclidean Geometry 3 Hours. MAT 051 Pre-Algebra 4 Hours

CS 5614: (Big) Data Management Systems. B. Aditya Prakash Lecture #18: Dimensionality Reduc7on

Exploratory Data Analysis with MATLAB

Data, Measurements, Features

Factor analysis. Angela Montanari

Introduction to Principal Components and FactorAnalysis

by the matrix A results in a vector which is a reflection of the given

Tutorial on Exploratory Data Analysis

Generalized association plots (GAP): Dimension free information visualization environment for multivariate data structure

Partial Least Squares (PLS) Regression.

So which is the best?

SIGNAL PROCESSING & SIMULATION NEWSLETTER

An Introduction to Partial Least Squares Regression

SF2940: Probability theory Lecture 8: Multivariate Normal Distribution

Summary Nonstationary Time Series Multitude of Representations Possibilities from Applied Computational Harmonic Analysis Tests of Stationarity

Chapter 6: Multivariate Cointegration Analysis

Software Review: ITSM 2000 Professional Version 6.0.

APPM4720/5720: Fast algorithms for big data. Gunnar Martinsson The University of Colorado at Boulder

Factor Analysis. Chapter 420. Introduction

Java Modules for Time Series Analysis

Detection of changes in variance using binary segmentation and optimal partitioning

The Method of Least Squares

Institute of Actuaries of India Subject CT3 Probability and Mathematical Statistics

7 Time series analysis

Time Series Analysis and Forecasting Methods for Temporal Mining of Interlinked Documents

Factor Analysis. Principal components factor analysis. Use of extracted factors in multivariate dependency models

Predict the Popularity of YouTube Videos Using Early View Data

Univariate and Multivariate Methods PEARSON. Addison Wesley

The Image Deblurring Problem

Dynamic Modeling, Predictive Control and Performance Monitoring

Detecting Network Anomalies. Anant Shah

Data Exploration and Preprocessing. Data Mining and Text Mining (UIC Politecnico di Milano)

IEEE TRANSACTIONS ON POWER SYSTEMS, VOL. 23, NO. 3, AUGUST

Wavelet analysis. Wavelet requirements. Example signals. Stationary signal 2 Hz + 10 Hz + 20Hz. Zero mean, oscillatory (wave) Fast decay (let)

A Trading Strategy Based on the Lead-Lag Relationship of Spot and Futures Prices of the S&P 500

Overview of Violations of the Basic Assumptions in the Classical Normal Linear Regression Model

Solutions to Exam in Speech Signal Processing EN2300

Applied Linear Algebra I Review page 1

Least-Squares Intersection of Lines

Analysis of Internet Topologies: A Historical View

ANALYTICS IN BIG DATA ERA

An Interactive Tool for Residual Diagnostics for Fitting Spatial Dependencies (with Implementation in R)

How To Use Neural Networks In Data Mining

Lecture 5: Singular Value Decomposition SVD (1)

Chapter 1. Vector autoregressions. 1.1 VARs and the identi cation problem

CONTENTS PREFACE 1 INTRODUCTION 1 2 DATA VISUALIZATION 19

Transcription:

Singular Spectrum Analysis with Rssa Maurizio Sanarico Chief Data Scientist SDG Consulting Milano R June 4, 2014

Motivation Discover structural components in complex time series Working hypothesis: a signal is composed by trend (possibly multiple ones), oscillatory components (often more than one) and noise (white noise or colored noise) It works combining concepts and tools from classical time series analysis, multivariate statistics, multivariate geometry, dynamical systems and signal processing + statistics as a tools for inference

The basics: univariate case XN = (x1,..., xn ) : time series L (1 < L < N): window length construct L-lagged vectors Xi = (xi,..., xi+l 1) T, i =1, 2,..., K, where K = N L + 1 Form the trajectory matrix X from these vectors The eigen-analysis of the matrix XX T (equivalently, the SVD of the matrix X) yields a collection of L eigenvalues and eigenvectors A combination r of these eigenvectors determine an r-dimensional subspace L r in R L, r < L. The L-dimensional data {X 1,..., X K } is then projected onto the subspace Lr Averaging over the diagonals yields some Hankel matrix X* Time series ( x* 1,..., x* N ), in one-to-one correspondence with X* provides an approximation either the whole series X N or a particular component of X N.

Features of SSA Non-parametric and model-free Main assumption behind Basic SSA: time series can be represented as a sum of different components such as trend (which we define as any slowly varying series), modulated periodicities, and noise Interpretable components can be approximated by low-rank time series and described via Linear Recurrence Relations Obtaining such components helps interpretation and improve reliability of the analysis

Parameters in Basic SSA Window length: L Group indices: r Choice of such parameters can be derived by analysis of the results Automatic selection can also be done but it depends on the situations

Applications of SSA Forecasting Missing value imputation (gap-filling methods) Change-point detection Density estimation Multivariate time series analysis Image processing

Where has been applied Climatic, meteorological and geophysical time series Engineering Image processing Medicine Actuarial sciences Predictive maintenance Financial and econometric data

The Algorithm 1. Embedding: using the N-L+1 lagged vectors to form the trajectory matrix XX T 2. Singular value decomposition of the matrix obtained 3. Grouping the components (eigentriples) 4. Reconstruct the series by diagonal averaging (the better the closer components are to independence)

Properties Discover automatically: Trends (one o multiple) Oscillatory components (multi-periodic or modulated periodicities) Residual Support natural forecasting methods: Linear recurrent or vector May be used as a pre-processing step for many other analyses: Forecasting Spectral density estimation of specific components Gap filling in time series

Some issues: Separability Separability of two time series X(1) and X(2) means the possibility of extracting X(1) from the observed sum X(1) + X(2) Time series components can be identified on the basis of the following principle: the form of an eigenvector replicates the form of the time series component that produces this eigenvector Graphs of eigenvectors can help in the process of identification A sinusoid generates, exactly or approximately, two sine wave components with the same frequency and the phase shift =2 Therefore, the scatterplot of a pair of eigenvectors, which produces a more or less regular T-vertex polygon, can help to identify a sinusoid of period T

Some issues: Separability Very helpful information for separation is contained in the so-called w-correlation matrix This is the matrix consisting of weighted correlations between the reconstructed time series components. The weights reflects the number of entries of the time series terms into its trajectory matrix Well-separated components have small correlation whereas badly separated components have large correlation Therefore, looking at the w-correlation matrix one can find groups of correlated elementary reconstructed series and use this information for the consequent grouping. One of the rules is not to include into different groups the correlated components.

Some issues: Choice of the Embedding The embedding L should be large enough (es., L = N/2) and if we want to extract a periodic component with known period, then the window lengths which are divisible by the period provide better separability If the time series has a complex structure, the so-called Sequential SSA is recommended. Sequential SSA consists of two stages, at the first stage the trend is extracted with small window length and then periodic components are detected and extracted from the residual with L=N/2

Rssa, SSA in R: first example library(rssa) # Decomposition stage s <- ssa(co2, L = 120) plot(s) plot(s,type="vector") plot(s,type="paired") plot(s,type="wcor") # Reconstruction stage # Grouping from looking at the W Cor matrix # The results are the reconstructed series r$f1, r$f2, and r$f3 recon <- reconstruct(s, groups = list(c(1,4), c(2, 3), c(5, 6))) # Calculate the residuals res <- residuals(recon) plot(recon, type = "cumsum") plot(wcor(s, groups = list(c(1,4), c(2,3), c(5, 6)))) plot(recon)

Results

Results

Results: reconstructed series, cumulative view

Results: Wcor reconstructed series

Results: reconstructed series, components

Another grouping method # Alternative grouping, using cluster analysis on the eigen triples lst<-clusterify(s,group = 1:6, nclust=3) lst r <- reconstruct(s, groups = list(c(1), c(2, 3, 4), c(5, 6))) plot(wcor(s, groups = list(c(1), c(2,3, 4), c(5, 6)))) plot(r)

Results

Comparison with wavelets Wavelets PROS Naturally multiscale CONS Choice of the basis Choice of boundary conditions (reflexive / periodic) Choice of the levels in the decomposition Depth of the wavelet decomposition Length of the testing window SSA PROS Single parameter (window length) Adaptive / data-driven basis (EOF=empirical orthogonal functions) CONS Not naturally multiscale (but can be adapted)

Another example: Power consumption data

Another example: ctd.

Another example: ctd.

Another example: ctd., cumulative view

Another example: ctd., component view

Forecasting: Co2 series s <- ssa(co2) f <- forecast(s, groups = list(1:6), method = "bootstrap-recurrent", len = 24, R = 10) # Plot the result including the last 24 points of the series plot(f, include = 24, shadecols = "green", type = "l")

Forecasting: the CO2 series