English

Maximum-Volume Nonnegative Matrix Factorization

Machine Learning 2026-02-06 v2 Numerical Analysis Signal Processing Numerical Analysis Machine Learning

Abstract

Nonnegative matrix factorization (NMF) is a popular data embedding technique. Given a nonnegative data matrix XX, it aims at finding two lower dimensional matrices, WW and HH, such that XWHX\approx WH, where the factors WW and HH are constrained to be element-wise nonnegative. The factor WW serves as a basis for the columns of XX. In order to obtain more interpretable and unique solutions, minimum-volume NMF (MinVol NMF) minimizes the volume of WW. In this paper, we consider the dual approach, where the volume of HH is maximized instead; this is referred to as maximum-volume NMF (MaxVol NMF). MaxVol NMF is identifiable under the same conditions as MinVol NMF in the noiseless case, but it behaves rather differently in the presence of noise. In practice, MaxVol NMF is much more effective to extract a sparse decomposition and does not generate rank-deficient solutions. In fact, we prove that the solutions of MaxVol NMF with the largest volume correspond to clustering the columns of XX in disjoint clusters, while the solutions of MinVol NMF with smallest volume are rank deficient. We propose two algorithms to solve MaxVol NMF. We also present a normalized variant of MaxVol NMF that exhibits better performance than MinVol NMF and MaxVol NMF, and can be interpreted as a continuum between standard NMF and orthogonal NMF. We illustrate our results in the context of hyperspectral unmixing.

Keywords

Cite

@article{arxiv.2602.04795,
  title  = {Maximum-Volume Nonnegative Matrix Factorization},
  author = {Olivier Vu Thanh and Nicolas Gillis},
  journal= {arXiv preprint arXiv:2602.04795},
  year   = {2026}
}

Comments

arXiv admin note: substantial text overlap with arXiv:2412.06380 (this paper is an updated version of Chapter 7 of the thesis of the first author, available from arXiv:2412.06380). The code is available from https://gitlab.com/vuthanho/maxvolmf.jl