Singular value decomposition

From Wikipedia, the free encyclopedia

Template:Short description Template:DMCA Template:CS1 config

Page Module:Message box/ambox.css has no content.

File:Singular-Value-Decomposition.svg
Illustration of the singular value decomposition UฮฃV* of a real 2 ร— 2 matrix M.Template:Ubli

In linear algebra, the singular value decomposition (SVD) is a factorization of a real or complex matrix into a rotation, followed by a scaling, followed by another rotation. It generalizes the eigendecomposition of a square normal matrix with an orthonormal eigenbasis to any mร—n matrix. It is related to the polar decomposition.

Specifically, the singular value decomposition of an mร—n complex matrix ๐Œ is a factorization of the form ๐Œ=๐”๐œฎ๐•โˆ—, where ๐” is an mร—m complex unitary matrix, ๐œฎ is an mร—n rectangular diagonal matrix with non-negative real numbers on the diagonal, ๐• is an nร—n complex unitary matrix, and ๐•โˆ— is the conjugate transpose of ๐•. Such decompositions always exist for any complex matrix. If ๐Œ is real, then ๐” and ๐• can be guaranteed to be real orthogonal matrices; in such contexts, the SVD is often denoted ๐”๐œฎ๐•๐–ณ.

The diagonal entries ฯƒi=๐œฎii of ๐œฎ are uniquely determined by ๐Œ up to reordering and are known as the singular values of ๐Œ. The number of non-zero singular values is equal to the rank of ๐Œ. The columns of ๐” and the columns of ๐• are called left-singular vectors and right-singular vectors of ๐Œ, respectively. They form two sets of orthonormal bases ๐ฎ1,โ€ฆ,๐ฎm and ๐ฏ1,โ€ฆ,๐ฏn, and if they are sorted so that the singular values ฯƒi equal to zero are all in the highest-numbered columns (or rows), the singular value decomposition can be written as

โˆ€(i,j)โˆˆ{1,,m}ร—{1,,n}, ๐Œij=๐ฎi๐œฎ๐ฏjโˆ—=โˆ‘k=1k=r๐ฎi,kฯƒk๐ฏj,kโ€พ,

where ๐ฎi is the row vector corresponding to the i-th row of U, ๐ฎi,k is the k-th coordinate of ๐ฎi, ฯƒk is the k-th singular value on ๐œฎ's diagonal, and rโ‰คmin{m,n} is the rank of ๐Œ.

With the matrices of section Example (below),

๐Œ4,5=๐ฎ4๐œฎ๐ฏ5โˆ—=โˆ‘k=1k=3๐ฎ4,kฯƒk๐ฏ5,kโ€พ=(0โ‹…3โ‹…0)+(0โ‹…5โ‹…(โˆ’0,8))+(โˆ’1โ‹…2โ‹…0)+((0โ‹…0โ‹…0))=0.

The SVD is not unique. However, it is always possible to choose the decomposition such that the singular values ๐œฎii are in descending order. In this case, ๐œฎ (but not ๐” and ๐•) is uniquely determined by ๐Œ.

The terminology "SVD" sometimes refers to the compact SVD, a similar decomposition ๐Œ=๐”r๐œฎr๐•โˆ—r in which ๐œฎr is square diagonal of size rร—r, where rโ‰คmin{m,n} is the rank of ๐Œ, and has only the non-zero singular values. In this variant, ๐”r is an mร—r semi-unitary matrix and ๐•r is an nร—r semi-unitary matrix, such that ๐”rโˆ—๐”r=๐•โˆ—r๐•r=๐ˆr.

Mathematical applications of the SVD include computing the pseudoinverse, matrix approximation, and determining the rank, range, and null space of a matrix. The SVD is also extremely useful in many areas of science, engineering, and statistics, such as signal processing, least squares fitting of data, and process control.

Intuitive interpretations

File:Singular value decomposition.gif
Animated illustration of the SVD of a 2D, real shearing matrix M. First, we see the unit disc in blue together with the two canonical unit vectors. We then see the actions of M, which distorts the disk to an ellipse. The SVD decomposes M into three simple transformations: an initial rotation V*, a scaling ฮฃ along the coordinate axes, and a final rotation U. The lengths ฯƒ1 and ฯƒ2 of the semi-axes of the ellipse are the singular values of M, namely ฮฃ1,1 and ฮฃ2,2.
File:Singular value decomposition visualisation.svg
Visualization of the matrix multiplications in singular value decomposition

Rotation, coordinate scaling, and reflection

In the special case when ๐Œ is an mร—m real square matrix, the matrices ๐” and ๐•โˆ— can be chosen to be real mร—m matrices too. In that case, "unitary" is the same as "orthogonal". Then, interpreting both unitary matrices as well as the diagonal matrix, summarized here as ๐€, as a linear transformation ๐ฑโ†ฆ๐€๐ฑ of the space โ„m, the matrices ๐” and ๐•โˆ— represent rotations or reflections of the space, while ๐œฎ represents the scaling of each coordinate ๐ฑi by the factor ฯƒi. Thus the SVD decomposition breaks down any linear transformation of โ„m into a composition of three geometrical transformations: a rotation or reflection (๐•โˆ—), followed by a coordinate-by-coordinate scaling (๐œฎ), followed by another rotation or reflection (๐”).

In particular, if ๐Œ has a positive determinant, then ๐” and ๐•โˆ— can be chosen to be both rotations with reflections, or both rotations without reflections.[citation needed] If the determinant is negative, exactly one of them will have 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 mร—n with mโ‰ n, it can be interpreted as a linear transformation from โ„n to โ„m. Then ๐” and ๐•โˆ— can be chosen to be rotations/reflections of โ„m and โ„n, respectively; and ๐œฎ, besides scaling the first min{m,n} coordinates, also extends the vector with zeros, i.e. removes trailing coordinates, so as to turn โ„n into โ„m.

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 n-dimensional Euclidean space, with the singular values of any nร—n square matrix being viewed as the magnitude of the semiaxis of an n-dimensional ellipsoid. Similarly, the singular values of any mร—n matrix can be viewed as the magnitude of the semiaxis of an n-dimensional ellipsoid in m-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 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 ๐•i to the stretched unit vector ฯƒi๐”i. 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 bases. When ๐Œ is a positive-semidefinite Hermitian matrix, ๐” and ๐• are both equal to the unitary matrix used to diagonalize ๐Œ. However, when ๐Œ is not positive-semidefinite and Hermitian but still diagonalizable, its eigendecomposition and singular value decomposition are distinct.

