Super-sparse principal component analyses for high-throughput genomic data

Background Principal component analysis (PCA) has gained popularity as a method for the analysis of high-dimensional genomic data. However, it is often difficult to interpret the results because the principal components are linear combinations of all variables, and the coefficients (loadings) are typically nonzero. These nonzero values also reflect poor estimation of the true vector loadings; for example, for gene expression data, biologically we expect only a portion of the genes to be expressed in any tissue, and an even smaller fraction to be involved in a particular process. Sparse PCA methods have recently been introduced for reducing the number of nonzero coefficients, but these existing methods are not satisfactory for high-dimensional data applications because they still give too many nonzero coefficients. Results Here we propose a new PCA method that uses two innovations to produce an extremely sparse loading vector: (i) a random-effect model on the loadings that leads to an unbounded penalty at the origin and (ii) shrinkage of the singular values obtained from the singular value decomposition of the data matrix. We develop a stable computing algorithm by modifying nonlinear iterative partial least square (NIPALS) algorithm, and illustrate the method with an analysis of the NCI cancer dataset that contains 21,225 genes. Conclusions The new method has better performance than several existing methods, particularly in the estimation of the loading vectors.


Background
Principal component analysis (PCA) or its equivalent singular-value decomposition (SVD) is widely used for the analysis of high-dimensional data. For such gene expression data with an enormous number of variables, PCA is a useful technique for visualization, analyses and interpretation [1][2][3][4].
Lower dimensional views of data made possible, via the PCA, often give a global picture of gene regulation that would reveal more clearly, for example, a group of genes with similar or related molecular functions or cellular states, or samples of similar or connected phenotypes, etc. PCA results might be used for clustering, but bear in mind that PCA is not simply a clustering method, as it has distinct analytical properties and utilities from the clustering methods. Simple interpretation and subsequent usage of PCA results often depends on the ability to identify subsets with nonzero loadings, but this effort is hampered by the fact that the standard PCA yields nonzero loadings on all variables. If the lowdimensional projections are relatively simple, many loadings are not statistically significant, so the nonzero values reflect the high variance of the standard method. In this paper our focus on the PCA methodology is constrained to produce sparse loadings.
Suppose X is an n × p data matrix centered across the columns, where n and p are the number of observations and the number of variables, respectively. Also, let S X = X T X/n be the sample covariance matrix of X. In PCA, the interest is to find the linear combination z k = Xv k , for k = 1, ..., p, which maximizes with the constraints v v k T k = 1 and v k ⊥ v h for all h < k. PCA can be computed through the SVD of X. Let the SVD of X be where D is n × p matrix with (i, i )th element d i ; the columns of Z = UD = XV are the principal component scores, and the columns of the p × p matrix V are the corresponding loadings. The vector v k in (1) is the k-th column of V.
Each principal component in (2) is a linear combination of p variables, where the loadings are typically nonzero so that PCA results are often difficult to interpret. To get sparse loadings, [5] proposed to use L 1 -penalty, which corresponds to the least-absolute shrinkage and selection operator (LASSO; [6]). [7] proposed to use the so-called elastic-net (EN) penalty. However, LASSO and EN may not be satisfactory either, because it can still gives too many nonzero coefficients. [8] proposed the smoothly-clipped absolute deviation (SCAD) penalty for oracle variable selection. Recently, in regression setting, [9] proposed a new random-effect model using a gamma scale mixture, which gives various types of penalty, including the normal-type (bell-shaped for ridge penalty), cusped-type (LASSO and SCAD-type), and a new (singular) unbounded penalty at the origin. [9] showed that the new unbounded penalty can yield very sparse estimates that are better than LASSO both in prediction and sparsity.
In this paper we use the random-effect model approach of [9] for sparse PCA (SPCA); the model gives unbounded gains for zero loadings at the origin, so it forces many estimated coefficients to zero. We improve the estimation further by shrinking the singular values from the SVD of the data; the resulting procedure is called super-sparse PCA (SSPCA). We provide some simulation studies that indicate that these SPCA methods perform better than existing ones, and illustrate their use using a cancer gene-expression dataset with 21,225 genes. We also show how to modify the ordinary NIPALS algorithm [10] to implement these methods computationally.

