Non Negative Matrix Factorization (NMF)
Non-negative matrix factorization (NMF) is a dimensionality reduction method that approximates a non-negative data matrix as the product of two smaller non-negative matrices, yielding additive, parts-based components.
비음수 행렬분해(NMF)는 음수가 없는 자료 행렬을 두 개의 더 작은 비음수 행렬의 곱으로 근사하여 가법적이고 부분 기반의 성분을 얻는 차원축소 방법이다.
How do I find interpretable parts-based patterns in non-negative data such as word counts or spectra?
단어 빈도나 스펙트럼처럼 음수가 없는 자료에서 해석하기 쉬운 부분 기반 패턴을 어떻게 찾나요?
Non-negative matrix factorization decomposes a non-negative matrix into a basis matrix and a weight matrix whose entries are all zero or positive. It fits count or intensity data such as document–term matrices, images or gene expression, where additive components are easier to interpret than the signed components of PCA.
When to use Non Negative Matrix Factorization (NMF)
- Document–term matrices for extracting topics
- Non-negative intensity data such as images, spectra or expression levels
- Finding additive components that combine to reconstruct each observation
When to use something else
- Data contain meaningful negative values: use principal component analysis
- You need a probabilistic model of word generation in documents: use LDA topic modeling
Assumptions and requirements
- All data values are zero or positive
- A chosen number of components (rank)
- Features scaled appropriately, e.g., TF-IDF for text
- Multiple initializations, since the solution is not unique
What the analysis reports
- Basis (component) matrix W
- Weight (coefficient) matrix H
- Reconstruction error
- Top features per component
How to report it
NMF with [k] components yielded a reconstruction error of [value], and the components were interpreted as [label 1], [label 2] and [label 3].
Related methods
- Principal Component Analysis (PCA)
- LDA Topic Modeling
- Singular Value Decomposition
Run Non Negative Matrix Factorization (NMF) on Quorant
- Data you need
- a table (CSV or Excel) with predictor (feature) columns
- Price
- 250 credits for one analysis up to 10,000 rows (complexity level 2); larger or wider data costs more. Optional methodologist review: 1200 credits.
- Checking
- Python results are cross-checked against R reference outputs in every deployment
- Before you pay
- A free pre-analysis diagnosis checks your data and gives an exact quote; nothing is deducted until you approve it.