Syntonic comma: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Glenn L
m Relationships: Corrected recent typographical error
en>Hyacinth
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{Use dmy dates|date=August 2012}}
The author is known by the title of Figures Wunder. For years he's been working as a meter reader and it's some thing he truly enjoy. South Dakota is exactly where I've always been residing. Playing baseball is the pastime he will by no means stop performing.<br><br>My web blog at home std test ([http://iponexus.com/index.php?do=/profile-12423/info/ simply click the following webpage])
[[File:Singular value decomposition.gif|thumb|right|280px|Visualization of the SVD of a two-dimensional, real [[Shear mapping|shearing matrix]] ''M''. First, we see the [[unit disc]] in blue together with the two [[standard basis|canonical unit vectors]]. We then see the action of ''M'', which distorts the disk to an [[ellipse]]. The SVD decomposes ''M'' into three simple transformations: an initial [[Rotation matrix|rotation]] ''V''<sup>*</sup>, a [[Scaling matrix|scaling]] &Sigma; along the coordinate axes, and a final rotation ''U''. The lengths &sigma;<sub>1</sub> and &sigma;<sub>2</sub> of the [[Ellipse#Elements of an ellipse|semi-axes]] of the ellipse are the [[singular value]]s of ''M''.]]
 
In [[linear algebra]], the '''singular value decomposition''' ('''SVD''') is a [[Matrix decomposition|factorization]] of a [[real number|real]] or [[complex number|complex]] [[matrix (mathematics)|matrix]], with many useful applications in [[signal processing]] and statistics.
 
Formally, the singular value decomposition of an ''m×n'' real or complex matrix ''M'' is a factorization of the form
: <math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math>
 
where ''U'' is a ''m''×''m'' real or complex [[unitary matrix]], Σ is an ''m×n'' [[rectangular diagonal matrix]] with nonnegative real numbers on the diagonal, and ''V*'' (the [[conjugate transpose]] of ''V'', or simply the transpose of ''V'' if ''V'' is real) is an ''n×n'' real or complex [[unitary matrix]]. The diagonal entries Σ<sub>''i'',''i''</sub> of Σ are known as the '''[[singular value]]s''' of ''M''. The ''m'' columns of ''U'' and the ''n'' columns of ''V'' are called the '''left-singular vectors''' and '''right-singular vectors''' of ''M'', respectively.
 
The singular value decomposition and the [[eigendecomposition]] are closely related. Namely:
:* The left-singular vectors of ''M'' are [[eigenvectors]] of ''MM*''.
:* The right-singular vectors of ''M'' are eigenvectors of ''M*M''.
:* The non-zero singular values of ''M'' (found on the diagonal entries of ''Σ'') are the square roots of the non-zero [[eigenvalues]] of both ''M*M'' and ''MM*''.
 
Applications which employ the SVD include computing the [[Moore–Penrose pseudoinverse|pseudoinverse]], [[least squares]] fitting of data, matrix approximation, and determining the [[rank of a matrix|rank]], [[range of a matrix|range]] and [[kernel (matrix)|null space]] of a matrix.
 
{{TOC limit|2}}
 
== Statement of the theorem ==
Suppose ''M'' is an ''m×n'' [[matrix (mathematics)|matrix]] whose entries come from the [[field (mathematics)|field]] ''K'', which is either the field of [[real number]]s  or the field of [[complex number]]s. Then there exists a factorization of the form
: <math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math>
 
where ''U'' is an ''m×m'' [[unitary matrix]] ([[orthogonal matrix]] if "K" is real) over ''K'', the matrix Σ is an ''m×n'' [[diagonal matrix]] with nonnegative real numbers on the diagonal, and the ''n×n'' unitary matrix ''V*'' denotes the [[conjugate transpose]] of the ''n×n'' unitary matrix ''V''. Such a factorization is called a singular value decomposition of ''M''.
 
The diagonal entries <math>\sigma_i</math> of Σ are known as the '''[[singular value]]s''' of ''M''. A common convention is to list the singular values in descending order. In this case, the diagonal matrix Σ is uniquely determined by ''M'' (though the matrices ''U'' and ''V'' are not).
 
== Intuitive interpretations ==
 
=== Rotation, scaling ===
In the special but common case in which M is just an ''m×m'' [[square matrix]] with positive [[determinant]] whose entries are plain [[real number]]s, then U, V*, and Σ are ''m×m'' matrices of real numbers as well, Σ can be regarded as a [[scaling matrix]], and U and V* can be viewed as [[rotation matrix|rotation matrices]].
 
If the above mentioned conditions are met, the expression <math>\mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^* \,</math> can thus be intuitively interpreted as a [[Function composition|composition]] (or [[sequence]]) of three geometrical [[Transformation (geometry)|transformations]]: a [[Rotation (geometry)|rotation]], a [[Scaling (geometry)|scaling]], and another rotation. For instance, the figure above explains how a [[shear matrix]] can be described as such a sequence.
 
=== Singular values as semiaxes of an ellipse or ellipsoid ===
As shown in the figure, the [[singular values]] can be interpreted as 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 semiaxes of an ''n''-dimensional [[ellipsoid]]. See [[#Geometric meaning|below]] for further details.
 
=== The columns of ''U'' and ''V'' are orthonormal bases ===
Since ''U'' and ''V*'' are unitary, the columns of each of them form a set of [[orthonormal vectors]], which can be regarded as [[basis vectors]]. By the definition of a unitary matrix, the same is true for their conjugate transposes ''U*'' and ''V''. In short, the columns of ''U'', ''U*'', ''V'', and ''V*'' are [[Orthonormal basis|orthonormal bases]].
 
== Example ==
Consider the 4×5 matrix
 
:<math>\mathbf{M} = \begin{bmatrix}
                      1 & 0 & 0 & 0 & 2 \\
                      0 & 0 & 3 & 0 & 0 \\
                      0 & 0 & 0 & 0 & 0 \\
                      0 & 4 & 0 & 0 & 0
                    \end{bmatrix}
</math>
 
A singular value decomposition of this matrix is given by <math>\mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math>
 
:<math>\begin{align}
\mathbf{U} &= \begin{bmatrix}
              0 & 0 & 1 &  0 \\
              0 & 1 & 0 &  0 \\
              0 & 0 & 0 & -1 \\
              1 & 0 & 0 & 0
            \end{bmatrix} \\
 
\boldsymbol{\Sigma} &= \begin{bmatrix}
                        4 & 0 &        0 & 0 & 0 \\
                        0 & 3 &        0 & 0 & 0 \\
                        0 & 0 & \sqrt{5} & 0 & 0 \\
                        0 & 0 &        0 & 0 & 0
                      \end{bmatrix} \\
 
\mathbf{V}^* &= \begin{bmatrix}
                          0 & 1 & 0 & 0 &          0 \\
                          0 & 0 & 1 & 0 &          0 \\
                  \sqrt{0.2} & 0 & 0 & 0 & \sqrt{0.8} \\
                          0 & 0 & 0 & 1 &          0 \\
                -\sqrt{0.8} & 0 & 0 & 0 & \sqrt{0.2}
              \end{bmatrix}
\end{align}</math>
 
Notice <math>\boldsymbol{\Sigma}</math> is zero outside of the diagonal and one diagonal element is zero. Furthermore, because the matrices <math>\mathbf{U}</math> and <math>\mathbf{V}^*</math> are [[unitary matrix|unitary]], multiplying by their respective conjugate transposes yields [[identity matrix|identity matrices]], as shown below.  In this case, because <math>\mathbf{U}</math> and <math>\mathbf{V}^*</math> are real valued, they each are an [[orthogonal matrix]].
 
:<math>\begin{align}
  \mathbf{U} \mathbf{U}^* &=
  \begin{bmatrix}
    0 & 0 & 1 &  0 \\
    0 & 1 & 0 &  0 \\
    0 & 0 & 0 & -1 \\
    1 & 0 & 0 &  0
  \end{bmatrix} \cdot
 
  \begin{bmatrix}
    0 & 0 &  0 & 1 \\
    0 & 1 &  0 & 0 \\
    1 & 0 &  0 & 0 \\
    0 & 0 & -1 & 0
  \end{bmatrix} \\
 
  &=
  \begin{bmatrix}
    1 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 \\
    0 & 0 & 1 & 0 \\
    0 & 0 & 0 & 1
  \end{bmatrix} \equiv
 
  \mathbf{I}_4
\end{align}</math>
 
and
 
:<math>\begin{align}
  \mathbf{V} \mathbf{V}^* &=
  \begin{bmatrix}
    0 & 0 & \sqrt{0.2} & 0 & -\sqrt{0.8} \\
    1 & 0 &          0 & 0 &          0 \\
    0 & 1 &          0 & 0 &          0 \\
    0 & 0 &          0 & 1 &          0 \\
    0 & 0 & \sqrt{0.8} & 0 &  \sqrt{0.2}
  \end{bmatrix} \cdot
 
  \begin{bmatrix}
              0 & 1 & 0 & 0 &          0 \\
              0 & 0 & 1 & 0 &          0 \\
    \sqrt{0.2} & 0 & 0 & 0 & \sqrt{0.8} \\
              0 & 0 & 0 & 1 &          0 \\
    -\sqrt{0.8} & 0 & 0 & 0 & \sqrt{0.2}
  \end{bmatrix} \\
 
  &=
  \begin{bmatrix}
    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{bmatrix} \equiv
 
  \mathbf{I}_5
\end{align}</math>
 
This particular singular value decomposition is not unique.  Choosing <math>V</math> such that
:<math>\mathbf{V}^* = \begin{bmatrix}
                        0          & 1 & 0 &          0 &          0 \\
                        0          & 0 & 1 &          0 &          0 \\
                        \sqrt{0.2} & 0 & 0 &          0 &  \sqrt{0.8} \\
                        \sqrt{0.4} & 0 & 0 & \sqrt{0.5} & -\sqrt{0.1} \\
                        -\sqrt{0.4} & 0 & 0 & \sqrt{0.5} &  \sqrt{0.1}
                      \end{bmatrix}
</math>
 
is also a valid singular value decomposition.
 
== Singular values, singular vectors, and their relation to the SVD ==
A non-negative real number σ is a '''[[singular value]]''' for ''M'' if and only if there exist unit-length vectors ''u'' in ''K''<sup>''m''</sup> and ''v'' in ''K''<sup>''n''</sup> such that
:<math>\mathbf{M}\vec{v} = \sigma \vec{u} \,\text{ and } \mathbf{M}^*\vec{u} = \sigma \vec{v}</math>
 
The vectors ''u'' and ''v'' are called '''left-singular''' and '''right-singular vectors''' for σ, respectively.
 
In any singular value decomposition
:<math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math>
 
the diagonal entries of Σ are equal to the singular values of ''M''. The columns of ''U'' and ''V'' are, respectively, left- and right-singular vectors for the corresponding singular values.  Consequently, the above theorem implies that:
* An ''m'' × ''n'' matrix ''M'' has at most ''p''&nbsp;= min(''m'',''n'') distinct singular values.
* It is always possible to find an [[orthogonal basis]] ''U'' for ''K''<sup>''m''</sup> consisting of left-singular vectors of ''M''.
* It is always possible to find an orthogonal basis ''V'' for ''K''<sup>''n''</sup> consisting of right-singular vectors of ''M''.
 
A singular value for which we can find two left (or right) singular vectors that are linearly independent is called ''degenerate''.
 
Non-degenerate singular values always have unique left- and right-singular vectors, up to multiplication by a unit-phase factor ''e''<sup>'''i'''φ</sup> (for the real case up to sign).  Consequently, if all singular values of ''M'' are non-degenerate and non-zero, then its singular value decomposition is unique, up to multiplication of a column of ''U'' by a unit-phase factor and simultaneous multiplication of the corresponding column of ''V'' by the same unit-phase factor.
 
Degenerate singular values, by definition, have non-unique singular vectors. Furthermore, if ''u''<sub>1</sub> and ''u''<sub>2</sub> 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.  Consequently, if ''M'' has degenerate singular values, then its singular value decomposition is not unique.
 
==Applications of the SVD==
 
===Pseudoinverse===
The singular value decomposition can be used for computing the [[Moore–Penrose pseudoinverse|pseudoinverse]] of a matrix. Indeed, the pseudoinverse of the matrix ''M'' with singular value decomposition <math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math> is
:<math>\mathbf{M}^+ = \mathbf{V} \boldsymbol{\Sigma}^+ \mathbf{U}^*</math>
 
where Σ<sup>+</sup> 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 equation]]s can be written as <math>\mathbf{A} \vec{x} = \mathbf{0}</math> for a matrix <math>\mathbf{A}</math> and vector <math>\vec{x}</math>.  A typical situation is that <math>\mathbf{A}</math> is known and a non-zero <math>\vec{x}</math> is to be determined which satisfies the equation.  Such an <math>\vec{x}</math> belongs to <math>\mathbf{A}</math>'s [[Kernel (matrix)|null space]] and is sometimes called a (right) null vector of <math>\mathbf{A}</math>. The vector <math>\vec{x}</math> can be characterized as a right-singular vector corresponding to a singular value of <math>\mathbf{A}</math> that is zero. This observation means that if <math>\mathbf{A}</math> is a [[square matrix]] and has no vanishing singular value, the equation has no non-zero <math>\vec{x}</math> 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 <math>\vec{x}</math> satisfying <math>\vec{x^*} \mathbf{A} = \mathbf{0}</math>, with <math>\vec{x^*}</math> denoting the conjugate transpose of <math>\vec{x}</math>, is called a left null vector of <math>\mathbf{A}</math>.
 
===Total least squares minimization===
A [[total least squares]] problem refers to determining the vector <math> \mathbf{x} </math> which minimizes the [[Vector norm#p-norm|2-norm]] of a vector <math> \mathbf{A} \, \mathbf{x} </math> under the constraint <math> \| \mathbf{x} \| = 1</math>.  The solution turns out to be the right-singular vector of <math> \mathbf{A} </math> 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 ''M''.  The right-singular vectors corresponding to vanishing singular values of ''M'' span the null space of ''M''. E.g., the null space is spanned by the last two columns of <math>\mathbf{V}</math> in the above example. The left-singular vectors corresponding to the non-zero singular values of ''M'' span the range of ''M''.  As a consequence, the [[rank of a matrix|rank]] of ''M'' equals the number of non-zero singular values which is the same as the number of non-zero diagonal elements in <math>\boldsymbol{\Sigma}</math>.
 
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.
 
===Low-rank matrix approximation===
Some practical applications need to solve the problem of approximating a matrix <math>\mathbf{M}</math> with another matrix <math>\tilde{\mathbf{M}}</math>, said [[#Truncated SVD|truncated]], which has a specific rank <math>r</math>.  In the case that the approximation is based on minimizing the [[Frobenius norm]] of the difference between <math>\mathbf{M}</math> and <math>\tilde{\mathbf{M}}</math> under the constraint that <math>\operatorname{rank}\left(\tilde{\mathbf{M}}\right) = r</math> it turns out that the solution is given by the SVD of <math>\mathbf{M}</math>, namely
:<math>\tilde{\mathbf{M}} = \mathbf{U} \tilde{\boldsymbol{\Sigma}} \mathbf{V}^*</math>
 
where <math>\tilde{\boldsymbol{\Sigma}}</math> is the same matrix as <math>\boldsymbol{\Sigma}</math> except that it contains only the <math>r</math> 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 {{harvnb|Stewart|1993}}).
 
===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 <math>\mathbf{A}</math> can be written as an [[outer product]] of two vectors <math>\mathbf{A} = \mathbf{u} \otimes \mathbf{v}</math>, or, in coordinates, <math>\mathbf{A(i, j)} = \mathbf{u}(i) \mathbf{v}(j)</math>. Specifically, the matrix M can be decomposed as:
:<math>\mathbf{M} = \sum_i \mathbf{A}_i = \sum_i \sigma_i U_i \otimes V_i^\dagger</math>
 
Here <math>U_i</math> and <math>V_i</math> are the ''i''<sup>th</sup> columns of the corresponding SVD matrices, <math>\sigma_i</math> are the ordered singular values, and each <math>\mathbf{A}_i</math> 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 <math>\sigma_i</math> is exactly the rank of the matrix.
 
Separable models often arise in biological systems, and the SVD decomposition is useful to analyze such systems. For example, some visual area V1 simple cells' receptive fields can be well described<ref>{{cite journal |doi=10.1016/0166-2236(95)94496-R |author=DeAngelis GC, Ohzawa I, Freeman RD |title=Receptive-field dynamics in the central visual pathways |journal=Trends Neurosci. |volume=18 |issue=10 |pages=451–8 |date=October 1995 |pmid=8545912 |url=http://linkinghub.elsevier.com/retrieve/pii/0166-2236(95)94496-R |ref=harv}}</ref> 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 U in the SVD decomposition is then a Gabor while the first column of V represents the time modulation (or vice-versa). One may then define an index of separability, <math>\alpha = \frac{1}{\sum_i \sigma_i^2}\sigma_1^2</math>, which is the fraction of the power in the matrix M which is accounted for by the first separable matrix in the decomposition.<ref>{{cite journal |author=Depireux DA, Simon JZ, Klein DJ, Shamma SA |title=Spectro-temporal response field characterization with dynamic ripples in ferret primary auditory cortex |journal=J. Neurophysiol. |volume=85 |issue=3 |pages=1220–34 |date=March 2001 |pmid=11247991 |url=http://jn.physiology.org/cgi/pmidlookup?view=long&pmid=11247991 |ref=harv}}</ref>
 
===Nearest orthogonal matrix===
It is possible to use the SVD of <math>\mathbf{A}</math> to determine the [[orthogonal matrix]] <math>\mathbf{R}</math> closest to <math>\mathbf{A}</math>. The closeness of fit is measured by the [[Frobenius norm]] of <math>\mathbf{R} - \mathbf{A}</math>. The solution is the product <math>\mathbf{U} \mathbf{V}^*</math>.<ref>[http://www.wou.edu/~beavers/Talks/Willamette1106.pdf The Singular Value Decomposition in Symmetric (Lowdin) Orthogonalization and Data Compression]</ref> This intuitively makes sense because an orthogonal matrix would have the decomposition <math>\mathbf{U} \mathbf{I} \mathbf{V}^*</math> where <math>\mathbf{I}</math> is the identity matrix, so that if <math>\mathbf{A} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math> then the product <math>\mathbf{A} = \mathbf{U} \mathbf{V}^*</math> amounts to replacing the singular values with ones.
 
A similar problem, with interesting applications in [[shape analysis]]{{disambiguation needed|date=December 2012}}, is the [[orthogonal Procrustes problem]], which consists of finding an orthogonal matrix <math>\mathbf{R}</math> which most closely maps <math>\mathbf{A}</math> to <math>\mathbf{B}</math>. Specifically,
 
:<math>\mathbf{R} = \arg\min_\boldsymbol{\Omega} \|\mathbf{A}\boldsymbol{\Omega} - \mathbf{B}\|_F \quad\mathrm{subject\ to}\quad \boldsymbol{\Omega}^T\boldsymbol{\Omega} = \mathbf{I}</math>
 
where <math>\| \ldots \|_F</math> denotes the Frobenius norm.
 
This problem is equivalent to finding the nearest orthogonal matrix to a given matrix <math>\mathbf{M} = \mathbf{A}^{T}\mathbf{B}</math>.
 
===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 and big data, e.g., in genomic signal processing.<ref>{{Cite journal
| author = O. Alter, P. O. Brown and D. Botstein
| title = Singular Value Decomposition for Genome-Wide Expression Data Processing and Modeling
| journal = PNAS
| volume = 97
| issue = 18
| pages = 10101-10106
| date = September 2000
| doi = 10.1073/pnas.97.18.10101
| url = http://dx.doi.org/10.1073/pnas.97.18.10101
}}</ref><ref>{{Cite journal
| author = O. Alter and G. H. Golub
| title = Integrative Analysis of Genome-Scale Data by Using Pseudoinverse Projection Predicts Novel Correlation Between DNA Replication and RNA Transcription
| journal = PNAS
| volume = 101
| issue = 47
| pages = 16577–16582
| date = November 2004
| doi = 10.1073/pnas.0406767101
| url = http://dx.doi.org/10.1073/pnas.0406767101
}}</ref><ref>{{Cite journal
| author = O. Alter and G. H. Golub
| title = Singular Value Decomposition of Genome-Scale mRNA Lengths Distribution Reveals Asymmetry in RNA Gel Electrophoresis Band Broadening
| journal = PNAS
| volume = 103
| issue = 32
| pages = 11828-11833
| date = August 2006
| doi = 10.1073/pnas.0604756103
| url = http://dx.doi.org/10.1073/pnas.0604756103
}}</ref><ref>{{Cite journal
| author = N. M. Bertagnolli, J. A. Drake, J. M. Tennessen and O. Alter
| title = SVD Identifies Transcript Length Distribution Functions from DNA Microarray Data and Reveals Evolutionary Forces Globally Affecting GBM Metabolism
| journal = PLoS One
| volume = 8
| issue = 11
| pages = e78913
| date = November 2013
| doi = 10.1371/journal.pone.0078913
| url = http://dx.doi.org/10.1371/journal.pone.0078913
| id = [http://www.alterlab.org/research/highlights/pone.0078913_Highlight.pdf Highlight]
}}</ref>
 
===Other examples===
The SVD is also applied extensively to the study of linear [[inverse problem]]s, 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 shape]]s can be determined from the singular vectors. Yet another usage is [[latent semantic indexing]] in natural language text processing.
 
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 <math>\mathbf{\Sigma}</math> matrix is larger than one.
 
One application of SVD to rather large matrices is in [[numerical weather prediction]], where [[Lanczos algorithm|Lanczos method]]s 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.
 
Another application of SVD for daily life is that point in perspective view can be unprojected in a photo using the calculated SVD matrix, this application leads to measuring length (a.k.a. the distance of two unprojected points in perspective photo) by marking out the 4 corner points of known-size object in a single photo. PRuler is a demo to implement this application by taking a photo of a regular credit card.
 
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 modelled.  SVD was coupled with [[radial basis functions]] to interploate solutions to three dimensional unsteady flow problems<ref>S. Walton, , O. Hassan , K. Morgan,  Reduced order modelling for unsteady fluid flow using proper orthogonal decomposition and radial basis functions, Applied Mathematical Modelling, http://www.sciencedirect.com/science/article/pii/S0307904X13002771</ref>
 
SVD has also been applied in inverse problem theory. An important application is constructing computational models of oil reservoirs<ref> Gharib Shirangi, M.,  History matching production data and uncertainty assessment with an efficient TSVD parameterization algorithm, Journal of Petroleum Science and Engineering, http://www.sciencedirect.com/science/article/pii/S0920410513003227</ref>
 
== 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 certain classes of square matrices.  Nevertheless, the two decompositions are related.
 
Given an SVD of ''M'', as described above, the following two relations hold:
 
:<math>\begin{align}
  \mathbf{M}^* \mathbf{M} &= \mathbf{V} \boldsymbol{\Sigma^*} \mathbf{U}^*\, \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^* = \mathbf{V} (\boldsymbol{\Sigma}^* \boldsymbol{\Sigma}) \mathbf{V}^* \\
  \mathbf{M} \mathbf{M}^* &= \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*\, \mathbf{V} \boldsymbol{\Sigma}^* \mathbf{U}^* = \mathbf{U} (\boldsymbol{\Sigma} \boldsymbol{\Sigma}^*) \mathbf{U}^*
\end{align}</math>
 
The right-hand sides of these relations describe the eigenvalue decompositions of the left-hand sides.  Consequently:
 
:* The columns of ''V'' (right-singular vectors) are [[eigenvectors]] of <math>\mathbf{M}^*\mathbf{M}</math>.
:* The columns of ''U'' (left-singular vectors) are eigenvectors of <math>\mathbf{M}\mathbf{M}^*</math>.
:* The non-zero elements of ''Σ'' (non-zero singular values) are the square roots of the non-zero [[eigenvalues]] of <math>\mathbf{M}^*\mathbf{M}</math> or <math>\mathbf{M}\mathbf{M}^*</math>.
 
In the special case that ''M'' is a [[normal matrix]], 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 [[eigenvector]]s, so that it can be written <math>\mathbf{M} = \mathbf{U} \mathbf{D} \mathbf{U}^*</math> for a unitary matrix ''U'' and a diagonal matrix ''D''.  When ''M'' is also [[Positive-definite matrix|positive semi-definite]], the decomposition <math>\mathbf{M} = \mathbf{U}\mathbf{D}\mathbf{U}^*</math> is also a singular value decomposition.
 
However, the eigenvalue decomposition and the singular value decomposition differ for all other matrices ''M'': the eigenvalue decomposition is <math>\mathbf{M} = \mathbf{U}\mathbf{D}\mathbf{U}^{-1}</math> where ''U'' is not necessarily unitary and ''D'' is not necessarily positive semi-definite, while the SVD is <math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math> where ''Σ'' is a diagonal positive semi-definite, and ''U'' and ''V'' are unitary matrices that are not necessarily related except through the matrix ''M''.
 
== Existence ==
An eigenvalue ''λ'' of a matrix ''M'' is characterized by the algebraic relation ''M u'' = ''λ u''. When ''M'' is [[Hermitian matrix|Hermitian]], a variational characterization is also available. Let ''M'' be a real ''n'' × ''n'' [[symmetric matrix]]. Define ''f'':'''R'''<sup>''n''</sup> → '''R''' by ''f''(''x'') = ''x<sup>T</sup> M x''. By the [[extreme value theorem]], this continuous function attains a maximum at some ''u'' when restricted to the closed unit sphere {||''x''|| ≤ 1}. By the [[Lagrange multipliers]] theorem, ''u'' necessarily satisfies
 
:<math>\nabla f = \nabla \vec{x}^T \mathbf{M} \vec{x} = \lambda \cdot \nabla \vec{x}^T \vec{x}</math>
 
where the nabla symbol, <math>\nabla</math>, is the [[del]] operator.
 
A short calculation shows the above leads to ''M u'' = ''λ u'' (symmetry of ''M'' is needed here). Therefore ''λ'' is the largest eigenvalue of ''M''. 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 ''f''(''x'') = ''x* M x'' is a real-valued function of 2''n'' 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 ''M'' is no longer required.
 
This section gives these two arguments for existence of singular value decomposition.
 
=== Based on the spectral theorem ===
Let ''M'' be an ''m''-by-''n'' matrix with complex entries. ''M*M'' is positive semidefinite and Hermitian. By the [[spectral theorem]], there exists a unitary ''n''-by-''n'' matrix ''V'' such that
 
:<math>\mathbf{V}^* \mathbf{M}^* \mathbf{M} \mathbf{V} = \begin{bmatrix} \mathbf{D} & 0 \\ 0 & 0\end{bmatrix}</math>
 
where ''D'' is diagonal and positive definite. Partition ''V'' appropriately so we can write
 
:<math>\begin{bmatrix} \mathbf{V}_1^* \\ \mathbf{V}_2^* \end{bmatrix} \mathbf{M}^* \mathbf{M} \begin{bmatrix} \mathbf{V}_1 & \mathbf{V}_2 \end{bmatrix} =
  \begin{bmatrix} \mathbf{V}_1^* \mathbf{M}^* \mathbf{M} \mathbf{V}_1 & \mathbf{V}_1^* \mathbf{M}^* \mathbf{M} \mathbf{V}_2 \\ \mathbf{V}_2^* \mathbf{M}^* \mathbf{M} \mathbf{V}_1 & \mathbf{V}_2^* \mathbf{M}^* \mathbf{M} \mathbf{V}_2 \end{bmatrix} =
  \begin{bmatrix} \mathbf{D} & 0 \\ 0 & 0 \end{bmatrix}
</math>
 
Therefore ''V<sub>1</sub>*M*MV<sub>1</sub>'' = ''D'' and ''V<sub>2</sub>*M*MV<sub>2</sub>'' = ''0''. The latter means ''MV<sub>2</sub>'' = ''0''.
 
Also, since ''V'' is unitary, ''V<sub>1</sub>*V<sub>1</sub>'' = ''I'', ''V<sub>2</sub>*V<sub>2</sub>'' = ''I'' and ''V<sub>1</sub>V<sub>1</sub>*'' + ''V<sub>2</sub>V<sub>2</sub>*'' = ''I''.
 
Define
 
:<math>\mathbf{U}_1 = \mathbf{M} \mathbf{V}_1 \mathbf{D}^{-\frac{1}{2}}</math>
 
Then
 
:<math>\mathbf{U}_1 \mathbf{D}^\frac{1}{2} \mathbf{V}_1^* = \mathbf{M} \mathbf{V}_1 \mathbf{D}^{-\frac{1}{2}} \mathbf{D}^\frac{1}{2} \mathbf{V}_1^* = \mathbf{M}</math>
 
We see that this is almost the desired result, except that ''U''<sub>1</sub> and ''V''<sub>1</sub> are not unitary in general, but merely [[Isometry|isometries]]. To finish the argument, one simply has to "fill out" these matrices to obtain unitaries. For example, one can choose ''U''<sub>2</sub> such that
 
:<math>\mathbf{U} = \begin{bmatrix} \mathbf{U}_1 & \mathbf{U}_2 \end{bmatrix}</math>
 
is unitary.
 
Define
:<math>\boldsymbol{\Sigma} =
  \begin{bmatrix}
    \begin{bmatrix}
      \mathbf{D}^\frac{1}{2} & 0 \\
      0                      & 0
    \end{bmatrix} \\
    0
  \end{bmatrix}
</math>
where extra zero rows are added '''or removed''' to make the number of zero rows equal the number of columns of ''U''<sub>2</sub>. Then
 
:<math>
  \begin{bmatrix}
    \mathbf{U}_1 & \mathbf{U}_2
  \end{bmatrix}
  \begin{bmatrix}
    \begin{bmatrix}
      \mathbf{}D^\frac{1}{2} & 0 \\
      0                      & 0
    \end{bmatrix} \\
    0
  \end{bmatrix}
  \begin{bmatrix}
    \mathbf{V}_1 & \mathbf{V}_2
  \end{bmatrix}^* =
  \begin{bmatrix}
    \mathbf{U}_1 & \mathbf{U}_2
  \end{bmatrix}
  \begin{bmatrix}
    \mathbf{D}^\frac{1}{2} \mathbf{V}_1^* \\
    0
  \end{bmatrix} =
  \mathbf{U}_1 \mathbf{D}^\frac{1}{2} V_1^* =
  \mathbf{M}
</math>
 
which is the desired result:
:<math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math>
 
Notice the argument could begin with diagonalizing ''MM*'' rather than ''M*M'' (This shows directly that ''MM*'' and ''M*M'' have the same non-zero eigenvalues).
 
=== Based on variational characterization ===
The singular values can also be characterized as the maxima of ''u''<sup>T</sup>''Mv'', considered as a function of ''u'' and ''v'', over particular subspaces. The singular vectors are the values of ''u'' and ''v'' where these maxima are attained.
 
Let ''M'' denote an ''m'' × ''n'' matrix with real entries. Let <math>S^{m-1}</math> and <math>S^{n-1}</math> denote the sets of unit 2-norm vectors in '''R'''<sup>''m''</sup> and '''R'''<sup>''n''</sup> respectively.  Define the function
 
:<math>\sigma(\vec{u}, \vec{v}) = \vec{u}^{T} M \vec{v}</math>
 
for vectors ''u'' ∈ <math>S^{m - 1}</math> and ''v'' ∈ <math>S^{n - 1}</math>.  Consider the function ''σ'' restricted to <math>S^{m - 1}</math> × <math>S^{n - 1}</math>.  Since both <math>S^{m - 1}</math> and <math>S^{n - 1}</math> 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 ''u'' ∈ <math>S^{m - 1}</math> and ''v'' ∈ <math>S^{n - 1}</math>. This largest value is denoted ''σ''<sub>1</sub> and the corresponding vectors are denoted ''u''<sub>1</sub> and ''v''<sub>1</sub>. Since <math>\sigma_{1}</math> is the largest value of <math>\sigma(u ,v)</math> it must be non-negative.  If it were negative, changing the sign of either ''u''<sub>1</sub> or ''v''<sub>1</sub> would make it positive and therefore larger.
 
'''Statement:''' ''u''<sub>1</sub>, ''v''<sub>1</sub> are left and right-singular vectors of ''M'' with corresponding singular value ''σ''<sub>1</sub>.
 
'''Proof:''' Similar to the eigenvalues case, by assumption the two vectors satisfy the Lagrange multiplier equation:
 
:<math>\nabla \sigma = \nabla \; \vec{u}^T \mathbf{M} \vec{v} - \lambda_1 \cdot \nabla \; \vec{u}^T \vec{u} - \lambda_2 \cdot \nabla \; \vec{v}^T \vec{v}</math>
 
After some algebra, this becomes
 
:<math>\mathbf{M} \vec{v}_{1} = 2 \lambda_{1} \vec{u}_{1} + 0</math>
 
and
 
:<math>\mathbf{M}^{T} \vec{u}_{1} = 0 + 2 \lambda_{2} \vec{v}_{1}</math>
 
Multiplying the first equation from left by <math>\vec{u}_1^T</math> and the second equation from left by <math>\vec{v}_1^T</math> and taking ||''u''|| = ||''v''|| = 1  into account gives
 
:<math>\sigma_1 = 2\lambda_1 = 2\lambda_2.</math>
 
Plugging this into the pair of equations above, we have
 
:<math>\mathbf{M} \vec{v}_1 = \sigma_1 \vec{u}_1</math>
 
and
 
:<math>\mathbf{M}^T \vec{u}_1 = \sigma_1 \vec{v}_1</math>
 
This proves the statement.
 
More singular vectors and singular values can be found by maximizing ''σ''(''u'', ''v'') over normalized ''u'', ''v'' which are orthogonal to ''u''<sub>1</sub> and ''v''<sub>1</sub>, respectively.
 
The passage from real to complex is similar to the eigenvalue case.
 
== Geometric meaning ==
Because ''U'' and ''V'' are unitary, we know that the columns ''u''<sub>1</sub>, …, ''u<sub>m</sub>'' of ''U'' yield an [[orthonormal basis]] of ''K''<sup>''m''</sup> and the columns ''v''<sub>1</sub>, …, ''v<sub>n</sub>''
of ''V'' yield an orthonormal basis of ''K''<sup>''n''</sup> (with respect to the standard [[scalar product]]s on these spaces).
 
The [[linear transformation]] ''T'' :''K''<sup>''n''</sup> → ''K''<sup>''m''</sup> that takes a vector ''x'' to ''Mx'' has a particularly simple description with respect to these orthonormal bases: we have ''T''(''v<sub>i</sub>'') = ''σ<sub>i</sub> u<sub>i</sub>'', for ''i'' = 1,...,min(''m'',''n''), where ''σ<sub>i</sub>'' is the ''i''-th diagonal entry of Σ, and ''T''(''v''<sub>''i''</sub>) = 0 for ''i'' > min(''m'',''n'').
 
The geometric content of the SVD theorem can thus be summarized as follows: for every linear map ''T'' :''K''<sup>''n''</sup> → ''K''<sup>''m''</sup> one can find orthonormal bases of ''K''<sup>''n''</sup> and ''K''<sup>''m''</sup> such that ''T'' maps the ''i''-th basis vector of ''K''<sup>''n''</sup> to a non-negative multiple of the ''i''-th basis vector of ''K''<sup>''m''</sup>, and sends the left-over 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 flavour of singular values and SVD decomposition —at least when working on real vector spaces— consider the sphere ''S'' of radius one in '''R'''<sup>''n''</sup>. The linear map ''T'' maps this sphere onto an [[ellipsoid]] in '''R'''<sup>''m''</sup>. Non-zero singular values are simply the lengths of the [[Semi-minor axis|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 analysed as a succession of three consecutive moves : consider the ellipsoid ''T''(''S'') and specifically its axes ; then consider the directions in '''R'''<sup>''n''</sup> sent by ''T'' onto these axes. These directions happen to be mutually orthogonal. Apply first an isometry ''v*'' sending these directions to the coordinate axes of '''R'''<sup>''n''</sup>. On a second move, apply an [[endomorphism]] ''d'' diagonalized along the coordinate axes and stretching or shrinking in each direction, using the semi-axes lengths of ''T''(''S'') as stretching  coefficients. The composition ''d''<small> o </small>''v*'' then sends the unit-sphere onto an ellipsoid isometric to ''T''(''S''). To define the third and last move ''u'', apply an isometry to this ellipsoid so as to carry it over ''T''(''S''). As can be easily checked, the composition ''u''<small> o </small> ''d''<small> o </small>''v*'' coincides with ''T''.
 
== Calculating the SVD ==
 
=== Numerical Approach ===
The SVD of a matrix ''M'' is typically computed by a two-step procedure. In the first step, the matrix is reduced to a [[bidiagonal matrix]]. This takes O(''mn''<sup>2</sup>) floating-point operations (flops), assuming that ''m'' ≥ ''n'' (this formulation uses the [[big O notation]]). 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 algorithm]]s). 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''<sup>2</sup>) flops {{harv|Trefethen|Bau III|1997|loc=Lecture 31}}.
 
The first step can be done using [[Householder reflection]]s for a cost of 4''mn''<sup>2</sup> &minus; 4''n''<sup>3</sup>/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 ''M'' 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''<sup>2</sup> + 2''n''<sup>3</sup> flops {{harv|Trefethen|Bau III|1997|loc=Lecture 31}}.
 
The second step can be done by a variant of the [[QR algorithm]] for the computation of eigenvalues, which was first described by {{harvtxt|Golub|Kahan|1965}}. The [[LAPACK]] subroutine DBDSQR<ref>[http://www.netlib.org/lapack/double/dbdsqr.f Netlib.org]</ref> implements this iterative method, with some modifications to cover the case where the singular values are very small {{harv|Demmel|Kahan|1990}}. Together with a first step using Householder reflections and, if appropriate, QR decomposition, this forms the DGESVD<ref>[http://www.netlib.org/lapack/double/dgesvd.f Netlib.org]</ref> 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, which uses a one-sided [[Jacobi orthogonalization]] in step 2 {{harv|GSL Team|2007}}. This method computes the SVD of the bidiagonal matrix by solving a sequence of 2-by-2 SVD problems, similar to how the [[Jacobi eigenvalue algorithm]] solves a sequence of 2-by-2 eigenvalue methods {{harv|Golub|Van Loan|1996|loc=§8.6.3}}. Yet another method for step 2 uses the idea of [[divide-and-conquer eigenvalue algorithm]]s {{harv|Trefethen|Bau III|1997|loc=Lecture 31}}.
 
=== Analytic result of 2-by-2 SVD ===
The singular values of a 2-by-2 matrix can be found analytically. Let the matrix be
<math>\mathbf{M} = z_0\mathbf{I} + z_1\sigma_1 + z_2\sigma_2 + z_3\sigma_3</math>
 
where <math>z_i \in \mathbb{C}</math> are complex numbers that parameterize the matrix, <math>\mathbf{I}</math> is the identity matrix, and <math>\sigma_i</math> denote the [[Pauli matrices]]. Then its two singular values are given by
:<math>\begin{align}
  \sigma_{\pm} &= \sqrt{|z_0|^2 + |z_1|^2 + |z_2|^2 + |z_3|^2 \pm \sqrt{(|z_0|^2 + |z_1|^2 + |z_2|^2 + |z_3|^2)^2 - |z_0^2 - z_1^2 - z_2^2 - z_3^2|^2}} \\
              &= \sqrt{|z_0|^2 + |z_1|^2 + |z_2|^2 + |z_3|^2 \pm 2\sqrt{(\mathrm{Re}z_0z_1^*)^2 + (\mathrm{Re}z_0z_2^*)^2 + (\mathrm{Re}z_0z_3^*)^2 + (\mathrm{Im}z_1z_2^*)^2 + (\mathrm{Im}z_2z_3^*)^2 + (\mathrm{Im}z_3z_1^*)^2}}
\end{align}</math>
 
==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===
:<math>\mathbf{M} = \mathbf{U}_n \boldsymbol{\Sigma_n} \mathbf{V}^*</math>
 
Only the ''n'' column vectors of ''U'' corresponding to the row vectors of ''V*'' are calculated. The remaining column vectors of ''U'' are not calculated. This is significantly quicker and more economical than the full SVD if ''n''≪''m''. The matrix ''U''<sub>n</sub> is thus ''m''×''n'', Σ<sub>n</sub> is ''n''×''n'' diagonal, and ''V'' is ''n''×''n''.
 
The first stage in the calculation of a thin SVD will usually be a [[QR decomposition]] of ''M'', which can make for a significantly quicker calculation if ''n''≪''m''.
 
===Compact SVD===
:<math>\mathbf{M} = \mathbf{U}_r \boldsymbol{\Sigma}_r \mathbf{V}_r^*</math>
 
Only the ''r'' column vectors of ''U'' and ''r'' row vectors of ''V*'' corresponding to the non-zero singular values Σ<sub>r</sub> are calculated. The remaining vectors of ''U'' and ''V*'' are not calculated. This is quicker and more economical than the thin SVD if ''r''≪''n''. The matrix ''U''<sub>r</sub> is thus ''m''×''r'', Σ<sub>r</sub> is ''r''×''r'' diagonal, and ''V''<sub>r</sub>* is ''r''×''n''.
 
===Truncated SVD===
:<math>\tilde{\mathbf{M}} = \mathbf{U}_t \boldsymbol{\Sigma}_t \mathbf{V}_t^*</math>
 
Only the ''t'' column vectors of ''U'' and ''t'' row vectors of ''V*'' corresponding to the ''t'' largest singular values Σ<sub>t</sub> 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''<sub>t</sub> is thus ''m''×''t'', Σ<sub>t</sub> is ''t''×''t'' diagonal, and ''V''<sub>t</sub>* 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 <math>\tilde{\mathbf{M}}</math> 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''<sup>''m''</sup> and ''K''<sup>''n''</sup>. In other words, the Ky Fan 1-norm is the operator norm induced by the standard ''l''<sup>2</sup> 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
 
:<math>\| \mathbf{M} \| = \| \mathbf{M}^* \mathbf{M} \|^\frac{1}{2}</math>
 
But, in the matrix case, ''M*M''<sup>½</sup> is a [[normal matrix]], so ||''M* M''||<sup>½</sup> is the largest eigenvalue of ''M* M''<sup>½</sup>, 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'')<sup>½</sup>] (the eigenvalues of ''M* M'' are the squares of the singular values).
 
=== Hilbert–Schmidt norm{{Anchor|Hilbert–Schmidt norm|Hilbert-Schmidt norm|Hilbert–Schmidt|Hilbert-Schmidt}} ===
The singular values are related to another norm on the space of operators. Consider the [[Hilbert–Schmidt operator|Hilbert–Schmidt]] inner product on the ''n'' × ''n'' matrices, defined by <math>\langle \mathbf{M}, \mathbf{N} \rangle = \operatorname{trace}(\mathbf{N}^*\mathbf{M})</math>. So the induced norm is <math>\|\mathbf{M}\| = \langle \mathbf{M}, \mathbf{M}\rangle^\frac{1}{2} = \operatorname{trace}(\mathbf{M}^*\mathbf{M})^\frac{1}{2}</math>. Since trace is invariant under unitary equivalence, this shows
 
:<math>\| \mathbf{M} \| = \left(\sum \sigma_i ^2\right)^\frac{1}{2}</math>
 
where <math>\sigma_i</math> are the singular values of ''M''. This is called the '''[[Frobenius norm]]''', '''Schatten 2-norm''', or '''Hilbert–Schmidt norm''' of ''M''. Direct calculation shows that if
 
:<math>\mathbf{M} = (m_{ij})</math>
 
the Frobenius norm of ''M'' coincides with
 
:<math>\left( \sum_{ij} | m_{ij} |^2 \right)^\frac{1}{2}</math>
 
== Tensor SVD ==
Unfortunately, the problem of finding a low rank approximation to a tensor is ill-posed.  In other words, a best possible solution does not exist, but instead a sequence of better and better approximations that converge to infinitely large matrices.  In spite of this, there are several ways to attempt decomposition.
 
Two types of tensor decompositions exist, which generalise SVD to multi-way arrays. One of them decomposes a tensor into a sum of rank-1 tensors, see [[Candecomp]]-[[PARAFAC]] (CP) algorithm. The CP algorithm should not be confused with a rank-''R'' decomposition but, for a given ''N'', it decomposes a tensor into a sum of ''N'' rank-1 tensors that optimally fit the original tensor. The second type of decomposition computes the orthonormal subspaces associated with the different axes or modes of a tensor (orthonormal row space, column space, fiber space, etc.). This decomposition is referred to in the literature as the [[Tucker decomposition|Tucker3/TuckerM]], ''M''-mode SVD, multilinear SVD and sometimes referred to as a [[Higher-order singular value decomposition|higher-order SVD]] (HOSVD). 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]].
 
== Bounded operators on Hilbert spaces ==
The factorization <math>\mathbf{M} = \mathbf{U} \boldsymbol{\Sigma} \mathbf{V}^*</math> 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'',&nbsp;''μ''), and a non-negative measurable ''f'' such that
 
:<math>\mathbf{M} = \mathbf{U} T_f \mathbf{V}^*</math>
 
where <math>T_f</math> is the [[multiplication operator|multiplication by ''f'']] on ''L''<sup>2</sup>(''X'', ''μ'').
 
This can be shown by mimicking the linear algebraic argument for the matricial case above. ''VT<sub>f</sub> V*'' is the unique positive square root of ''M*M'', as given by the [[Borel functional calculus]] for [[self adjoint operator]]s. The reason why ''U'' need not be unitary is because, unlike the finite dimensional case, given an isometry ''U''<sub>1</sub> with nontrivial kernel, a suitable ''U''<sub>2</sub> may not be found such that
 
:<math>\begin{bmatrix} U_1 \\ U_2 \end{bmatrix}</math>
 
is a unitary operator.
 
As for matrices, the singular value factorization is equivalent to the [[polar decomposition]] for operators: we can simply write
 
:<math>\mathbf{M} = \mathbf{U} \mathbf{V}^* \cdot \mathbf{V} T_f \mathbf{V}^*</math>
 
and notice that ''U V*'' is still a partial isometry while ''VT<sub>f</sub> V*'' is positive.
 
=== Singular values and compact operators ===
To extend notion of singular values and left/right-singular vectors to the operator case, one needs to restrict to [[compact operator on Hilbert space|compact operators]]. It is a general fact that compact operators on [[Banach space]]s have only discrete spectrum. This is also true for compact operators on Hilbert spaces, since [[Hilbert space]]s are a special case of Banach spaces. 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 ''M'' is compact, so is ''M*M''. Applying the diagonalization result, the unitary image of its positive square root ''T<sub>f</sub>'' has a set of orthonormal eigenvectors {''e<sub>i</sub>''} corresponding to strictly positive eigenvalues {''σ<sub>i</sub>''}. For any&nbsp;''ψ''&nbsp;∈&nbsp;''H'',
 
:<math>\mathbf{M} \psi = \mathbf{U} T_f \mathbf{V}^* \psi = \sum_i \langle \mathbf{U} T_f \mathbf{V}^* \psi, \mathbf{U} e_i \rangle \mathbf{U} e_i =
                          \sum_i \sigma_i \langle \psi, \mathbf{V} e_i \rangle \mathbf{U} e_i</math>
 
where the series converges in the norm topology on ''H''. Notice how this resembles the expression from the finite dimensional case. The ''σ<sub>i</sub>'' 's are called the singular values of ''M''. {''U e<sub>i</sub>''} and {''V e<sub>i</sub>''} can be considered the left- and right-singular vectors of ''M'' respectively.
 
[[Compact operator on Hilbert space|Compact operators on a Hilbert space]] are the closure of [[finite-rank operator]]s in the uniform operator topology. The above series expression gives an explicit such representation. An immediate consequence of this is:
 
'''Theorem''' ''M'' is compact if and only if ''M*M'' 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)|invariant]]s 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 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 Young in 1936;<ref>{{Cite journal
|last1=Eckart |first1=C.|authorlink1=Carl Eckart
|last2=Young |first2=G.
|year=1936
|title=The approximation of one matrix by another of lower rank
|journal=[[Psychometrika]]
|volume=1 |issue=3 |pages=211–8
|doi=10.1007/BF02288367
|ref=harv
|postscript=.
}}</ref> they saw it as a generalization of the [[principal axis]]{{disambiguation needed|date=December 2012}} transformation for [[Hermitian matrix|Hermitian matrices]].
 