Numerical studies
We first perform small simulation studies in order to assess the performance of the proposed sparse PCA methods and compare them against other methods. We generate data matrix X = (X 1 ,…,X p ) where X i R n , as follows: where u MVN I v n  ( , ) 0 2  , e i~M VN(0, I n ), I n is the identity matrix of order n and u and e i are independent for all i. This gives the true covariance matrix, and J k is the k × k matrix of ones. Here we consider cases (n, p) = (80, 20) for n >p and (n, p) = (50, 200) for n <p. Based on 100 simulated data, we compare our new sparse PCA method using the h-likelihood (HL; See Methodology section) with the LASSO and EN penalties for both SPCA and SSPCA methods. We also tried the SCAD method but the results are very similar to LASSO, so we do not report results for SCAD.
From the SVD of Σ we have the true first loading vector v 1 = (1/2,1/2,1/2,1/2,0,...,0) T . Let v ∧ 1 be the estimate of v 1 . To evaluate the performance in estimation of the first loading vector, following [11], we use the sine values of the angle between true loading and estimated loading as the measure of the closeness of two vectors, i.e. When The summary of estimation performance is given in Table 1. Generally SPCA methods have much better estimation than the ordinary PCA method. Among SPCA methods, the condition-number constrained SSPCA method with HL is generally the best, although the improvement over the unconstrained method is not The median of dist(v 1 , v ∧ 1 ) and the median absolute deviation in parentheses. PCA*: PCA using X* substantial. The improvement performance of HL over LASSO and EN is small when n >p, but it is substantial when n <p and the underlying signal is not very strong (  v 2 = 0.5).
To evaluate the performance in variable selection, in Table 2 we report the percentage of selecting the true model (correctly identifying all of the true zero elements), the median number of correctly estimated zeroes divided by the number of true zeroes (true negatives) and incorrect zero estimates divided by the number of true nonzeroes (false negative). Because it does not produce zeroes, the ordinary PCA method never gets the true model and always gets 0 true negatives and 0 false negatives. The HL penalty outperforms the LASSO penalty and generally better than the EN penalty, particularly in identification of the true model. LASSO identifies fewer true negatives compared to HL. The SSPCA methods with the HL and LASSO penalties outperform the corresponding SPCA methods, but here again HL is better than LASSO and EN. The EN performs worst when n <p and the underlying signal is not very strong (  v 2 = 0.5). Finally, as a measure of the prediction power, we compute the test sample variance, is the estimated loading using data matrix and X test is the independent test data sets generated from (3) with same sample size n. The results are in Table 3. SPCA methods give better prediction power than the ordinary PCA. Except for the SSPCA method when n <p and the underlying signal is not very strong (  v 2 = 0.5), six SPCA methods have similar prediction power.