Relation to the four fundamental subspaces

  • The first r columns of ๐” are a basis of the column space of ๐Œ.
  • The last mโˆ’r columns of ๐” are a basis of the null space of ๐Œโˆ—.
  • The first r columns of ๐• are a basis of the column space of ๐Œโˆ— (the row space of ๐Œ in the real case).
  • The last nโˆ’r columns of ๐• are a basis of the null space of ๐Œ.

Geometric meaning

Because ๐” and ๐• are unitary, we know that the columns ๐”1,โ€ฆ,๐”m of ๐” yield an orthonormal basis of Km and the columns ๐•1,โ€ฆ,๐•n of ๐• yield an orthonormal basis of Kn (with respect to the standard scalar products on these spaces).

The linear transformation

T:{Knโ†’Kmxโ†ฆ๐Œx}

has a particularly simple description with respect to these orthonormal bases: we have

T(๐•i)=ฯƒi๐”i,i=1,โ€ฆ,min{m,n},

where ฯƒi is the i-th diagonal entry of ๐œฎ, and T(๐•i)=0 for i>min{m,n}.

The geometric content of the SVD theorem can thus be summarized as follows: for every linear map T:Knโ†’Km one can find orthonormal bases of Kn and Km such that T maps the i-th basis vector of Kn to a non-negative multiple of the i-th basis vector of Km, and sends the leftover basis vectors to zero. With respect to these bases, the map T 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 S of radius one in โ„n. The linear map T maps this sphere onto an ellipsoid in โ„m. Non-zero singular values are simply the lengths of the semi-axes of this ellipsoid. Especially when n=m, and all the singular values are distinct and non-zero, the SVD of the linear map T can be easily analyzed as a succession of three consecutive moves: consider the ellipsoid T(S) and specifically its axes; then consider the directions in โ„n sent by T onto these axes. These directions happen to be mutually orthogonal. Apply first an isometry ๐•โˆ— sending these directions to the coordinate axes of โ„n. On a second move, apply an endomorphism ๐ƒ diagonalized along the coordinate axes and stretching or shrinking in each direction, using the semi-axis lengths of T(S) as scaling coefficients. The composition ๐ƒโˆ˜๐•โˆ— then sends the unit-sphere onto an ellipsoid isometric to T(S). To define the third and last move, apply an isometry ๐” to this ellipsoid to obtain T(S). As can be easily checked, the composition ๐”โˆ˜๐ƒโˆ˜๐•โˆ— coincides with T.

Example

Consider the 4ร—5 matrix

๐Œ=[10002003000000002000].

A singular value decomposition of this matrix is given by ๐”๐œฎ๐•โˆ—:

๐”=[0โˆ’100โˆ’1000000โˆ’100โˆ’10]๐œฎ=[300000500000200000๐ŸŽ0]๐•โˆ—=[00โˆ’100โˆ’0.2000โˆ’0.80โˆ’100000010โˆ’0.80000.2].

The scaling matrix ๐œฎ is zero outside of the diagonal (gray italics) and one diagonal element is zero (red bold, light blue bold in dark mode). Furthermore, because the matrices ๐” and ๐•โˆ— are unitary, multiplying by their respective conjugate transposes yields identity matrices, as shown below. In this case, because ๐” and ๐•โˆ— are real valued, each is an orthogonal matrix.

๐”๐”โˆ—=[1000010000100001]=๐ˆ4๐•๐•โˆ—=[1000001000001000001000001]=๐ˆ5.

This particular singular value decomposition is not unique. For instance, we can keep ๐” and ๐œฎ the same, but change the last two rows of ๐•โˆ— such that

๐•โˆ—=[00โˆ’100โˆ’0.2000โˆ’0.80โˆ’10000.4000.5โˆ’0.1โˆ’0.4000.50.1],

and get an equally valid singular value decomposition. As the matrix ๐Œ has rank 3, it has only three nonzero singular values. In taking the product ๐”๐œฎ๐•โˆ—, the final column of ๐” and the final two rows of ๐•โˆ— are multiplied by zero, so have no effect on the matrix product, and can be replaced by any unit vectors which are orthogonal to the first three and to each other.

The compact SVD, ๐Œ=๐”r๐œฎr๐•rโˆ—, eliminates these superfluous rows, columns, and singular values:

๐”r=[0โˆ’10โˆ’10000000โˆ’1]๐œฎr=[300050002]๐•rโˆ—=[00โˆ’100โˆ’0.2000โˆ’0.80โˆ’1000].

SVD and spectral decomposition

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

A non-negative real number ฯƒ is a singular value for ๐Œ if and only if there exist unit vectors ๐ฎ in Km and ๐ฏ in Kn such that ๐Œ๐ฏ=ฯƒ๐ฎ,๐Œโˆ—๐ฎ=ฯƒ๐ฏ.

The vectors ๐ฎ and ๐ฏ are called left-singular and right-singular vectors for ฯƒ, respectively.

In any singular value decomposition ๐Œ=๐”๐œฎ๐•โˆ— the diagonal entries of ๐œฎ are equal to the singular values of ๐Œ. The first p=min(m,n) columns of ๐” and ๐• are, respectively, left- and right-singular vectors for the corresponding singular values. Consequently, the above theorem implies that:

  • An mร—n matrix ๐Œ has at most p distinct singular values.
  • It is always possible to find a unitary basis ๐” for Km 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 Kn 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 ๐ฎ1 and ๐ฎ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 ๐œฎ all with the same value ฯƒ.

