regularization

class RegularizationRule[source]

Bases: ABC

abstract compute_regularized_inverse_weights(x, schatten_p_parameter)

Abstraction of two regularization functions

\[R_1 : \mathbb{C}^{d_1 \times d_1} \rightarrow \mathbb{C}^{d_1 \times d_1}, R_2 : \mathbb{C}^{d_2 \times d_2} \rightarrow \mathbb{C}^{d_2 \times d_2}\]

representing a regularization rule for \(xx^{\star}\),resp. \(x^{\star}x\)

Parameters
  • x (ndarray) – array of shape \((d_1, d_2)\)

  • schatten_p_parameter (float64) –

Returns

\(R_1(xx^{\star})^{\frac{2-p}{2}}, R_2(x^{\star}x)^{\frac{2-p}{2}}\)

class FixedRankSpectralShiftRegularizationRule(rank_estimate, minimal_shift=1e-09, initial_shift_parameter=1.0, svd_engine=<class 'hmirls.svd.ScipySVDEngine'>)[source]

Bases: RegularizationRule

Parameters
  • rank_estimate (int) –

  • svd_engine (SVDEngine) –

__init__(rank_estimate, minimal_shift=1e-09, initial_shift_parameter=1.0, svd_engine=<class 'hmirls.svd.ScipySVDEngine'>)
Parameters
  • rank_estimate (int) –

  • svd_engine (SVDEngine) –

property rank_estimate
property shift_parameter
compute_regularized_inverse_weights(x, schatten_p_parameter)

Regularization via spectral shift

\[ \begin{align}\begin{aligned}R_1 : \mathbb{C}^{d_1 \times d_1} \rightarrow \mathbb{C}^{d_1 \times d_1}, x \mapsto xx^{\star}+\varepsilon^2 \cdot Id_{d_1},\\R_2 : \mathbb{C}^{d_2 \times d_2} \rightarrow \mathbb{C}^{d_2 \times d_2}, x \mapsto x^{\star}x +\varepsilon^2 \cdot Id_{d_2}.\end{aligned}\end{align} \]

Spectral shift \(\varepsilon\) is given by

\[\varepsilon = \min(\max(\sigma_{\text{rank_estimate}}(x), \text{minimal_shift}), \text{shift_parameter}),\]

where \(\sigma_{\text{rank_estimate}}(x)\) is the rank_estimate-th singular value of x.

Parameters
  • x (ndarray) – array of shape \((d_1, d_2)\)

  • schatten_p_parameter (float64) –

Returns

\(\left(xx^{\star}+\varepsilon \cdot Id_{d_1}\right)^{\frac{2-p}{2}}, \left(x^{\star}x +\varepsilon \cdot Id_{d_2}\right)^{\frac{2-p}{2}}\)