Analysis of NCI data
In the analysis of microarray data it is often of interest to co-regulated genes, since they will point to some common involvement in molecular functions or biological processes or cellular states. PCA is a useful tool for such analyses [1][2][3][4]; since interpretation depends on comparing the relative sizes of the loading vectors, the sparse loadings in SPCA are much easier to interpret Percentages of selecting the true model, the median number of correct 0 divided by the number of zeroes and incorrect 0 divided by the number of non-zeroes. PCA*: PCA using X* The median of test variance with the median absolute deviation in parentheses. PCA*: PCA using X* than ordinary PCA. Furthermore, the previous section also shows that SPCA has better estimation characteristics than the ordinary PCA. For illustrations we consider the so-called NCI-60 microarray data downloaded from the CellMiner program package, National Cancer Institute http://discover.nci.nih.gov/cellminer/. Only n = 59 of the 60 human cancer cell lines were used in the analysis, as one of the cell lines had missing microarray information. The cell lines consist of 9 different cancers and were used by the Developmental Therapeutics Program of the U.S. National Cancer Institute to screen > 100,000 compounds and natural products. The number of genes is p = 21,225. Figure 1 in the Additional file 1 gives the plots of the estimates of first loading of 21,225 variables (genes) from five PCA methods, and Table 4 shows the proportion of zero coefficients (< 0.00005) of first loading vector. The ordinary PCA has almost all nonzero loadings (99%); to interpret the results, one must apply a threshold value on the coefficients, but it is not obvious how to choose the threshold. SPCA with LASSO penalty gives only 3% zero loadings, so it is not sparse; HL penalty give more sparse loadings (37.5% zeroes), but the proportion of nonzero loadings are still quite large. SSPCA with LASSO penalty is slightly improves, with 5.4% zeroes, but it is still far from sparsity with more than 20,000 nonzero loadings. Here SSPCA with HL penalty gives the most sparse loadings, with only 6% nonzero loadings, so we have managed to force almost 20,000 loadings to zero. To select the number of principal components, we use a permutation approach as follows. First, we randomly permute the expression values within each sample (row) of X to create permuted data X perm . Then PCA is performed on X perm to get the singular values d d . We perform P = 1000 permutations, from which we can compute the p-values of the observed d k 's. The number of principal components, k 0 , is such that the p-value of d k 's is less than 0.001 when k ≤ k 0 .
For NCI data, we get k 0 = 8 (eight significant principal components). The numbers of nonzero elements in the eight loading vectors (v 1 …v 8 ) are given in Table 5. We also report the adjusted variance and cumulative adjusted variance as suggested by [7] to get the explained variance properly when the principal component scores are correlated. Note that the adjusted variance is equal to the variance in the ordinary PCA because the principal components of PCA are uncorrelated. Despite the sparsity, in comparison with the ordinary PCA, both of SPCA and SSPCA method give higher cumulative adjusted variance. In fact the SSPCA method gives extremely sparse results, with only 1,260, 681 and 375 nonzero loadings for the first 3 principal components, compared to 13,259, 4,086 and 15,362 for the SPCA method. Up to the third principal component the latter has only slightly larger cumulative variance. Figure 2 in the Additional file 1 shows the scatterplot matrix of the first 3 SSPCA scores. Except for breast cancer, the different cancer types appear in recognizable clusters in the plot. This means that the sparse vector loadings capture some underlying biological differences between the cancers. To find The proportion (percentage) of zero elements of first loading in NCI data analysis. biological explanation, Table 6 shows the Gene Ontology (GO) [12] biological processes enrichment analyses of the nonzero loadings from the first 3 principal components from SSPCA. Only the top 20 most enriched categories with P-values < 10 -5 are shown. The results indicate that the greatest variation in gene expression are associated with structure development, cell proliferation and cell death (apoptosis), and cell adhesion. These processes are closely related to the hallmarks of cancer progression such as angiogenesis (development of blood vessels), abnormal cell growth and eventually metastasis (cell migration made possible by abnormally low cell adhesion). Comparative GO analyses from the ordinary PCA are given in the Additional file 1. We use the same number of top-ranking nonzero loadings as for the SSPCA, which are 1,260, 681 and 375 for the first 3 principal components, respectively. Out of these, the number of overlapping probes between the SSPCA and PCA are 462, 194 and 60. These overlaps are substantially more (up to 8 times more) than expected under random rearrangement. However, there is sufficiently large number of distinct probes in the two methods, so the GO analyses could be different. The P-values from the SSPCAbased GO analyses are more significant than those from the ordinary PCA; this may be due to better estimation of the loadings, so that the SSPCA has better power than the ordinary PCA in revealing biologically-important grouping of genes.

