- #1
vibe3
- 46
- 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?
[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?