HOME
TheInfoList



In
linear algebra#REDIRECT Linear algebra#REDIRECT Linear algebra {{R from other capitalisation ...
{{R from other capitalisation ...
, the singular value decomposition (SVD) is a
factorization In mathematics, factorization (or factorisation, see English spelling differences) or factoring consists of writing a number or another mathematical object as a product of several ''factors'', usually smaller or simpler objects of the same kind. ...
of a
real Real may refer to: * Reality, the state of things as they exist, rather than as they may appear or may be thought to be Currencies * Brazilian real (R$) * Central American Republic real * Mexican real * Portuguese real * Spanish real * Spanish col ...
or
complex The UCL Faculty of Mathematical and Physical Sciences is one of the 11 constituent faculties of University College London (UCL). The Faculty, the UCL Faculty of Engineering Sciences and the UCL Faculty of the Built Envirornment (The Bartlett) toget ...
matrix Matrix or MATRIX may refer to: Science and mathematics * Matrix (mathematics), a rectangular array of numbers, symbols, or expressions * Matrix (logic), part of a formula in prenex normal form * Matrix (biology), the material in between a eukaryoti ...
that generalizes the
eigendecompositionIn linear algebra, eigendecomposition or sometimes spectral decomposition is the factorization of a matrix into a canonical form, whereby the matrix is represented in terms of its eigenvalues and eigenvectors. Only diagonalizable matrices can be fact ...
of a square
normal matrixIn mathematics, a complex square matrix is normal if it commutes with its conjugate transpose : The concept of normal matrices can be extended to normal operators on infinite dimensional normed spaces and to normal elements in C*-algebras. As in ...
to any m \times n matrix via an extension of the
polar decomposition In mathematics, the polar decomposition of a square real or complex matrix A is a factorization of the form A = U P, where U is a unitary matrix and P is a positive-semidefinite Hermitian matrix, both square and of the same size. Intuitively, if a ...
. Specifically, the singular value decomposition of an m \times n complex matrix is a factorization of the form \mathbf, where is an m \times m complex
unitary matrix In linear algebra, a complex square matrix is unitary if its conjugate transpose is also its inverse, that is, if : U^* U = UU^* = I, where is the identity matrix. In physics, especially in quantum mechanics, the Hermitian adjoint of a matrix ...
, \mathbf is an m \times n
rectangular diagonal matrix In linear algebra, a diagonal matrix is a matrix in which the entries outside the main diagonal are all zero; the term usually refers to square matrices. An example of a 2×2 diagonal matrix is \leftbegin 3 & 0 \\ 0 & 2 \end\right/math>, while an e ...
with non-negative real numbers on the diagonal, and is an n \times n complex unitary matrix. If is real, factorizations where and are real
orthogonal In mathematics, orthogonality is the generalization of the notion of perpendicularity to the linear algebra of bilinear forms. Two elements ''u'' and ''v'' of a vector space with bilinear form ''B'' are orthogonal when . Depending on the bilin ...
matrices exist, and they are the only valid factorizations in contexts where all variables are assumed to be real. In such contexts, the SVD is often denoted \mathbf. The diagonal entries \sigma_i = \Sigma_ of \mathbf are known as the
singular valueIn mathematics, in particular functional analysis, the singular values, or ''s''-numbers of a compact operator acting between Hilbert spaces ''X'' and ''Y'', are the square roots of non-negative eigenvalues of the self-adjoint operator (where ''T'' ...
s of . The number of non-zero singular values is equal to the
rank Rank is the relative position, value, worth, complexity, power, importance, authority, level, etc. of a person or object within a ranking, such as: Level or position in a hierarchical organization * Academic rank * Diplomatic rank * Hierarchy * Hi ...
of . The columns of and the columns of are called the left-singular vectors and right-singular vectors of , respectively. The SVD is not unique. It is always possible to choose the decomposition so that the singular values \Sigma_are in descending order. In this case, \mathbf (but not always and ) is uniquely determined by . The term sometimes refers to the compact SVD, a similar decomposition \mathbf = \mathbf in which \mathbf is square diagonal of size r \times r, where r \leq \min\ is the rank of , and has only the non-zero singular values. In this variant, is an m \times r semi-unitary matrix and \mathbf is an n \times r semi-unitary matrix, such that \mathbf = \mathbf = \mathbf_r. Mathematical applications of the SVD include computing the
pseudoinverse In mathematics, and in particular, algebra, a generalized inverse (or, g-inverse) of an element ''x'' is an element ''y'' that has some properties of an inverse element but not necessarily all of them. Generalized inverses can be defined in any ma ...
, matrix approximation, and determining the rank,
range Range may refer to: Geography * Range (geographic), a chain of hills or mountains; a somewhat linear, complex mountainous or hilly area (cordillera, sierra) ** Mountain range, a group of mountains bordered by lowlands * Range, a term used to ide ...
, and kernel (matrix), null space of a matrix. The SVD is also extremely useful in all areas of science, engineering, and statistics, such as signal processing, least squares fitting of data, and process control.


Intuitive interpretations

File:Singular_value_decomposition_visualisation.svg, Visualisation of the matrix multiplications in singular value decomposition


Rotation, coordinate scaling, and reflection

In the special case when is an real square matrix, the matrices and can be chosen to be real matrices too. In that case, "unitary" is the same as "
orthogonal In mathematics, orthogonality is the generalization of the notion of perpendicularity to the linear algebra of bilinear forms. Two elements ''u'' and ''v'' of a vector space with bilinear form ''B'' are orthogonal when . Depending on the bilin ...
". Then, interpreting both unitary matrices as well as the diagonal matrix, summarized here as , as a linear transformation of the space , the matrices and represent rotation (geometry), rotations or reflection (geometry), reflection of the space, while \mathbf represents the scaling matrix, scaling of each coordinate by the factor . Thus the SVD decomposition breaks down any invertible linear transformation of into a function composition, composition of three geometrical transformation (geometry), transformations: a rotation or reflection (), followed by a coordinate-by-coordinate scaling (geometry), scaling (\mathbf), followed by another rotation or reflection (). In particular, if has a positive determinant, then and can be chosen to be both reflections, or both rotations. If the determinant is negative, exactly one of them will have to be a reflection. If the determinant is zero, each can be independently chosen to be of either type. If the matrix is real but not square, namely with , it can be interpreted as a linear transformation from to . Then and can be chosen to be rotations of and , respectively; and \mathbf, besides scaling the first \min\ coordinates, also extends the vector with zeros, i.e. removes trailing coordinates, so as to turn into .


Singular values as semiaxes of an ellipse or ellipsoid

As shown in the figure, the singular values can be interpreted as the magnitude of the semiaxes of an ellipse in 2D. This concept can be generalized to -dimensional Euclidean space, with the singular values of any square matrix being viewed as the magnitude of the semiaxis of an -dimensional ellipsoid. Similarly, the singular values of any matrix can be viewed as the magnitude of the semiaxis of an -dimensional ellipsoid in -dimensional space, for example as an ellipse in a (tilted) 2D plane in a 3D space. Singular values encode magnitude of the semiaxis, while singular vectors encode direction. See #Geometric meaning, below for further details.


The columns of ''U'' and ''V'' are orthonormal bases

Since and are unitary, the columns of each of them form a set of orthonormal vectors, which can be regarded as basis vectors. The matrix maps the basis vector to the stretched unit vector . By the definition of a unitary matrix, the same is true for their conjugate transposes and , except the geometric interpretation of the singular values as stretches is lost. In short, the columns of , and are Orthonormal basis, orthonormal bases. When the \mathbf is a
normal matrixIn mathematics, a complex square matrix is normal if it commutes with its conjugate transpose : The concept of normal matrices can be extended to normal operators on infinite dimensional normed spaces and to normal elements in C*-algebras. As in ...
, and are both equal to the unitary matrix used to diagonalize \mathbf. However, when \mathbf is not normal but still diagonalizable, its
eigendecompositionIn linear algebra, eigendecomposition or sometimes spectral decomposition is the factorization of a matrix into a canonical form, whereby the matrix is represented in terms of its eigenvalues and eigenvectors. Only diagonalizable matrices can be fact ...
and singular value decomposition are distinct.


Geometric meaning

Because and are unitary, we know that the columns of yield an orthonormal basis of and the columns of yield an orthonormal basis of (with respect to the standard scalar products on these spaces). The linear transformation :\begin T : K^n \to K^m \\ x \mapsto \mathbfx \end has a particularly simple description with respect to these orthonormal bases: we have :T(\mathbf_i) = \sigma_i \mathbf_i, \qquad i = 1, \ldots, \min(m, n), where is the -th diagonal entry of \mathbf, and for . The geometric content of the SVD theorem can thus be summarized as follows: for every linear map one can find orthonormal bases of and such that maps the -th basis vector of to a non-negative multiple of the -th basis vector of , and sends the left-over basis vectors to zero. With respect to these bases, the map is therefore represented by a diagonal matrix with non-negative real diagonal entries. To get a more visual flavor of singular values and SVD factorization – at least when working on real vector spaces – consider the sphere of radius one in . The linear map maps this sphere onto an ellipsoid in . Non-zero singular values are simply the lengths of the Semi-minor axis, semi-axes of this ellipsoid. Especially when , and all the singular values are distinct and non-zero, the SVD of the linear map can be easily analyzed as a succession of three consecutive moves: consider the ellipsoid and specifically its axes; then consider the directions in sent by onto these axes. These directions happen to be mutually orthogonal. Apply first an isometry sending these directions to the coordinate axes of . On a second move, apply an endomorphism diagonalized along the coordinate axes and stretching or shrinking in each direction, using the semi-axes lengths of as stretching coefficients. The composition then sends the unit-sphere onto an ellipsoid isometric to . To define the third and last move , apply an isometry to this ellipsoid so as to carry it over . As can be easily checked, the composition coincides with .


Example

Consider the matrix :\mathbf = \begin 1 & 0 & 0 & 0 & 2 \\ 0 & 0 & 3 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 & 0 \end A singular value decomposition of this matrix is given by :\begin \mathbf &= \begin \color0 & \color-1 & \color0 & \color0 \\ \color-1 & \color0 & \color0 & \color0 \\ \color0 & \color0 & \color0 & \color-1 \\ \color0 & \color0 & \color-1 & \color0 \end \\[6pt] \boldsymbol &= \begin 3 & 0 & 0 & 0 & \color\mathit \\ 0 & \sqrt & 0 & 0 & \color\mathit \\ 0 & 0 & 2 & 0 & \color\mathit \\ 0 & 0 & 0 & \color\mathbf & \color\mathit \end \\[6pt] \mathbf^* &= \begin \color0 & \color0 & \color-1 & \color0 &\color0 \\ \color-\sqrt& \color0 & \color0 & \color0 &\color-\sqrt \\ \color0 & \color-1 & \color0 & \color0 &\color0 \\ \color0 & \color0 & \color0 & \color1 &\color0 \\ \color - \sqrt & \color0 & \color0 & \color0 & \color\sqrt \end \end The scaling matrix \mathbf is zero outside of the diagonal (grey italics) and one diagonal element is zero (red bold). Furthermore, because the matrices and are unitary matrix, unitary, multiplying by their respective conjugate transposes yields identity matrix, identity matrices, as shown below. In this case, because and are real valued, each is an orthogonal matrix. :\begin \mathbf \mathbf^* &= \begin 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end = \mathbf_4 \\[6pt] \mathbf \mathbf^* &= \begin 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 \end = \mathbf_5 \end This particular singular value decomposition is not unique. Choosing \mathbf V such that :\mathbf^* = \begin \color0 & \color1 & \color0 & \color0 & \color0 \\ \color0 & \color0 & \color1 & \color0 & \color0 \\ \color\sqrt & \color0 & \color0 & \color0 & \color\sqrt \\ \color\sqrt & \color0 & \color0 & \color\sqrt & \color-\sqrt \\ \color-\sqrt & \color0 & \color0 & \color\sqrt & \color\sqrt \end is also a valid singular value decomposition.


SVD and spectral decomposition


Singular values, singular vectors, and their relation to the SVD

A non-negative real number is a
singular valueIn mathematics, in particular functional analysis, the singular values, or ''s''-numbers of a compact operator acting between Hilbert spaces ''X'' and ''Y'', are the square roots of non-negative eigenvalues of the self-adjoint operator (where ''T'' ...
for if and only if there exist unit-length vectors \mathbf in ''Km'' and \mathbf in ''Kn'' such that :\mathbf = \sigma \mathbf \,\text \mathbf^*\mathbf = \sigma \mathbf. The vectors \mathbf and \mathbf are called left-singular and right-singular vectors for , respectively. In any singular value decomposition :\mathbf = \mathbf \boldsymbol \mathbf^* the diagonal entries of \mathbf are equal to the singular values of . The first columns of and are, respectively, left- and right-singular vectors for the corresponding singular values. Consequently, the above theorem implies that: * An matrix has at most distinct singular values. * It is always possible to find a orthogonal basis, unitary basis for with a subset of basis vectors spanning the left-singular vectors of each singular value of . * It is always possible to find a unitary basis for with a subset of basis vectors spanning the right-singular vectors of each singular value of . A singular value for which we can find two left (or right) singular vectors that are linearly independent is called ''degenerate''. If \mathbf_1 and \mathbf_2 are two left-singular vectors which both correspond to the singular value σ, then any normalized linear combination of the two vectors is also a left-singular vector corresponding to the singular value σ. The similar statement is true for right-singular vectors. The number of independent left and right-singular vectors coincides, and these singular vectors appear in the same columns of and corresponding to diagonal elements of \mathbf all with the same value ''σ''. As an exception, the left and right-singular vectors of singular value 0 comprise all unit vectors in the Kernel (linear algebra), kernel and cokernel, respectively, of , which by the rank–nullity theorem cannot be the same dimension if . Even if all singular values are nonzero, if then the cokernel is nontrivial, in which case is padded with orthogonal vectors from the cokernel. Conversely, if , then is padded by orthogonal vectors from the kernel. However, if the singular value of 0 exists, the extra columns of or already appear as left or right-singular vectors. Non-degenerate singular values always have unique left- and right-singular vectors, up to multiplication by a unit-phase factor ''e''i''φ'' (for the real case up to a sign). Consequently, if all singular values of a square matrix are non-degenerate and non-zero, then its singular value decomposition is unique, up to multiplication of a column of by a unit-phase factor and simultaneous multiplication of the corresponding column of by the same unit-phase factor. In general, the SVD is unique up to arbitrary unitary transformations applied uniformly to the column vectors of both and spanning the subspaces of each singular value, and up to arbitrary unitary transformations on vectors of and spanning the kernel and cokernel, respectively, of .


Relation to eigenvalue decomposition

The singular value decomposition is very general in the sense that it can be applied to any matrix, whereas eigenvalue decomposition can only be applied to Diagonalizable matrix, diagonalizable matrices. Nevertheless, the two decompositions are related. Given an SVD of , as described above, the following two relations hold: :\begin \mathbf^* \mathbf &= \mathbf \boldsymbol^* \mathbf^*\, \mathbf \boldsymbol \mathbf^* = \mathbf (\boldsymbol^* \boldsymbol) \mathbf^* \\ \mathbf \mathbf^* &= \mathbf \boldsymbol \mathbf^*\, \mathbf \boldsymbol^* \mathbf^* = \mathbf (\boldsymbol \boldsymbol^*) \mathbf^* \end The right-hand sides of these relations describe the eigenvalue decompositions of the left-hand sides. Consequently: * The columns of (right-singular vectors) are eigenvectors of . * The columns of (left-singular vectors) are eigenvectors of . * The non-zero elements of \mathbf (non-zero singular values) are the square roots of the non-zero eigenvalues of or . In the special case that is a
normal matrixIn mathematics, a complex square matrix is normal if it commutes with its conjugate transpose : The concept of normal matrices can be extended to normal operators on infinite dimensional normed spaces and to normal elements in C*-algebras. As in ...
, which by definition must be square, the Spectral theorem#Finite-dimensional case, spectral theorem says that it can be Unitary transform, unitarily Diagonalizable matrix, diagonalized using a basis of eigenvectors, so that it can be written for a unitary matrix and a diagonal matrix . When is also Positive-definite matrix, positive semi-definite, the decomposition is also a singular value decomposition. Otherwise, it can be recast as an SVD by moving the phase of each to either its corresponding or . The natural connection of the SVD to non-normal matrices is through the polar decomposition theorem: , where is positive semidefinite and normal, and is unitary. Thus, except for positive semi-definite normal matrices, the eigenvalue decomposition and SVD of , while related, differ: the eigenvalue decomposition is , where is not necessarily unitary and is not necessarily positive semi-definite, while the SVD is , where \mathbf is diagonal and positive semi-definite, and and are unitary matrices that are not necessarily related except through the matrix . While only defective matrix, non-defective square matrices have an eigenvalue decomposition, any m \times n matrix has a SVD.


Applications of the SVD


Pseudoinverse

The singular value decomposition can be used for computing the
pseudoinverse In mathematics, and in particular, algebra, a generalized inverse (or, g-inverse) of an element ''x'' is an element ''y'' that has some properties of an inverse element but not necessarily all of them. Generalized inverses can be defined in any ma ...
of a matrix. (Various authors use different notation for the pseudoinverse; here we use .) Indeed, the pseudoinverse of the matrix with singular value decomposition is : where is the pseudoinverse of , which is formed by replacing every non-zero diagonal entry by its Multiplicative inverse, reciprocal and transposing the resulting matrix. The pseudoinverse is one way to solve linear least squares (mathematics), linear least squares problems.


Solving homogeneous linear equations

A set of homogeneous linear equations can be written as for a matrix and 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 Kernel (matrix), 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 Vector norm#p-norm, 2-norm of a vector under the constraint . 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 Column space, 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, example the null space is spanned by the last two rows of and the range is spanned by the first three columns of . As a consequence, the
rank Rank is the relative position, value, worth, complexity, power, importance, authority, level, etc. of a person or object within a ranking, such as: Level or position in a hierarchical organization * Academic rank * Diplomatic rank * Hierarchy * Hi ...
of equals the number of non-zero singular values which is the same as the number of non-zero diagonal elements in \mathbf. 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 Low-rank_approximation, approximating a matrix with another matrix \tilde, said to be #Truncated SVD, truncated, which has a specific rank . In the case that the approximation is based on minimizing the Frobenius norm of the difference between and \tilde under the constraint that \operatorname\left(\tilde\right) = r, it turns out that the solution is given by the SVD of , namely : \tilde = \mathbf \tilde \mathbf^*, where \tilde is the same matrix as \mathbf 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 (although it was later found to have been known to earlier authors; see ).


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, A_ = u_i v_j. Specifically, the matrix can be decomposed as : \mathbf = \sum_i \mathbf_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, Spike-triggered average, 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, 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 in either order of stretch and rotation, as described above. A similar problem, with interesting applications in shape analysis (digital geometry), shape analysis, is the orthogonal Procrustes problem, which consists of finding an orthogonal matrix which most closely maps to . Specifically, : \mathbf = \underset\Omega\operatorname \, \mathbf\boldsymbol - \mathbf\, _F \quad\text\quad \boldsymbol^\textsf\boldsymbol = \mathbf, where \, \cdot \, _F denotes the Frobenius norm. This problem is equivalent to finding the nearest orthogonal matrix to a given matrix .


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.


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 regularization, 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 / \sigma_\text. 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 Quantum entanglement, entangled: if the rank of the \mathbf matrix is larger than one. One application of SVD to rather large matrices is in numerical weather prediction, where Lanczos algorithm, 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 forecasting, 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 singular value decomposition, 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.


Existence proofs

An eigenvalue of a matrix is characterized by the algebraic relation . When is Hermitian matrix, Hermitian, a variational characterization is also available. Let be a real symmetric matrix. Define :\begin f : \R^n \to \R \\ f(x) = \mathbf^\textsf \mathbf \mathbf \end By the extreme value theorem, this continuous function attains a maximum at some u when restricted to the unit sphere . By the Lagrange multipliers theorem, u necessarily satisfies :\nabla \mathbf^\textsf \mathbf \mathbf - \lambda \cdot \nabla \mathbf^\textsf \mathbf = 0 for some real number . The nabla symbol, , is the del operator (differentiation with respect to x). Using the symmetry of we obtain :\nabla \mathbf^\textsf \mathbf \mathbf - \lambda \cdot \nabla \mathbf^\textsf \mathbf = 2(\mathbf-\lambda \mathbf)\mathbf. Therefore , so u is a unit length eigenvector of . For every unit length eigenvector v of its eigenvalue is ''f''(v), so is the largest eigenvalue of . The same calculation performed on the orthogonal complement of ''u'' gives the next largest eigenvalue and so on. The complex Hermitian case is similar; there is a real-valued function of real variables. Singular values are similar in that they can be described algebraically or from variational principles. Although, unlike the eigenvalue case, Hermiticity, or symmetry, of is no longer required. This section gives these two arguments for existence of singular value decomposition.


Based on the spectral theorem

Let \mathbf be an complex matrix. Since \mathbf^* \mathbf is positive semi-definite and Hermitian, by the spectral theorem, there exists an unitary matrix \mathbf such that : \mathbf^* \mathbf^* \mathbf \mathbf = \bar\mathbf = \begin \mathbf & 0 \\ 0 & 0\end, where \mathbf is diagonal and positive definite, of dimension \ell\times \ell, with \ell the number of non-zero eigenvalues of \mathbf^* \mathbf (which can be shown to verify \ell\le\min(n,m)). Note that \mathbf is here by definition a matrix whose i-th column is the i-th eigenvector of \mathbf^* \mathbf, corresponding to the eigenvalue \bar_. Moreover, the j-th column of \mathbf, for j>\ell, is an eigenvector of \mathbf^* \mathbf with eigenvalue \bar_=0. This can be expressed by writing \mathbf as \mathbf=\begin\mathbf_1 &\mathbf_2\end, where the columns of \mathbf_1 and \mathbf_2 therefore contain the eigenvectors of \mathbf^* \mathbf corresponding to non-zero and zero eigenvalues, respectively. Using this rewriting of \mathbf, the equation becomes: : \begin \mathbf_1^* \\ \mathbf_2^* \end \mathbf^* \mathbf \begin \mathbf_1 & \mathbf_2 \end = \begin \mathbf_1^* \mathbf^* \mathbf \mathbf_1 & \mathbf_1^* \mathbf^* \mathbf \mathbf_2 \\ \mathbf_2^* \mathbf^* \mathbf \mathbf_1 & \mathbf_2^* \mathbf^* \mathbf \mathbf_2 \end = \begin \mathbf & 0 \\ 0 & 0 \end. This implies that : \mathbf_1^* \mathbf^* \mathbf \mathbf_1 = \mathbf, \quad \mathbf_2^* \mathbf^* \mathbf \mathbf_2 = \mathbf. Moreover, the second equation implies \mathbf\mathbf_2 = \mathbf. Finally, the unitary-ness of \mathbf translates, in terms of \mathbf_1 and \mathbf_2, into the following conditions: : \begin \mathbf_1^* \mathbf_1 &= \mathbf_1, \\ \mathbf_2^* \mathbf_2 &= \mathbf_2, \\ \mathbf_1 \mathbf_1^* + \mathbf_2 \mathbf_2^* &= \mathbf_, \end where the subscripts on the identity matrices are used to remark that they are of different dimensions. Let us now define : \mathbf_1 = \mathbf \mathbf_1 \mathbf^. Then, : \mathbf_1 \mathbf^\frac \mathbf_1^* = \mathbf \mathbf_1 \mathbf^ \mathbf^\frac \mathbf_1^* = \mathbf (\mathbf - \mathbf_2\mathbf_2^*) = \mathbf - (\mathbf\mathbf_2)\mathbf_2^* = \mathbf, since \mathbf\mathbf_2 = \mathbf. This can be also seen as immediate consequence of the fact that \mathbf\mathbf_1\mathbf_1^* = \mathbf. Note how this is equivalent to the observation that, if \_^\ell is the set of eigenvectors of \mathbf^* \mathbf corresponding to non-vanishing eigenvalues, then \_^\ell is a set of orthogonal vectors, and \_^\ell a (generally not complete) set of ''orthonormal'' vectors. This matches with the matrix formalism used above denoting with \mathbf_1 the matrix whose columns are \_^\ell, with \mathbf_2 the matrix whose columns are the eigenvectors of \mathbf^* \mathbf which vanishing eigenvalue, and \mathbf_1 the matrix whose columns are the vectors \_^\ell. We see that this is almost the desired result, except that \mathbf_1 and \mathbf_1 are in general not unitary, since they might not be square. However, we do know that the number of rows of \mathbf_1 is no smaller than the number of columns, since the dimensions of \mathbf is no greater than m and n. Also, since : \mathbf_1^*\mathbf_1 = \mathbf^\mathbf_1^*\mathbf^*\mathbf \mathbf_1 \mathbf^=\mathbf^\mathbf\mathbf^ = \mathbf, the columns in \mathbf_1 are orthonormal and can be extended to an orthonormal basis. This means that we can choose \mathbf_2 such that \mathbf = \begin \mathbf_1 & \mathbf_2 \end is unitary. For we already have to make it unitary. Now, define : \boldsymbol = \begin \begin \mathbf^\frac & 0 \\ 0 & 0 \end \\ 0 \end, where extra zero rows are added or removed to make the number of zero rows equal the number of columns of , and hence the overall dimensions of \boldsymbol equal to m\times n. Then : \begin \mathbf_1 & \mathbf_2 \end \begin \begin \mathbfD^\frac & 0 \\ 0 & 0 \end \\ 0 \end \begin \mathbf_1 & \mathbf_2 \end^* = \begin \mathbf_1 & \mathbf_2 \end \begin \mathbf^\frac \mathbf_1^* \\ 0 \end = \mathbf_1 \mathbf^\frac \mathbf_1^* = \mathbf, which is the desired result: : \mathbf = \mathbf \boldsymbol \mathbf^*. Notice the argument could begin with diagonalizing rather than (This shows directly that and have the same non-zero eigenvalues).


Based on variational characterization

The singular values can also be characterized as the maxima of , considered as a function of and , over particular subspaces. The singular vectors are the values of and where these maxima are attained. Let denote an matrix with real entries. Let be the unit (k-1)-sphere in \mathbb^k , and define \sigma(\mathbf, \mathbf) = \mathbf^\textsf \mathbf \mathbf,\ \mathbf \in S^, \mathbf \in S^. Consider the function restricted to . Since both and are compact space, compact sets, their Product topology, product is also compact. Furthermore, since is continuous, it attains a largest value for at least one pair of vectors and . This largest value is denoted and the corresponding vectors are denoted and . Since is the largest value of it must be non-negative. If it were negative, changing the sign of either or would make it positive and therefore larger. Statement. are left and right-singular vectors of with corresponding singular value ''σ''1. Proof. Similar to the eigenvalues case, by assumption the two vectors satisfy the Lagrange multiplier equation: :\nabla \sigma = \nabla \mathbf^\textsf \mathbf \mathbf - \lambda_1 \cdot \nabla \mathbf^\textsf \mathbf - \lambda_2 \cdot \nabla \mathbf^\textsf \mathbf After some algebra, this becomes :\begin \mathbf \mathbf_ &= 2 \lambda_1 \mathbf_1 + 0 \\ \mathbf^\textsf \mathbf_ &= 0 + 2 \lambda_2 \mathbf_1 \end Multiplying the first equation from left by \mathbf_1^\textsf and the second equation from left by \mathbf_1^\textsf and taking into account gives :\sigma_1 = 2\lambda_1 = 2\lambda_2. Plugging this into the pair of equations above, we have :\begin \mathbf \mathbf_1 &= \sigma_1 \mathbf_1\\ \mathbf^\textsf \mathbf_1 &= \sigma_1 \mathbf_1 \end This proves the statement. More singular vectors and singular values can be found by maximizing over normalized which are orthogonal to and , respectively. The passage from real to complex is similar to the eigenvalue case.


Calculating the SVD

The singular value decomposition can be computed using the following observations: * The left-singular vectors of are a set of orthonormal eigenvectors of . * The right-singular vectors of are a set of orthonormal eigenvectors of . * The non-negative singular values of (found on the diagonal entries of \mathbf) are the square roots of the non-negative eigenvalues of both and .


Numerical approach

The SVD of a matrix is typically computed by a two-step procedure. In the first step, the matrix is reduced to a bidiagonal matrix. This takes big O notation, O(''mn''2) floating-point operations (flop), assuming that ''m'' ≥ ''n''. The second step is to compute the SVD of the bidiagonal matrix. This step can only be done with an iterative method (as with eigenvalue algorithms). However, in practice it suffices to compute the SVD up to a certain precision, like the machine epsilon. If this precision is considered constant, then the second step takes O(''n'') iterations, each costing O(''n'') flops. Thus, the first step is more expensive, and the overall cost is O(''mn''2) flops . The first step can be done using Householder reflections for a cost of 4''mn''2 − 4''n''3/3 flops, assuming that only the singular values are needed and not the singular vectors. If ''m'' is much larger than ''n'' then it is advantageous to first reduce the matrix to a triangular matrix with the QR decomposition and then use Householder reflections to further reduce the matrix to bidiagonal form; the combined cost is 2''mn''2 + 2''n''3 flops . The second step can be done by a variant of the QR algorithm for the computation of eigenvalues, which was first described by . The LAPACK subroutine DBDSQR implements this iterative method, with some modifications to cover the case where the singular values are very small . Together with a first step using Householder reflections and, if appropriate, QR decomposition, this forms the DGESVD routine for the computation of the singular value decomposition. The same algorithm is implemented in the GNU Scientific Library (GSL). The GSL also offers an alternative method that uses a one-sided Jacobi orthogonalization in step 2 . This method computes the SVD of the bidiagonal matrix by solving a sequence of 2 × 2 SVD problems, similar to how the Jacobi eigenvalue algorithm solves a sequence of 2 × 2 eigenvalue methods . Yet another method for step 2 uses the idea of divide-and-conquer eigenvalue algorithms . There is an alternative way that does not explicitly use the eigenvalue decomposition. Usually the singular value problem of a matrix is converted into an equivalent symmetric eigenvalue problem such as , , or : \begin \mathbf & \mathbf \\ \mathbf^* & \mathbf \end. The approaches that use eigenvalue decompositions are based on the QR algorithm, which is well-developed to be stable and fast. Note that the singular values are real and right- and left- singular vectors are not required to form similarity transformations. One can iteratively alternate between the QR decomposition and the LQ decomposition to find the real diagonal Hermitian matrix, Hermitian matrices. The QR decomposition gives and the LQ decomposition of gives . Thus, at every iteration, we have , update and repeat the orthogonalizations. Eventually, this iteration between QR decomposition and LQ decomposition produces left- and right- unitary singular matrices. This approach cannot readily be accelerated, as the QR algorithm can with spectral shifts or deflation. This is because the shift method is not easily defined without using similarity transformations. However, this iterative approach is very simple to implement, so is a good choice when speed does not matter. This method also provides insight into how purely orthogonal/unitary transformations can obtain the SVD.


Analytic result of 2 × 2 SVD

The singular values of a 2 × 2 matrix can be found analytically. Let the matrix be \mathbf = z_0\mathbf + z_1\sigma_1 + z_2\sigma_2 + z_3\sigma_3 where z_i \in \mathbb are complex numbers that parameterize the matrix, is the identity matrix, and \sigma_i denote the Pauli matrices. Then its two singular values are given by :\begin \sigma_\pm &= \sqrt \\ &= \sqrt \end


Reduced SVDs

In applications it is quite unusual for the full SVD, including a full unitary decomposition of the null-space of the matrix, to be required. Instead, it is often sufficient (as well as faster, and more economical for storage) to compute a reduced version of the SVD. The following can be distinguished for an ''m''×''n'' matrix ''M'' of rank ''r'':


Thin SVD

The thin, or economy-sized, SVD of a matrix ''M'' is given by :\mathbf = \mathbf_k \boldsymbol_k \mathbf^*_k, where :k = \operatorname(m, n), the matrices ''U''''k'' and ''V''''k'' contain only the first ''k'' columns of ''U'' and ''V'', and Σ''k'' contains only the first ''k'' singular values from Σ. The matrix ''U''''k'' is thus ''m''×''k'', Σ''k'' is ''k''×''k'' diagonal, and ''V''''k''* is ''k''×''n''. The thin SVD uses significantly less space and computation time if ''k'' ≪ max(''m'', ''n''). The first stage in its calculation will usually be a QR decomposition of ''M'', which can make for a significantly quicker calculation in this case.


Compact SVD

:\mathbf = \mathbf_r \boldsymbol_r \mathbf_r^* Only the ''r'' column vectors of ''U'' and ''r'' row vectors of ''V*'' corresponding to the non-zero singular values Σ''r'' are calculated. The remaining vectors of ''U'' and ''V*'' are not calculated. This is quicker and more economical than the thin SVD if ''r'' ≪ min(''m'', ''n''). The matrix ''U''''r'' is thus ''m''×''r'', Σ''r'' is ''r''×''r'' diagonal, and ''V''''r''* is ''r''×''n''.


Truncated SVD

:\tilde = \mathbf_t \boldsymbol_t \mathbf_t^* Only the ''t'' column vectors of ''U'' and ''t'' row vectors of ''V*'' corresponding to the ''t'' largest singular values Σ''t'' are calculated. The rest of the matrix is discarded. This can be much quicker and more economical than the compact SVD if ''t''≪''r''. The matrix ''U''''t'' is thus ''m''×''t'', Σ''t'' is ''t''×''t'' diagonal, and ''V''''t''* is ''t''×''n''. Of course the truncated SVD is no longer an exact decomposition of the original matrix ''M'', but as discussed #Low-rank matrix approximation, above, the approximate matrix \tilde is in a very useful sense the closest approximation to ''M'' that can be achieved by a matrix of rank ''t''.


Norms


Ky Fan norms

The sum of the ''k'' largest singular values of ''M'' is a matrix norm, the Ky Fan ''k''-norm of ''M''. The first of the Ky Fan norms, the Ky Fan 1-norm, is the same as the operator norm of ''M'' as a linear operator with respect to the Euclidean norms of ''K''''m'' and ''K''''n''. In other words, the Ky Fan 1-norm is the operator norm induced by the standard ''ℓ''2 Euclidean inner product. For this reason, it is also called the operator 2-norm. One can easily verify the relationship between the Ky Fan 1-norm and singular values. It is true in general, for a bounded operator ''M'' on (possibly infinite-dimensional) Hilbert spaces :\, \mathbf \, = \, \mathbf^* \mathbf \, ^\frac But, in the matrix case, (''M* M'')1/2 is a
normal matrixIn mathematics, a complex square matrix is normal if it commutes with its conjugate transpose : The concept of normal matrices can be extended to normal operators on infinite dimensional normed spaces and to normal elements in C*-algebras. As in ...
, so , , ''M* M'', , 1/2 is the largest eigenvalue of (''M* M'')1/2, i.e. the largest singular value of ''M''. The last of the Ky Fan norms, the sum of all singular values, is the trace class, trace norm (also known as the 'nuclear norm'), defined by , , ''M'', , = Tr[(''M* M'')1/2] (the eigenvalues of ''M* M'' are the squares of the singular values).


Hilbert–Schmidt norm

The singular values are related to another norm on the space of operators. Consider the Hilbert–Schmidt operator, Hilbert–Schmidt inner product on the matrices, defined by :\langle \mathbf, \mathbf \rangle = \operatorname \left (\mathbf^*\mathbf \right ). So the induced norm is :\, \mathbf \, = \sqrt = \sqrt. Since the trace is invariant under unitary equivalence, this shows :\, \mathbf \, = \sqrt where are the singular values of . This is called the Frobenius norm, Schatten 2-norm, or Hilbert–Schmidt norm of . Direct calculation shows that the Frobenius norm of coincides with: :\sqrt. In addition, the Frobenius norm and the trace norm (the nuclear norm) are special cases of the Schatten norm.


Variations and generalizations


Mode-''k'' representation

M = U S V^\textsf can be represented using mode-k multiplication, mode-''k'' multiplication of matrix S applying \times_1 U then \times_2 V on the result; that is M = S \times_1 U\times_2 V.


Tensor SVD

Two types of tensor decompositions exist, which generalise the SVD to multi-way arrays. One of them decomposes a tensor into a sum of rank-1 tensors, which is called a tensor rank decomposition. The second type of decomposition computes the orthonormal subspaces associated with the different factors appearing in the tensor product of vector spaces in which the tensor lives. This decomposition is referred to in the literature as the Higher-order singular value decomposition, higher-order SVD (HOSVD) or Tucker decomposition, Tucker3/TuckerM. In addition, multilinear principal component analysis in multilinear subspace learning involves the same mathematical operations as Tucker decomposition, being used in a different context of dimensionality reduction.


Scale-invariant SVD

The singular values of a matrix ''A'' are uniquely defined and are invariant with respect to left and/or right unitary transformations of ''A''. In other words, the singular values of ''UAV'', for unitary ''U'' and ''V'', are equal to the singular values of ''A''. This is an important property for applications in which it is necessary to preserve Euclidean distances and invariance with respect to rotations. The Scale-Invariant SVD, or SI-SVD, is analogous to the conventional SVD except that its uniquely-determined singular values are invariant with respect to diagonal transformations of ''A''. In other words, the singular values of ''DAE'', for invertible diagonal matrices ''D'' and ''E'', are equal to the singular values of ''A''. This is an important property for applications for which invariance to the choice of units on variables (e.g., metric versus imperial units) is needed.


Higher-order SVD of functions (HOSVD) – numerical reconstruction – TP model transformation

TP model transformation numerically reconstruct the HOSVD of functions. For further details please visit: * HOSVD-based canonical form of TP functions and qLPV models * Tensor product model transformation * TP model transformation in control theory


Bounded operators on Hilbert spaces

The factorization can be extended to a bounded operator ''M'' on a separable Hilbert space ''H''. Namely, for any bounded operator ''M'', there exist a partial isometry ''U'', a unitary ''V'', a measure space (''X'', ''μ''), and a non-negative measurable ''f'' such that :\mathbf = \mathbf T_f \mathbf^* where T_f is the multiplication operator, multiplication by ''f'' on ''L''2(''X'', ''μ''). This can be shown by mimicking the linear algebraic argument for the matricial case above. ''VT''''f''''V''* is the unique positive square root of ''M*M'', as given by the Borel functional calculus for self adjoint operators. The reason why ''U'' need not be unitary is because, unlike the finite-dimensional case, given an isometry ''U''1 with nontrivial kernel, a suitable ''U''2 may not be found such that :\begin U_1 \\ U_2 \end is a unitary operator. As for matrices, the singular value factorization is equivalent to the polar decomposition for operators: we can simply write :\mathbf = \mathbf \mathbf^* \cdot \mathbf T_f \mathbf^* and notice that ''U V*'' is still a partial isometry while ''VT''''f''''V''* is positive.


Singular values and compact operators

The notion of singular values and left/right-singular vectors can be extended to compact operator on Hilbert space as they have a discrete spectrum. If is compact, every non-zero in its spectrum is an eigenvalue. Furthermore, a compact self adjoint operator can be diagonalized by its eigenvectors. If is compact, so is . Applying the diagonalization result, the unitary image of its positive square root has a set of orthonormal eigenvectors corresponding to strictly positive eigenvalues . For any , : \mathbf \psi = \mathbf T_f \mathbf^* \psi = \sum_i \left \langle \mathbf T_f \mathbf^* \psi, \mathbf e_i \right \rangle \mathbf e_i = \sum_i \sigma_i \left \langle \psi, \mathbf e_i \right \rangle \mathbf e_i, where the series converges in the norm topology on . Notice how this resembles the expression from the finite-dimensional case. are called the singular values of . (resp. ) can be considered the left-singular (resp. right-singular) vectors of . Compact operators on a Hilbert space are the closure of finite-rank operators in the uniform operator topology. The above series expression gives an explicit such representation. An immediate consequence of this is: :Theorem. is compact if and only if is compact.


History

The singular value decomposition was originally developed by differential geometry, differential geometers, who wished to determine whether a real bilinear form could be made equal to another by independent orthogonal transformations of the two spaces it acts on. Eugenio Beltrami and Camille Jordan discovered independently, in 1873 and 1874 respectively, that the singular values of the bilinear forms, represented as a matrix, form a Complete set of invariants, complete set of invariant (mathematics), invariants for bilinear forms under orthogonal substitutions. James Joseph Sylvester also arrived at the singular value decomposition for real square matrices in 1889, apparently independently of both Beltrami and Jordan. Sylvester called the singular values the ''canonical multipliers'' of the matrix ''A''. The fourth mathematician to discover the singular value decomposition independently is Léon Autonne, Autonne in 1915, who arrived at it via the polar decomposition. The first proof of the singular value decomposition for rectangular and complex matrices seems to be by Carl Eckart and Gale J. Young in 1936; they saw it as a generalization of the Principal axis theorem, principal axis transformation for Hermitian matrix, Hermitian matrices. In 1907, Erhard Schmidt defined an analog of singular values for integral operators (which are compact, under some weak technical assumptions); it seems he was unaware of the parallel work on singular values of finite matrices. This theory was further developed by Émile Picard in 1910, who is the first to call the numbers \sigma_k ''singular values'' (or in French, ''valeurs singulières''). Practical methods for computing the SVD date back to Ervand Kogbetliantz, Kogbetliantz in 1954, 1955 and Magnus Hestenes, Hestenes in 1958. resembling closely the Jacobi eigenvalue algorithm, which uses plane rotations or Givens rotations. However, these were replaced by the method of Gene H. Golub, Gene Golub and William Kahan published in 1965, which uses Householder transformations or reflections. In 1970, Golub and Christian Reinsch published a variant of the Golub/Kahan algorithm that is still the one most-used today.


See also


Notes


References

* * * * * * * Halldor, Bjornsson and Venegas, Silvia A. (1997)
"A manual for EOF and SVD analyses of climate data"
McGill University, CCGCR Report No. 97-1, Montréal, Québec, 52pp. * * * * * * * *


External links



{{DEFAULTSORT:Singular Value Decomposition Singular value decomposition, Linear algebra Numerical linear algebra Matrix theory Matrix decompositions Functional analysis