Discussions and Conclusions
PCA is one of the most important tools in multivariate statistics, where it has been used, for example, in data reduction or visualization of high-dimensional data. The emergence of ultra-high dimensional data such as in genomics, involving 10,000s of variables but with only a few samples has brought new opportunities for PCA applications. However, there are new challenges also, particularly on the interpretation of results. If we treat PCA quantities such as the loading vectors as parameter estimates, the large-p-small-n applications typically produce very noisy estimates. This is obvious since the loading vectors are a statistic derived from the sample covariance matrix, and the latter is not well estimated.
It is well known that improved estimation can come by imposing constraints, and in this case sparsity constraint is natural. As PCA scores capture some underlying biological processes, we do not expect every gene in the genome to be involved. Out of possibly 30,000 genes we can expect only a small fraction, probably less than 1,000, to be involved in a cellular process. Hence sparsity constraint can help in reducing the number of loading parameters to estimate.
Imposing statistical constraints can be achieved by applying a penalty approach as used by the ridge regression or the LASSO methods [6]. In this paper we have investigated a random-effect model approach using a gamma scale mixture, which leads to a class of penalties that includes the ridge and LASSO penalties as special cases. One significant property is that it can produce unbounded penalties on the origin, which leads to stronger constraints and more sparse estimates. From our results it seems clear that the penalty approach alone is not able to yield sufficiently sparse PCA for high-dimensional genomic data. Additionally we also need the shrinkage on the singular values of the data matrix. In simulation studies we show that the proposed methods outperform existing methods both in estimation and model selection. Hence we believe that the new SPCA methods are promising tools for high-dimensional data analyses. For future works, it will be of interest to apply supersparse technique in this paper to locally-linear methods of dimensionality reduction (e.g. [13]]), partial-least squares (PLS) regression and classification methods (e.g. [14]), or other high-throughput data analysis method where dimensionality reduction is used (e.g. [15]).

NIPALS algorithm for PCA
Standard algorithms for SVD (e.g. [16]) give the PCA loadings, but if p is large and we only want to obtain a few singular vectors, the computation to obtain the whole set of singular vectors may be impractical. Furthermore, with these algorithms it is not obvious how to impose sparsity on the loadings. [10] described a NIPALS algorithm that works like a power method ( [17], p.523) for obtaining the largest eigenvalue of a matrix and its associated eigenvector. The NIPALS algorithm computes only a singular vector at a time, so it is efficient if we only want to extract a few singular vectors. Also the steps are recognizable in regression terms, so the algorithm is immediately amenable to randomeffect modification as needed to obtain the various SPCA methods proposed in this paper.
First we review the ordinary NIPALS algorithm: Set the initial value of z 1 as the first column of X, then Repeat steps 1 to 3 until convergence. To obtain the second-largest singular value, first compute residual X X z v T

11
= − , then apply the NIPALS algorithm above by replacing X by X 2 .

