Examples of when PCA would be preferred over NMF What are some specific examples of when PCA should be used instead of NMF?
PCA is a widely used method for dimension reduction in data science, machine learning, and bioinformatics. NMF is also a popular method for dimension reduction, much like PCA, and can be used for many of the same types of analyses (e.g. graph-based clustering, trajectory inference, a denoised embedding for reduction with UMAP, etc.) but with very different theoretical and practical characteristics:

*

*PCA components are orthogonal while NMF factors are colinear. Orthogonality means that information in a given component is dependent on information in preceding components. Colinearity means that factors are additive in parallel, and parts of the whole.

*PCA values are signed while NMF values are >= 0. This means PCA fits to missing signal while NMF imputes signal.

*PCA is exact while NMF is approximate (requires random initialization). However, PCA is only exact within a dataset and components are components are rarely comparable between datasets, while NMF can isolate factors that are similar in independent models with substantial differences.

*PCA explains variation, NMF explains additive signal. PCA is essentially sequential normalizations of data along axes of variation while NMF isolates distinct and interpretable signals within the data.

*It is difficult to estimate an appropriate number of PCs to use, while NMF almost always has an optimal rank that can be determined by cross-validation.

I have developed NMF and PCA implementations from scratch, but find myself preferring NMF for almost every problem I address. Most of my data is non-negative count data or some normalization of count data, but this leaves me wondering when PCA is actually more useful than NMF. Given it's historical prescience, wide use (or abuse), and mathematical utility, there must be some practical applications where PCA, but not NMF, is the go-to method?  I have to teach a class on data mining, and I'd like at least one or two examples where PCA is both appropriate to use and the preferred method.

I'd normally prefer PCA for low-d (usually 2-d) data visualisation, as orthogonal components are more intuitive in this respect.
I also suspect that PCA will usually work better for dimension reduction of the x-space in linear regression, because collinearity is unhelpful in regression, although I normally use neither for this task (I have seen data in which Principal Components Regression did a pretty good job, but even there something else such as Partial Least Squares could be found that is slightly better using cross-validation for comparison; I don't think NMF would've been any good in these situations though).
