89. SVD

Every real matrix 𝐴 — square or rectangular, full-rank or rank-deficient — has a Singular Value Decomposition:

𝐴=𝑈Σ𝑉𝑇

where, for an 𝑚×𝑛 matrix 𝐴:

89.1. Singular values

The singular values are the square roots of the eigenvalues of 𝐴𝑇𝐴 (which is symmetric positive semi-definite):

𝜎𝑖=𝜆𝑖(𝐴𝑇𝐴)

Number of non-zero singular values = rank of 𝐴.

89.2. Geometric interpretation

Every linear transformation 𝐴:𝑛𝑚 decomposes into:

  1. Rotate / reflect in the input space (multiply by 𝑉𝑇)
  2. Stretch along the new axes by factors 𝜎1,𝜎2, (multiply by Σ)
  3. Rotate / reflect in the output space (multiply by 𝑈)

So every matrix is a rotation–stretch–rotation. The singular values measure how much 𝐴 stretches each direction.

Example
𝐴=[300100]

Already in SVD form: 𝑈=𝐼3, Σ=𝐴, 𝑉=𝐼2. Singular values: 𝜎1=3,𝜎2=1.

𝐴 maps the unit circle in 2 to an ellipse in 3 with semi-axes 3 and 1.

89.3. Compact / reduced SVD

For rank-𝑟 matrix 𝐴, drop the zero singular values:

𝐴=𝑈𝑟Σ𝑟𝑉𝑟𝑇

where 𝑈𝑟 is 𝑚×𝑟, Σ𝑟 is 𝑟×𝑟 diagonal, 𝑉𝑟 is 𝑛×𝑟. Same product, less storage.

89.4. Best low-rank approximation

The truncated SVD (keeping the top 𝑘 singular values) is the best rank-𝑘 approximation of 𝐴 in both Frobenius and spectral norms:

𝐴𝑘=𝑖=1𝑘𝜎𝑖𝑢𝑖𝑣𝑖𝑇

This is the engine behind:

89.5. Connection to symmetric matrices

If 𝐴 is symmetric positive semi-definite, the SVD coincides with the eigendecomposition (Spectral Theorem): 𝑈=𝑉 and Σ = eigenvalues.

For general 𝐴, 𝐴𝑇𝐴 and 𝐴𝐴𝑇 are both symmetric:

89.6. Connection to pseudoinverse

When 𝐴 is not square or not invertible, the Moore–Penrose pseudoinverse uses the SVD:

𝐴+=𝑉Σ+𝑈𝑇

where Σ+ inverts the non-zero singular values and transposes the shape.

89.7. See also