sporco.fista.ppp

Classes for FISTA variant of the Plug and Play Priors (PPP) algorithm.

Classes

GenericPPP(*args, **kwargs)

Base class for Plug and Play Priors (PPP) FISTA solvers [30].

PPP(*args, **kwargs)

Plug and Play Priors (PPP) solver [30] that can be used without the need to derive a new class.


Class Descriptions

class sporco.fista.ppp.GenericPPP(*args, **kwargs)[source]

Bases: sporco.fista.fista.FISTA

Base class for Plug and Play Priors (PPP) FISTA solvers [30].

Parameters
xshapetuple of ints

Shape of working variable X

optGenericPPP.Options object

Algorithm options

eval_grad()[source]

Compute the gradient of \(f\).

eval_proxop(V)[source]

Compute proximal operator of \(g\).

rsdl()[source]

Compute fixed point residual.

eval_objfn()[source]

Compute components of objective function.

In this case the regularisation term is implicit so we can only evaluate the data fidelity term represented by the \(f(\cdot)\) component of the functional to be minimised.

gradf(X)[source]

Compute the gradient of \(f(\cdot)\).

Overriding this method is required.

proxg(X, L)[source]

Compute the proximal operator of \(L^{-1} g(\cdot)\).

Overriding this method is required. Note that this method should compute the proximal operator of \(L^{-1} g(\cdot)\), not the proximal operator of \(L g(\cdot)\).

f(X)[source]

Evauate the data fidelity term \(f(\mathbf{x})\).

Overriding this method is required.

class sporco.fista.ppp.PPP(*args, **kwargs)[source]

Bases: sporco.fista.ppp.GenericPPP

Plug and Play Priors (PPP) solver [30] that can be used without the need to derive a new class.

Parameters
xshapetuple of ints

Shape of working variable X

ffunction

Function evaluating the data fidelity term

gradffunction

Function computing the gradient of the data fidelity term

proxgfunction

Function computing the proximal operator of the regularisation term

optPPP.Options object

Algorithm options