No history yet

Optimality and Eckart-Young

The Best Possible Approximation

You know that Singular Value Decomposition (SVD) breaks a matrix down into three simpler ones: A=UΣVTA = U\Sigma V^T. This is useful, but its real power lies in approximation. We can create a simpler, smaller version of matrix AA by chopping off the least important parts of its SVD. The question is, how good is this simplified version?

It turns out, it's not just good. It's the best. The gives us a mathematical guarantee that for any matrix AA, the best low-rank approximation is found by truncating its SVD. No other method can produce a matrix of the same low rank with less error.

The truncated SVD provides the optimal low-rank approximation of a matrix with respect to both the Frobenius norm and the spectral norm.

Let's unpack what that means. Suppose our original matrix AA has a rank of rr. We want to create a new matrix, let's call it AkA_k, that has a lower rank, k<rk < r. Our goal is to make AkA_k as close to AA as possible. But how do we measure "closeness"? We use a concept called a norm, which is a way to measure the size or magnitude of a matrix.

Measuring the Error

The two most common ways to measure the error, or the difference between AA and AkA_k, are the Frobenius norm and the spectral norm. The measures the overall magnitude of the error matrix AAkA - A_k. You can think of it as the matrix equivalent of the Euclidean distance between two points. It's calculated by summing the squares of all the elements in the matrix and taking the square root.

AAkF=i=1mj=1n(aij(ak)ij)2\|A - A_k\|_F = \sqrt{\sum_{i=1}^{m} \sum_{j=1}^{n} (a_{ij} - (a_k)_{ij})^2}

The is a bit different. It measures the maximum "stretching" effect the error matrix AAkA - A_k can have on any vector. It corresponds to the largest singular value of that error matrix. It tells us about the worst-case error.

AAk2=maxx2=1(AAk)x2=σk+1\|A - A_k\|_2 = \max_{\|x\|_2=1} \| (A - A_k)x \|_2 = \sigma_{k+1}

The theorem states that to minimize both of these error measurements for a rank-kk approximation, you must use the truncated SVD. Any other rank-kk matrix you create will have a larger Frobenius norm and a larger or equal spectral norm.

Constructing the Best Approximation

So, how do we build this optimal matrix AkA_k? We start with the full SVD of AA:

A=UΣVT=i=1rσiuiviTA = U \Sigma V^T = \sum_{i=1}^{r} \sigma_i u_i v_i^T

The singular values σi\sigma_i are arranged in descending order, from largest to smallest. They represent the "energy" or importance of each rank-one component. The first term, σ1u1v1T\sigma_1 u_1 v_1^T, captures the most significant part of the matrix's structure. The second term captures the next most significant part, and so on. The last terms often represent noise or fine-grained detail.

To create the best rank-k approximation, we simply keep the first k terms of this sum and discard the rest.

Lesson image
Ak=i=1kσiuiviTA_k = \sum_{i=1}^{k} \sigma_i u_i v_i^T

This simple act of truncation is guaranteed to be the optimal way to compress the information from matrix AA into a rank-kk matrix. By keeping the largest singular values, we preserve the most energy and structure of the original data. What we throw away, the components associated with the smallest singular values, contributes the least to the overall matrix and is often just noise.

This mathematical certainty is why SVD is a cornerstone of data compression, from image processing to recommendation systems. It doesn't just reduce data, it does so in the most efficient way possible, minimizing the loss of important information.

Time to check your understanding.

Quiz Questions 1/5

What is the central guarantee of the Eckart-Young-Mirsky theorem?

Quiz Questions 2/5

To create the best rank-k approximation of a matrix A, which singular values and their corresponding vectors should you keep?

This guarantee of optimality is what makes SVD such a reliable and powerful tool in linear algebra and its applications.