View Source Axon.Loop.State (Axon v0.7.0)
Accumulated state in an Axon.Loop.
Loop state is a struct:
%State{
epoch: integer(),
max_epoch: integer(),
iteration: integer(),
max_iteration: integer(),
metrics: map(string(), container()),
times: map(integer(), integer()),
step_state: container(),
handler_metadata: container()
}
epoch
is the current epoch, starting at 0, of the nested loop.
Defaults to 0.
max_epoch
is the maximum number of epochs the loop should run
for. Defaults to 1.
iteration
is the current iteration of the inner loop. In supervised
settings, this will be the current batch. Defaults to 0.
max_iteration
is the maximum number of iterations the loop should
run a given epoch for. Defaults to -1 (no max).
metrics
is a map of %{"metric_name" => value}
which accumulates metrics
over the course of loop processing. Defaults to an empty map.
times
is a map of %{epoch_number => value}
which maps a given epoch
to the processing time. Defaults to an empty map.
step_state
is the step state as defined by the loop's processing
initialization and update functions. step_state
is a required field.
handler_metadata
is a metadata field for storing loop handler metadata.
For example, loop checkpoints with specific metric criteria can store
previous best metrics in the handler meta for use between iterations.
event_counts
is a metadata field which stores information about the number
of times each event has been fired. This is useful when creating custom filters.
status
refers to the loop state status after the loop has executed. You can
use this to determine if the loop ran to completion or if it was halted early.