In 1907, [[Erhard Schmidt]] defined an analog of singular values for [[integral operator]]s (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 <math>\sigma_k</math> ''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.<ref>{{Cite journal
|first=M. R. |last=Hestenes |authorlink=Magnus Hestenes
|title=Inversion of Matrices by Biorthogonalization and Related Results
|journal=Journal of the Society for Industrial and Applied Mathematics
|year=1958 |volume=6 |issue=1 |pages=51–90
|doi=10.1137/0106005 |mr=0092215 | jstor = 2098862
|ref=harv
|postscript=.
}}</ref> resembling closely the [[Jacobi eigenvalue algorithm]], which uses plane rotations or [[Givens rotation]]s. However, these were replaced by the method of  [[Gene H. Golub|Gene Golub]] and [[William Kahan]] published in 1965,<ref>{{Cite journal
| last1=Golub | first1=G. H. | author1-link=Gene H. Golub
| last2=Kahan | first2=W. | author2-link=William Kahan
| title=Calculating the singular values and pseudo-inverse of a matrix
| year=1965
| journal=Journal of the Society for Industrial and Applied Mathematics: Series B, Numerical Analysis
| volume=2 | issue=2 | pages=205–224
| doi=10.1137/0702016 |mr=0183105 | jstor = 2949777
| ref=harv
}}</ref> which uses [[Householder transformation]]s or reflections.
In 1970, Golub and Christian Reinsch<ref>{{Cite journal
|title=Singular value decomposition and least squares solutions
|first1=G. H. |last1=Golub |authorlink1=Gene H. Golub
|first2=C. |last2=Reinsch
|year=1970
|journal=Numerische Mathematik
|volume=14 |issue=5 |pages=403–420
|doi=10.1007/BF02163027 |mr=1553974
|ref=harv
|postscript=.
}}</ref> published a variant of the Golub/Kahan algorithm that is still the one most-used today.
 
==See also==
*[[Canonical correlation analysis]] (CCA)
*[[Canonical form]]
*[[Correspondence analysis]] (CA)
*[[Curse of dimensionality]]
*[[Digital signal processing]]
*[[Dimension reduction]]
*[[Eigendecomposition]]
*[[Empirical orthogonal functions]] (EOFs)
*[[Fourier analysis]]
*[[Fourier-related transforms]]
*[[Generalized singular value decomposition]]
*[[K-SVD]]
*[[Latent semantic analysis]]
*[[Latent semantic indexing]]
*[[Linear least squares (mathematics)|Linear least squares]]
*[[Locality sensitive hashing]]
*[[Matrix decomposition]]
*[[Multilinear principal component analysis]] (MPCA)
*[[Nearest neighbor search]]
*[[Non-linear iterative partial least squares]]
*[[Polar decomposition]]
*[[Principal components analysis]] (PCA)
*[[Singular value]]
*[[Time series]]
*[[Two-dimensional singular value decomposition]] (2DSVD)
*[[von Neumann's trace inequality]]
*[[Wavelet compression]]
*[[Low-rank approximation]]
 
==Notes==
{{Reflist}}
 
==References==
* {{Cite book | last2=Bau III | first2=David | last1=Trefethen | first1=Lloyd N. | author1-link = Lloyd N. Trefethen | title=Numerical linear algebra | publisher=Society for Industrial and Applied Mathematics | location=Philadelphia | isbn=978-0-89871-361-9 | year=1997 }}
* {{Cite journal | last1=Demmel | first1=James | author1-link = James Demmel | last2=Kahan | first2=William | author2-link=William Kahan | title=Accurate singular values of bidiagonal matrices | doi=10.1137/0911052 | year=1990 | journal=Society for Industrial and Applied Mathematics. Journal on Scientific and Statistical Computing | volume=11 | issue=5 | pages=873–912 }}
* {{Cite journal | last1=Golub | first1=Gene H. | author1-link=Gene H. Golub | last2=Kahan | first2=William | author2-link=William Kahan | title=Calculating the singular values and pseudo-inverse of a matrix | jstor=2949777 | year=1965 | journal=Journal of the Society for Industrial and Applied Mathematics: Series B, Numerical Analysis | volume=2 | issue=2 | pages=205–224 | doi=10.1137/0702016 }}
* {{Cite book | last1=Golub | first1=Gene H. | author1-link=Gene H. Golub | last2=Van Loan | first2=Charles F. | author2-link=Charles F. Van Loan | title=Matrix Computations | publisher=Johns Hopkins | edition=3rd | isbn=978-0-8018-5414-9 | year=1996 }}
* {{Cite book | last1=GSL Team | title=GNU Scientific Library. Reference Manual | year=2007 | chapter=§14.4 Singular Value Decomposition | chapterurl=http://www.gnu.org/software/gsl/manual/html_node/Singular-Value-Decomposition.html }}
* Halldor, Bjornsson and Venegas, Silvia A. (1997). [http://brunnur.vedur.is/pub/halldor/TEXT/eofsvd.html "A manual for EOF and SVD analyses of climate data"]. McGill University, CCGCR Report No. 97-1, Montréal, Québec, 52pp.
* {{Cite journal | doi = 10.1007/BF01937276 | last1 = Hansen | first1 = P. C. | year = 1987 | title = The truncated SVD as a method for regularization | journal = BIT | volume = 27 | pages = 534–553 | ref = harv }}
*{{cite book |author=Horn, Roger A.; Johnson, Charles R. |title=Matrix Analysis |publisher=Cambridge University Press |year=1985 |isbn=0-521-38632-2 |chapter=Section 7.3 }}
*{{cite book |author=Horn, Roger A.; Johnson, Charles R. |title=Topics in Matrix Analysis |publisher=Cambridge University Press |year=1991 |isbn=0-521-46713-6 |chapter=Chapter 3 }}
*{{cite book |author=Samet, H. |title=Foundations of Multidimensional and Metric Data Structures |publisher=Morgan Kaufmann |year=2006 |isbn=0-12-369446-9 }}
*{{cite book |author=Strang G. |title=Introduction to Linear Algebra |publisher=Wellesley-Cambridge Press |year=1998 |isbn=0-9614088-5-5 |edition=3rd |chapter=Section 6.7 }}
* {{Cite journal | last1=Stewart | first1=G. W. | title=On the Early History of the Singular Value Decomposition | url=http://citeseer.ist.psu.edu/stewart92early.html | doi=10.1137/1035134 | year=1993 | journal=SIAM Review | volume=35 | issue=4 | pages=551–566 |ref=harv }}
*{{cite book |author=Wall, Michael E., Andreas Rechtsteiner, Luis M. Rocha |chapter=Singular value decomposition and principal component analysis |chapterurl=http://public.lanl.gov/mewall/kluwer2002.html |editor=D.P. Berrar, W. Dubitzky, M. Granzow |title=A Practical Approach to Microarray Data Analysis |publisher=Kluwer |location=Norwell, MA |year=2003 |pages=91–109 }}
*{{Citation|last1=Press|first1=WH|last2=Teukolsky|first2=SA|last3=Vetterling|first3=WT|last4=Flannery|first4=BP|year=2007|title=Numerical Recipes: The Art of Scientific Computing|edition=3rd|publisher=Cambridge University Press| publication-place=New York|isbn=978-0-521-88068-8|chapter=Section 2.6|chapter-url=http://apps.nrbook.com/empanel/index.html?pg=65}}
 
{{Numerical linear algebra}}
 
{{DEFAULTSORT:Singular Value Decomposition}}
[[Category:Singular value decomposition| ]]
[[Category:Linear algebra]]
[[Category:Numerical linear algebra]]
[[Category:Matrix theory]]
[[Category:Matrix decompositions]]
[[Category:Functional analysis]]
 
{{Link GA|fr}}

Latest revision as of 01:28, 6 September 2014

The author is known by the title of Figures Wunder. For years he's been working as a meter reader and it's some thing he truly enjoy. South Dakota is exactly where I've always been residing. Playing baseball is the pastime he will by no means stop performing.

My web blog at home std test (simply click the following webpage)