pytorch_pfn_extras.training.trigger.IntervalTrigger#
- class pytorch_pfn_extras.training.trigger.IntervalTrigger(period, unit)#
Bases:
Trigger
Trigger based on a fixed interval.
This trigger accepts iterations divided by a given interval. There are two ways to specify the interval: per iterations and epochs. Iteration means the number of updates, while epoch means the number of sweeps over the training dataset. Fractional values are allowed if the interval is a number of epochs; the trigger uses the iteration and epoch_detail attributes defined by the manager.
For the description of triggers see
get_trigger()
.- Parameters:
period (int or float) – Length of the interval. Must be an integer if unit is
'iteration'
.unit (str) – Unit of the length specified by
period
. It must be either'iteration'
or'epoch'
.
Methods
__init__
(period, unit)load_state_dict
(state)may_fire
(iteration, epoch_length)Flags if the trigger may fire at the current iteration
state_dict
()- __call__(manager)#
Decides whether the extension should be called on this iteration.
- Parameters:
manager (ExtensionsManager) – Manager object that this trigger is associated with. The iteration related information in this manager is used to determine if the trigger should fire.
- Returns:
True if the corresponding extension should be invoked in this iteration.
- Return type:
bool
- __init__(period, unit)#
- Parameters:
period (float) –
unit (UnitLiteral) –
- get_training_length()#
- Return type:
Tuple[float, str]
- may_fire(iteration, epoch_length)#
Flags if the trigger may fire at the current iteration
This must not alter the trigger state
- Parameters:
iteration (int) –
epoch_length (int) –
- Return type:
bool