pyproximal.optimization.primal.ProximalPointยถ
- pyproximal.optimization.primal.ProximalPoint(prox: ProxOperator, x0: ndarray[tuple[Any, ...], dtype[_ScalarT]], tau: float, niter: int = 10, tol: float | None = None, callback: Callable[[ndarray[tuple[Any, ...], dtype[_ScalarT]]], None] | None = None, show: bool = False) ndarray[tuple[Any, ...], dtype[_ScalarT]][source]ยถ
Proximal point algorithm
Solves the following minimization problem using Proximal point algorithm:
\[\mathbf{x} = \argmin_\mathbf{x} f(\mathbf{x})\]where \(f(\mathbf{x})\) is any convex function that has a known proximal operator.
- Parameters:
- prox
pyproximal.ProxOperator Proximal operator
- x0
numpy.ndarray Initial vector
- tau
float Positive scalar weight
- niter
int, optional Number of iterations of iterative scheme
- tol
float, optional Tolerance on change of objective function (used as stopping criterion). If
tol=None, run untilniteris reached- callback
callable, optional Function with signature (
callback(x)) to call after each iteration wherexis the current model vector- show
bool, optional Display iterations log
- prox
- Returns:
- x
numpy.ndarray Inverted model
- x
Notes
The Proximal point algorithm can be expressed by the following recursion:
\[\mathbf{x}^{k+1} = \prox_{\tau f}(\mathbf{x}^k)\]