- class ott.geometry.epsilon_scheduler.Epsilon(target=None, scale_epsilon=None, init=1.0, decay=1.0)[source]#
Scheduler class for the regularization parameter epsilon.
An epsilon scheduler outputs a regularization strength, to be used by in a Sinkhorn-type algorithm, at any iteration count. That value is either the final, targeted regularization, or one that is larger, obtained by geometric decay of an initial value that is larger than the intended target. Concretely, the value returned by such a scheduler will consider first the max between
init * target * decay ** iteration. If the
scale_epsilonparameter is provided, that value is used to multiply the max computed previously by
float]) – the epsilon regularizer that is targeted. If
None, use \(0.05\).
float]) – if passed, used to multiply the regularizer, to rescale it. If
None, use \(1\).
float) – initial value when using epsilon scheduling, understood as multiple of target value. if passed,
int * decay ** iterationwill be used to rescale target.
float) – geometric decay factor, \(<1\).
Return (intermediate) regularizer value at a given iteration.
Return whether the scheduler is done at a given value.
Return whether the scheduler is done at a given iteration.
Return a copy of self, with potential overwrites.
Return the final regularizer value of scheduler.