regpy.solvers.nonlinear.fista

Classes

FISTA

The generalized FISTA algorithm for minimization of Tikhonov functionals

Module Contents

class regpy.solvers.nonlinear.fista.FISTA(setting, init=None, tau=10**16, eta=0.8, op_lower_bound=0, proximal_pars=None, logging_level='INFO', data=None, without_codomain_vectors=False)[source]

Bases: regpy.solvers.general.RegSolver

The generalized FISTA algorithm for minimization of Tikhonov functionals

\[\mathcal{S}_{g^{\delta}}(F(f)) + \alpha \mathcal{R}(f).\]

Gradient steps are performed on the first term, and proximal steps on the second term. The step sizes for the gradient steps are determined using a backtracking method introduced in A. Beck and M. Teboulle. A fast iterative shrinkage-thresholding algorithm for linear inverse problems. SIAM J. Imaging Sci., 2(1):183–202, 2009.

Parameters:
  • setting (regpy.solvers.Setting) – The setting of the forward problem. Includes the penalty and data fidelity functionals.

  • init (setting.op.domain [default: setting.op.domain.zeros()]) – The initial guess

  • tau (float [default: 10**16]) – Initial step size of minimization procedure. Has to be sufficiently large.

  • eta (float [default 0.8]) – Step size reduction constant.

  • op_lower_bound (float [default: 0]) – lower bound of the operator: \(\|op(f)\|\geq op_lower_bound * \|f\|\). Used to define convexity parameter of data functional.

  • proximal_pars (dict [default: {}]) – Parameter dictionary passed to the computation of the prox-operator for the penalty term.

  • logging_level ([default: logging.INFO]) – logging level

x

The current iterate.

data = None
regpar
mu_penalty
mu_data_fidelity
proximal_pars = None

Proximal parameters that are passed to prox-operator of penalty term.

without_codomain_vectors = False
eta = 0.8
t = 0
t_old = 0
mu
x_old
q