How Does Tikhonov Regularization Handle Underflows in IEEE Double Precision?

  • Context: Graduate 
  • Thread starter Thread starter vibe3
  • Start date Start date
  • Tags Tags
    Regularization
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 reply · 2K views
vibe3
Messages
39
Reaction score
1
The least-squares solution of [itex]A x = b[/itex] using Tikhonov regularization with a matrix [itex]\mu^2 I[/itex] has the solution:

[tex] x = \sum_i \left( \frac{\sigma_i^2}{\sigma_i^2 + \mu^2} \right) \left( \frac{u_i^T b}{\sigma_i} \right) v_i[/tex]

where [itex]A = U S V^T[/itex] is the SVD of [itex]A[/itex] and [itex]u_i,v_i[/itex] are the columns of [itex]U,V[/itex].

For ill-conditioned matrices, the singular values [itex]\sigma_i[/itex] could be tiny leading to problems in computing the quantity [itex]\left( \frac{\sigma_i^2}{\sigma_i^2 + \mu^2} \right)[/itex] since [itex]\sigma_i^2[/itex] could underflow.

Does anyone know how to compute this solution safely and efficiently in IEEE double precision?
 
Physics news on Phys.org
If ##\sigma_i^2 \ll \mu^2##, then the corresponding term of the sum is approximately
$$\frac{\sigma_i}{\mu^2} (u_i^T b) v_i$$

But in practice you are unlikely to have a problem, because the ratio of ##\sigma_\min / \sigma_\max## will be limited by the numerical precision of the matrix ##A##, and unless ##A## has some pathological properties ##\sigma_\min / \sigma_\max## is unlikely to be less than about ##10^{-16}##.

If all the SVs and ##\mu## are very small (e.g. less than ##10^{-100}##) so underflows are likely to affect everything, the best fix would be to rescale the original problem to make them of order 1.