Functional Singular Spectrum Analysis
Hossein Haghbin, Seyed Morteza Najibi, Rahim Mahmoudvand, Jordan, Trinka, and Mehdi Maadooliat

TL;DR
This paper introduces functional SSA, a novel method for analyzing functional time series by combining functional data analysis with univariate SSA, demonstrated through simulations and real-world applications.
Contribution
The paper presents a new functional SSA method that extends traditional SSA to functional data, offering an alternative to MSSA and dFPCA with practical implementation tools.
Findings
Functional SSA outperforms MSSA in certain scenarios.
The method provides a competitive alternative to dFPCA.
An R package and web app facilitate practical use.
Abstract
In this paper, we introduce a new extension of the Singular Spectrum Analysis (SSA) called functional SSA to analyze functional time series. The new methodology is developed by integrating ideas from functional data analysis and univariate SSA. We explore the advantages of the functional SSA in terms of simulation results and two real data applications. We compare the proposed approach with Multivariate SSA (MSSA) and dynamic Functional Principal Component Analysis (dFPCA). The results suggest that further improvement to MSSA is possible, and the new method provides an attractive alternative to the dFPCA approach that is used for analyzing correlated functions. We implement the proposed technique to an application of remote sensing data and a call center dataset. We have also developed an efficient and user-friendly R package and a shiny web application to allow interactive exploration…
| Model | N | dFPCA | MSSA | FSSA | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Setting 1 GWN | 0.00 | 50 | 0.092 | 0.026 | 0.022 | 0.019 | 0.010 | 0.011 | 0.014 | |
| 100 | 0.088 | 0.024 | 0.020 | 0.018 | 0.008 | 0.007 | 0.007 | |||
| 150 | 0.074 | 0.024 | 0.020 | 0.017 | 0.007 | 0.006 | 0.006 | |||
| 200 | 0.071 | 0.024 | 0.019 | 0.017 | 0.007 | 0.006 | 0.006 | |||
| 0.10 | 50 | 0.062 | 0.028 | 0.024 | 0.022 | 0.009 | 0.011 | 0.014 | ||
| 100 | 0.045 | 0.027 | 0.023 | 0.020 | 0.006 | 0.006 | 0.007 | |||
| 150 | 0.037 | 0.027 | 0.022 | 0.019 | 0.005 | 0.005 | 0.005 | |||
| 200 | 0.033 | 0.026 | 0.022 | 0.019 | 0.005 | 0.005 | 0.005 | |||
| 0.25 | 50 | 0.046 | 0.028 | 0.024 | 0.022 | 0.009 | 0.011 | 0.014 | ||
| 100 | 0.038 | 0.027 | 0.022 | 0.020 | 0.006 | 0.006 | 0.007 | |||
| 150 | 0.032 | 0.027 | 0.022 | 0.019 | 0.005 | 0.005 | 0.005 | |||
| 200 | 0.030 | 0.026 | 0.022 | 0.019 | 0.005 | 0.005 | 0.005 | |||
| Setting 2 | 0.00 | 50 | 1.008 | 0.251 | 0.246 | 0.270 | 0.244 | 0.248 | 0.284 | |
| 100 | 0.993 | 0.205 | 0.185 | 0.179 | 0.190 | 0.176 | 0.174 | |||
| 150 | 0.974 | 0.192 | 0.166 | 0.153 | 0.175 | 0.155 | 0.145 | |||
| 200 | 0.960 | 0.186 | 0.158 | 0.143 | 0.168 | 0.145 | 0.134 | |||
| 0.10 | 50 | 0.636 | 0.220 | 0.211 | 0.235 | 0.204 | 0.216 | 0.264 | ||
| 100 | 0.633 | 0.193 | 0.165 | 0.154 | 0.158 | 0.144 | 0.143 | |||
| 150 | 0.633 | 0.188 | 0.158 | 0.141 | 0.149 | 0.130 | 0.120 | |||
| 200 | 0.632 | 0.186 | 0.154 | 0.136 | 0.144 | 0.123 | 0.112 | |||
| 0.25 | 50 | 0.636 | 0.223 | 0.214 | 0.235 | 0.206 | 0.218 | 0.263 | ||
| 100 | 0.633 | 0.194 | 0.167 | 0.156 | 0.160 | 0.146 | 0.144 | |||
| 150 | 0.633 | 0.188 | 0.157 | 0.140 | 0.148 | 0.129 | 0.120 | |||
| 200 | 0.632 | 0.185 | 0.153 | 0.136 | 0.143 | 0.122 | 0.111 | |||
| Setting 3 | 0.00 | 50 | 0.841 | 0.316 | 0.310 | 0.350 | 0.305 | 0.311 | 0.364 | |
| 100 | 0.818 | 0.271 | 0.240 | 0.231 | 0.250 | 0.228 | 0.224 | |||
| 150 | 0.806 | 0.262 | 0.223 | 0.203 | 0.238 | 0.207 | 0.192 | |||
| 200 | 0.801 | 0.258 | 0.216 | 0.194 | 0.233 | 0.198 | 0.180 | |||
| 0.10 | 50 | 0.696 | 0.277 | 0.267 | 0.300 | 0.255 | 0.270 | 0.330 | ||
| 100 | 0.709 | 0.241 | 0.207 | 0.193 | 0.198 | 0.180 | 0.178 | |||
| 150 | 0.710 | 0.235 | 0.197 | 0.176 | 0.187 | 0.162 | 0.151 | |||
| 200 | 0.710 | 0.232 | 0.192 | 0.170 | 0.180 | 0.153 | 0.139 | |||
| 0.25 | 50 | 0.707 | 0.214 | 0.205 | 0.225 | 0.198 | 0.209 | 0.254 | ||
| 100 | 0.707 | 0.187 | 0.160 | 0.149 | 0.153 | 0.139 | 0.138 | |||
| 150 | 0.705 | 0.181 | 0.151 | 0.135 | 0.141 | 0.123 | 0.114 | |||
| 200 | 0.705 | 0.178 | 0.148 | 0.130 | 0.136 | 0.116 | 0.106 | |||
| Setting 4 | 0.00 | 50 | 0.926 | 0.486 | 0.477 | 0.535 | 0.464 | 0.476 | 0.553 | |
| 100 | 0.915 | 0.441 | 0.391 | 0.373 | 0.404 | 0.368 | 0.358 | |||
| 150 | 0.901 | 0.432 | 0.371 | 0.339 | 0.391 | 0.341 | 0.318 | |||
| 200 | 0.823 | 0.432 | 0.363 | 0.326 | 0.388 | 0.331 | 0.301 | |||
| 0.10 | 50 | 0.830 | 0.341 | 0.330 | 0.384 | 0.313 | 0.331 | 0.413 | ||
| 100 | 0.831 | 0.286 | 0.245 | 0.229 | 0.235 | 0.212 | 0.210 | |||
| 150 | 0.832 | 0.279 | 0.233 | 0.208 | 0.220 | 0.190 | 0.176 | |||
| 200 | 0.829 | 0.275 | 0.227 | 0.200 | 0.213 | 0.179 | 0.163 | |||
| 0.25 | 50 | 0.829 | 0.210 | 0.200 | 0.226 | 0.195 | 0.205 | 0.255 | ||
| 100 | 0.829 | 0.175 | 0.149 | 0.138 | 0.140 | 0.129 | 0.127 | |||
| 150 | 0.829 | 0.169 | 0.141 | 0.125 | 0.129 | 0.112 | 0.105 | |||
| 200 | 0.833 | 0.167 | 0.138 | 0.121 | 0.124 | 0.106 | 0.097 |
| FTS | periodicity test | trend test |
|---|---|---|
| 0.00 | 0.02 | |
| 0.00 | 0.03 | |
| 0.45 | 0.03 | |
| 0.30 | 0.07 |
| FTS | d=7 | d=30 |
|---|---|---|
| 0 | 0.86 | |
| 0 | 0.96 | |
| 0 | 0.97 | |
| 0 | 0.30 | |
| 1 | 0.00 | |
| 1 | 0.17 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Functional Singular Spectrum Analysis
Hossein Haghbin
Department of Statistics, Persian Gulf University, Iran
and
Seyed Morteza Najibi
Department of Statistics, Shiraz University, Iran
and
Rahim Mahmoudvand
Department of Statistics, Bu-Ali Sina University, Iran
and
Jordan Trinka, and Mehdi Maadooliat
Department of MSSC, Marquette University, USA
Abstract
In this paper, we introduce a new extension of the Singular Spectrum Analysis (SSA) called functional SSA to analyze functional time series. The new methodology is developed by integrating ideas from functional data analysis and univariate SSA. We explore the advantages of the functional SSA in terms of simulation results and two real data applications. We compare the proposed approach with Multivariate SSA (MSSA) and dynamic Functional Principal Component Analysis (dFPCA). The results suggest that further improvement to MSSA is possible, and the new method provides an attractive alternative to the dFPCA approach that is used for analyzing correlated functions. We implement the proposed technique to an application of remote sensing data and a call center dataset. We have also developed an efficient and user-friendly R package and a shiny web application to allow interactive exploration of the results.
Keywords: Functional Time Series, Hilbert Space, Singular Spectrum Analysis, SVD
1 Introduction
One of the popular approaches in the decomposition of time series is accomplished using the rates of change. In this approach, the observed time series is partitioned (decomposed) into informative trends plus potential seasonal (cyclical) and noise (irregular) components. Aligned with this principle, Singular Spectrum Analysis (SSA) is a model-free procedure that is commonly used as a nonparametric technique in analyzing the time series. SSA is intrinsically motivated as an exploratory and model building tool rather than a confirmatory procedure (Golyandina et al.,, 2001). SSA does not require restrictive assumptions such as stationarity, linearity, and normality. It can be used for a wide range of purposes such as trend and periodic component detection and extraction, smoothing, forecasting, change-point detection, gap filling, causality and so on; (see, e.g. Golyandina et al.,, 2001; Moskvina and Zhigljavsky,, 2003; Kondrashov et al.,, 2010; Golyandina and Osipov,, 2007; Mohammad and Nishida,, 2011; Mahmoudvand and Rodrigues,, 2016; Rodrigues and Mahmoudvand,, 2016).
The implementation of SSA over time series is similar to that of Principal Components Analysis (PCA) of multivariate data. In contrast to PCA, which is applied to a data matrix with independent rows, SSA is applied to a time series. It provides a representation of the given time series in terms of eigentriples of a so-called trajectory matrix (Alexandrov,, 2009).
Up to this day, many studies have been published with extensions and applications of SSA. Extensions to a multivariate model as well as to a two-dimensional setting can be found, e.g., in Golyandina and Zhigljavsky, (2013); Golyandina et al., (2018); Hassani and Mahmoudvand, (2018) and references therein. In the regular SSA, we assume that the observation at each time point is scalar, vector or array. As a matter of interest, one may consider a series of curves observed over time, and use the basics of Hilbert space in the functional data analysis (FDA) framework to introduce the concept of functional SSA (FSSA).
While the research in FDA has grown extensively in recent years, there have been relatively few contributions dealing with functional time series (FTS); see, e.g., Hörmann and Kokoszka, (2012) and Bosq, (2000). Although most of the current FTS approaches focus on a parametric fit for inferences and forecasting, there exist some other approaches in the literature that extend FPCA to incorporate the temporal correlation of FTS. For instance, Hörmann et al., (2015) introduced dynamic FPCA (dFPCA) to analyze FTS. This approach assumes the strong assumption of stationarity which is not generally held in practice. It would be of interest to non-parametrically decompose a nonstationary FTS to reveal the respective trends plus seasonal and irregular components in an appropriate manner. Consistent with this approach, and as a first step, Fraiman et al., (2014) introduced a new concept of trends for the FTS. Furthermore, Hörmann et al., (2018) considered the periodic components for the FTS and derived several procedures to test the periodicity using frequency domain analysis. To the best of our knowledge, existing studies mainly focus on detecting rather than extracting interpretable components.
Since one of the primary missions of SSA is to extract trends and periodic components of a regular (non-functional) time series, it would be rational to establish a similar elegant nonparametric procedure to extract such components in FTS. In this paper we use the basics of SSA and multivariate functional PCA (MFPCA), introduced in Happ and Greven, (2018); Chiou et al., (2014), to develop FSSA. In a nutshell, the core of SSA is to use PCA on the variables being lagged versions of a single time series. Since a lagged vectors of FTS forms a multivariate functional variable, we use the theory of MFPCA to develop the FSSA procedure. The new methodology, FSSA, not only can serve as a nonparametric dimension reduction tool to decompose the functional time series; it can also be used as a visualization tool to illustrate the concept of seasonality and periodicity in the functional space over time.
In order to depict the idea of our approach and to show its utility, consider the following motivating example involving a real dataset which is described in detail in the supplementary materials. This data provides the intraday number of calls to a call center, during different times of the days for one year. The associated curves is represented in an overlapping pattern in Figure 1 (left). In Figure 1 (right) we investigate the pattern among weekdays and weekend days. As we can see, the intraday patterns of weekends (Friday and Saturday) are significantly different from workdays while workdays seem to have similar patterns. Investigators used variants of FPCA to analyze the call center data in literature (Shen and Huang,, 2005; Huang et al.,, 2008; Maadooliat et al.,, 2015). For illustration purpose, we compare the results of the proposed method (FSSA) and dFPCA on this dataset. Figure 2 (top) presents the projection of the data into the first four FPCs of the dFPCA obtained from the freqdom.fda package in R (Hörmann et al.,, 2015). We used seven different colors to differentiate between different days of a week. As one may observe, visually, there is no clear separation in either one of the FPC graphs in the top row. Although this may not be surprising, as the purpose of PCA of any type is to reduce the dimensionality, and not necessary decompose the data into regular trends, periodic and irregular components. In contrast, the grouping results that we obtained using the FSSA on the call center data are given in Figure 2 (bottom). It can be seen that the functional behavior of seven days of a week can be well-distinguished, visually, using either one of the last two groups (groups 3 and 4).
The rest of the paper is organized as follows. Section 2 reviews the core of SSA for completeness. Section 3 presents the theoretical foundations and some properties of the proposed method (FSSA), and Section 4 provides implementation details. Section 5.1 reports simulation results to illustrate the use of the proposed approach in analyzing FTS, and to compare it with MSSA and dFPCA. Application to a real data example on remote sensing is given in Section 5.2. Section 6 provides some discussions and concluding remarks.
2 General scheme of SSA
As we mentioned in Section 1, SSA can be used for many purposes. However, as we intend to introduce the functional version of SSA for decomposing FTS, we review a general scheme of SSA to perform time series decomposition in this section.
2.1 Univariate SSA
Throughout this section, we consider ’s are elements of Euclidean space . Suppose that is a realization of size from a time series. The basic SSA algorithm consists of four steps: Embedding, Decomposition, Grouping, and Reconstruction.
Step 1. Embedding
This step generates a multivariate object by tracking a moving window of size over the original time series, where is called window length parameter and . Embedding can be regarded as a mapping operator that transfers the series into a so-called trajectory matrix of dimension , defines by
[TABLE]
where and , for , are called lagged vectors. Note that the trajectory matrix , is a Hankel matrix, which means that all the elements along the anti-diagonals are equal. Indeed, the embedding operator is a one-to-one mapping from into , where is the set of all Hankel matrices.
Step 2. Decomposition
In this step, the singular value decomposition (SVD) for the trajectory matrix is computed as:
[TABLE]
where is the singular value of and {\bf v}_{i}\ are the associated (orthonormal) left and right singular vectors, and is called the respective elementary matrix. Note that is an eigenvector of corresponding to the eigenvalue . Moreover, it yields that
[TABLE]
where, in this section, denotes the outer (tensor) product of two vectors.
Step 3. Grouping
Consider a partition of the set of indices , where is the rank of the matrix , into disjoint subsets . For any positive integer , i.e. , the matrix is defined as . Thus, by the expansion (2) we have the *grouped matrix decomposition *
[TABLE]
Each group in (4) should correspond to a component in time series decomposition. These components can be considered as trend, cycle, seasonal, noise, etc.
Step 4 Reconstruction
Finally, the resulting matrices in (4), are transformed back into the form of the original series by an inverse operator . In order to do this, first, it is necessary that each matrix to be approximated by a matrix in . This approximation is performed optimally in the sense of orthogonal projection of on with respect to the Frobenius norm. Denote this projection by . It is shown that the projection is the averaging of the matrix elements over the antidiagonals . By combining the results of this step and (4), we obtain the final decomposition of the series in the form of
[TABLE]
where , for .
The above algorithm can be extended to perform Multivariate SSA (MSSA) for analyzing multivariate time series. The only difference is in defining the trajectory matrix which can be defined by stacking univariate trajectory matrices horizontally or vertically (Hassani and Mahmoudvand,, 2018).
It is well known that SSA does not require restrictive assumptions; however, it is ideal to have a time series with separable components. Therefore, we present tools to measure the separability of components in the next subsection.
2.2 Separability
Let , for be two time series and consider an additive model as . The series and are called separable when each lagged vector of is orthogonal to the lagged vectors of . To measure the degree of separability between two time series and , Golyandina et al., (2001) introduced the so-called w-correlation
[TABLE]
where, for and . We call two series and w-orthogonal if for approriate values of (see the next subsection for more details). Note that , , is the reconstructed component produced by the group , and the matrix of {\bm{\rho}}^{(w)}=\bigl{\{}\rho^{(w)}(\tilde{\bf y}_{i},\tilde{\bf y}_{j})\bigr{\}}_{i,j=1}^{m} is called w-correlation matrix.
2.3 Parameter Selection
There are two basic parameters in SSA procedure; window length () and grouping parameters. Choosing improper values for these parameters yields an incomplete reconstruction and misleading results in subsequent analysis. In spite of the importance of choosing and grouping parameters for SSA, no ideal solution has been yet proposed. A thorough review of the problem shows that the optimal choice of the parameters depends on the intrinsic structure of the data and the purposes of the study (Golyandina et al.,, 2001; Golyandina and Zhigljavsky,, 2013). However, there are several recommendations and rules that work well for a wide range of scenarios. It is recommended to select the window length parameter, , to be a large integer that is multiple of the periodicities of the time series, but not larger than .
In addition, there are several utilities for effective grouping. These tools include analyzing the periodogram, paired plot of the singular vectors, scree plot of the singular values, and w-correlation plot; see Golyandina et al., (2001) for more details.
3 Theoretical Foundations of FSSA
We start this section with the mathematical foundations that are used to develop the functional SSA procedure. From hereafter, we consider is a FTS of length . This means that each elements belongs to , the space of square integrable real functions defined on the interval . Here, the space is a Hilbert space, equipped with inner product . For a given positive integer , the space denotes the Cartesian product of copies of ; i.e. for an element , it has the form , where , and . Then is a Hilbert space equipped with the inner product . The norms will be denoted by and in the spaces and , respectively. For , and , where and are two Hilbert spaces, we define the tensor(outer) product corresponding to the operator , as (, where .
For positive integers , we denote as the linear space spanned by operators , specified by where
[TABLE]
We call an operator Hankel if , for some , where . The space of such Hankel operators will be denoted . For two given operators and in , define
[TABLE]
It follows immediately that , defines an inner product on . We will call it Frobenius inner product of two operators in . The associated Frobenius norm is . Before discussing the FSSA algorithm, here we present a lemma that will be used in the last step of the proposed algorithm. Note that the Proofs for all lemmas, theorems and propositions are given in the supplementary materials.
Lemma 3.1**.**
Let be elements of the Hilbert space . If , then
[TABLE]
for all .
3.1 FSSA algorithm
For an integer , let and define a set of multivariate functional vectors in by
[TABLE]
where ’s denote the functional lagged vectors. The following algorithm provides the FSSA results in four steps.
Step 1. Embedding
Define the operator with
[TABLE]
We call the trajectory operator. It is easy to see that , where is an operator from to . Evaluating at a given point is same as the matrix product , where is an Hankel matrix given by
[TABLE]
Proposition 3.1**.**
The operator is a bounded linear operator. If we define , given by
[TABLE]
then is an adjoint operator for .
Step 2. Decomposition
Define the operator by . Therefore, for given it implies that
[TABLE]
Here, the operator can be also considered as an matrix with the operator entries , given by , where . Note that, the operator defines an integral operator on , associated to the kernel
[TABLE]
Let us define to be a kernel matrix with the elements . Note that . It is easy to show that the associated integral operator of is , i.e,
[TABLE]
Proposition 3.2**.**
The operator defined in (12) is a linear, self-adjoint, positive definite, bounded, continuous and compact operator.
By the results of the Proposition 3.2 and the Hilbert-Schmidt Theorem (e.g. Simon, (1980), Thm. VI.16), it follows that there exists an orthonormal basis system of such that
[TABLE]
Furthermore, using the Spectral Theorem (e.g. Werner, (2006), Thm. VI.3.2.) implies
[TABLE]
Since the kernel is continuous, it admits the expansion
[TABLE]
This result is known as multivariate Mercer’s Theorem, (see e.g. Happ and Greven, (2018) Prop. 3). For any positive , define an operator , given by
[TABLE]
We call an elementary operator. Note that . Evaluating at a given point is equivalent to the matrix product , where is an matrix given by
[TABLE]
Note that, ’s can be considered as functional extension of the elementary matrices defined in (3), where is projecting columns of into a spaced spanned by .
Proposition 3.3**.**
The elementary operators ’s are bounded operators of rank one. Furthermore ’s decompose the trajectory operator as
[TABLE]
The next theorem provides the SVD of the trajectory operator , to obtain the associated eigentriples () in the decomposition step.
Theorem 3.1**.**
Let and be the eigenelements of given in (15), and
[TABLE]
Then, the SVD of the trajectory operator can be written as
[TABLE]
where . Furthermore for any , using (22) we have
[TABLE]
where
- i)
* is the set of non-ascending eigenvalues of and*
- ii)
’s are the associated orthonormal eigenvectors of satisfying .
We refer to as singular value, as left singular function, and as right singular vector associated to the component of the trajectory operator . The singular vectors, ’s, can be used to produce paired plots similar to the ones in the SSA literature (Golyandina et al.,, 2001).
Step 3. Grouping
The grouping step is the procedure of rearranging and partitioning the elementary operators ’s in (20). To do this, we mimic the approaches used in step 3 of Section 2 for the univariate SSA and implement the equivalent functional version of those in Haghbin et al., (2019). Note that, in practice, we use a finite set of elementary operators, and one can consider a partition of the set of indices such that we have the expansion
[TABLE]
Step 4. Reconstruction
At this step, for any given (), we would like to use to transform back each operator in (24) to , and hence construct a functional version of the decomposition given in (5). But since , first it is necessary to project to . Note that is a closed subspace of , therefore by Projection Theorem, there exist a unique such that
[TABLE]
To specify , we denote the elements of and by and , respectively. Using Lemma 3.1, it is easy to extend the diagonal averaging approach given by Golyandina et al., (2001) to and obtain ’s as following:
[TABLE]
where and stands for the number of pairs such that . Denote this projection by , and set . Now we can define , and reconstruct the functional time series.
3.2 Separability
Let , where , , are FTS. Using a fixed window length , for each series , denote as a sequence of functional lagged vectors, and as the linear space spanned by . Analogous to univariate SSA, separability of the series and is equivalent to , which is same as , for all . Furthermore, a necessary condition for separability can be defined based on w-correlation measure. To do this, consider the weighted inner product of two series and as
[TABLE]
where . We call the series and w-orthogonal if
[TABLE]
Theorem 3.2**.**
If the series and are separable, then they are w-orthogonal.
Also, to quantify the degrees of separability of two FTS, the functional version of the w-correlation measure can be obtained by replacing the new definition of the weighted inner product (26) into (6).
4 Implementation Strategy
In practice, functional data are being recorded discretely and then converted to functional objects using proper smoothing techniques. We refer to Ramsay and Silverman, (2007) for more details on preprocessing the raw data. Let be a known basis system (not necessarily orthogonal) of the space . Each functional observation in can be projected into subspace , where can be determined by variety of techniques (e.g. cross-validation). Therefore, each is uniquely represented by
[TABLE]
Let us define quotient sequence, , and reminder sequence, , by
[TABLE]
Note that for any given (), one may use (29) to determine and uniquely, so these sequences are well defined. Now, consider the objects , as a vector of length with all coordinates are zero except -th, which is .
Lemma 4.1**.**
The sequence is a basis system for , where is the Cartesian product of copies of .
Using Lemma 4.1, each element admits a unique representation
[TABLE]
where corresponds to , belongs to , and is the dual basis of . Note that, in the special case, when ’s are orthonormal (so ’s are), (see Christensen,, 1995, for more details). Applying the linear operator , defined in (12), on (30) implies
[TABLE]
where . We call the corresponding matrix of .
Lemma 4.2**.**
Let be a functional object in , then if and only if .
Theorem 4.1**.**
Suppose the Gram matrix . Then the following holds:
- (i)
.
- (ii)
.
- (iii)
* is a symmetric matrix.*
- (iv)
.
Now we have the recipes to proceed with the following algorithm and obtain the eigenfunctions of , ’s, used in the decomposition step. For a given set of basis , and a FTS, :
- •
Use Theorem 4.1 to compute the matrices , and .
- •
Use the eigendecomposition of to obtain eigenpairs for .
- •
Use (30) and Lemma 4.2 to obtain ’s, eigenfunctions of .
Now, one can use ’s to decompose the FTS to elementary operators ’s. Note that, in practice, we represent the elementary operators in matrix form. Therefore, one may observe that the equivalent functional elementary matrix , given in (3.1), is just a projection of the functional lagged vectors , given in (8), onto . Furthermore, in the diagonal averaging step, we can incorporate the averaging over the associate basis coefficients of in (25) to obtain the respective basis coefficients for . For more details see Haghbin et al., (2019).
5 Numerical study
In this section, first, we present a simulation study to elaborate the use of the FSSA compared with dFPCA and MSSA under different scenarios. To do so, we utilize the implementation of the proposed model that is available as an R package named Rfssa in the CRAN repository (Haghbin et al.,, 2019). We also use the freqdom.fda (Hörmann et al.,, 2015) and Rssa (Golyandina et al.,, 2015) packages to obtain the dFPCA and MSSA results. In the second subsection, we analyze a remote sensing data using Rfssa and provide some visualization tools that come handy in the grouping step.
We developed a shiny app, included in the Rfssa package, also available at https://fssa.shinyapps.io/fssa/, to demonstrate and reproduce different aspects of the simulation setup. Furthermore, it can be used to compare the results of dFPCA, MSSA, and FSSA on the remote sensing data, call center dataset or any other FTS, provided by the end-user.
5.1 Simulation study
For the simulation setup, consider the functional time series of lengths and which are observed in fixed equidistant discrete points on from the following model:
[TABLE]
A cubic B-spline basis functions with 15 degrees of freedom is used to convert ’s into smooth (continuous) functional curves. In this model, is considered to be a periodic component defined as
[TABLE]
where is the model frequency with three different values ( and ).
The in (32) is a stochastic term that is generated under four different settings with an increasing trend in complexity. In the first setting, we consider are drawn from an independent Gaussian White Noise (GWN) process with zero mean and standard deviation equal to . It is expected to obtain an acceptable performance from FPCA for reconstructing the FTS in the first setting as intuitively FPCA outperforms under this ideal framework (see Maadooliat et al.,, 2015, for more details).
In the remaining three settings, the processes are simulated from a functional autoregressive model of order 1, , defined by
[TABLE]
where is an integral operator with a parabolic kernel as follow
[TABLE]
The constant is chosen such that the Hilbert-Schmidt norm defined by
[TABLE]
acquires the values , and , for the remaining three settings, respectively. In these settings, the white noise terms are considered as independent trajectories of the standard Brownian motion over the interval . It is worth to note that as we increase the Hilbert-Schmidt norm, , in the FAR(1) models, the dependency structure of consecutive FTS gets more twisted, and we expect it would be more challenging to reconstruct the true structures, .
To compare the performance of FSSA and MSSA, we further consider three window length parameters ( and ) in our simulation setup. For the sake of consistency in all of the reconstruction procedures (dFPCA, MSSA and FSSA), we use the first two leading eigen-components. As a measure of goodness of fit, we use the Root Mean Square Error (RMSE) defined as:
[TABLE]
where is the FTS reconstructed by each method. We repeat each setting times and report the mean of the RMSE’s in Table 1.
By comparing the results in Table 1, it can be seen that FSSA outperform dFPCA in different scenarios. This may not be surprising, as the main task of dFPCA is dimension reduction. Except for the first setting, MSSA also outperforms dFPCA significantly. Furthermore, FSSA performs better than MSSA in most of the cases except the case where the length of the FTS is small () and the window size, , is getting closer to . However, it is clear that FSSA is the optimal method for reconstructing the longer FTS ().
For all methods, RMSE decreases as the length of the series increases. For two smaller frequencies (), the average of RMSE increases as the noise structure becomes more complex in settings 1 through 4 while it decreases for . This might be happening due to the unpredicted cross-correlation of the functional noise structures and the periodic form of FTS.
The efficiency of MSSA and FSSA for different window lengths (), time series lengths () and frequencies (), the ratio of RMSE of MSSA to FSSA is examined in Figure 3. The overall pattern confirms the improvement in RMSE for FSSA as the time series get longer (larger ). Overall, as is increasing, the pattern of ratio of RMSE’s remains unchanged. Although as the window length becomes larger, either the improvement diminishes for longer FTS, or disappears (or reverses) for smaller . It is also worth to note that in setting 1 (GWN), based on the right panel of Figure 3 and Table 1, the FSSA dominates the other two methods in all combinations of parameters with a better efficiency scale.
5.2 Application to Remote Sensing Data
Tracking changes in vegetation over time has become of interest to researchers that want to preserve wildlife. One technique used to track how much vegetation is present in a region is through field surveys. The problem with this technique is that it is difficult to implement especially in low population areas (Panuju and Trisasongko,, 2012). The use of remote sensing data in this context is preferred in order to detect man-made or natural changes in vegetation. One source of remote sensing data is from NASA’s MODerate-resolution Imaging Spectroradiometer (MODIS) satellite which provides images, twice daily, of regions around the globe at varying spatial resolutions (Tuck et al.,, 2014). Normalized Difference Vegetation Index (NDVI) is a commonly used pixel-wise index in MODIS satellite images. The NDVI values are bounded between zero and one, where index values that are closer to one indicate that more vegetation is present and smaller values indicate the absence of vegetation (Tuck et al.,, 2014).
Many studies have used the spectral NDVI measure and its variants in order to remotely track changes in vegetation over time (Lambin,, 1999). The temporal average, and temporal variability of NDVI images have been used as explanatory variables for the number of different types of vegetation present in many regions (Tuck et al.,, 2014). Also, Panuju and Trisasongko, (2012) used the maximum value of NDVI images, taken of the Jambi province in Indonesia, to form a time series. The resulted time series was then analyzed using an X12-ARIMA model in order to identify trend and seasonal changes in woody vegetation (Panuju and Trisasongko,, 2012). While these statistics (e.g. maximum and average) have seen some success in tracking the changes of the NDVI images, it may fail capturing the distribution of the vegetation. Therefore, one may seek for a more comprehensive measure (e.g. a FTS) to describe the distribution of the NDVI images.
Here we use NDVI images taken in days increments between February , to July , . The images have a spatial resolution of meter and are of a square region just outside of the city of Jambi, Indonesia between and . Figure 4 shows the respective NDVI images taken on June 10, 2002 and June 10, 2019. It is interesting to note that, although the respective NDVI images are not similar, the sample means of the NDVI values are very close (differ by only about 0.0032 unit). As it is shown in Figure 4, the kernel density estimates (KDEs) are much more informative in representing the distribution of the NDVI images.
We follow the Silverman’s rule of thumb (Silverman,, 1986) for bandwidth selection and obtain the KDEs. Then we project the results onto a functional space spanned by a cubic B-spline basis, selected via the GCV criterion. Figure 5(A) shows the projected KDEs onto the B-spline space. We pass the results ( FTS) as input to the FSSA algorithm with the lag, , and study the behavior of the NDVI images over almost two decade, using the Rfssa package.
According to the subplots in Figures 5(B-C: the singular values and w-correlation plots), a suitable partition would be grouping the first and fourth components separately, plus the second and third components jointly (–). The remaining subplots in Figures 5(D-F: the right singular vectors and left singular functions) indicate the first component captures mean behavior, the second and third capture annual behavior, and the fourth captures trend.
An important goal of analyzing the NDVI data is to investigate the existence of a temporal trend in the NDVI images over time. It is interesting to see that FSSA can distinguish and separate the overall mean structure (top-left subfigures in Figures 5(D-F)) and the trend pattern (bottom-right subfigures in Figures 5(D-F)) in two different components (the first and fourth components). The trend component is causing an interesting change-point behavior after almost a decade (bottom-right subfigures in Figures 5(D-F) and Figure 6(C)). We would like to report that SSA algorithm with the lag, , cannot separate this trend structure, and the overall mean pattern. Therefore, SSA combines these two (the overall mean and the trend components) into one component (the SSA results are omitted due to space constraints).
Next, we build the reconstruction of the NDVI images using the grouping suggested by the FSSA exploratory plots, , as shown in Figure 6. It is clear that Figure 6(A) shows the reconstructed overall mean, where it does not change over time. Figure 6(B) provides the annual harmonic behavior, and one may observe the change-point behavior after a decade in Figure 6(C). The last subfigure, Figure 6(D), presents the sum of the trend and overall mean components.
It would be of interest to confirm the properties of the reconstructed groups using some rigorous statistical procedures. In order to do this, we provide the multivariate trace periodicity test of Hörmann et al., (2018) to test for the annual seasonal effect of FTS, and a bootstrap procedure to test existence of a trend (Grosjean and Ibanez,, 2018) over the time series of the mean of the coefficients associated to the B-spline basis. We obtain the results of these two tests (periodicity and trend) on four sets of FTS (original signal , , , ), where represents residual curves obtained via removing the reconstructed FTS by the first groups, from the original signal . Table 2 provides the p-values of the tests for the periodicity and the trend. It is clear that periodicity test captures the annual pattern for and that contain the seasonal components (p-value=0). Also the trend test is significant for all of the FTS, except that does not contain the third group (fourth component).
While the FSSA procedure was able to separate out the year long seasonal pattern, it was also able to detect the less obvious trend component present in the NDVI data; which indicates a loss of vegetation over the previous 20 years. It was determined that between 2001 and 2015, grassland and shrubs in the Jambi region accounted for a large amount of the vegetation lost due to controlled burning for human use (Prasetyo et al.,, 2016). The region specified in images that we study here is primarily upland agriculture and grass and it appears to have been a hot spot for controlled fires (Prasetyo et al.,, 2016).
6 Discussion
In this paper, we constructed the FSSA procedure by incorporating the FDA techniques in basic SSA via MFPCA. The contribution of the proposed model is to provide practitioners with some tools to utilize the advantages of SSA in FTS. Accordingly, the researchers can analyze functional sequences (e.g., time series, longitudinal, or spatial data) via FSSA. Alternatively one may approach the problem using MSSA, given that the data points are measured in fixed, regular grid points over time.
As for the ease of use, an efficient and user-friendly R implementation of FSSA is developed in the Rfssa package. Furthermore, a shiny web application is also included in the package, and it is available at https://fssa.shinyapps.io/fssa/ for reproducing the results of this paper or analyzing any other FTS.
Supplementary Materials
Application to call center dataset
To illustrate the advantages of FSSA, especially its main capability in extracting different functional components (i.e. trend, harmonic and noise), we explore the call center dataset analyzed in Maadooliat et al., (2015). This dataset provides the number of calls to a call center per 6 minutes intervals, between January 1 through December 31, 1999. Suppose , is the square root of number of calls during the time interval on day . Figure 1 (left) shows the projection of the ’s (vectors of length ) into a functional space spanned by a cubic B-spline using GCV criterion.
An important goal of analyzing the call center data is to investigate the existence of periodic behaviors (e.g., weekly or monthly). Figure 1 (right) visually confirms the existence of a strong weekly pattern in the dataset. Since one cannot visually confirm the presence of a monthly behavior using similar graphs, it would be interesting to show that FSSA can provide tools and machinery to extract such weaker signals.
In order to capture both monthly and weekly pattern by FSSA, first, we choose window length as multiple of and close to , i.e., . Then, we provide several plots using Rfssa package for grouping the components (Figure 7). These plots are the functional form (analogy) of the ones commonly used in the SSA literature (Golyandina et al.,, 2001). As it can be seen in the plot of leading singular values (scree plot), the first singular value is relatively large, and there exists three evident pairs with almost equal leading singular values correspond to the three components. The w-correlation plot suggests partitioning the eigentriples into five groups: , , , , and the remainder that does not seem to contain any strong signal. Considering the remaining plots (right singular vectors and pairs of singular vectors), one can see the eigentriple pairs , and are related to a one-week periodicity with frequencies , and , while the last group, eigentriple pair , describes a weak monthly cycle. These groups can reproduce the reconstructed FTS. The functional components associated with the first four groups are presented in Figure 2 (bottom) from left to right. Furthermore, some creative visualization tools that are implemented in the Rfssa package can be used to extract within/between days patterns for the call center data by employing the estimated left singular functions (Figure 8). It is worth to mention that in Figure 8 (right), there are 28 curves associated with all nine singular functions (graphs). One may note that for the first singular function, all curves resemble a similar pattern respective to the main trend. Furthermore, singular functions contain seven distinguish patterns that each consists of four curves whereas distinct curves construct singular functions .
For further clarification, we provide the multivariate trace periodicity test of Hörmann et al., (2018) on six sets of FTS (original signal , , , , , ), where represents residual curves obtained via removing the reconstructed FTS by the first groups, from the original signal . Table 3 provides the p-values of the test for the periods of length and days (p-values for testing the weekly and monthly patterns). It is clear that periodicity test captures the weekly pattern for , , and that contain either all or part of the weekly components (p-value=0). After subtracting the functional mean of all curves (first eigentriple) and the weekly components (eigentriple 2-7), the monthly pattern in is not weak anymore, and the periodicity test can capture the monthly cycle in (p-value=0). Finally, is the remainder of the signal after removing all of the weekly and monthly components, and that’s why the associated p-values in the last row are not significant anymore.
Proof of theorems and propositions
Proof of Lemma.
[TABLE]
∎
Proof of Prop.
3.1 For given and we have
[TABLE]
∎
Proof of Prop.
3.2 The linearity follows by bilinear form of the inner product. To prove self-adjoint property, for given , (12) gives
[TABLE]
which implies is self-adjoint. Moreover, we have
[TABLE]
which implies that is positive definite. To prove boundedness, let . Then
[TABLE]
As an immediate result of boundedness one can show the continuity. If and is a sequence in such that as , then we have
[TABLE]
In other words, , which proves the continuity of . To prove compactness, define , and let be a weak-null sequence in , i.e.
[TABLE]
for all . Then using (13) and (14), with some efforts, we have
[TABLE]
Therefore, as , which implies the compactness (e.g. Weidmann, (1980) Thm 6.3). ∎
Proof of Prop.
3.3 For any , define \textbf{s}_{i}:=\bigl{(}\langle\boldsymbol{\psi}_{i},\boldsymbol{x}_{1}\rangle_{\mathbb{H}^{L}},\langle\boldsymbol{\psi}_{i},\boldsymbol{x}_{2}\rangle_{\mathbb{H}^{L}},\allowbreak\ldots,\langle\boldsymbol{\psi}_{i},\boldsymbol{x}_{K}\rangle_{\mathbb{H}^{L}}\bigr{)}^{\top}. Then using the definition of the operator , for a given , we have
[TABLE]
which yields that is a bounded operator of rank one (e.g. Weidmann, (1980) Thm. 6.1). Moreover, since is an orthonormal basis system for , for all we have
[TABLE]
∎
Proof of Thm.
3.1 Note that while Furthermore,
[TABLE]
To prove orthonormality, we have
[TABLE]
Moreover, using (9) we have
[TABLE]
∎
Proof of Thm.
[TABLE]
Hence, separability of and implies for all , which complete the proof. ∎
Proof of Lemma.
4.1 The proof will be divided into two steps. In the first step it will be shown that . In the second step it will be proved that are linearly independent. Suppose that , where . By definition, each elements of admits the basis expansions . Therefore
[TABLE]
which implies the first step. To prove linear independency, if then,
[TABLE]
[TABLE]
This means for all and consequently for , since are linear independent. ∎
Proof of Thm.
4.1 The proof (i) is clear, and (iii) is straightforward from (ii). To prove the part (ii), using (13) gives
[TABLE]
Finally, to prove (iv), the Equation (30) gives,
[TABLE]
The Gram matrix is Hermitian and nonsingular, since the basis are linearly independent. Let be the inverse of . The Equation (36) gives
[TABLE]
which implies
[TABLE]
Applying this yields
[TABLE]
which implies .
∎
R-package for FSSA routine
Rfssa package includes the code and a shiny app, https://fssa.shinyapps.io/fssa/, to perform the FSSA algorithm, and present the illustrative figures described in this work. The package also contains the NDVI remote sensing and the call center datasets used as examples in the article. (available in CRAN)
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1Alexandrov, (2009) Alexandrov, T. (2009). A method of trend extraction using singular spectrum analysis. Rev Stat , 7(1):1–22.
- 2Bosq, (2000) Bosq, D. (2000). Linear processes in function spaces: Theory and applications . Number 149 in Lecture notes in statistics. Springer, New York.
- 3Chiou et al., (2014) Chiou, J.-M., Chen, Y.-T., and Yang, Y.-F. (2014). Multivariate functional principal component analysis: A normalization approach. Statistica Sinica , pages 1571–1596.
- 4Christensen, (1995) Christensen, O. (1995). Frames and pseudo-inverses. Journal of Mathematical Analysis and Applications , 195(2):401–414.
- 5Fraiman et al., (2014) Fraiman, R., Justel, A., Liu, R., and Llop, P. (2014). Detecting trends in time series of functional data: A study of antarctic climate change. Canadian Journal of Statistics , 42(4):597–609.
- 6Golyandina et al., (2015) Golyandina, N., Korobeynikov, A., Shlemov, A., and Usevich, K. (2015). Multivariate and 2D extensions of singular spectrum analysis with the Rssa package. Journal of Statistical Software , 67(2):1–78.
- 7Golyandina et al., (2018) Golyandina, N., Korobeynikov, A., and Zhigljavsky, A. (2018). Singular spectrum analysis with R . Springer.
- 8Golyandina et al., (2001) Golyandina, N., Nekrutkin, V., and Zhigljavsky, A. A. (2001). Analysis of time series structure: SSA and related techniques . Chapman and Hall/CRC.
