SVD Decomposition Explorer
Split a matrix into directions, stretch strengths, and a low-rank reconstruction.
Eckart-Young-Mirsky Theorem 🖖
SVD provides the mathematically optimal low-rank approximation of a matrix...
Any matrix is a stack of layers 🖖
SVD rewrites any matrix as a weighted sum of simple rank-1 layers — each built from one left-side pattern and one right-side pattern — ordered from most to least important by its singular value. Squaring each singular value tells you how much of the matrix's total energy that layer carries. Keep only the top handful and you rebuild most of the data from a tiny fraction of the numbers — which is exactly why the kept-energy bar climbs so steeply at the start.
Discovered five times before it was useful 🖖
SVD is not a computer-age invention. It was derived independently by Beltrami (1873), Jordan (1874), Sylvester (1889), Schmidt (1907), and Weyl (1912) — pure matrix theory with no application in sight. Only in 1965 did Golub and Kahan publish a numerically stable way to compute it, and that unlocked everything you see here: image compression, denoising, search engines, and recommender systems.
Example problems
- rank-2 matrix - Small matrix decomposition shows principal singular directions and values.
- mixed 3x3 - mixed 3x3
- diagonal 3x3 - diagonal 3x3