sporco.pgm.momentum¶
Momentum coefficient options for PGM algorithms
Classes
Base class for computing momentum coefficient for accelerated proximal gradient method. |
|
Nesterov's momentum coefficient [6] |
|
|
Linear momentum coefficient [14] |
|
Generalized linear momentum coefficient [40] |
Class Descriptions¶
- class sporco.pgm.momentum.MomentumBase[source]¶
Bases:
object
Base class for computing momentum coefficient for accelerated proximal gradient method.
This class is intended to be a base class of other classes that specialise to specific momentum coefficient options.
After termination of the
update
method the new momentum coefficient is returned.
- class sporco.pgm.momentum.MomentumNesterov[source]¶
Bases:
MomentumBase
Nesterov’s momentum coefficient [6]
Applies the update
\[t^{(k+1)} = \frac{1}{2} \left( 1 + \sqrt{1 + 4 \; (t^{(k)})^2} \right) \;,\]with \(k\) iteration.
- class sporco.pgm.momentum.MomentumLinear(b=2.0)[source]¶
Bases:
MomentumBase
Linear momentum coefficient [14]
Applies the update
\[t^{(k+1)} = \frac{k + b}{b} \;,\]with \(b\) corresponding to a positive constant such that \(b \geq 2\) and \(k\) iteration.
- Parameters:
- bfloat
Summand in numerator and factor in denominator of update.
- class sporco.pgm.momentum.MomentumGenLinear(a=50.0, b=2.0)[source]¶
Bases:
MomentumBase
Generalized linear momentum coefficient [40]
Applies the update
\[t^{(k+1)} = \frac{k + a}{b} \;,\]with \(a, b\) corresponding to postive constants such that \(a \geq b - 1\) and \(b \geq 2\), and \(k\) iteration.
- Parameters:
- afloat
Summand in numerator of update.
- bfloat
Factor in denominator of update.