Non-negative matrix factorization
Non-negative matrix factorization (NMF or NNMF), also non-negative matrix approximation is a group of algorithms in multivariate analysis and linear algebra where a matrix is factorized into (usually) two matrices and , with the property that all three matrices have no negative elements. This non-negativity makes the resulting matrices easier to inspect. Also, in applications such as processing of audio spectrograms or muscular activity, non-negativity is inherent to the data being considered. Since the problem is not exactly solvable in general, it is commonly approximated numerically. NMF finds applications in such fields as  astronomy, computer vision, document clustering, missing data imputation, chemometrics, audio signal processing, recommender systems, and bioinformatics. History. In chemometrics non-negative matrix factorization has a long history under the name "self modeling curve resolution". In this framework the vectors in the right matrix are continuous curves rather than discrete vectors. Also early work on non-negative matrix factorizations was performed by a Finnish group of researchers in the 1990s under the name "positive matrix factorization". It became more widely known as "non-negative matrix factorization" after Lee and Seung investigated the properties of the algorithm and published some simple and  useful algorithms for two types of factorizations. Background. Let matrix be the product of the matrices and , Matrix multiplication can be implemented as computing the column vectors of as linear combinations of the column vectors in using coefficients supplied by columns of . That is, each column of can be computed as follows: where is the -th column vector of the product matrix and is the -th column vector of the matrix . When multiplying matrices, the dimensions of the factor matrices may be significantly lower than those of the product matrix and it is this property that forms the basis of  NMF. NMF generates factors with significantly reduced dimensions compared to the original matrix. For example, if is an matrix, is an matrix, and is a matrix then can be significantly less than both and . Here is an example based on a text-mining application: This last point is the basis of NMF because we can consider each original document in our example as being built from a small set of hidden features. NMF generates these features. It is useful to think of each feature (column vector) in the features matrix as a document archetype comprising a set of words where  each word's cell value defines the word's rank in the feature: The higher a word's cell value the higher the word's rank in the feature. A column in the coefficients matrix represents an original document with a cell value defining the document's rank for a feature. We can now reconstruct a document (column vector) from our input matrix by a linear combination of our features (column vectors in ) where each feature is weighted by the feature's cell value from the document's column in . Clustering property. NMF has an inherent clustering property, i.e., it  automatically clusters the columns of input data formula_3. More specifically, the approximation of formula_4 by formula_5 is achieved by finding formula_6 and formula_7 that minimize the error function formula_8 subject to formula_9 If we furthermore impose an orthogonality constraint on formula_10, i.e. formula_11, then the above minimization is mathematically equivalent to the minimization of K-means clustering. Furthermore, the computed formula_12 gives the cluster membership, i.e., if formula_13 for all "i" ≠ "k", this suggests that the input data formula_14 belongs to formula_15-th cluster. The computed formula_6 gives the cluster centroids, i.e., the formula_15-th column gives the cluster  centroid of formula_15-th cluster. This centroid's representation can be significantly enhanced by convex NMF. When the orthogonality constraint formula_11 is not explicitly imposed, the orthogonality holds to a large extent, and the clustering property holds too. Clustering is the main objective of most data mining applications of NMF. When the error function to be used is Kullback–Leibler divergence, NMF is identical to the Probabilistic latent semantic analysis, a popular document clustering method. Types. Approximate non-negative matrix factorization. Usually the number of columns of and the number of rows of in NMF are selected so the product  will become an approximation to . The full decomposition of then amounts to the two non-negative matrices and as well as a residual , such that: . The elements of the residual matrix can either be negative or positive. When and are smaller than they become easier to store and manipulate. Another reason for factorizing into smaller matrices and , is that if one is able to approximately represent the elements of by significantly less data, then one has to infer some latent structure in the data. Convex non-negative matrix factorization. In standard NMF, matrix factor ， i.e., can be anything in that  space. Convex NMF restricts the columns of to convex combinations of the input data vectors formula_20. This greatly improves the quality of data representation of . Furthermore, the resulting matrix factor becomes more sparse and orthogonal. Nonnegative rank factorization. In case the nonnegative rank of is equal to its actual rank, is called a nonnegative rank factorization (NRF). The problem of finding the NRF of , if it exists, is known to be NP-hard. Different cost functions and regularizations. There are different types of non-negative matrix factorizations. The different types arise from using different cost functions for measuring the divergence  between and and possibly by regularization of the and/or matrices. Two simple divergence functions studied by Lee and Seung are the squared error (or Frobenius norm) and an extension of the Kullback–Leibler divergence to positive matrices (the original Kullback–Leibler divergence is defined on probability distributions). Each divergence leads to a different NMF algorithm, usually minimizing the divergence using iterative update rules. The factorization problem in the squared error version of NMF may be stated as: Given a matrix formula_4 find nonnegative matrices W and H that minimize the function Another type of NMF for images is based on  the total variation norm. When L1 regularization (akin to Lasso) is added to NMF with the mean squared error cost function, the resulting problem may be called non-negative sparse coding due to the similarity to the sparse coding problem, although it may also still be referred to as NMF. Online NMF. Many standard NMF algorithms analyze all the data together; i.e., the whole matrix is available from the start. This may be unsatisfactory in applications where there are too many data to fit into memory or where the data are provided in streaming fashion. One such use is for  collaborative filtering in recommendation systems, where there may be many users and many items to recommend, and it would be inefficient to recalculate everything when one user or one item is added to the system. The cost function for optimization in these cases may or may not be the same as for standard NMF, but the algorithms need to be rather different. Algorithms. There are several ways in which the and may be found: Lee and Seung's multiplicative update rule has been a popular method due to the simplicity of implementation. This algorithm is: Note that the updates are  done on an element by element basis not matrix multiplication. We note that the multiplicative factors for and , i.e. the formula_26 and formula_27 terms, are matrices of ones when formula_28. More recently other algorithms have been developed. Some approaches are based on alternating non-negative least squares: in each step of such an algorithm, first is fixed and found by a non-negative least squares solver, then is fixed and is found analogously. The procedures used to solve for and may be the same or different, as some NMF variants regularize one of and . Specific approaches include the projected gradient  descent methods, the active set method, the optimal gradient method, and the block principal pivoting method among several others. Current algorithms are sub-optimal in that they only guarantee finding a local minimum, rather than a global minimum of the cost function. A provably optimal algorithm is unlikely in the near future as the problem has been shown to generalize the k-means clustering problem which is known to be NP-complete. However, as in many other data mining applications, a local minimum may still prove to be useful. Sequential NMF. The sequential construction of NMF components ( and ) was firstly  used to relate NMF with Principal Component Analysis (PCA) in astronomy. The contribution from the PCA components are ranked by the magnitude of their corresponding eigenvalues; for NMF, its components can be ranked empirically when they are constructed one by one (sequentially), i.e., learn the formula_29-th component with the first formula_23 components constructed. The contribution of the sequential NMF components can be compared with the Karhunen–Loève theorem, an application of PCA, using the plot of eigenvalues. A typical choice of the number of components with PCA is based on the "elbow" point, then the existence of the flat  plateau is indicating that PCA is not capturing the data efficiently, and at last there exists a sudden drop reflecting the capture of random noise and falls into the regime of overfitting. For sequential NMF, the plot of eigenvalues is approximated by the plot of the fractional residual variance curves, where the curves decreases continuously, and converge to a higher level than PCA, which is the indication of less over-fitting of sequential NMF. Exact NMF. Exact solutions for the variants of NMF can be expected (in polynomial time) when additional constraints hold for matrix . A polynomial time algorithm for  solving nonnegative rank factorization if contains a monomial sub matrix of rank equal to its rank was given by Campbell and Poole in 1981. Kalofolias and Gallopoulos (2012) solved the symmetric counterpart of this problem, where is symmetric and contains a diagonal principal sub matrix of rank r. Their algorithm runs in time in the dense case. Arora, Ge, Halpern, Mimno, Moitra, Sontag, Wu, & Zhu (2013) give a polynomial time algorithm for exact NMF that works for the case where one of the factors W satisfies a separability condition. Relation to other techniques. In "Learning the parts of objects by  non-negative matrix factorization" Lee and Seung proposed NMF mainly for parts-based decomposition of images. It compares NMF to vector quantization and principal component analysis, and shows that although the three techniques may be written as factorizations, they implement different constraints and therefore produce different results. It was later shown that some types of NMF are an instance of a more general probabilistic model called "multinomial PCA". When NMF is obtained by minimizing the Kullback–Leibler divergence, it is in fact equivalent to another instance of multinomial PCA, probabilistic latent semantic analysis, trained by maximum likelihood estimation. That method  is commonly used for analyzing and clustering textual data and is also related to the latent class model. NMF with the least-squares objective is equivalent to a relaxed form of K-means clustering: the matrix factor contains cluster centroids and contains cluster membership indicators. This provides a theoretical foundation for using NMF for data clustering. However, k-means does not enforce non-negativity on its centroids, so the closest analogy is in fact with "semi-NMF". NMF can be seen as a two-layer directed graphical model with one layer of observed random variables and one layer of hidden  random variables. NMF extends beyond matrices to tensors of arbitrary order. This extension may be viewed as a non-negative counterpart to, e.g., the PARAFAC model. Other extensions of NMF include joint factorization of several data matrices and tensors where some factors are shared. Such models are useful for sensor fusion and relational learning. NMF is an instance of nonnegative quadratic programming (NQP), just like the support vector machine (SVM). However, SVM and NMF are related at a more intimate level than that of NQP, which allows direct application of the solution algorithms developed for either of the two methods  to problems in both domains. Uniqueness. The factorization is not unique: A matrix and its inverse can be used to transform the two factorization matrices by, e.g., If the two new matrices formula_32 and formula_33 are non-negative they form another parametrization of the factorization. The non-negativity of formula_34 and formula_35 applies at least if is a non-negative monomial matrix. In this simple case it will just correspond to a scaling and a permutation. More control over the non-uniqueness of NMF is obtained with sparsity constraints. Applications. Astronomy. In astronomy, NMF is a promising method for dimension  reduction in the sense that astrophysical signals are non-negative. NMF has been applied to the spectroscopic observations and the direct imaging observations as a method to study the common properties of astronomical objects and post-process the astronomical observations. The advances in the spectroscopic observations by Blanton & Roweis (2007) takes into account of the uncertainties of astronomical observations, which is later improved by Zhu (2016) where missing data are also considered and parallel computing is enabled. Their method is then adopted by Ren et al. (2018) to the direct imaging field as one of the methods of detecting exoplanets , especially for the direct imaging of circumstellar disks. Ren et al. (2018) are able to prove the stability of NMF components when they are constructed sequentially (i.e., one by one), which enables the linearity of the NMF modeling process; the linearity property is used to separate the stellar light and the light scattered from the exoplanets and circumstellar disks. In direct imaging, to reveal the faint exoplanets and circumstellar disks from bright the surrounding stellar lights, which has a typical contrast from 10⁵ to 10¹⁰, various statistical methods have been adopted, however the light from the exoplanets or circumstellar disks  are usually over-fitted, where forward modeling have to be adopted to recover the true flux. Forward modeling is currently optimized for point sources, however not for extended sources, especially for irregularly shaped structures such as circumstellar disks. In this situation, NMF has been an excellent method, being less over-fitting in the sense of the non-negativity and sparsity of the NMF modeling coefficients, therefore forward modeling can be performed with a few scaling factors, rather than a computationally intensive data re-reduction on generated models. Data imputation. To impute missing data in statistics, NMF can take missing data  while minimizing its cost function, rather than treating these missing data as zeros. This makes it a mathematically proven method for data imputation in statistics. By first proving that the missing data are ignored in the cost function, then proving that the impact from missing data can be as small as a second order effect, Ren et al. (2020) studied and applied such an approach for the field of astronomy. Their work focuses on two-dimensional matrices, specifically, it includes mathematical derivation, simulated data imputation, and application to on-sky data. The data imputation procedure with NMF can be composed  of two steps. First, when the NMF components are known, Ren et al. (2020) proved that impact from missing data during data imputation ("target modeling" in their study) is a second order effect. Second, when the NMF components are unknown, the authors proved that the impact from missing data during component construction is a first-to-second order effect. Depending on the way that the NMF components are obtained, the former step above can be either independent or dependent from the latter. In addition, the imputation quality can be increased when the more NMF components are used, see Figure 4  of Ren et al. (2020) for their illustration. Text mining. NMF can be used for text mining applications. In this process, a "document-term" matrix is constructed with the weights of various terms (typically weighted word frequency information) from a set of documents. This matrix is factored into a "term-feature" and a "feature-document" matrix. The features are derived from the contents of the documents, and the feature-document matrix describes data clusters of related documents. One specific application used hierarchical NMF on a small subset of scientific abstracts from PubMed. Another research group clustered parts of the Enron  email dataset with 65,033 messages and 91,133 terms into 50 clusters. NMF has also been applied to citations data, with one example clustering English Wikipedia articles and scientific journals based on the outbound scientific citations in English Wikipedia. Arora, Ge, Halpern, Mimno, Moitra, Sontag, Wu, & Zhu (2013) have given polynomial-time algorithms to learn topic models using NMF. The algorithm assumes that the topic matrix satisfies a separability condition that is often found to hold in these settings. Hassani, Iranmanesh and Mansouri (2019) proposed a feature agglomeration method for term-document matrices which operates using NMF. The algorithm reduces the  term-document matrix into a smaller matrix more suitable for text clustering. Spectral data analysis. NMF is also used to analyze spectral data; one such use is in the classification of space objects and debris. Scalable Internet distance prediction. NMF is applied in scalable Internet distance (round-trip time) prediction. For a network with formula_36 hosts, with the help of NMF, the distances of all the formula_37 end-to-end links can be predicted after conducting only formula_38 measurements. This kind of method was firstly introduced in Internet Distance Estimation Service (IDES). Afterwards, as a fully decentralized approach, Phoenix network  coordinate system is proposed. It achieves better overall prediction accuracy by introducing the concept of weight. Non-stationary speech denoising. Speech denoising has been a long lasting problem in audio signal processing. There are many algorithms for denoising if the noise is stationary. For example, the Wiener filter is suitable for additive Gaussian noise. However, if the noise is non-stationary, the classical denoising algorithms usually have poor performance because the statistical information of the non-stationary noise is difficult to estimate. Schmidt et al. use NMF to do speech denoising under non-stationary noise, which is completely different from  classical statistical approaches. The key idea is that clean speech signal can be sparsely represented by a speech dictionary, but non-stationary noise cannot. Similarly, non-stationary noise can also be sparsely represented by a noise dictionary, but speech cannot. The algorithm for NMF denoising goes as follows. Two dictionaries, one for speech and one for noise, need to be trained offline. Once a noisy speech is given, we first calculate the magnitude of the Short-Time-Fourier-Transform. Second, separate it into two parts via NMF, one can be sparsely represented by the speech dictionary, and the  other part can be sparsely represented by the noise dictionary. Third, the part that is represented by the speech dictionary will be the estimated clean speech. Population Genetics. Sparse NMF is used in Population genetics for estimating individual admixture coefficients, detecting genetic clusters of individuals in a population sample or evaluating genetic admixture in sampled genomes. In human genetic clustering, NMF algorithms provide estimates similar to those of the computer program STRUCTURE, but the algorithms are more efficient computationally and allow analysis of large population genomic data sets. Bioinformatics. NMF has been successfully applied in bioinformatics for clustering gene expression  and DNA methylation data and finding the genes most representative of the clusters. In the analysis of cancer mutations it has been used to identify common patterns of mutations that occur in many cancers and that probably have distinct causes. NMF techniques can identify sources of variation such as cell types, disease subtypes, population stratification, tissue composition, and tumor clonality. A particular variant of NMF, namely Non-Negative Matrix Tri-Factorization (NMTF), as been use for drug repurposing tasks in order to predict novel protein targets and therapeutic indications for approved drugs and to infer pair of synergic anticancer drugs . Nuclear imaging. NMF, also referred in this field as factor analysis, has been used since the 1980s to analyze sequences of images in SPECT and PET dynamic medical imaging. Non-uniqueness of NMF was addressed using sparsity constraints. Current research. Current research (since 2010) in nonnegative matrix factorization includes, but is not limited to,