sporco.pgm.stepsize¶
Step size policies for PGM algorithms
Classes
Base class for computing step size policy for accelerated proximal gradient method. |
|
Class for computing step size policy for accelerated proximal gradient based on Cauchy method [63] |
|
Class for computing step size policy for accelerated proximal gradient based on Barzilai-Borwein method [4] |
Class Descriptions¶
- class sporco.pgm.stepsize.StepSizePolicyBase[source]¶
Bases:
object
Base class for computing step size policy for accelerated proximal gradient method.
This class is intended to be a base class of other classes that specialise to specific step size policy options.
After termination of the
update
method the new inverse of step size is returned.Create an StepSizePolicyBase object
- class sporco.pgm.stepsize.StepSizePolicyCauchy[source]¶
Bases:
sporco.pgm.stepsize.StepSizePolicyBase
Class for computing step size policy for accelerated proximal gradient based on Cauchy method [63]
\[\begin{split}\alpha = \frac{\left\| \nabla f \right\|_2^2} {\nabla f^T \: \mathrm{Hess}_f \nabla f} \; \\ L = 1 / \alpha \;\;.\end{split}\]Create an StepSizePolicyCauchy object
- class sporco.pgm.stepsize.StepSizePolicyBB[source]¶
Bases:
sporco.pgm.stepsize.StepSizePolicyBase
Class for computing step size policy for accelerated proximal gradient based on Barzilai-Borwein method [4]
\[\begin{split}\Delta x = x_k - x_{k-1} \; \\ \Delta g = \nabla f (x_k) - \nabla f (x_{k-1}) \; \\ \alpha = \frac{\Delta x^T \Delta g}{\left\| \Delta g \right\|_2^2} \; \\ L = 1 / \alpha \;\;.\end{split}\]Create an StepSizePolicyBB object