Pseudoinverse The singular value decomposition can be used for computing the
pseudoinverse of a matrix. The pseudoinverse of the matrix with singular value decomposition is \mathbf M^+ = \mathbf V \boldsymbol \Sigma^+ \mathbf U^\ast, where \boldsymbol \Sigma^+ is the pseudoinverse of \boldsymbol \Sigma, which is formed by replacing every non-zero diagonal entry by its
reciprocal and transposing the resulting matrix. The pseudoinverse is one way to solve
linear least squares problems.
Solving homogeneous linear equations A set of
homogeneous linear equations can be written as for a matrix , vector , and
zero vector . A typical situation is that is known and a non-zero is to be determined which satisfies the equation. Such an belongs to 's
null space and is sometimes called a (right) null vector of The vector can be characterized as a right-singular vector corresponding to a singular value of that is zero. This observation means that if is a
square matrix and has no vanishing singular value, the equation has no non-zero as a solution. It also means that if there are several vanishing singular values, any linear combination of the corresponding right-singular vectors is a valid solution. Analogously to the definition of a (right) null vector, a non-zero satisfying with denoting the conjugate transpose of is called a left null vector of
Total least squares minimization A
total least squares problem seeks the vector that minimizes the
2-norm of a vector under the constraint \| \mathbf x \| = 1. The solution turns out to be the right-singular vector of corresponding to the smallest singular value.
Range, null space and rank Another application of the SVD is that it provides an explicit representation of the
range and
null space of a matrix The right-singular vectors corresponding to vanishing singular values of span the null space of and the left-singular vectors corresponding to the non-zero singular values of span the range of For example, in the above
example the null space is spanned by the last row of and the range is spanned by the first three columns of As a consequence, the
rank of equals the number of non-zero singular values which is the same as the number of non-zero diagonal elements in \mathbf \Sigma. In
numerical linear algebra the singular values can be used to determine the
effective rank of a matrix, as
rounding error may lead to small but non-zero singular values in a rank deficient matrix. Singular values beyond a significant gap are assumed to be numerically equivalent to zero.
Low-rank matrix approximation Some practical applications need to solve the problem of
approximating a matrix with another matrix \tilde{\mathbf{M}}, said to be
truncated, which has a specific rank . In the case that the approximation is based on minimizing the
Frobenius norm of the difference between and {{tmath|\tilde{\mathbf M} }} under the constraint that \operatorname{rank}\bigl(\tilde{\mathbf{M}}\bigr) = r, it turns out that the solution is given by the SVD of namely \tilde{\mathbf{M}} = \mathbf{U} \tilde{\mathbf \Sigma} \mathbf{V}^*, where \tilde{\mathbf \Sigma} is the same matrix as \mathbf \Sigma except that it contains only the largest singular values (the other singular values are replaced by zero). This is known as the
Eckart–Young theorem, as it was proved by those two authors in 1936.
Image compression One practical consequence of the low-rank approximation given by SVD is that a
greyscale image represented as an m \times n matrix \mathbf{A}, can be efficiently represented by keeping the first k singular values and corresponding vectors. The truncated decomposition \mathbf{A}_k = \sum_{j=1}^k \sigma_j\mathbf{u}_j \mathbf{v}_j^T gives an image with the best 2-norm error out of all rank k approximations. Thus, the task becomes finding an approximation that balances retaining perceptual fidelity with the number of vectors required to reconstruct the image. Storing \mathbf{A}_k requires only k(n + m + 1) floating-point numbers compared to nm integers. This same idea extends to color images by applying this operation to each channel or stacking the channels into one matrix. Since the singular values of most natural images decay quickly, most of their variance is often captured by a small k. For a 1528 × 1225 greyscale image, we can achieve a relative error of .7% with as little as k = 100. In practice, however, computing the SVD can be too computationally expensive and the resulting compression is typically less storage efficient than a specialized algorithm such as
JPEG.
Separable models The SVD can be thought of as decomposing a matrix into a weighted, ordered sum of separable matrices. By separable, we mean that a matrix can be written as an
outer product of two vectors or, in coordinates, {{tmath|A_{ij} u_i v_j.}} Specifically, the matrix can be decomposed as, \mathbf{M} = \sum_i \mathbf{A}_i = \sum_i \sigma_i \mathbf U_i \otimes \mathbf V_i. Here and are the -th columns of the corresponding SVD matrices, are the ordered singular values, and each is separable. The SVD can be used to find the decomposition of an image processing filter into separable horizontal and vertical filters. Note that the number of non-zero is exactly the rank of the matrix. Separable models often arise in biological systems, and the SVD factorization is useful to analyze such systems. For example, some visual area V1 simple cells' receptive fields can be well described by a
Gabor filter in the space domain multiplied by a modulation function in the time domain. Thus, given a linear filter evaluated through, for example,
reverse correlation, one can rearrange the two spatial dimensions into one dimension, thus yielding a two-dimensional filter (space, time) which can be decomposed through SVD. The first column of in the SVD factorization is then a Gabor while the first column of represents the time modulation (or vice versa). One may then define an index of separability \alpha = \frac{\sigma_1^2}{\sum_i \sigma_i^2}, which is the fraction of the power in the matrix M which is accounted for by the first separable matrix in the decomposition.
Nearest orthogonal matrix It is possible to use the SVD of a square matrix to determine the
orthogonal matrix closest to The closeness of fit is measured by the
Frobenius norm of The solution is the product This intuitively makes sense because an orthogonal matrix would have the decomposition where is the identity matrix, so that if then the product amounts to replacing the singular values with ones. Equivalently, the solution is the unitary matrix of the Polar Decomposition \mathbf M = \mathbf R \mathbf P = \mathbf P' \mathbf R in either order of stretch and rotation, as described above. A similar problem, with interesting applications in
shape analysis, is the
orthogonal Procrustes problem, which consists of finding an orthogonal matrix which most closely maps to Specifically, \mathbf Q = \underset\Omega\operatorname{argmin} \|\mathbf{A}\boldsymbol{\Omega} - \mathbf{B}\|_F \quad\text{subject to}\quad \boldsymbol{\Omega}^\operatorname{T}\boldsymbol{\Omega} = \mathbf{I}, where \| \cdot \|_F denotes the Frobenius norm. This problem is equivalent to finding the nearest orthogonal matrix to a given matrix \mathbf M = \mathbf A^\operatorname{T} \mathbf B.
The Kabsch algorithm The
Kabsch algorithm (called
Wahba's problem in other fields) uses SVD to compute the optimal rotation (with respect to least-squares minimization) that will align a set of points with a corresponding set of points. It is used, among other applications, to compare the structures of molecules.
Principal Component Analysis The SVD can be used to construct the principal components in
principal component analysis as follows: Let \mathbf{X} \in \mathbb{R}^{N \times p} be a data matrix where each of the N rows is a (feature-wise) mean-centered observation, each of dimension p. The SVD of \mathbf{X} is: \mathbf{X} = \mathbf{V} \boldsymbol{\Sigma} \mathbf{U}^\ast We see that \mathbf{V} \boldsymbol{\Sigma} contains the scores of the rows of \mathbf{X} (i.e. each observation), and \mathbf{U} is the matrix whose columns are principal component loading vectors.
Signal processing The SVD and pseudoinverse have been successfully applied to
signal processing,
image processing and
big data (e.g., in genomic signal processing).
Other examples The SVD is also applied extensively to the study of linear
inverse problems and is useful in the analysis of regularization methods such as that of
Tikhonov. It is widely used in statistics, where it is related to
principal component analysis and to
correspondence analysis, and in
signal processing and
pattern recognition. It is also used in output-only
modal analysis, where the non-scaled
mode shapes can be determined from the singular vectors. Yet another usage is
latent semantic indexing in natural-language text processing. In general numerical computation involving linear or linearized systems, there is a universal constant that characterizes the regularity or singularity of a problem, which is the system's "condition number" \kappa := \sigma_\text{max} / \sigma_\text{min}. It often controls the error rate or convergence rate of a given computational scheme on such systems. The SVD also plays a crucial role in the field of
quantum information, in a form often referred to as the
Schmidt decomposition. Through it, states of two quantum systems are naturally decomposed, providing a necessary and sufficient condition for them to be
entangled: if the rank of the \mathbf \Sigma matrix is larger than one. One application of SVD to rather large matrices is in
numerical weather prediction, where
Lanczos methods are used to estimate the most linearly quickly growing few perturbations to the central numerical weather prediction over a given initial forward time period; i.e., the singular vectors corresponding to the largest singular values of the linearized propagator for the global weather over that time interval. The output singular vectors in this case are entire weather systems. These perturbations are then run through the full nonlinear model to generate an
ensemble forecast, giving a handle on some of the uncertainty that should be allowed for around the current central prediction. SVD has also been applied to reduced order modelling. The aim of reduced order modelling is to reduce the number of degrees of freedom in a
complex system which is to be modeled. SVD was coupled with
radial basis functions to interpolate solutions to three-dimensional unsteady flow problems. Interestingly, SVD has been used to improve gravitational waveform modeling by the ground-based gravitational-wave interferometer aLIGO. SVD can help to increase the accuracy and speed of waveform generation to support gravitational-waves searches and update two different waveform models. Singular value decomposition is used in
recommender systems to predict people's item ratings. Distributed algorithms have been developed for the purpose of calculating the SVD on clusters of commodity machines. Low-rank SVD has been applied for hotspot detection from spatiotemporal data with application to disease
outbreak detection. A combination of SVD and
higher-order SVD also has been applied for real time event detection from complex data streams (multivariate data with space and time dimensions) in
disease surveillance. In
astrodynamics, the SVD and its variants are used as an option to determine suitable maneuver directions for transfer trajectory design and
orbital station-keeping. The SVD can be used to measure the similarity between real-valued matrices. By measuring the angles between the singular vectors, the inherent two-dimensional structure of matrices is accounted for. This method was shown to outperform
cosine similarity and
Frobenius norm in most cases, including brain activity measurements from
neuroscience experiments. == Proof of existence ==