Qm
Advanced

Low-Rank Approximation and the Eckart-Young Theorem

The proof that the best possible simplified version of a matrix, keeping only its k strongest patterns, is exactly what you get by truncating its singular value decomposition, no other approach can do better.

Prerequisites: Singular Value Decomposition

A large covariance matrix of stock returns is genuinely high-dimensional, but most of its structure is driven by a handful of dominant factors, a market factor, a couple of sector factors, with the rest being noise. If you want to compress that matrix down to its "k most important patterns" and discard the rest, you need to know: what does the best possible rank-kk approximation even look like, and how do you know nothing else does better? The Eckart-Young theorem answers both questions with a strikingly simple construction.

An analogy: a photo compressed to its main brushstrokes

Think of a matrix as a grayscale image, a grid of pixel intensities. Compressing that image to look as close to the original as possible using only a handful of "brushstrokes" (simple rank-one patterns, each a single horizontal streak times a single vertical streak) is exactly the low-rank approximation problem. Eckart-Young says: the best set of brushstrokes to keep, for any target number kk, are precisely the kk strongest ones the image naturally decomposes into, and adding any other combination of strokes, however cleverly chosen, can never beat keeping the top kk by strength.

The math, one symbol at a time

Every matrix MM has a singular value decomposition M=UΣVM = U\Sigma V^\top, where Σ\Sigma is diagonal holding the singular values σ1σ20\sigma_1 \geq \sigma_2 \geq \cdots \geq 0 in decreasing order, and UU, VV hold the corresponding left and right singular vectors. The rank-kk truncated SVD keeps only the top kk singular values and their vectors:

Mk=i=1kσiuivi.M_k = \sum_{i=1}^{k} \sigma_i \, u_i v_i^\top.

The Eckart-Young theorem states that among all matrices of rank kk or less, MkM_k is the one closest to MM (measured by summed squared entrywise error), and the size of the unavoidable error is exactly i=k+1nσi2\sum_{i=k+1}^{n} \sigma_i^2, the total "strength" left in the singular values you discarded. In words: truncating the SVD isn't just a reasonable way to compress a matrix, it's provably the best one possible, and the leftover singular values tell you precisely how much accuracy you gave up.

Worked example 1: compressing a small matrix by hand

Let M=(3001)M = \begin{pmatrix}3&0\\0&1\end{pmatrix}, already diagonal so its singular values are σ1=3,σ2=1\sigma_1=3, \sigma_2=1 with singular vectors along the axes. The best rank-1 approximation keeps only the top term: M1=3(10)(10)=(3000)M_1 = 3\begin{pmatrix}1\\0\end{pmatrix}\begin{pmatrix}1&0\end{pmatrix} = \begin{pmatrix}3&0\\0&0\end{pmatrix}. The approximation error, entrywise squared, is (00)2+(01)2=1(0-0)^2 + (0-1)^2 = 1, exactly σ22=12\sigma_2^2 = 1^2, matching the theorem's prediction precisely, and no other rank-1 matrix can get closer to MM than this.

Worked example 2: factor-model compression of a return matrix

A covariance matrix for 100 stocks has singular values σ1=40\sigma_1 = 40 (market factor), σ2=12\sigma_2 = 12, σ3=8\sigma_3 = 8 (sector factors), and 97 more small values summing in squares to about 50. Keeping a rank-3 approximation captures 402+122+82=1600+144+64=180840^2+12^2+8^2 = 1600+144+64=1808 out of a total sum-of-squares of 1808+50=18581808+50=1858, about 1808185897.3%\frac{1808}{1858} \approx 97.3\% of the matrix's total "energy," using just 3 factors instead of 100. This is the mathematical justification for reducing a huge estimated covariance matrix to a handful of statistical factors: the discarded 96.7% of singular values contribute only 2.7% of total structure, most of which is likely estimation noise anyway.

Matrix explorer
dashed = before · solid = after
det 1.25trace 2.50λ 1.81, 0.69area scales by 1.25×

Reducing a matrix's rank shrinks the ellipse the unit circle maps to down toward a line or point along its weakest singular directions, drag the entries to see which directions carry the most "stretch," the ones Eckart-Young says to keep.

σ₁=40 σ₂=12 σ₃=8 97 tiny singular values (mostly noise)
A handful of dominant singular values (kept as the rank-k approximation) sit far above a long tail of small ones, exactly the pattern Eckart-Young exploits when compressing a covariance or factor matrix.

What this means in practice

Eckart-Young is the theoretical backbone of factor models (compressing a covariance matrix to a few statistical factors), image and signal compression, and recommender systems (low-rank approximations of a ratings matrix). Whenever a quant reduces a large, noisy matrix to its "top kk components" via PCA or SVD truncation, they're implicitly invoking this theorem to know that choice is provably optimal, not just convenient.

Truncating a matrix's SVD to its top kk singular values and vectors gives the best possible rank-kk approximation to that matrix, no other rank-kk matrix, however constructed, can be closer, and the unavoidable error equals the sum of squares of the discarded singular values.

"Best approximation" here means best under squared-error distance across all entries treated equally, it does not mean the truncated matrix preserves every property you might care about, such as remaining positive semidefinite, having the same diagonal, or respecting a correlation matrix's constraint that all diagonal entries equal exactly 1. Truncating a correlation matrix's SVD to rank kk can leave diagonal entries that are no longer exactly 1, which is why a further repair step (see The Nearest Correlation Matrix Problem) is often needed afterward.

Discussion

Sign in to join the discussion · reading is open to everyone

💡 Discussion rules

  1. Ask and answer about this concept. Off-topic gets removed.
  2. No homework dumps. Show what you tried first.
  3. Corrections are welcome. Cite a source when you claim an error.

Loading discussion…

Related concepts

Practice in interviews

Further reading

  • Eckart & Young (1936), Psychometrika
ShareTwitterLinkedIn