cr.sparse.pursuit.RecoverySolution¶
- class cr.sparse.pursuit.RecoverySolution(x_I: jax.Array, I: jax.Array, r: jax.Array, r_norm_sqr: jax.Array, iterations: int, length: int)[source]¶
Represents the solution of a sparse recovery problem
Consider a sparse recovery problem \(y=\Phi x + e\). Assume that \(x\) is supported on an index set \(I\) i.e. the non-zero values of \(x\) are in the sub-vector \(x_I\), then the equation can be rewritten as \(y = \Phi_I x_I + e\).
Solving the sparse recovery problem given \(\Phi\) and \(x\) involves identifying \(I\) and estimating \(x_I\). Then, the residual is \(r = y - \Phi_I x_I\). An important quantity during the sparse recovery is the (squared) norm of the residual \(\| r \|_2^2\) which is an estimate of the energy of error \(e\).
This type combines all of this information together.
- Parameters
x_I – :estimate(s) of \(x_I\)
I – identified index set(s) \(I\)
r – residual(s) \(r = y - \Phi_I x_I\)
r_norm_sqr – squared norm of residual \(\| r \|_2^2\)
iterations – Number of iterations required for the algorithm to converge
Note
The tuple can be used to solve multiple measurement vector problems also. In this case, each column (of individual parameters) represents the solution of corresponding single vector problems.
Attributes
I
The support for non-zero values
iterations
The number of iterations it took to complete
length
The length of the sparse signal
r
The residuals
r_norm_sqr
The residual norm squared
x
x_I
Non-zero values