Singular value decomposition: Difference between revisions

Content deleted Content added
math font
Tag: Reverted
intermittent math typesetting; minor citation cleanups; 2 col ref layout
Tag: Reverted
Line 13:
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]] into a rotation, followed by a rescaling followed by another rotation. It generalizes the [[eigendecomposition]] of a square [[normal matrix]] with an orthonormal eigenbasis to any {{tmath|m \times n}} matrix. It is related to the [[polar decomposition#Matrix polar decomposition|polar decomposition]].
 
Specifically, the singular value decomposition of an <math>m \times n</math> complex matrix {{tmath|\mathbf M}} is a factorization of the form <math>\mathbf{M} = \mathbf{U\Sigma V^*}\ ,</math> where {{tmath|\mathbf U}} is an {{tmath|m \times m}} complex [[unitary matrix]], <math>\mathbf \Sigma</math> is an <math>m \times n</math> [[rectangular diagonal matrix]] with non-negative real numbers on the diagonal, {{tmath|\mathbf V}} is an <math>n \times n</math> complex unitary matrix, and <math>\mathbf V^*</math> is the [[conjugate transpose]] of {{tmath|\mathbf V}}. Such decomposition always exists for any complex matrix. If {{tmath|\mathbf M}} is real, then {{tmath|\mathbf U}} and {{tmath|\mathbf V}} can be guaranteed to be real [[orthogonal matrix|orthogonal]] matrices; in such contexts, the SVD is often denoted <math>\mathbf U \mathbf \Sigma \mathbf V^\mathsf{T} ~.</math>
 
The diagonal entries <math>\ \sigma_i = \Sigma_{i i}\ </math> of <math>\ \mathbf \Sigma\ </math> are uniquely determined by {{tmath|\ \mathbf M\ }} and are known as the [[singular value]]s of {{tmath|\mathbf M}}. The number of non-zero singular values is equal to the [[rank of a matrix|rank]] of {{tmath|\mathbf M ~.}}. The columns of {{tmath|\ \mathbf U\ }} and the columns of {{tmath|\ \mathbf V\ }} are called left-singular vectors and right-singular vectors of {{tmath|\ \mathbf M\ ,}}, respectively. They form two sets of [[orthonormal basis|orthonormal bases]] {{tmath|\ \mathbf u_1, \ldots, \mathbf u_m\ }} and {{tmath|\ \mathbf v_1, \ldots, \mathbf v_n\ ,}} and if they are sorted so that the singular values <math>\sigma_i</math> with value zero are all in the highest-numbered columns (or rows), the singular value decomposition can be written as
 
<math display=block>
\mathbf{M} = \sum_{i=1}^{r}\sigma_i\mathbf{u}_i\mathbf{v}_i^{*}\ ,
</math>
 
where <math>\ r \leq \min\{m,n\}\ </math> is the rank of {{tmath|\ \mathbf M ~.}}
 
The SVD is not unique. However, it is always possible to choose the decomposition such that the singular values <math>\ \Sigma_{i i}\ </math> are non-negative and in descending order. In this case, <math>\ \mathbf \Sigma\ </math> (but not {{tmath|\ \mathbf U\ }} and {{tmath|\ \mathbf V\ }}) is uniquely determined by {{tmath|\ \mathbf M ~.}}
 
The term sometimes refers to the '''compact SVD''', a similar decomposition {{tmath|\ \mathbf M {{=}} \mathbf{U\Sigma V}^*\ }} in which {{tmath|\ \mathbf \Sigma\ }} is square diagonal of size {{tmath|\ r \times r\ ,}} where {{tmath|\ r \leq \min\{m,n\}\ }} is the rank of {{tmath|\ \mathbf M\ ,}} and has only the non-zero singular values. In this variant, {{tmath|\ \mathbf U\ }} is an {{tmath|\ m \times r\ }} [[semi-orthogonal matrix|semi-unitary matrix]] and <math>\ \mathbf{V}\ </math> is an {{tmath|n \times r}} [[semi-orthogonal matrix|semi-unitary matrix]], such that <math>\ \mathbf U^* \mathbf U = \mathbf V^* \mathbf V = \mathbf I_r ~.</math>
 
Mathematical applications of the SVD include computing the [[Moore–Penrose pseudoinverse|pseudoinverse]], matrix approximation, and determining the rank, [[range of a matrix|range]], and [[kernel (matrix)|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|thumb|right|280px|Animated illustration of the SVD of a 2D, real [[Shear mapping|shearing matrix]] {{math|'''M'''}}. First, we see the [[unit disc]] in blue together with the two [[standard basis|canonical unit vectors]]. We then see the actions of {{math|'''M'''}}, which distorts the disk to an [[ellipse]]. The SVD decomposes {{math|'''M'''}} into three simple transformations: an initial [[Rotation matrix|rotation]] {{math|'''V'''<sup>⁎</sup>}}, a [[Scaling matrix|scaling]] <math>\ \mathbf{\Sigma}\ </math> along the coordinate axes, and a final rotation {{math|'''U'''}}. The lengths {{math|''σ''<sub>1</sub>}} and {{math|''σ''<sub>2</sub>}} of the [[Ellipse#Elements of an ellipse|semi-axes]] of the ellipse are the [[singular value]]s of {{math|'''M'''}}, namely {{math|Σ<sub>1,1</sub>}} and {{math|Σ<sub>2,2</sub>}}.]]
[[File:Singular_value_decomposition_visualisation.svg|thumb|Visualization of the matrix multiplications in singular value decomposition]]
 
=== Rotation, coordinate scaling, and reflection ===
In the special case when {{tmath|\ \mathbf M\ }} is an {{tmath|\ m \times m\ }} real [[square matrix]], the matrices {{tmath|\ \mathbf U\ }} and {{tmath|\ \mathbf V^*\ }} can be chosen to be real {{tmath|\ m \times m\ }} matrices too. In that case, "unitary" is the same as "[[orthogonal matrix|orthogonal]]". Then, interpreting both unitary matrices as well as the diagonal matrix, summarized here as {{tmath|\ \mathbf A\ ,}} as a [[linear transformation]] {{tmath|\ \mathbf x \mapsto \mathbf{Ax}\ }} of the space {{tmath|\mathbf \mathbb R_m\ ,}} the matrices {{tmath|\ \mathbf U\ }} and {{tmath|\ \mathbf V^*\ }} represent [[rotation (geometry)|rotations]] or [[reflection (geometry)|reflection]] of the space, while {{tmath|\ \mathbf \Sigma\ }} represents the [[scaling matrix|scaling]] of each coordinate {{tmath|\ \mathbf x_i\ }} by the factor {{tmath|\ \sigma_i ~.}} Thus the SVD decomposition breaks down any linear transformation of {{tmath|\ \mathbf R^m\ }} into a [[function composition|composition]] of three geometrical [[transformation (geometry)|transformations]]: a rotation or reflection {{nobr|&thinsp;({{tmath| \mathbf V^*}})\ ,}} followed by a coordinate-by-coordinate [[scaling (geometry)|scaling]] {{nobr|&thinsp;({{tmath|\mathbf \Sigma}})\ ,}} followed by another rotation or reflection {{nobr|&thinsp;({{tmath|\mathbf U}}) ~.}}
 
In particular, if {{tmath|\ \mathbf M\ }} has a positive determinant, then {{tmath|\ \mathbf U\ }} and {{tmath|\ \mathbf V^*\ }} can be chosen to be both rotations with reflections, or both rotations without reflections.{{Citation needed|date=September 2022}} 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 {{tmath|\ \mathbf M\ }} is real but not square, namely {{tmath|\ m\times n\ }} with {{tmath|m \neq n,}} it can be interpreted as a linear transformation from {{tmath|\mathbf \mathbb R^n\ }} to {{tmath|\mathbf \mathbb R^ m ~.}} Then {{tmath|\mathbf U}} and {{tmath|\mathbf V^*}} can be chosen to be rotations/reflections of {{tmath|\mathbf R^m}} and {{tmath|\mathbfmathbb R^n\ ,}} respectively; and {{tmath|\mathbf \Sigma,}} besides scaling the first {{tmath|\ \min\{m,n\}\ }} coordinates, also extends the vector with zeros, i.e. removes trailing coordinates, so as to turn {{tmath|\mathbfmathbb R^n}} into {{tmath|\mathbf \mathbb R^m ~.}}
 
=== Singular values as semiaxes of an ellipse or ellipsoid ===
Line 144:
\end{bmatrix}</math>
 
and get an equally valid singular value decomposition. As the matrix {{tmath|\ \mathbf M\ }} has rank &nbsp;3, it has only 3 &nbsp;nonzero singular values. In taking the product {{tmath|\ \mathbf{U}\mathbf{\Sigma} \mathbf{V}^*\ ,}}, the final column of {{tmath|\ \mathbf U\ }} and the final two rows of {{tmath|\ \mathbf{V}^*}\ }} 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|compact SVD]], {{tmath|1=\ \mathbf M {{=}} \mathbf{U}_r\mathbf{\Sigma}_r \mathbf{V}_r^*\ ,}}, eliminates these superfluous rows, columns, and singular values:
 
<math display=block>\begin{align}
Line 171:
== SVD and spectral decomposition ==
=== Singular values, singular vectors, and their relation to the SVD ===
A non-negative real number {{tmath|\ \sigma\ }} is a '''[[singular value]]''' for {{tmath|\ \mathbf M\ }} if and only if there exist unit-length vectors {{tmath|\ \mathbf u\ }} in {{tmath|K^m\ }} and {{tmath|\ \mathbf v\ }} in {{tmath|\ K^n\ }} such that
 
<math display=block>\begin{align}
\mathbf{M v} &= \sigma \mathbf{u}\ , \\[3mu]
\mathbf M^*\mathbf u &= \sigma \mathbf{v} ~.
\end{align}</math>
 
The vectors {{tmath|\ \mathbf u\ }} and {{tmath|\ \mathbf v\ }} are called '''left-singular''' and '''right-singular vectors''' for {{tmath|\ \sigma\ ,}} respectively.
 
In any singular value decomposition
Line 186:
</math>
 
the diagonal entries of {{tmath|\ \mathbf \Sigma\ }} are equal to the singular values of {{tmath|\ \mathbf M ~.}} The first {{tmath|\ p {{=}} \min(m,n)\ }} columns of {{tmath|\ \mathbf U\ }} and {{tmath|\ \mathbf V\ }} are, respectively, left- and right-singular vectors for the corresponding singular values. Consequently, the above theorem implies that:
* An {{tmath\ |m \times n\ }} matrix {{tmath|\ \mathbf M\ }} has at most {{tmath|\ p\ }} distinct singular values.
* It is always possible to find a [[orthogonal basis|unitary basis]] {{tmath|\ \mathbf U\ }} for {{tmath|K^m}} with a subset of basis vectors spanning the left-singular vectors of each singular value of {{tmath|\ \mathbf M ~.}}
* It is always possible to find a unitary basis {{tmath|\ \mathbf V\ }} for {{tmath|\ K^n\ }} with a subset of basis vectors spanning the right-singular vectors of each singular value of {{tmath|\ \mathbf M ~.}}
 
A singular value for which we can find two left (or right) singular vectors that are linearly independent is called ''degenerate''. If {{tmath|\mathbf u_1}} and {{tmath|\mathbf u_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 {{tmath|\mathbf U}} and {{tmath|\mathbf V}} corresponding to diagonal elements of {{tmath|\mathbf \Sigma}} all with the same value {{tmath|\ \sigma ~.}}
 
As an exception, the left and right-singular vectors of singular value 0 comprise all unit vectors in the [[cokernel]] and [[Kernel (linear algebra)|kernel]], respectively, of {{tmath|\ \mathbf M\ ,}} which by the [[rank–nullity theorem]] cannot be the same dimension if {{tmath|\ m \neq n ~.}} Even if all singular values are nonzero, if {{tmath|\ m > n\ }} then the cokernel is nontrivial, in which case {{tmath|\ \mathbf U\ }} is padded with {{tmath|\ m - n\ }} orthogonal vectors from the cokernel. Conversely, if {{tmath|\ m < n\ ,}} then {{tmath|\ \mathbf V\ }} is padded by {{tmath|\ n - m\ }} orthogonal vectors from the kernel. However, if the singular value of {{tmath|0}} exists, the extra columns of {{tmath|\ \mathbf U\ }} or {{tmath|\ \mathbf V\ }} 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 {{tmath|e^{i\varphi} }} (for the real case up to a sign). Consequently, if all singular values of a square matrix {{tmath|\mathbf M}} are non-degenerate and non-zero, then its singular value decomposition is unique, up to multiplication of a column of {{tmath|\mathbf U}} by a unit-phase factor and simultaneous multiplication of the corresponding column of {{tmath|\mathbf V}} by the same unit-phase factor.
Line 244:
 
<math display=block>
\tilde{\mathbf{M}} = \mathbf{U} \tilde{\mathbf \Sigma} \mathbf{V}^*\ ,
</math>
 
where <math>\ \tilde{\mathbf \Sigma}\ </math> is the same matrix as <math>\ \mathbf \Sigma\ </math> except that it contains only the {{tmath|r}} largest singular values (the other singular values are replaced by zero). This is known as the '''[[Low-rank approximation|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 {{tmath|\ \mathbf A\ }} can be written as an [[outer product]] of two vectors {{tmath|\ \mathbf A {{=}} \mathbf u \otimes \mathbf v\ ,}} or, in coordinates, {{tmath|\ A_{ij} {{=}} u_i v_j ~.}} Specifically, the matrix {{tmath|\ \mathbf M\ }} can be decomposed as,
 
<math display=block>
\mathbf{M} = \sum_i \mathbf{A}_i
= \sum_i \sigma_i \mathbf U_i \otimes \mathbf V_i ~.
</math>
 
Here {{tmath|\ \mathbf U_i\ }} and {{tmath|\ \mathbf V_i\ }} are the {{tmath|i}}-th columns of the corresponding SVD matrices, {{tmath|\ \sigma_i\ }} are the ordered singular values, and each {{tmath|\ \mathbf A_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 {{tmath|\ \sigma_i\ }} is exactly the rank of the matrix.{{citation needed|date=November 2023}} 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<ref>{{cite journal |doi=10.1016/0166-2236(95)94496-R |last1=DeAngelisdeAngelis |first1=G. C. |last2=Ohzawa |first2=I. |last3=Freeman |first3=R. D. |date=October 1995 |title=Receptive-field dynamics in the central visual pathways |journal=Trends Neurosci. |volume=18 |issue=10 |pages=451–8 |date=October 1995451–458 |pmid=8545912 |s2cid=12827601 }}</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 {{tmath|\ \mathbf U\ }} in the SVD factorization is then a Gabor while the first column of {{tmath|\ \mathbf V\ }} represents the time modulation (or vice versa). One may then define an index of separability
 
<math display=block>
\alpha = \frac{\sigma_1^2}{\sum_i \sigma_i^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 |last1=Depireux |first1=D. A. |last2=Simon |first2=J. Z. |last3=Klein |first3=D. J. |last4=Shamma |first4=S. A. |date=March 2001 |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 20011220–1234 |pmid=11247991 |doi=10.1152/jn.2001.85.3.1220}}</ref>
 
===Nearest orthogonal matrix===
It is possible to use the SVD of a square matrix {{tmath|\ \mathbf A\ }} to determine the [[orthogonal matrix]] {{tmath|\ \mathbf O\ }} closest to {{tmath|\ \mathbf A ~.}} The closeness of fit is measured by the [[Frobenius norm]] of {{tmath|\ \mathbf O - \mathbf A ~.}} The solution is the product {{tmath|\ \mathbf U \mathbf V^* ~.}}<ref>[http://www.wou.edu/~beavers/Talks/Willamette1106.pdf The Singularsingular Valuevalue Decompositiondecomposition in Symmetricsymmetric (Lowdin) Orthogonalizationorthogonalization and Datadata Compressioncompression]</ref> This intuitively makes sense because an orthogonal matrix would have the decomposition {{tmath|\ \mathbf U \mathbf I \mathbf V^*\ }} where {{tmath|\ \mathbf I\ }} is the identity matrix, so that if {{tmath|\ \mathbf A {{=}} \mathbf U \mathbf \Sigma \mathbf V^*\ }} then the product {{tmath|\ \mathbf A {{=}} \mathbf U \mathbf V^*\ }} amounts to replacing the singular values with ones. Equivalently, the solution is the unitary matrix {{tmath|\ \mathbf R {{=}} \mathbf U \mathbf V^*\ }} of the Polar Decomposition <math>\ \mathbf M = \mathbf R \mathbf P = \mathbf P' \mathbf R\ </math> in either order of stretch and rotation, as described above.
 
A similar problem, with interesting applications in [[shape analysis (digital geometry)|shape analysis]], is the [[orthogonal Procrustes problem]], which consists of finding an orthogonal matrix {{tmath|\ \mathbf O\ }} which most closely maps {{tmath|\ \mathbf A\ }} to {{tmath|\ \mathbf B ~.}} Specifically,
 
<math display=block>
\mathbf{O} = \underset\Omega\operatorname{argmin}\ \|\mathbf{A}\boldsymbol{\Omega} - \mathbf{B}\|_F \quad\text{subject to}\quad \boldsymbol{\Omega}^\operatornamemathsf{T}\boldsymbol{\Omega} = \mathbf{I}\ ,
</math>
 
where <math>\ \| \cdot \|_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^\operatornamemathsf{T} \mathbf B ~.</math>.
 
===The Kabsch algorithm===
Line 284:
The SVD and pseudoinverse have been successfully applied to [[signal processing]],<ref>{{cite journal |last=Sahidullah |first=Md. |author2=Kinnunen, Tomi |title=Local spectral variability features for speaker verification |journal=Digital Signal Processing |date=March 2016 |volume=50 |pages=1–11 |doi=10.1016/j.dsp.2015.10.011 |bibcode=2016DSP....50....1S |url= https://erepo.uef.fi/handle/123456789/4375}}<!--https://erepo.uef.fi/handle/123456789/4375--></ref> [[image processing]]<ref name="Mademlis2018">{{cite book |last1=Mademlis |first1=Ioannis |last2=Tefas |first2=Anastasios |last3=Pitas |first3=Ioannis |title=2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) |chapter=Regularized SVD-Based Video Frame Saliency for Unsupervised Activity Video Summarization |url=https://ieeexplore.ieee.org/document/8462274 |year=2018 |pages=2691–2695 |publisher=IEEE |doi=10.1109/ICASSP.2018.8462274 |isbn=978-1-5386-4658-8 |s2cid=52286352 |access-date=19 January 2023}}</ref> and [[big data]] (e.g., in genomic signal processing).<ref>
{{Cite journal
| authorfirst1 = O. |last1 = Alter, |first2 = P. O. |last2 = Brown and|first3 = D. |last3 = Botstein
| date = September 2000
| title = Singular Value Decomposition for Genome-Wide Expression Data Processing and Modeling
| journal = PNAS
| volume = 97 | issue = 18 | pages = 10101–10106
| doi = 10.1073/pnas.97.18.10101 | doi-access = free
| issue = 18
| pmid = 10963673 | pmc = 27718
| pages = 10101–10106
| date = September 2000
| doi = 10.1073/pnas.97.18.10101
| pmid = 10963673
| pmc = 27718
| bibcode = 2000PNAS...9710101A
}}</ref><ref>
| doi-access = free
}}</ref><ref>{{Cite journal
| author1first1 = O. Alter | author2last1 = G. H. GolubAlter
| first2 = G.H. | last2 = 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
| title = Integrative analysis of genome-scale data by using pseudoinverse projection predicts novel correlation between DNA replication and RNA transcription
| doi = 10.1073/pnas.0406767101
| pmid = 15545604
| pmc = 534520
| bibcode = 2004PNAS..10116577A
| doi-access = free
}}</ref><ref>{{Cite journal
| author1 = O. Alter | author2 = G. H. Golub
| title = Singular Value Decomposition of Genome-Scale mRNA Lengths Distribution Reveals Asymmetry in RNA Gel Electrophoresis Band Broadening
| journal = PNAS
| volume = 103101 | issue = 47 | pages = 16577–16582
| doi = 10.1073/pnas.0406767101 | doi-access = free
| issue = 32
| pmid = 15545604 | pmc = 534520
| pages = 11828–11833
| bibcode = 2004PNAS..10116577A
}}
</ref><ref>
{{Cite journal
| first1 = O. | last1 = Alter
| first2 = G.H. | last2 = Golub
| date = August 2006
| title = Singular value decomposition of benome-scale mRNA lengths distribution reveals asymmetry in RNA gel electrophoresis band broadening
| doi = 10.1073/pnas.0604756103
| pmidjournal = 16877539PNAS
| volume = 103 | issue = 32 | pages = 11828–11833
| pmc = 1524674
| doi = 10.1073/pnas.0604756103 | doi-access = free
| pmid = 16877539 | pmc = 1524674
| bibcode = 2006PNAS..10311828A
}}
| doi-access = free
}}</ref><ref>
{{Cite journal
| first1 = N. M. | last1 = Bertagnolli | first2 = J.A. | last2 = Drake
| first3 = J.M. | last3 = Tennessen | first4 = O. | last4 = Alter
| last1 = Bertagnolli
| first2 = J. A.
| last2 = Drake
| first3 = J. M.
| last3 = Tennessen
| first4 = O.
| last4 = 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
| title = SVD identifies transcript length distribution functions from DNA microarray data and reveals evolutionary forces globally affecting GBM metabolism
| doi = 10.1371/journal.pone.0078913
| journal = PLOS ONE
| id = [http://www.alterlab.org/research/highlights/pone.0078913_Highlight.pdf Highlight]
| volume = 8 | issue = 11 | page = e78913
| pmid = 24282503
| doi = 10.1371/journal.pone.0078913 | doi-access = free
| pmc = 3839928
| pmid = 24282503 | pmc = 3839928
| bibcode = 2013PLoSO...878913B
}} [http://www.alterlab.org/research/highlights/pone.0078913_Highlight.pdf Highlight]
| doi-access = free
}}</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.
 
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" <math>\ \kappa := \sigma_\text{max} / \sigma_\text{min} ~.</math>. It often controls the error rate or convergence rate of a given computational scheme on such systems.<ref>{{cite journal |last1last=Edelman |first1first=Alan |year=1992 |title=On the distribution of a scaled condition number |url=http://math.mit.edu/~edelman/publications/distribution_of_a_scaled.pdf |journal=Math. Comp. |volume=58 |pagesissue=185–190197 |yearpages=1992|issue=197185–190 |doi=10.1090/S0025-5718-1992-1106966-2 |doi-access=free |bibcode=1992MaCom..58..185E |doi-accessurl=freehttp://math.mit.edu/~edelman/publications/distribution_of_a_scaled.pdf }}</ref><ref>{{cite journal |last1=Shen |first1=Jianhong (Jackie) |year=2001 |title=On the singular values of Gaussian random matrices |journal=Linear Alg. Appl. |volume=326 |pagesissue=1–141–3 |yearpages=2001|issue=1–31–14 |doi=10.1016/S0024-3795(00)00322-0 |doi-access=free }}</ref>
 
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 methods]] are used to estimate the most linearly quickly growing few perturbations to the central numerical weather prediction over a given initial forward time period; i.e., the singular vectors corresponding to the largest singular values of the linearized propagator for the global weather over that time interval. The output singular vectors in this case are entire weather systems. These perturbations are then run through the full nonlinear model to generate an [[ensemble forecasting|ensemble forecast]], giving a handle on some of the uncertainty that should be allowed for around the current central prediction.
 
SVD has also been applied to reduced order modelling. The aim of reduced order modelling is to reduce the number of degrees of freedom in a complex system which is to be modeled. SVD was coupled with [[radial basis functions]] to interpolate solutions to three-dimensional unsteady flow problems.<ref>{{cite journal | last1 = Walton | first1 = S. | last2 = Hassan | first2 = O. | last3 = Morgan | first3 = K. | year = 2013 | title = Reduced order modelling for unsteady fluid flow using proper orthogonal decomposition and radial basis functions | journal = Applied Mathematical Modelling | volume = 37 | issue = 20–21 | pages = 8930–8945 | doi=10.1016/j.apm.2013.04.025 | doi-access = free }}</ref>
 
Interestingly, SVD has been used to improve gravitational waveform modeling by the ground-based gravitational-wave interferometer aLIGO.<ref>{{cite journal | last1 = Setyawati | first1 = Y. | last2 = Ohme | first2 = F. | last3 = Khan | first3 = S. | year = 2019| title = Enhancing gravitational waveform model through dynamic calibration | journal = Physical Review D | volume = 99| issue =2 | pages = 024010| doi=10.1103/PhysRevD.99.024010| bibcode = 2019PhRvD..99b4010S | arxiv = 1810.07060 | s2cid = 118935941 }}</ref> 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.<ref>{{cite report |last1=Sarwar |first1=Badrul |last2=Karypis |first2=George |last3=Konstan |first3=Joseph A. |author3-link=Joseph A. Konstan |last4=Riedl |first4=John T. |author4-link=John T. Riedl |name-list-style=amp |year=2000 |title=Application of Dimensionalitydimensionality Reductionreduction in Recommenderrecommender SystemsystemAa Casecase Study |url=https://apps.dtic.mil/sti/citations/tr/ADA439541 |journal=study |publisher=[[University of Minnesota]] |hdl=11299/215429 |typeid=Technical report 00-043 |url=https://apps.dtic.mil/sti/citations/tr/ADA439541 }}</ref> Distributed algorithms have been developed for the purpose of calculating the SVD on clusters of commodity machines.<ref>{{cite arXiv |last1=Bosagh Zadeh |first1=Reza |last2=Carlsson |first2=Gunnar |title=Dimension Independentindependent Matrixmatrix Squaresquare Usingusing MapReduce |year=2013 |class=cs.DS |eprint=1304.1467}}</ref>
 
Low-rank SVD has been applied for hotspot detection from spatiotemporal data with application to disease [[outbreak]] detection.<ref>
{{Cite journal
|author1first1=Hadi Fanaee |last1=Tork |author2first2=João |last2=Gama
|date = September 2014
|title = Eigenspace method for spatiotemporal hotspot detection
|journal = Expert Systems
|volume=32 |issue=3 |pages = 454–464
|issue=3
|pages = 454–464
|date = September 2014
|doi = 10.1111/exsy.12088
|arxiv=1406.3506 |s2cid=15476557
|bibcode=2014arXiv1406.3506F
}}
|s2cid=15476557
</ref>
}}</ref> A combination of SVD and [[Higher-order singular value decomposition|higher-order SVD]] also has been applied for real time event detection from complex data streams (multivariate data with space and time dimensions) in [[disease surveillance]].<ref>{{Cite journal
A combination of SVD and [[Higher-order singular value decomposition|higher-order SVD]] also has been applied for real time event detection from complex data streams (multivariate data with space and time dimensions) in [[disease surveillance]].<ref>
|author1=Hadi Fanaee Tork |author2=João Gama
{{Cite journal
|title = EigenEvent: An Algorithm for Event Detection from Complex Data Streams in Syndromic Surveillance
|first1=Hadi Fanaee |last1=Tork |first2=João |last2=Gama
|journal = Intelligent Data Analysis
|volume = 19
|issue = 3
|pages=597–616
|date = May 2015
|title = EigenEvent: An algorithm for event detection from complex data streams in syndromic surveillance
|arxiv = 1406.3496
|journal = Intelligent Data Analysis
|doi=10.3233/IDA-150734|s2cid=17966555
|volume = 19 |issue = 3 |pages=597–616
}}</ref>
|arxiv = 1406.3496 |s2cid=17966555
|doi=10.3233/IDA-150734
}}
</ref>
 
In [[astrodynamics]], the SVD and its variants are used as an option to determine suitable maneuver directions for transfer trajectory design<ref name=muralidharan2023stretching>{{Cite journal |first1=Vivek |last1=Muralidharan |first2=Kathleen |last2=Howell |year = 2023 |title=Stretching directions in cislunar space: Applications for departures and transfer design|first1=Vivek|last1=Muralidharan|first2=Kathleen|last2=Howell |journal =Astrodynamics | volume = 7 | issue = 2 | pages = 153–178 | date = 2023 | doi = 10.1007/s42064-022-0147-z | bibcode = 2023AsDyn...7..153M |s2cid=252637213 }}</ref> and [[orbital station-keeping]].<ref name=Muralidharan2021>{{Cite journal |first1=Vivek |last1=Muralidharan |first2=Kathleen |last2=Howell | year = 2022 |title=Leveraging stretching directions for stationkeeping in Earth-Moon halo orbits |first1=Vivek|last1=Muralidharan|first2=Kathleen|last2=Howell|journal = [[Advances in Space Research]] | volume = 69 | issue = 1 | pages = 620–646 | date = 2022 | doi = 10.1016/j.asr.2021.10.028 | bibcode = 2022AdSpR..69..620M |s2cid=239490016 }}</ref>
 
== Proof of existence ==
Line 390 ⟶ 376:
<math display=block> f : \left\{ \begin{align}
\R^n &\to \R \\
\mathbf{x} &\mapsto \mathbf{x}^\operatornamemathsf{T} \mathbf{M} \mathbf{x}
\end{align}\right\} ~.</math>
 
By the [[extreme value theorem]], this continuous function attains a maximum at some {{tmath|\mathbf u}} when restricted to the unit sphere <math>\ \{\mathbf x : \|\mathbf x\| = 1\} ~.</math> By the [[Lagrange multipliers]] theorem, {{tmath|\ \mathbf u\ }} necessarily satisfies
 
<math display=block>\nabla \mathbf{u}^\operatornamemathsf{T} \mathbf{M} \mathbf{u} - \lambda \cdot \nabla \mathbf{u}^\operatornamemathsf{T} \mathbf{u} = 0</math>
 
for some real number {{tmath|\lambda.}} The nabla symbol, {{tmath|\nabla\ ,}}, is the [[del]] operator (differentiation with respect to {{nobr|{{tmath|\ \mathbf x\ }}).}} Using the symmetry of {{tmath|\ \mathbf M\ }} we obtain
 
<math display=block>\nabla \mathbf{x}^\operatornamemathsf{T} \mathbf{M} \mathbf{x} - \lambda \cdot \nabla \mathbf{x}^\operatornamemathsf{T} \mathbf{x} = 2(\mathbf{M}-\lambda \mathbf{I})\mathbf{x} ~.</math>
 
Therefore {{tmath|\ \mathbf M \mathbf u {{=}} \lambda \mathbf u\ ,}} so {{tmath|\mathbf u}} is a unit length eigenvector of {{tmath|\mathbf M.}} For every unit length eigenvector {{tmath|\ \mathbf v\ }} of {{tmath|\ \mathbf M\ }} its eigenvalue is {{tmath|\ f(\mathbf v)\ ,}} so {{tmath|\ \lambda\ }} is the largest eigenvalue of {{tmath|\ \mathbf M ~.}} The same calculation performed on the orthogonal complement of {{tmath|\ \mathbf u\ }} gives the next largest eigenvalue and so on. The complex Hermitian case is similar; there {{tmath|\ f(\mathbf x) {{=}} \mathbf x^* \mathbf M \mathbf x\ }} is a real-valued function of {{tmath|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 {{tmath|\mathbf M}} is no longer required.
Line 408 ⟶ 394:
 
=== Based on the spectral theorem ===
Let <math>\mathbf{M}</math> be an {{tmath|\ m \times n\ }} complex matrix. Since <math>\ \mathbf{M}^* \mathbf{M}\ </math> is positive semi-definite and Hermitian, by the [[spectral theorem]], there exists an {{tmath|\ n \times n\ }} unitary matrix <math>\ \mathbf{V}\ </math> such that
 
<math display=block>
\mathbf V^* \mathbf M^* \mathbf M \mathbf V
= \bar\mathbf{D}
= \begin{bmatrix} \mathbf{D} & 0 \\ 0 & 0\end{bmatrix}\ ,
</math>
 
where <math>\ \mathbf{D}\ </math> is diagonal and positive definite, of dimension <math>\ \ell\times \ell\ ,</math>, with <math>\ell</math> the number of non-zero eigenvalues of <math>\ \mathbf{M}^* \mathbf{M}\ </math> (which can be shown to verify <math>\ \ell\le\min(n,m)\ </math>). Note that <math>\mathbf{V}</math> is here by definition a matrix whose <math>i</math>-th column is the <math>i</math>-th eigenvector of <math>\ \mathbf{M}^* \mathbf{M}\ ,</math>, corresponding to the eigenvalue <math>\ \bar{\mathbf{D}}_{ii} ~.</math>. Moreover, the <math>j</math>-th column of <math>\ \mathbf{V}\ ,</math>, for <math>\ j>\ell\ ,</math>, is an eigenvector of <math>\ \mathbf{M}^* \mathbf{M}</math> with eigenvalue <math>\ \bar{\mathbf{D}}_{jj}=0 ~.</math>. This can be expressed by writing <math>\mathbf{V}</math> as <math>\ \mathbf{V}=\begin{bmatrix}\mathbf{V}_1 &\mathbf{V}_2\end{bmatrix}\ ,</math>, where the columns of <math>\mathbf{V}_1</math> and <math>\mathbf{V}_2\ </math> therefore contain the eigenvectors of <math>\ \mathbf{M}^* \mathbf{M}\ </math> corresponding to non-zero and zero eigenvalues, respectively. Using this rewriting of <math>\ \mathbf{V}\ ,</math>, the equation becomes:
 
<math display=block>
Line 431 ⟶ 417:
<math display=block>
\mathbf{V}_1^* \mathbf{M}^* \mathbf{M} \mathbf{V}_1
= \mathbf{D}\ , \quad \mathbf{V}_2^* \mathbf{M}^* \mathbf{M} \mathbf{V}_2
= \mathbf{0} ~.
</math>
 
Moreover, the second equation implies <math>\ \mathbf{M}\mathbf{V}_2 = \mathbf{0} ~.</math>.<ref>To see this, we just have to notice that <math>\ \operatorname{Tr}(\mathbf{V}_2^* \mathbf{M}^* \mathbf{M} \mathbf{V}_2) = \|\mathbf{M} \mathbf{V}_2\|^2\ ,</math>, and remember that <math>\ \|A\| = 0 \Leftrightarrow A = 0 ~.</math>.</ref> Finally, the unitary-ness of <math>\ \mathbf{V}\ </math> translates, in terms of <math>\ \mathbf{V}_1\ </math> and <math>\ \mathbf{V}_2\ ,</math>, into the following conditions:
 
<math display=block>\begin{align}
\mathbf{V}_1^* \mathbf{V}_1 &= \mathbf{I}_1\ , \\
\mathbf{V}_2^* \mathbf{V}_2 &= \mathbf{I}_2\ , \\
\mathbf{V}_1 \mathbf{V}_1^* + \mathbf{V}_2 \mathbf{V}_2^* &= \mathbf{I}_{12}\ ,
\end{align}</math>
 
Line 448 ⟶ 434:
 
<math display=block>
\mathbf{U}_1 = \mathbf{M} \mathbf{V}_1 \mathbf{D}^{-\frac{1}{2}} ~.
</math>
 
Line 454 ⟶ 440:
 
<math display=block>
\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} (\mathbf{I} - \mathbf{V}_2\mathbf{V}_2^*) = \mathbf{M} - (\mathbf{M}\mathbf{V}_2)\mathbf{V}_2^* = \mathbf{M}\ ,
</math>
 
since <math>\ \mathbf{M}\mathbf{V}_2 = \mathbf{0}. ~.</math> This can be also seen as immediate consequence of the fact that <math>\ \mathbf{M}\mathbf{V}_1\mathbf{V}_1^* = \mathbf{M} ~.</math>. This is equivalent to the observation that if <math>\{\boldsymbol v_i\}_{i=1}^\ell</math> is the set of eigenvectors of <math>\mathbf{M}^* \mathbf{M}</math> corresponding to non-vanishing eigenvalues <math>\{\lambda_i\}_{i=1}^\ell</math>, then <math>\{\mathbf M \boldsymbol v_i\}_{i=1}^\ell</math> is a set of orthogonal vectors, and <math>\bigl\{\lambda_i^{-1/2}\mathbf M \boldsymbol v_i\bigr\}\vphantom|_{i=1}^\ell</math> is a (generally not complete) set of ''orthonormal'' vectors. This matches with the matrix formalism used above denoting with <math>\mathbf{V}_1</math> the matrix whose columns are <math>\{\boldsymbol v_i\}_{i=1}^\ell</math>, with <math>\mathbf{V}_2</math> the matrix whose columns are the eigenvectors of <math>\mathbf{M}^* \mathbf{M}</math> with vanishing eigenvalue, and <math>\mathbf{U}_1</math> the matrix whose columns are the vectors <math>\bigl\{\lambda_i^{-1/2}\mathbf M \boldsymbol v_i\bigr\}\vphantom|_{i=1}^\ell</math>.
 
We see that this is almost the desired result, except that <math>\mathbf{U}_1</math> and <math>\mathbf{V}_1</math> are in general not unitary, since they might not be square. However, we do know that the number of rows of <math>\mathbf{U}_1</math> is no smaller than the number of columns, since the dimensions of <math>\mathbf{D}</math> is no greater than <math>m</math> and <math>n</math>. Also, since
Line 501 ⟶ 487:
{{anchor|vch}}The singular values can also be characterized as the maxima of {{tmath|\mathbf u^\mathrm{T} \mathbf M \mathbf v,}} considered as a function of {{tmath|\mathbf u}} and {{tmath|\mathbf v,}} over particular subspaces. The singular vectors are the values of {{tmath|\mathbf u}} and {{tmath|\mathbf v}} where these maxima are attained.
 
Let {{tmath|\mathbf M}} denote an {{tmath|m \times n}} matrix with real entries. Let {{tmath|S^{k-1} }} be the unit <math>(k-1)</math>-sphere in <math> \mathbb{R}^k </math>, and define <math>\sigma(\mathbf{u}, \mathbf{v}) = \mathbf{u}^\operatornamemathsf{T} \mathbf{M} \mathbf{v},</math> <math>\mathbf{u} \in S^{m-1},</math> <math>\mathbf{v} \in S^{n-1}.</math>
 
Consider the function {{tmath|\sigma}} restricted to {{tmath|S^{m-1} \times S^{n-1}.}} Since both {{tmath|S^{m-1} }} and {{tmath|S^{n-1} }} are [[compact space|compact]] sets, their [[Product topology|product]] is also compact. Furthermore, since {{tmath|\sigma}} is continuous, it attains a largest value for at least one pair of vectors {{tmath|\mathbf u}} in {{tmath|S^{m-1} }} and {{tmath|\mathbf v}} in {{tmath|S^{n-1}.}} This largest value is denoted {{tmath|\sigma_1}} and the corresponding vectors are denoted {{tmath|\mathbf u_1}} and {{tmath|\mathbf v_1.}} Since {{tmath|\sigma_1}} is the largest value of {{tmath|\sigma(\mathbf u, \mathbf v)}} it must be non-negative. If it were negative, changing the sign of either {{tmath|\mathbf u_1}} or {{tmath|\mathbf v_1}} would make it positive and therefore larger.
Line 511 ⟶ 497:
<math display=block>
\nabla \sigma
= \nabla \mathbf{u}^\operatornamemathsf{T} \mathbf{M} \mathbf{v}
- \lambda_1 \cdot \nabla \mathbf{u}^\operatornamemathsf{T} \mathbf{u}
- \lambda_2 \cdot \nabla \mathbf{v}^\operatornamemathsf{T} \mathbf{v}
</math>
 
Line 520 ⟶ 506:
<math display=block> \begin{align}
\mathbf{M} \mathbf{v}_1 &= 2 \lambda_1 \mathbf{u}_1 + 0, \\
\mathbf{M}^\operatornamemathsf{T} \mathbf{u}_1 &= 0 + 2 \lambda_2 \mathbf{v}_1.
\end{align}</math>
 
Line 533 ⟶ 519:
<math display=block>\begin{align}
\mathbf{M} \mathbf{v}_1 &= \sigma_1 \mathbf{u}_1, \\
\mathbf{M}^\operatornamemathsf{T} \mathbf{u}_1 &= \sigma_1 \mathbf{v}_1.
\end{align}</math>
 
Line 594 ⟶ 580:
 
The approaches that use eigenvalue decompositions are based on the [[QR algorithm]], which is well-developed to be stable and fast.
Note that the singular values are real and right- and left- singular vectors are not required to form similarity transformations. One can iteratively alternate between the [[QR decomposition]] and the [[LQ decomposition]] to find the real diagonal [[Hermitian matrix|Hermitian matrices]]. The [[QR decomposition]] gives {{tmath|\mathbf M \Rightarrow \mathbf Q \mathbf R}} and the [[LQ decomposition]] of {{tmath|\ \mathbf R\ }} gives {{tmath|\mathbf R \Rightarrow \mathbf L \mathbf P^* ~.}} Thus, at every iteration, we have {{tmath|\ \mathbf M \Rightarrow \mathbf Q \mathbf L \mathbf P^*\ ,}} update {{tmath|\ \mathbf M \Leftarrow \mathbf L\ }} and repeat the orthogonalizations. Eventually,{{clarify|date=April 2021}} 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 ===
Line 732 ⟶ 718:
The singular values of a matrix {{tmath|\mathbf A}} are uniquely defined and are invariant with respect to left and/or right unitary transformations of {{tmath|\mathbf A.}} In other words, the singular values of {{tmath|\mathbf U \mathbf A \mathbf V,}} for unitary matrices {{tmath|\mathbf U}} and {{tmath|\mathbf V,}} are equal to the singular values of {{tmath|\mathbf A.}} This is an important property for applications in which it is necessary to preserve Euclidean distances and invariance with respect to rotations.
 
The Scale-Invariant SVD, or SI-SVD,<ref>
The Scale-Invariant SVD, or SI-SVD,<ref>{{citation|last=Uhlmann |first=Jeffrey |author-link=Jeffrey Uhlmann |title=A Generalized Matrix Inverse that is Consistent with Respect to Diagonal Transformations |series=SIAM Journal on Matrix Analysis |year=2018 |volume=239 |issue=2 |pages=781–800 |url=http://faculty.missouri.edu/uhlmannj/UC-SIMAX-Final.pdf |url-status=dead |archive-url=https://web.archive.org/web/20190617095052id_/http://faculty.missouri.edu/uhlmannj/UC-SIMAX-Final.pdf |archive-date= 2019-06-17}}</ref> is analogous to the conventional SVD except that its uniquely-determined singular values are invariant with respect to diagonal transformations of {{tmath|\mathbf A.}} In other words, the singular values of {{tmath|\mathbf D \mathbf A \mathbf E,}} for invertible diagonal matrices {{tmath|\mathbf D}} and {{tmath|\mathbf E,}} are equal to the singular values of {{tmath|\mathbf A.}} This is an important property for applications for which invariance to the choice of units on variables (e.g., metric versus imperial units) is needed.
{{cite journal |last=Uhlmann |first=Jeffrey |author-link=Jeffrey Uhlmann |year=2018 |title=A generalized matrix inverse that is consistent with respect to diagonal transformations |journal=SIAM Journal on Matrix Analysis |volume=239 |issue=2 |pages=781–800 |url=http://faculty.missouri.edu/uhlmannj/UC-SIMAX-Final.pdf |url-status=dead |archive-url=https://web.archive.org/web/20190617095052id_/http://faculty.missouri.edu/uhlmannj/UC-SIMAX-Final.pdf |archive-date= 2019-06-17}}</ref> is analogous to the conventional SVD except that its uniquely-determined singular values are invariant with respect to diagonal transformations of {{tmath|\ \mathbf A ~.}} In other words, the singular values of {{tmath|\ \mathbf D \mathbf A \mathbf E\ ,}} for invertible diagonal matrices {{tmath|\ \mathbf D\ }} and {{tmath|\ \mathbf E\ ,}} are equal to the singular values of {{tmath|\ \mathbf A ~.}} This is an important property for applications for which invariance to the choice of units on variables (e.g., metric versus imperial units) is needed.
 
=== Bounded operators on Hilbert spaces ===
The factorization {{tmath|\ \mathbf M {{=}} \mathbf U \mathbf \Sigma \mathbf V^*\ }} can be extended to a [[bounded operator]] {{tmath|\ \mathbf M\ }} on a separable Hilbert space {{tmath|\ H ~.}} Namely, for any bounded operator {{tmath|\ \mathbf M\ ,}} there exist a [[partial isometry]] {{tmath|\ \mathbf U\ ,}} a unitary {{tmath|\ \mathbf V\ ,}} a measure space {{tmath|(X, \mu),}} and a non-negative measurable {{tmath|f}} such that
 
<math display=block>
Line 741 ⟶ 728:
</math>
 
where {{tmath|T_f}} is the [[multiplication operator|multiplication by {{tmath|\ f\ }}]] on {{tmath|\ L^2(X, \mu) ~.}}
 
This can be shown by mimicking the linear algebraic argument for the matrix case above. {{tmath|\ \mathbf V T_f \mathbf V^*\ }} is the unique positive square root of {{tmath|\ \mathbf M^* \mathbf M\ ,}} as given by the [[Borel functional calculus]] for [[self-adjoint operator]]s. The reason why {{tmath|\mathbf U}} need not be unitary is that, unlike the finite-dimensional case, given an isometry {{tmath|U_1}} with nontrivial kernel, a suitable {{tmath|U_2}} may not be found such that
 
<math display=block>
Line 757 ⟶ 744:
</math>
 
and notice that {{tmath|\ \mathbf U \mathbf V^*\ }} is still a partial isometry while {{tmath|\ \mathbf V T_f \mathbf V^*\ }} is positive.
 
=== Singular values and compact operators ===
The notion of singular values and left/right-singular vectors can be extended to [[compact operator on Hilbert space]] as they have a discrete spectrum. If {{tmath|\ T\ }} is compact, every non-zero {{tmath|\ \lambda\ }} in its spectrum is an eigenvalue. Furthermore, a compact self-adjoint operator can be diagonalized by its eigenvectors. If {{tmath|\mathbf M}} is compact, so is {{tmath|\ \mathbf M^* \mathbf M ~.}}. Applying the diagonalization result, the unitary image of its positive square root {{tmath|T_f}} has a set of orthonormal eigenvectors {{tmath|\ \{e_i\}\ }} corresponding to strictly positive eigenvalues {{tmath|\ \{\sigma_i\} ~.}}. For any {{tmath|\ \psi\ }} in {{tmath|\ H\ ,}}
 
<math display=block>
Line 773 ⟶ 760:
 
==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 {{tmath|\mathbf A.}} The fourth mathematician to discover the singular value decomposition independently is [[Léon Autonne|Autonne]] in 1915, who arrived at it via the [[polar decomposition]]. The first proof of the singular value decomposition for rectangular and complex matrices seems to be by [[Carl Eckart]] and [[Gale J. Young]] in 1936;<ref>
{{Cite journal
|last1=Eckart |first1=C. |author1-link=Carl Eckart
|last1=Eckart |first1=C.|author-link1=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 |s2cid=10163399}}</ref> they saw it as a generalization of the [[Principal axis theorem|principal axis]] transformation for [[Hermitian matrix|Hermitian matrices]].
|last2=Young |first2=G. |author2-link=Gale J. Young
|year=1936
|title=The approximation of one matrix by another of lower rank
|journal=[[Psychometrika]]
|volume=1 |issue=3 |pages=211–218
|doi=10.1007/BF02288367 |s2cid=10163399
}}
</ref>
they saw it as a generalization of the [[Principal axis theorem|principal axis]] transformation for [[Hermitian matrix|Hermitian matrices]].
 
In 1907, [[Erhard Schmidt]] defined an analog of singular values for [[integral 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 |author-link=Magnus Hestenes
|year=1958
|title=Inversion of Matrices by Biorthogonalization and Related Results
|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> 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>{{harv|Golub|Kahan|1965}}</ref> which uses [[Householder transformation]]s or reflections. In 1970, Golub and [[Christian Reinsch]]<ref>{{Cite journal
</ref>
|title=Singular value decomposition and least squares solutions
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>{{harv|Golub|Kahan|1965}}</ref> which uses [[Householder transformation]]s or reflections. In 1970, Golub and [[Christian Reinsch]]<ref>
|first1=G. H. |last1=Golub |author-link1=Gene H. Golub
{{Cite journal
|first2=C. |last2=Reinsch|author2-link=Christian Reinsch
|first1=G.H. |last1=Golub |author1-link=Gene H. Golub
|first2=C. |last2=Reinsch |author2-link=Christian Reinsch
|year=1970
|title=Singular value decomposition and least squares solutions
|journal=Numerische Mathematik
|volume=14 |issue=5 |pages=403–420
|doi=10.1007/BF02163027 |mr=1553974
|s2cid=123532178
}}
}}</ref> published a variant of the Golub/Kahan algorithm that is still the one most-used today.
</ref>
published a variant of the Golub/Kahan algorithm that is still the one most-used today.
 
==See also==
{{columns-list|colwidth=22em18em|
*[[Canonical correlation]]
*[[Canonical form]]
Line 828 ⟶ 833:
*[[Wavelet compression]]
}}
 
==Notes==
{{Reflist}}
 
==References==
{{reflist|25em}}
* {{Citation | last1 = Banerjee | first1 = Sudipto | last2 = Roy | first2 = Anindya | date = 2014 | title = Linear Algebra and Matrix Analysis for Statistics | series = Texts in Statistical Science | publisher = Chapman and Hall/CRC | edition = 1st | isbn = 978-1420095388}}
 
==Sources==
{{refbegin|colwidth=25em|small=yes}}
* {{cite book | last1 = Banerjee | first1 = Sudipto | last2 = Roy | first2 = Anindya | date = 2014 | title = Linear Algebra and Matrix Analysis for Statistics | series = Texts in Statistical Science | publisher = Chapman and Hall/CRC | edition = 1st | isbn = 978-1420095388}}
* {{Cite book | last1=Bisgard | first1 = James | year = 2021 | title = Analysis and Linear Algebra: The Singular Value Decomposition and Applications | series = Student Mathematical Library | publisher = AMS | edition = 1st | isbn = 978-1-4704-6332-8}}
* {{cite journal | last1 = Chicco | first1 = D | last2 = Masseroli | first2 = M | year = 2015 | title = Software suite for gene and protein annotation prediction and similarity search | journal = IEEE/ACM Transactions on Computational Biology and Bioinformatics | volume = 12 | issue = 4 | pages = 837–843 | doi=10.1109/TCBB.2014.2382127 | pmid = 26357324 | hdl = 11311/959408 | s2cid = 14714823 | url = https://doi.org/10.1109/TCBB.2014.2382127 | hdl-access = free }}
Line 846 ⟶ 852:
*{{cite book |author1=Horn, Roger A. |author2=Johnson, Charles R. |title=Topics in Matrix Analysis |chapter-url=https://archive.org/details/topicsinmatrixan0000horn |chapter-url-access=registration |publisher=Cambridge University Press |year=1991 |isbn=978-0-521-46713-1 |chapter=Chapter 3 }}
*{{cite book |author=Samet, H. |title=Foundations of Multidimensional and Metric Data Structures |publisher=Morgan Kaufmann |year=2006 |isbn=978-0-12-369446-1 |url-access=registration |url=https://archive.org/details/foundationsofmul00same }}
*{{cite book |author=Strang, G. |title=Introduction to Linear Algebra |publisher=Wellesley-Cambridge Press |year=1998 |isbn=978-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=https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.23.1831 | doi=10.1137/1035134 | jstor=2132388|year=1993 | journal=SIAM Review | volume=35 | issue=4 | pages=551–566 | citeseerx=10.1.1.23.1831 | hdl=1903/566 }}
*{{cite book |last1=Wall|first1 = Michael E.|first2 = Andreas|last2 = Rechtsteiner|first3 = Luis M.|last3 = Rocha | author3-link = Luis M. Rocha | chapter=Singular value decomposition and principal component analysis |chapter-url=http://public.lanl.gov/mewall/kluwer2002.html |editor1=D.P. Berrar |editor2=W. Dubitzky |editor3=M. Granzow |title=A Practical Approach to Microarray Data Analysis |publisher=Kluwer |___location=Norwell, MA |year=2003 |pages=91–109 }}
*{{Citationcite book |last1=Press |first1=WHW.H. |last2=Teukolsky|first2=SAS.A.|last3=Vetterling|first3=WTW.T.|last4=Flannery|first4=BP|year=2007|title=Numerical Recipes: The Art of Scientific Computing|edition=3rd|publisher=Cambridge University Press| ___location=New York|isbn=978-0-521-88068-8|chapter=Section 2.6|chapter-url=http://apps.nrbook.com/empanel/index.html?pg=65}}
{{refend}}
 
== External links ==
* [{{cite web |title=Online SVD calculator |url=http://engineerjs.com/doc/ejs/engine/linalg-1/_svd.html Online|via=engineerjs.com SVD calculator]}}
 
{{Numerical linear algebra}}