As an exception, the left and right-singular vectors of singular value 0 comprise all unit vectors in the cokernel and kernel, respectively, of ๐Œ, which by the rankโ€“nullity theorem cannot be the same dimension if mโ‰ n. Even if all singular values are nonzero, if m>n then the cokernel is nontrivial, in which case ๐” is padded with mโˆ’n orthogonal vectors from the cokernel. Conversely, if m<n, then ๐• is padded by nโˆ’m 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 eiฯ† (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 ๐• of ๐Œ.

Relation to eigenvalue decomposition

The singular value decomposition is very general in the sense that it can be applied to any mร—n matrix, whereas eigenvalue decomposition can only be applied to square diagonalizable matrices. Nevertheless, the two decompositions are related.

If ๐Œ has SVD ๐Œ=๐”๐œฎ๐•โˆ—, the following two relations hold: ๐Œโˆ—๐Œ=๐•๐œฎโˆ—๐”โˆ—๐”๐œฎ๐•โˆ—=๐•(๐œฎโˆ—๐œฎ)๐•โˆ—,๐Œ๐Œโˆ—=๐”๐œฎ๐•โˆ—๐•๐œฎโˆ—๐”โˆ—=๐”(๐œฎ๐œฎโˆ—)๐”โˆ—.

The right-hand sides of these relations describe the eigenvalue decompositions of the left-hand sides. Consequently:

  • The columns of ๐• (referred to as right-singular vectors) are eigenvectors of ๐Œโˆ—๐Œ.
  • The columns of ๐” (referred to as left-singular vectors) are eigenvectors of ๐Œ๐Œโˆ—.
  • The non-zero elements of ๐œฎ (non-zero singular values) are the square roots of the non-zero eigenvalues of ๐Œโˆ—๐Œ or ๐Œ๐Œโˆ—.

In the special case of ๐Œ being a normal matrix, and thus also square, the spectral theorem ensures that it can be unitarily diagonalized using a basis of eigenvectors, and thus decomposed as ๐Œ=๐”๐ƒ๐”โˆ— for some unitary matrix ๐” and diagonal matrix ๐ƒ with complex elements ฯƒi along the diagonal. When ๐Œ is positive semi-definite, ฯƒi will be non-negative real numbers so that the decomposition ๐Œ=๐”๐ƒ๐”โˆ— is also a singular value decomposition. Otherwise, it can be recast as an SVD by moving the phase eiฯ† of each ฯƒi to either its corresponding ๐•i or ๐”i. 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 matrices, the eigenvalue decomposition and SVD of ๐Œ, while related, differ: the eigenvalue decomposition is ๐Œ=๐”๐ƒ๐”โˆ’1, where ๐” is not necessarily unitary and ๐ƒ is not necessarily positive semi-definite, while the SVD is ๐Œ=๐”๐œฎ๐•โˆ—, where ๐œฎ is diagonal and positive semi-definite, and ๐” and ๐• are unitary matrices that are not necessarily related except through the matrix ๐Œ. While only non-defective square matrices have an eigenvalue decomposition, any mร—n matrix has a SVD.

Applications of the SVD

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 ๐Œ+=๐•๐œฎ+๐”โˆ—, where ๐œฎ+ is the pseudoinverse of ๐œฎ, 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 โ€–๐ฑโ€–=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 two rows 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 ๐œฎ. 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 ๐Œ~, said to be truncated, which has a specific rank r. In the case that the approximation is based on minimizing the Frobenius norm of the difference between ๐Œ and ๐Œ~ under the constraint that rank(๐Œ~)=r, it turns out that the solution is given by the SVD of ๐Œ, namely ๐Œ~=๐”๐œฎ~๐•โˆ—, where ๐œฎ~ is the same matrix as ๐œฎ except that it contains only the r 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.[a]

Image compression

File:Svd compression.jpg
Singular-value decomposition (SVD) image compression of a 1996 Chevrolet Corvette photograph. The original RGB image (upper-left) is compared with rank 1, 10, and 100 reconstructions.

One practical consequence of the low-rank approximation given by SVD is that a greyscale image represented as an mร—n matrix ๐€, can be efficiently represented by keeping the first k singular values and corresponding vectors. The truncated decomposition

๐€k=โˆ‘j=1kฯƒj๐ฎj๐ฏjT 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 ๐€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.[1] 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, Aij=uivj. Specifically, the matrix ๐Œ can be decomposed as,

๐Œ=โˆ‘i๐€i=โˆ‘iฯƒi๐”iโŠ—๐•i.

Here ๐”i and ๐•i are the i-th columns of the corresponding SVD matrices, ฯƒi are the ordered singular values, and each ๐€i 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 ฯƒi is exactly the rank of the matrix.[citation needed] 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[2] 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

ฮฑ=ฯƒ12โˆ‘iฯƒi2,

which is the fraction of the power in the matrix M which is accounted for by the first separable matrix in the decomposition.[3]

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 ๐”๐•โˆ—.[4]Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. 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, is the orthogonal Procrustes problem, which consists of finding an orthogonal matrix ๐ which most closely maps ๐€ to ๐. Specifically, ๐=argminฮฉโ€–๐€๐œดโˆ’๐โ€–Fsubject to๐œดT๐œด=๐ˆ, where โ€–โ‹…โ€–F denotes the Frobenius norm.

This problem is equivalent to finding the nearest orthogonal matrix to a given matrix ๐Œ=๐€T๐.

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:Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found.

Let ๐—โˆˆโ„Nร—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 ๐— is: ๐—=๐•๐œฎ๐”โˆ—

We see that ๐•๐œฎ contains the scores of the rows of ๐— (i.e. each observation), and ๐” is the matrix whose columns are principal component loading vectors.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found.

Signal processing

The SVD and pseudoinverse have been successfully applied to signal processing,[5] image processing[6] and big data (e.g., in genomic signal processing).[7][8][9][10]

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" ฮบ:=ฯƒmax/ฯƒmin. It often controls the error rate or convergence rate of a given computational scheme on such systems.[11][12]

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 ๐œฎ 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.[13]

Interestingly, SVD has been used to improve gravitational waveform modeling by the ground-based gravitational-wave interferometer aLIGO.[14] 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.[15] Distributed algorithms have been developed for the purpose of calculating the SVD on clusters of commodity machines.[16]

Low-rank SVD has been applied for hotspot detection from spatiotemporal data with application to disease outbreak detection.[17] 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.[18]

In astrodynamics, the SVD and its variants are used as an option to determine suitable maneuver directions for transfer trajectory design[19] and orbital station-keeping.[20]

The SVD can be used to measure the similarity between real-valued matrices.[21] 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

An eigenvalue ฮป of a matrix ๐Œ is characterized by the algebraic relation ๐Œ๐ฎ=ฮป๐ฎ. When ๐Œ is Hermitian, a variational characterization is also available. Let ๐Œ be a real nร—n symmetric matrix. Define

f:{โ„nโ†’โ„๐ฑโ†ฆ๐ฑT๐Œ๐ฑ

By the extreme value theorem, this continuous function attains a maximum at some ๐ฎ when restricted to the unit sphere {โ€–๐ฑโ€–=1}. By the Lagrange multipliers theorem, ๐ฎ necessarily satisfies โˆ‡๐ฎT๐Œ๐ฎโˆ’ฮปโ‹…โˆ‡๐ฎT๐ฎ=๐ŸŽ for some real number ฮป. The nabla symbol, โˆ‡, is the del operator (differentiation with respect to ๐ฑ). Using the symmetry of ๐Œ we obtain โˆ‡๐ฑT๐Œ๐ฑโˆ’ฮปโ‹…โˆ‡๐ฑT๐ฑ=2(๐Œโˆ’ฮป๐ˆ)๐ฑ.

Therefore ๐Œ๐ฎ=ฮป๐ฎ, so ๐ฎ is a unit length eigenvector of ๐Œ. For every unit length eigenvector ๐ฏ of ๐Œ its eigenvalue is f(๐ฏ), so ฮป is the largest eigenvalue of ๐Œ. The same calculation performed on the orthogonal complement of ๐ฎ gives the next largest eigenvalue and so on. The complex Hermitian case is similar; there f(๐ฑ)=๐ฑโˆ—๐Œ๐ฑ is a real-valued function of 2n 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 ๐Œ be an mร—n complex matrix. Since ๐Œโˆ—๐Œ is positive semi-definite and Hermitian, by the spectral theorem, there exists an nร—n unitary matrix ๐• such that ๐•โˆ—๐Œโˆ—๐Œ๐•=๐ƒยฏ=[๐ƒ000], where ๐ƒ is diagonal and positive definite, of dimension โ„“ร—โ„“, with โ„“ the number of non-zero eigenvalues of ๐Œโˆ—๐Œ (which can be shown to verify โ„“โ‰คmin(n,m)). Note that ๐• is here by definition a matrix whose i-th column is the i-th eigenvector of ๐Œโˆ—๐Œ, corresponding to the eigenvalue ๐ƒยฏii. Moreover, the j-th column of ๐•, for j>โ„“, is an eigenvector of ๐Œโˆ—๐Œ with eigenvalue ๐ƒยฏjj=0. This can be expressed by writing ๐• as ๐•=[๐•1๐•2], where the columns of ๐•1 and ๐•2 therefore contain the eigenvectors of ๐Œโˆ—๐Œ corresponding to non-zero and zero eigenvalues, respectively. Using this rewriting of ๐•, the equation becomes: [๐•1โˆ—๐•2โˆ—]๐Œโˆ—๐Œ[๐•1๐•2]=[๐•1โˆ—๐Œโˆ—๐Œ๐•1๐•1โˆ—๐Œโˆ—๐Œ๐•2๐•2โˆ—๐Œโˆ—๐Œ๐•1๐•2โˆ—๐Œโˆ—๐Œ๐•2]=[๐ƒ000].

This implies that ๐•1โˆ—๐Œโˆ—๐Œ๐•1=๐ƒ,๐•2โˆ—๐Œโˆ—๐Œ๐•2=๐ŸŽ.

Moreover, the second equation implies ๐Œ๐•2=๐ŸŽ.[b] Finally, the unitary-ness of ๐• translates, in terms of ๐•1 and ๐•2, into the following conditions: ๐•1โˆ—๐•1=๐ˆ1,๐•2โˆ—๐•2=๐ˆ2,๐•1๐•1โˆ—+๐•2๐•2โˆ—=๐ˆ12, where the subscripts on the identity matrices are used to remark that they are of different dimensions.

Let us now define ๐”1=๐Œ๐•1๐ƒโˆ’12.

Then, ๐”1๐ƒ12๐•1โˆ—=๐Œ๐•1๐ƒโˆ’12๐ƒ12๐•1โˆ—=๐Œ(๐ˆโˆ’๐•2๐•2โˆ—)=๐Œโˆ’(๐Œ๐•2)๐•2โˆ—=๐Œ,

since ๐Œ๐•2=๐ŸŽ. This can be also seen as immediate consequence of the fact that ๐Œ๐•1๐•1โˆ—=๐Œ. This is equivalent to the observation that if {๐’—i}i=1โ„“ is the set of eigenvectors of ๐Œโˆ—๐Œ corresponding to non-vanishing eigenvalues {ฮปi}i=1โ„“, then {๐Œ๐’—i}i=1โ„“ is a set of orthogonal vectors, and {ฮปiโˆ’1/2๐Œ๐’—i}|i=1โ„“ is a (generally not complete) set of orthonormal vectors. This matches with the matrix formalism used above denoting with ๐•1 the matrix whose columns are {๐’—i}i=1โ„“, with ๐•2 the matrix whose columns are the eigenvectors of ๐Œโˆ—๐Œ with vanishing eigenvalue, and ๐”1 the matrix whose columns are the vectors {ฮปiโˆ’1/2๐Œ๐’—i}|i=1โ„“.

We see that this is almost the desired result, except that ๐”1 and ๐•1 are in general not unitary, since they might not be square. However, we do know that the number of rows of ๐”1 is no smaller than the number of columns, since the dimensions of ๐ƒ is no greater than m and n. Also, since ๐”1โˆ—๐”1=๐ƒโˆ’12๐•1โˆ—๐Œโˆ—๐Œ๐•1๐ƒโˆ’12=๐ƒโˆ’12๐ƒ๐ƒโˆ’12=๐ˆ๐Ÿ, the columns in ๐”1 are orthonormal and can be extended to an orthonormal basis. This means that we can choose ๐”2 such that ๐”=[๐”1๐”2] is unitary.

For ๐•1 we already have ๐•2 to make it unitary. Now, define ๐œฎ=[[๐ƒ12000]0],

where extra zero rows are added or removed to make the number of zero rows equal the number of columns of ๐”2, and hence the overall dimensions of ๐œฎ equal to mร—n. Then [๐”1๐”2][[D12000]0][๐•1๐•2]โˆ—=[๐”1๐”2][๐ƒ12๐•1โˆ—0]=๐”1๐ƒ12๐•1โˆ—=๐Œ, which is the desired result: ๐Œ=๐”๐œฎ๐•โˆ—.

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 ๐ฎT๐Œ๐ฏ, 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 mร—n matrix with real entries. Let Skโˆ’1 be the unit (kโˆ’1)-sphere in โ„k, and define ฯƒ(๐ฎ,๐ฏ)=๐ฎT๐Œ๐ฏ, ๐ฎโˆˆSmโˆ’1, ๐ฏโˆˆSnโˆ’1.

Consider the function ฯƒ restricted to Smโˆ’1ร—Snโˆ’1. Since both Smโˆ’1 and Snโˆ’1 are compact sets, their product is also compact. Furthermore, since ฯƒ is continuous, it attains a largest value for at least one pair of vectors ๐ฎ in Smโˆ’1 and ๐ฏ in Snโˆ’1. This largest value is denoted ฯƒ1 and the corresponding vectors are denoted ๐ฎ1 and ๐ฏ1. Since ฯƒ1 is the largest value of ฯƒ(๐ฎ,๐ฏ) it must be non-negative. If it were negative, changing the sign of either ๐ฎ1 or ๐ฏ1 would make it positive and therefore larger.

Page Template:Math theorem/styles.css has no content.

Statementโ€”๐ฎ1 and ๐ฏ1 are left and right-singular vectors of ๐Œ with corresponding singular value ฯƒ1.

Page Template:Math proof/styles.css has no content.

Proof

Similar to the eigenvalues case, by assumption the two vectors satisfy the Lagrange multiplier equation: โˆ‡ฯƒ=โˆ‡๐ฎT๐Œ๐ฏโˆ’ฮป1โ‹…โˆ‡๐ฎT๐ฎโˆ’ฮป2โ‹…โˆ‡๐ฏT๐ฏ

After some algebra, this becomes ๐Œ๐ฏ1=2ฮป1๐ฎ1+0,๐ŒT๐ฎ1=0+2ฮป2๐ฏ1.

Multiplying the first equation from left by ๐ฎ1T and the second equation from left by ๐ฏ1T and taking โ€–๐ฎโ€–=โ€–๐ฏโ€–=1 into account gives ฯƒ1=2ฮป1=2ฮป2.

Plugging this into the pair of equations above, we have ๐Œ๐ฏ1=ฯƒ1๐ฎ1,๐ŒT๐ฎ1=ฯƒ1๐ฏ1.

This proves the statement.

More singular vectors and singular values can be found by maximizing ฯƒ(๐ฎ,๐ฏ) over normalized ๐ฎ and ๐ฏ which are orthogonal to ๐ฎ1 and ๐ฏ1, respectively.

The passage from real to complex is similar to the eigenvalue case.

Calculating the SVD

One-sided Jacobi algorithm

One-sided Jacobi algorithm is an iterative algorithm,[22] where a matrix is iteratively transformed into a matrix with orthogonal columns. The elementary iteration is given as a Jacobi rotation, Mโ†MJ(p,q,ฮธ), where the angle ฮธ of the Jacobi rotation matrix J(p,q,ฮธ) is chosen such that after the rotation the columns with numbers p and q become orthogonal. The indices (p,q) are swept cyclically, (p=1m,q=p+1m), where m is the number of columns.

After the algorithm has converged, the singular value decomposition M=USVT is recovered as follows: the matrix V is the accumulation of Jacobi rotation matrices, the matrix U is given by normalising the columns of the transformed matrix M, and the singular values are given as the norms of the columns of the transformed matrix M.

Two-sided Jacobi algorithm

Two-sided Jacobi SVD algorithmโ€”a generalization of the Jacobi eigenvalue algorithmโ€”is an iterative algorithm where a square matrix is iteratively transformed into a diagonal matrix. If the matrix is not square the QR decomposition is performed first and then the algorithm is applied to the R matrix. The elementary iteration zeroes a pair of off-diagonal elements by first applying a Givens rotation to symmetrize the pair of elements and then applying a Jacobi transformation to zero them, Mโ†JTGMJ where G is the Givens rotation matrix with the angle chosen such that the given pair of off-diagonal elements become equal after the rotation, and where J is the Jacobi transformation matrix that zeroes these off-diagonal elements. The iterations proceeds exactly as in the Jacobi eigenvalue algorithm: by cyclic sweeps over all off-diagonal elements.

After the algorithm has converged the resulting diagonal matrix contains the singular values. The matrices U and V are accumulated as follows: Uโ†UGTJ,Vโ†VJ.

Numerical approach

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-zero singular values of ๐Œ (found on the diagonal entries of ๐œฎ) are the square roots of the non-zero eigenvalues of both ๐Œโˆ—๐Œ and ๐Œ๐Œโˆ—.

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 order O(mn2) 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(mn2) flops.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found.

The first step can be done using Householder reflections for a cost of 4mn2โˆ’4n3/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 2mn2+2n3 flops.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found.

The second step can be done by a variant of the QR algorithm for the computation of eigenvalues, which was first described by Golub and Kahan in 1965.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. The LAPACK subroutine DBDSQRLua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. implements this iterative method, with some modifications to cover the case where the singular values are very small.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. Together with a first step using Householder reflections and, if appropriate, QR decomposition, this forms the DGESVD routineLua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. 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.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. 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.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. Yet another method for step 2 uses the idea of divide-and-conquer eigenvalue algorithms.Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found.

There is an alternative way that does not explicitly use the eigenvalue decomposition.[23] Usually the singular value problem of a matrix ๐Œ is converted into an equivalent symmetric eigenvalue problem such as ๐Œ๐Œโˆ—, ๐Œโˆ—๐Œ, or

[๐ŸŽ๐Œ๐Œโˆ—๐ŸŽ].

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 matrices. The QR decomposition gives ๐Œโ‡’๐๐‘ and the LQ decomposition of ๐‘ gives ๐‘โ‡’๐‹๐โˆ—. Thus, at every iteration, we have ๐Œโ‡’๐๐‹๐โˆ—, update ๐Œโ‡๐‹ and repeat the orthogonalizations. Eventually,[<span title="Script error: No such module "decodeEncode".">clarification needed] 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 ๐Œ=z0๐ˆ+z1ฯƒ1+z2ฯƒ2+z3ฯƒ3

where ziโˆˆโ„‚ are complex numbers that parameterize the matrix, ๐ˆ is the identity matrix, and ฯƒi denote the Pauli matrices. Then its two singular values are given by

ฯƒยฑ=|z0|2+|z1|2+|z2|2+|z3|2ยฑ(|z0|2+|z1|2+|z2|2+|z3|2)2โˆ’|z02โˆ’z12โˆ’z22โˆ’z32|2=|z0|2+|z1|2+|z2|2+|z3|2ยฑ2(Rez0z1โˆ—)2+(Rez0z2โˆ—)2+(Rez0z3โˆ—)2+(Imz1z2โˆ—)2+(Imz2z3โˆ—)2+(Imz3z1โˆ—)2

Reduced SVDs

File:Reduced Singular Value Decompositions.svg
Visualization of Reduced SVD variants. From top to bottom: 1: Full SVD, 2: Thin SVD (remove columns of U not corresponding to rows of V*), 3: Compact SVD (remove vanishing singular values and corresponding columns/rows in U and V*), 4: Truncated SVD (keep only largest t singular values and corresponding columns/rows in U and V*)

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 ๐Œ of rank r:

Thin SVD

The thin, or economy-sized, SVD of a matrix ๐Œ is given by[24]

๐Œ=๐”k๐œฎk๐•kโˆ—,

where k=min(m,n), the matrices ๐”k and ๐•k contain only the first k columns of ๐” and ๐•, and ๐œฎk contains only the first k singular values from ๐œฎ. The matrix ๐”k is thus mร—k, ๐œฎk is kร—k diagonal, and ๐•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 ๐Œ, which can make for a significantly quicker calculation in this case.

Compact SVD

The compact SVD of a matrix ๐Œ is given by

๐Œ=๐”r๐œฎr๐•rโˆ—.

Only the r column vectors of ๐” and r row vectors of ๐•โˆ— corresponding to the non-zero singular values ๐œฎr are calculated. The remaining vectors of ๐” and ๐•โˆ— are not calculated. This is quicker and more economical than the thin SVD if rโ‰ชmin(m,n). The matrix ๐”r is thus mร—r, ๐œฎr is rร—r diagonal, and ๐•rโˆ— is rร—n.

Truncated SVD

In many applications the number r of the non-zero singular values is large making even the Compact SVD impractical to compute. In such cases, the smallest singular values may need to be truncated to compute only tโ‰ชr non-zero singular values. The truncated SVD is no longer an exact decomposition of the original matrix ๐Œ, but rather provides the optimal low-rank matrix approximation ๐Œ~ by any matrix of a fixed rank t

๐Œ~=๐”t๐œฎt๐•tโˆ—,

where matrix ๐”t is mร—t, ๐œฎt is tร—t diagonal, and ๐•tโˆ— is tร—n. Only the t column vectors of ๐” and t row vectors of ๐•โˆ— corresponding to the t largest singular values ๐œฎt are calculated. This can be much quicker and more economical than the compact SVD if tโ‰ชr, but requires a completely different toolset of numerical solvers.

In applications that require an approximation to the Mooreโ€“Penrose inverse of the matrix ๐Œ, the smallest singular values of ๐Œ are of interest, which are more challenging to compute compared to the largest ones.

Truncated SVD is employed in latent semantic indexing.[25]

Norms

Ky Fan norms

The sum of the k largest singular values of ๐Œ is a matrix norm, the Ky Fan k-norm of ๐Œ.[26]

The first of the Ky Fan norms, the Ky Fan 1-norm, is the same as the operator norm of ๐Œ as a linear operator with respect to the Euclidean norms of Km and Kn. 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 ๐Œ on (possibly infinite-dimensional) Hilbert spaces

โ€–๐Œโ€–=โ€–๐Œโˆ—๐Œโ€–12

But, in the matrix case, (๐Œโˆ—๐Œ)1/2 is a normal matrix, so โ€–๐Œโˆ—๐Œโ€–1/2 is the largest eigenvalue of (๐Œโˆ—๐Œ)1/2, i.e. the largest singular value of ๐Œ.

The last of the Ky Fan norms, the sum of all singular values, is the trace norm (also known as the 'nuclear norm'), defined by โ€–๐Œโ€–=Tr(๐Œโˆ—๐Œ)1/2 (the eigenvalues of ๐Œโˆ—๐Œ 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 inner product on the nร—n matrices, defined by

โŸจ๐Œ,๐โŸฉ=tr(๐โˆ—๐Œ).

So the induced norm is

โ€–๐Œโ€–=โŸจ๐Œ,๐ŒโŸฉ=tr(๐Œโˆ—๐Œ).

Since the trace is invariant under unitary equivalence, this shows

โ€–๐Œโ€–=|โˆ‘iฯƒi2

where ฯƒi 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 ๐Œ=(mij) coincides with:

|โˆ‘ij|mij|2.

In addition, the Frobenius norm and the trace norm (the nuclear norm) are special cases of the Schatten norm.

Variations and generalizations

Scale-invariant SVD

The singular values of a matrix ๐€ are uniquely defined and are invariant with respect to left and/or right unitary transformations of ๐€. In other words, the singular values of ๐”๐€๐•, for unitary matrices ๐” and ๐•, are equal to the singular values of ๐€. 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,[27] is analogous to the conventional SVD except that its uniquely-determined singular values are invariant with respect to diagonal transformations of ๐€. In other words, the singular values of ๐ƒ๐€๐„, for invertible diagonal matrices ๐ƒ and ๐„, are equal to the singular values of ๐€. 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.

Bounded operators on Hilbert spaces

The factorization ๐Œ=๐”๐œฎ๐•โˆ— can be extended to a bounded operator ๐Œ on a separable Hilbert space H. Namely, for any bounded operator ๐Œ, there exist a partial isometry ๐”, a unitary ๐•, a measure space (X,ฮผ), and a non-negative measurable f such that

๐Œ=๐”Tf๐•โˆ—

where Tf is the multiplication by f on L2(X,ฮผ).

This can be shown by mimicking the linear algebraic argument for the matrix case above. ๐•Tf๐•โˆ— is the unique positive square root of ๐Œโˆ—๐Œ, as given by the Borel functional calculus for self-adjoint operators. The reason why ๐” need not be unitary is that, unlike the finite-dimensional case, given an isometry U1 with nontrivial kernel, a suitable U2 may not be found such that

[U1U2]

is a unitary operator.

As for matrices, the singular value factorization is equivalent to the polar decomposition for operators: we can simply write

๐Œ=๐”๐•โˆ—โ‹…๐•Tf๐•โˆ—

and notice that ๐”๐•โˆ— is still a partial isometry while ๐•Tf๐•โˆ— 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 T 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 Tf has a set of orthonormal eigenvectors {ei} corresponding to strictly positive eigenvalues {ฯƒi}. For any ฯˆ in H,

๐Œฯˆ=๐”Tf๐•โˆ—ฯˆ=โˆ‘iโŸจ๐”Tf๐•โˆ—ฯˆ,๐”eiโŸฉ๐”ei=โˆ‘iฯƒiโŸจฯˆ,๐•eiโŸฉ๐”ei,

where the series converges in the norm topology on H. Notice how this resembles the expression from the finite-dimensional case. ฯƒi are called the singular values of ๐Œ. {๐”ei} (resp. {๐•ei}) 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 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 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 ๐€. The fourth mathematician to discover the singular value decomposition independently is 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;[28] they saw it as a generalization of the principal axis transformation for 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 ฯƒk singular values (or in French, valeurs singuliรจres).

Practical methods for computing the SVD date back to Kogbetliantz in 1954โ€“1955 and Hestenes in 1958,[29] resembling closely the Jacobi eigenvalue algorithm, which uses plane rotations or Givens rotations. However, these were replaced by the method of Gene Golub and William Kahan published in 1965,Lua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. which uses Householder transformations or reflections. In 1970, Golub and Christian Reinsch published a variant of the Golub/Kahan algorithmLua error in package.lua at line 80: module 'Module:Footnotes/anchor_id_list' not found. that is still the one most-used today.

See also

Script error: No such module "Template wrapper".

Notes

Page Template:Reflist/styles.css has no content.

  1. ^ Although, it was later found to have been known to earlier authors; see Template:Harvp.
  2. ^ To see this, we just have to notice that Tr(๐•2โˆ—๐Œโˆ—๐Œ๐•2)=โ€–๐Œ๐•2โ€–2, and remember that โ€–Aโ€–=0โ‡”A=0.

Footnotes

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content.Holmes, Mark (2023). Introduction to Scientific Computing and Data Analysis, 2nd Ed. Springer. ISBN 978-3-031-22429-4.
  2. ^ Page Module:Citation/CS1/styles.css has no content.DeAngelis, G. C.; Ohzawa, I.; Freeman, R. D. (October 1995). "Receptive-field dynamics in the central visual pathways". Trends Neurosci. 18 (10): 451โ€“8. doi:10.1016/0166-2236(95)94496-R. PMID 8545912.
  3. ^ Page Module:Citation/CS1/styles.css has no content.Depireux, D. A.; Simon, J. Z.; Klein, D. J.; Shamma, S. A. (March 2001). "Spectro-temporal response field characterization with dynamic ripples in ferret primary auditory cortex". J. Neurophysiol. 85 (3): 1220โ€“34. doi:10.1152/jn.2001.85.3.1220. PMID 11247991.
  4. ^ The Singular Value Decomposition in Symmetric (Lowdin) Orthogonalization and Data Compression
  5. ^ Page Module:Citation/CS1/styles.css has no content.Sahidullah, Md.; Kinnunen, Tomi (March 2016). "Local spectral variability features for speaker verification". Digital Signal Processing. 50: 1โ€“11. doi:10.1016/j.dsp.2015.10.011.
  6. ^ Page Module:Citation/CS1/styles.css has no content.Mademlis, Ioannis; Tefas, Anastasios; Pitas, Ioannis (2018). "Regularized SVD-Based Video Frame Saliency for Unsupervised Activity Video Summarization". 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE. pp. 2691โ€“2695. doi:10.1109/ICASSP.2018.8462274. ISBN 978-1-5386-4658-8.
  7. ^ Page Module:Citation/CS1/styles.css has no content.Alter, O.; Brown, P. O.; Botstein, D. (September 2000). "Singular Value Decomposition for Genome-Wide Expression Data Processing and Modeling". PNAS. 97 (18): 10101โ€“10106. doi:10.1073/pnas.97.18.10101. PMC 27718. PMID 10963673.
  8. ^ Page Module:Citation/CS1/styles.css has no content.Alter, O.; Golub, G. H. (November 2004). "Integrative Analysis of Genome-Scale Data by Using Pseudoinverse Projection Predicts Novel Correlation Between DNA Replication and RNA Transcription". PNAS. 101 (47): 16577โ€“16582. doi:10.1073/pnas.0406767101. PMC 534520. PMID 15545604.
  9. ^ Page Module:Citation/CS1/styles.css has no content.Alter, O.; Golub, G. H. (August 2006). "Singular Value Decomposition of Genome-Scale mRNA Lengths Distribution Reveals Asymmetry in RNA Gel Electrophoresis Band Broadening". PNAS. 103 (32): 11828โ€“11833. doi:10.1073/pnas.0604756103. PMC 1524674. PMID 16877539.
  10. ^ Page Module:Citation/CS1/styles.css has no content.Bertagnolli, N. M.; Drake, J. A.; Tennessen, J. M.; Alter, O. (November 2013). "SVD Identifies Transcript Length Distribution Functions from DNA Microarray Data and Reveals Evolutionary Forces Globally Affecting GBM Metabolism". PLOS ONE. 8 (11) e78913. doi:10.1371/journal.pone.0078913. PMC 3839928. PMID 24282503. Highlight.
  11. ^ Page Module:Citation/CS1/styles.css has no content.Edelman, Alan (1992). "On the distribution of a scaled condition number" (PDF). Math. Comp. 58 (197): 185โ€“190. doi:10.1090/S0025-5718-1992-1106966-2.
  12. ^ Page Module:Citation/CS1/styles.css has no content.Shen, Jianhong (Jackie) (2001). "On the singular values of Gaussian random matrices". Linear Alg. Appl. 326 (1โ€“3): 1โ€“14. doi:10.1016/S0024-3795(00)00322-0.
  13. ^ Page Module:Citation/CS1/styles.css has no content.Walton, S.; Hassan, O.; Morgan, K. (2013). "Reduced order modelling for unsteady fluid flow using proper orthogonal decomposition and radial basis functions". Applied Mathematical Modelling. 37 (20โ€“21): 8930โ€“8945. doi:10.1016/j.apm.2013.04.025.
  14. ^ Page Module:Citation/CS1/styles.css has no content.Setyawati, Y.; Ohme, F.; Khan, S. (2019). "Enhancing gravitational waveform model through dynamic calibration". Physical Review D. 99 (2) 024010. arXiv:1810.07060. doi:10.1103/PhysRevD.99.024010.
  15. ^ Page Module:Citation/CS1/styles.css has no content.Sarwar, Badrul; Karypis, George; Konstan, Joseph A. & Riedl, John T. (2000). Application of Dimensionality Reduction in Recommender System โ€“ A Case Study (Technical report 00-043). University of Minnesota. hdl:11299/215429.
  16. ^ Page Module:Citation/CS1/styles.css has no content.Bosagh Zadeh, Reza; Carlsson, Gunnar (2013). "Dimension Independent Matrix Square Using MapReduce". arXiv:1304.1467 [cs.DS].
  17. ^ Page Module:Citation/CS1/styles.css has no content.Fanaee Tork, Hadi; Gama, Joรฃo (September 2014). "Eigenspace method for spatiotemporal hotspot detection". Expert Systems. 32 (3): 454โ€“464. arXiv:1406.3506. doi:10.1111/exsy.12088.
  18. ^ Page Module:Citation/CS1/styles.css has no content.Fanaee Tork, Hadi; Gama, Joรฃo (May 2015). "EigenEvent: An Algorithm for Event Detection from Complex Data Streams in Syndromic Surveillance". Intelligent Data Analysis. 19 (3): 597โ€“616. arXiv:1406.3496. doi:10.3233/IDA-150734.
  19. ^ Page Module:Citation/CS1/styles.css has no content.Muralidharan, Vivek; Howell, Kathleen (2023). "Stretching directions in cislunar space: Applications for departures and transfer design". Astrodynamics. 7 (2): 153โ€“178. doi:10.1007/s42064-022-0147-z.
  20. ^ Page Module:Citation/CS1/styles.css has no content.Muralidharan, Vivek; Howell, Kathleen (2022). "Leveraging stretching directions for stationkeeping in Earth-Moon halo orbits". Advances in Space Research. 69 (1): 620โ€“646. doi:10.1016/j.asr.2021.10.028.
  21. ^ Page Module:Citation/CS1/styles.css has no content.Albers, Jasper; Kurth, Anno; Gutzen, Robin; Morales-Gregorio, Aitor; Denker, Michael; Gruen, Sonja; van Albada, Sacha; Diesmann, Markus (2025). "Assessing the Similarity of Real Matrices with Arbitrary Shape". PRX Life. 3 (2) 023005. arXiv:2403.17687. doi:10.1103/PRXLife.3.023005.
  22. ^ Page Module:Citation/CS1/styles.css has no content.Rijk, P.P.M. de (1989). "A one-sided Jacobi algorithm for computing the singular value decomposition on a vector computer". SIAM J. Sci. Stat. Comput. 10 (2): 359โ€“371. doi:10.1137/0910023.
  23. ^ mathworks.co.kr/matlabcentral/fileexchange/12674-simple-svd
  24. ^ Page Module:Citation/CS1/styles.css has no content.Demmel, James (2000). "Decompositions". Templates for the Solution of Algebraic Eigenvalue Problems. By Bai, Zhaojun; Demmel, James; Dongarra, Jack J.; Ruhe, Axel; van der Vorst, Henk A. Society for Industrial and Applied Mathematics. doi:10.1137/1.9780898719581. ISBN 978-0-89871-471-5.
  25. ^ Page Module:Citation/CS1/styles.css has no content.Chicco, D; Masseroli, M (2015). "Software suite for gene and protein annotation prediction and similarity search". IEEE/ACM Transactions on Computational Biology and Bioinformatics. 12 (4): 837โ€“843. doi:10.1109/TCBB.2014.2382127. hdl:11311/959408. PMID 26357324.
  26. ^ Page Module:Citation/CS1/styles.css has no content.Fan, Ky. (1951). "Maximum properties and inequalities for the eigenvalues of completely continuous operators". Proceedings of the National Academy of Sciences of the United States of America. 37 (11): 760โ€“766. doi:10.1073/pnas.37.11.760. PMC 1063464. PMID 16578416.
  27. ^ Page Module:Citation/CS1/styles.css has no content.Uhlmann, Jeffrey (2018). A Generalized Matrix Inverse that is Consistent with Respect to Diagonal Transformations (PDF). SIAM Journal on Matrix Analysis. Vol. 239. pp. 781โ€“800. Archived from the original (PDF) on 17 June 2019.
  28. ^ Page Module:Citation/CS1/styles.css has no content.Eckart, C.; Young, G. (1936). "The approximation of one matrix by another of lower rank". Psychometrika. 1 (3): 211โ€“8. doi:10.1007/BF02288367.
  29. ^ Page Module:Citation/CS1/styles.css has no content.Hestenes, M. R. (1958). "Inversion of Matrices by Biorthogonalization and Related Results". Journal of the Society for Industrial and Applied Mathematics. 6 (1): 51โ€“90. doi:10.1137/0106005. JSTOR 2098862. MR 0092215.

References

Page Template:Refbegin/styles.css has no content.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found. Template:SpectralTheory