I read the book Latent Variable Models, and in the chapter dealing with exploratory factor analysis the author shows a way to learn latent variables (factors) from a n x n correlation matrix. Basically, SVD or PCA is applied to the correlation matrix, and using some criteria, we can choose the number of factors or components to keep f << n. Those factors or components are the latent variables, and the observed variables are "nested" (linked) to them through the parameters (graph).

In his examples, he used context to give names and meanings to these latent variables. However, in a larger data set with many more observed variables, how would we assign meaning or names to the latent variables? In other words, is there a way to automate this procedure of saying, "Oh, this latent variable is connected to these observed ones, and the observed ones center around happiness, so we should call this latent variable happiness."

Since exploratory factor analysis is using SVD/PCA like latent semantic analysis (LSA), I too wonder how one goes about saying "Oh, these documents are philosophy articles, and those are engineering articles." Though one of the examples on Wikipedia makes it clear, in practice, when applying LSA, I hardly ever get interpretable latent components (that article later shows an unclear example).

Assuming I cannot assign meanings to these latent variables, it is uneasy to communicate the results back to a stakeholder, "Oh, these are just hidden variable with no easily interpretable meaning, and we should not even try because ...?"

  • 1
    $\begingroup$ I have not seen an automated approach to naming factors. Unless one has a very large number of variables, I suspect it would be more cumbersome to automate factor naming that doing it the traditional way. One would have to first identify unique features of each variable (e.g., philosophy, engineering, etc.) and incorporate that into the data file or analysis code, then develop code to assess factor loadings, and then determine which feature had the most high loadings or loadings over a certain threshold. $\endgroup$ – Bryan Apr 4 '18 at 4:52
  • $\begingroup$ I have noticed that PCA is harder to interpret in higher-d spaces because you have a high-d weight vector with many nonzero entries. You could try a different latent factor method where each factor is associated with a specific subspace/set of variables: paper and code. $\endgroup$ – Greg Ver Steeg Apr 4 '18 at 23:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.