Pseudoinverses, Low Rank and Conditioning

Use singular values to solve least-squares problems and understand sensitivity to noisy data.

Builds on Singular Value Decomposition

The bigger question: Which parts of a matrix carry the strongest signal?

On this page

Invert only the represented directions

Given A=UΣVTA=U\Sigma V^T, form Σ+\Sigma^+ by transposing its shape and replacing each positive singular value by its reciprocal, leaving zeros at zero. The Moore–Penrose pseudoinverse is A+=VΣ+UTA^+=V\Sigma^+U^T.

Then x∗=A+bx_*=A^+b is the least-squares solution with smallest Euclidean norm. If the system is consistent, it is the minimum-norm exact solution. It does not manufacture an exact solution when the target is outside the column space.

Visual guide

VISUAL GUIDEChoose the shortest solution among many
For x + y = 2, every point on the blue line is a solution. The pseudoinverse selects (1, 1), the point nearest the origin. The displacement to it is perpendicular to the nullspace direction (1, −1).-1-100112233xy
  • All exact solutions
For x + y = 2, every point on the blue line is a solution. The pseudoinverse selects (1, 1), the point nearest the origin. The displacement to it is perpendicular to the nullspace direction (1, −1).

Worked example: an inconsistent target

For A=diag⁡(2,0)A=\operatorname{diag}(2,0), the pseudoinverse is diag⁡(1/2,0)\operatorname{diag}(1/2,0). With b=(6,4)Tb=(6,4)^T, it gives x∗=(3,0)Tx_*=(3,0)^T, fitted vector (6,0)T(6,0)^T, and residual (0,4)T(0,4)^T. Any vector (3,t)T(3,t)^T produces the same fit, but t=0t=0 has the smallest norm.

PAUSE & THINKA quick check, not a grade

Try it yourself.

Choose an answer and explain your reasoning to yourself. Use a hint if you get stuck.

A full-rank matrix has largest singular value 10 and smallest 0.01. What is its 2-norm condition number?

Hint 1 · Find a starting point

Condition number compares strongest and weakest stretches.

Hint 2 · Take the next step

Divide the largest singular value by the smallest.

Show the reasoning

Answer: 1000

κ₂=10/0.01=1000, signaling substantial possible relative error amplification.

Before moving on: what would make one of the other answers wrong? Saying why is part of understanding.

Worked example: noise amplification

For A=diag⁡(1,0.001)A=\operatorname{diag}(1,0.001), solving Ax=bAx=b multiplies the second component of bb by 10001000. A measurement error of 0.0010.001 in that component creates an error of 11 in the solution. For invertible matrices, the spectral condition number is κ2(A)=σmax⁡/σmin⁡\kappa_2(A)=\sigma_{\max}/\sigma_{\min}, here 10001000.

Conditioning describes sensitivity of the mathematical problem. Stability describes the algorithm's additional error. A stable algorithm cannot eliminate sensitivity already present in the model.

Low-rank approximation

The expansion A=∑i=1rσiuiviTA=\sum_{i=1}^r\sigma_i u_iv_i^T separates rank-one contributions. Keeping the first kk terms gives a best rank-at-most-kk approximation in spectral and Frobenius norms. The spectral error is σk+1\sigma_{k+1}; the squared Frobenius error is ∑i>kσi2\sum_{i>k}\sigma_i^2.

Discarding small singular directions can reduce noise amplification, but changes the problem and introduces approximation bias. A cutoff should reflect measurement scale or a stated tolerance, not an unexplained universal threshold.

Practice

  1. Find the pseudoinverse of diag⁡(4,0)\operatorname{diag}(4,0).
  2. Find the condition number of diag⁡(2,5)\operatorname{diag}(2,5).
  3. Singular values are 10,3,0.210,3,0.2. What is the best rank-two spectral error?
Show worked solutions
  1. diag⁡(1/4,0)\operatorname{diag}(1/4,0).
  2. 5/25/2.
  3. The discarded singular value is 0.20.2.
MAKE IT YOURS

Pause before the next idea.

Can you explain how the visualization connects to this lesson’s goal? If a step still feels uncertain, put this lesson on your review list and try the check again another day.

Optional marks, not a grade. Saved in this browser only. Open notebook →