(This article was originally published at Honglang Wang's Blog, and syndicated at StatsBlogs.)
Recently some papers discussed in our journal club are focused on integrative clustering of multiple omics data sets. I found that they are all originated from factor analysis and make use of the advantage of factor analysis over principal component analysis.
Let’s recall the model for factor analysis:
where (
) and
, with mean
and loading matrix
fixed, and factors
with
diagonal. And we also assume that
and
are uncorrelated. Note that this model is just characterizing the covariance structure of the Gaussian random vector
. Now we need to think about the roles of the loading matrix and factors. In fact, we can think about this model in the following way: if we are given such a random vector, then
is just what you see of this random vector in one coordinate system under which the components of
are correlated; but if you look at the random vector in another coordinate system which is a linear transformation (
) of the original coordinate system, then you will see
, whose components are uncorrelated. That is, the randomness in
and
is the same but with different views. With the observed sample with sample size
,
we can use the EM algorithm to get the MLE of the parameters (note that you will find maximizing the likelihood directly is hard).
Now for principal component analysis, for clarity, we are going to differentiate the classical (non-probabilistic) principal component analysis and probabilistic principal component analysis. The classical principal component analysis actually has no statistical model. And the probabilistic principal component model is defined as the above factor analysis model with and
is orthonormal. And people can show that as
, it becomes the classical principal component analysis. Actually we know that PCA maximizes data variance captured by the low dimensional projection, or equivalently minimizes the reconstruction error under the
norm of the projected data points with the original data, namely
where here is the data matrix, and
. And we know that solution to this problem is through SVD of the sample covariance:
contains the
eigenvectors corresponding to the largest
eigenvalues. And
are the projected data points. From this analysis, we could see that the difference between factor analysis and the classical principal component analysis is that PCA treats covariance and variance identically, while factor analysis is trying to model to covariance and variance separately. In fact, the
principal components are chosen to capture as much variance as possible, but the
latent variables in a factor analysis model are chosen to explain as much covariance as possible. (Note that all the correlations amongst the variables must be explained by the common factors; if we assume joint normality the observed variables will be conditionally independent given
.)
In applications, we just deal with the data matrix, . And the loadings of the first principal component, as a vector, denoted as
, is a normalized vector, i.e.
, which makes
have the largest variance. And we call
as the first principal component score vector. In the common R package “prcomp” for the principal component analysis, the following command out=prcomp(X, scale=TRUE), can give us the
loading matrix by referring to out$rotation, and the
score matrix by referring to out$x. That is the loading matrix is
and the score matrix is
, which is the
realizations of the factors
.
Now think about what is the difference between the factor analysis and the probabilistic principal component analysis (PPCA). From the above definition, we see that the main difference is that factor analysis allow individual characteristics through the error term by instead of
. In this perspective, we have
with common structure across all components of
and individual characteristics
. While PPCA does not allow any individual characteristics by assuming
for all
. This essential difference will make factor analysis more useful in integrative data analysis since it has more flexibility.
The AOAS 2013 paper is exactly using the above idea for modeling the integrative clustering:
where with
data sources. By stacking all the data sources together, we have
which is exactly a simple factor analysis. And this factor analysis model is more useful than PCA in this data integration setup just due to the allowing of individual characteristics for different data sources through . And their paper is also dealing with sparsity in
.
The 2014 arXived paper is just generalizing the above paper by allowing another layer of individual characteristis:
But the problem for this one is how to do the estimation. Instead of using EM algorithm as used in the AOAS 2013 paper, they used the one as in the PCA by minimizing the reconstruction error.
Please comment on the article here: Honglang Wang's Blog
