comparing results of PCA and NNMF - what percentage of the original data's variance is retained?

12 ビュー (過去 30 日間)
Blaise
Blaise 2014 年 1 月 17 日
回答済み: Aditya 2025 年 2 月 3 日
Hello,
I have a big data matrix (100000*200) on which I performed PCA. Luckily PCA works great and only 4 variables recover ~95% of the variance. The way I got this is that I used the command:
cumsum(latent)./sum(latent)
as the example shows on matlab's PCA website (<http://www.mathworks.co.uk/help/stats/princomp.html)>. However for various reasons I want to do non-negative matrix factorisation on the same data matrix. My question is that how can I make an apples-to-apples comparison between the results of PCA and NNMF? That is how can I calculate the percentage of the original data's variance retained after NNMF?
Shall I just add up the variances of the variables and compare it to the same quantity of the original data? If I do that will that give me the same result as the command above in the case of PCA?
best regards, b

回答 (1 件)

Aditya
Aditya 2025 年 2 月 3 日
Hi Blaise,
To compare the results of Principal Component Analysis (PCA) and Non-negative Matrix Factorization (NNMF) in terms of variance explained or retained, you'll need to consider the fundamental differences between these two techniques. PCA is a linear decomposition method that focuses on maximizing variance, while NNMF is a non-linear technique that decomposes a matrix into non-negative factors, which may not directly align with variance maximization.
Refer to the following documentation:

カテゴリ

Help Center および File ExchangeDimensionality Reduction and Feature Extraction についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by