"Factor analysis is used to find the variability among observed, correlated variables in terms of a potentially lower number of unobserved variables called factors." It is often used as a dimension reduction with a better data modeling. Unlike PCA, there is no orthogonality constraint for the factors. In addition to this, noise term is explicit in the factor analysis. Having said this, PCA and FA are primarily seen as unsupervised learning algorithms. I would like to know if there is any supervised alternative for Factor analysis. As in, is there any algorithm which not only accounts for the inherent noise in the data, but also assumes correlation among the variables and still can result in discriminating features.