Is non-negative matrix factorization for machine learning obsolete?

I am taking a course about using matrix factorization for machine learning.

The first thing that came into my mind is by using the matrix factorization we are always limited to linear relationships between the data, which is very limiting to predict complex patterns.

In comparison with neural networks, where we can use a non-linear activation function. It seems to me that all the tasks that matrix factorization can achieve will score better using a simple multilayer neural network.

So, can I conclude that NMF and matrix factorization for machine learning, in general, are not that practical, or there are cases where it's better to use NMF?

• Matrix factorisation does have a lot of uses. Don't count it out. Although its use lies in Image processing applications and probably highly theoretical ML applications, inbetween whatever happens is not well understood or formulated. (I am assuming you are talking about SVD, LU, QR, ED, etc, etc.). The inequalities/things you can produce by these methods are simply unbelievably easy as compared to any other Analysis. (From my very limited experience)
– user9947
Jan 22, 2021 at 13:30
• I know for sure that matrix factorisation is revolutionary in other fields and calculations. My first intuition is that by using matrix factorization in ML application is similar to finding patterns in the data. And therefore why bother using for such tasks as long as we know that neural networks can perform way better. Thanks for your comment. Jan 22, 2021 at 15:38
• @RamiZK The related Wikipedia page contains a section Applications that provides an answer to your own question. After reading it and consulting the cited resources there, you could try to provide an answer below to your own question (if no one else attempts to do it) ;) By the way, welcome to AI SE! Take at a look at ai.stackexchange.com/help/on-topic to know more about our scope, if you have some time.
– nbro
Jan 22, 2021 at 21:10

I will give you a few scenarios where matrix factorisation stills works pretty well.

1. Topic Modelling : Given a matrix of Document as Rows and Terms/Words as column you can use Non Negative Matrix factorisation to identify Topics. Number of Topics is defined by user or can be treated as hyperparameter.

1. Collaborative filtering which is a class of recommendation engines used matrix factorisation extensively

2. Matrix factorisation can also be used as a feature reduction for a lot of ML algorithm. Infact most commonly used feature reduction techinue PCA is kind of matrix factorisation

Yes, we may have advanced algorithms which may perform better but dont forget.

No Free Lunch Theorem in Machine Learning : No ML algorithm will outperform every other algorithms for every use case

So yes matrix factorisation is still relevant and forms backbone of a lot of advanced ML algotithms