Sparse PCA via random-effect models
To impose sparseness on the PCA loadings we first introduce the regression framework into step 1 of the NIPALS algorithm. Denoting X j as the jth column of X, following [18] we have where v 1j is the jth element of the p × 1 vector v 1 (the first loading vector), and ∊ j is an error term. If z 1 is assumed to be known, the ordinary least square (OLS) estimate for v 1 is given by Consider the penalized least-squares (PLS) estimation that minimizes where p l (·) is a penalty function. For example, p l (|v 1j |) gives ridge, and gives EN, where l, l 1 and l 2 are tuning parameters. For the prediction the ridgetype penalty is effective and for sparse estimation the LASSO-type penalty is recommended, so that EN [19] has been recommended as a compromise between the ridge and LASSO methods. [7] proposed to use EN for sparse (SPCA), but it gives less sparse estimates than LASSO.
[9] recently proposed the use of random-effect models to generate new penalty functions for sparse regression estimation. Suppose that v 1j is a random variable such that v u N u where θ is the dispersion parameter and u j follows the gamma distribution with a parameter w and density where τ j = u j θ and e j~N (0,1). This is the double hierarchical generalized linear model [20]. With the log link, we have an additive model This leads to the h-likelihood (HL) of [21] h h h = + where and f θ (v 1j |u j ) and f w (log u j ) are the density functions of u 1j |u j and log u j , respectively. Given (w, , θ), for the estimation of v 1 , [9] proposed to use the profile h-likelihood where u ∧ solves dh/du = 0. [9] showed that 2 1 1 2 2 1 2 , and the estimate of v 1 can be found using the iterative weighted least squares (IWLS) by solving using W uj   = ∧ diag( / ) and l = /θ. In randomeffect model approach, the penalty function p l (|v 1j |) stems from a probabilistic model As noted previously the proposed penalty p l (|v 1j |) is nonconvex. However, by expressing the model for p l (|v 1j |) hierarchically as (i) v 1j |u j is normal and (ii) u j is gamma, both models can be fitted by convex GLM optimizations. Thus, the proposed IWLS algorithm overcomes the difficulties of a nonconvex optimization by solving two-interlinked convex optimizations [22]. Figure 1 shows HL penalties p l (|v 1j |) at w = 0, 2, and 30, and SCAD penalty at λ = 1. The form of the penalty changes from a quadratic shape (w = 0) for ridge regressions to a cusped form (w = 2) for LASSO and then to an unbounded form (w > 2) at the origin. In the case of w >2, it allows an infinite gain at zero. Bell-shaped penalties have been proposed for better prediction (e.g., [23]), and cusped ones for simultaneous variable selection and estimation as in LASSO [6] or SCAD [24]. Until now, however, only finite penalties have been investigated. [9] proposed to use the unbounded penalty with w = 30, which we shall call the HL method. They illustrated the advantage of using this unbounded penalty to enhance sparse coefficient estimation. Singularities in LASSO and SCAD occur as the penalty functions have no derivatives at the origin. However, both penalties have |p l (0)| < ∞ and | ( )| ′ < ∞ + p  0 , while the new unbounded penalty has |p l (0)| < ∞ and | ( )| ′ = ∞ + p  0 . In general, the minimizer of the penalized leastsquares (5) can be found using the IWLS (10) with for LASSO, SCAD and HL penalties are summarized in Table 7. When v 1j = 0, then u j ∧ = 0 and the jth element of W l is not defined. is always defined. As long as δ is small, the diagonal elements of W l,δ are close to those of W l and the resulting estimates are nearly identical to those of the original IWLS (10). In this paper, we report v Other methods for sparse principal component analysis [7] also exploit the regression property of PCA in order to obtain sparse loadings. They proposed an alternating minimization algorithm to minimize the criterion for deriving the first sparse loading vector v 1 . Given θ, this optimization problem becomes a naive elastic net problem for v 1 . Given v 1 , θ can updated from SVD of X T X v 1 . These two steps are repeated until v 1 converges. Following [25], (11) is different from our objective function (5) even when we use the same penalty function. In fact, (5) is very close to the objective function of [26], but we put the normalization constraint of the loading inside iterated procedure so that it could make a different result. In this paper, we used the function spca() in the R-package elasticnet for the EN method in the simulation studies.

Condition-number constraint for SPCA
As shown in the previous examples, the SPCA approaches above may not produce sufficient sparsity. For the moment suppose n ≥ p; the case where n <p can be dealt with by transposing the data; see the note below. From (2) we have the eigenvalue decomposition of the sample covariance matrix as where Λ = diag(l 1 , ..., l p and l d n i i = 2 / for i = 1, ..., p is the eigenvalues of S X in non-increasing order (l 1 ≥ … ≥ l p ≥ 0). Let the p × 1 random vectors x 1 ,...,x n be rows of X that have zero mean vector and true covariance matrix Σ with the non-increasing eigenvalues, l 1 ≥ ... ≥ l p . When our goal is to estimate Σ, the sample covariance matrix S X can be used. Many applications require a covariance estimate that is not only invertible but also well-conditioned. An immediate problem arises when n <p, where the estimate S X is singular. Even when n >p, the eigen-structure tends to be systematically distorted unless p/n is small [27], resulting in ill-conditioned estimator for Σ. [28] showed that the eigenvalues of S X are more dispersed than those of the true covariance matrix, i.e. l 1 tends to be larger than l 1 and l p tends to be smaller than l p . To overcome this difficulty, [29] proposed a constraint on the condition number to achieve a better covariance estimation. The optimization problem with the condition-number constraint can be formulated as