The basic idea i'm trying is to model the data with factor analysis, assuming a latent variable structure that underlies the observations. Labels for "real" anomalies are available and used for validation. Another important note is that the data does not have a "very" Gaussian nature.
Then, projecting the observations onto the new subspace found, and looking for outliers - i.e. finding the observations that digress from the underlying structure, assuming the anomalies i'm looking for will be more prevalent there.
Using R's factanal, with varimax (or oblimin) rotations, i have encountered the following result, which i'm not sure about :
- When projecting the normalized data (z-score) using the FA model found, classification/detection is poor ; but since factanal scales the data in advance, i believe this is the correct way(?)
- When projecting the original data (not normalized) using the same FA model, detection is much improved.
Could this be due to projecting the observations onto a subspace that assumes a low variance, much more "normal" distribution, thereby "aggravating" any anomalous points?
Would appreciate help/insight as to what i'm missing!
Thank you.
Update: - LX yields much better classification than LX*, where L is the loadings matrix, X is the data matrix, and X* is the standardized data matrix. LX also yields better classification than in the following. https://stat.ethz.ch/pipermail/r-help/2002-April/020278.html
Could the LX transformation be related to LDA?