FluxTraining.on

function defined in module FluxTraining


			on(event::Event, phase::Phase, callback::AbstractCallback, learner)

Handle event with Callback callback .
By default, this event handler does nothing for a callback.

To see events which an AbstractCallback handles, use


			
			methods(Training.on, (Any, Any, MyCallbackType, Any)

Extending

You can add event handlers to Callback s by implementing a method for on .
See also Callback and custom callbacks .

A method of on should always dispatch on the callback type, i.e.
on(event, phase, cb::MyCallback, learner) . It may also dispatch on specific
Event s and Phase . It should not dispatch on a specific type for
learner .

Methods

There are 24 methods for on:

on(::FluxTraining.Events.Event, phase, ::FluxTraining.SafeCallback, learner)
callbacks/callback.jl:247
on(::FluxTraining.Events.EpochEnd, phase::FluxTraining.Phases.Phase, cb::MetricsPrinter, learner)
callbacks/callbacks.jl:46
on(::FluxTraining.Events.StepBegin, ::FluxTraining.Phases.Phase, cb::ToDevice, learner)
callbacks/callbacks.jl:122
on(::FluxTraining.Events.StepEnd, ::FluxTraining.Phases.Phase, cb::ProgressPrinter, learner)
callbacks/callbacks.jl:29
on(::FluxTraining.Events.BackwardEnd, ::FluxTraining.Phases.AbstractTrainingPhase, ::StopOnNaNLoss, learner)
callbacks/callbacks.jl:78
on(::FluxTraining.Events.EpochBegin, phase::FluxTraining.Phases.Phase, cb::ProgressPrinter, learner)
callbacks/callbacks.jl:15
on(::FluxTraining.Events.EpochBegin, ::FluxTraining.Phases.Phase, cb::ToDevice, learner)
callbacks/callbacks.jl:102
on(event::FluxTraining.Events.Event, phase::FluxTraining.Phases.Phase, cb::ConditionalCallback, learner)
callbacks/conditional.jl:66
on(::E, ::P, cb::CustomCallback{E, P}, learner)
callbacks/custom.jl:35
on(::FluxTraining.Events.EpochEnd, phase::FluxTraining.Phases.Phase, cb::EarlyStopping, learner)
callbacks/earlystopping.jl:55
on(::FluxTraining.Events.EpochEnd, phase::FluxTraining.Phases.AbstractTrainingPhase, checkpointer::Checkpointer, learner)
callbacks/logging/checkpointer.jl:24
on(::FluxTraining.Events.EpochEnd, phase, logger::LogMetrics, learner)
callbacks/logging/logger.jl:76
on(::FluxTraining.Events.StepEnd, phase::FluxTraining.Phases.AbstractTrainingPhase, logger::LogHistograms, learner)
callbacks/logging/logger.jl:155
on(::FluxTraining.Events.StepEnd, phase::FluxTraining.Phases.AbstractTrainingPhase, logger::LogVisualization, learner)
callbacks/logging/logger.jl:210
on(::FluxTraining.Events.StepEnd, phase, logger::LogMetrics, learner)
callbacks/logging/logger.jl:61
on(::FluxTraining.Events.StepEnd, phase, logger::LogHyperParams, learner)
callbacks/logging/logger.jl:116
on(::FluxTraining.Events.EpochEnd, phase, metrics::Metrics, learner)
callbacks/metrics.jl:83
on(::FluxTraining.Events.StepEnd, phase, metrics::Metrics, learner)
callbacks/metrics.jl:70
on(::FluxTraining.Events.EpochBegin, ::FluxTraining.Phases.Phase, metrics::Metrics, learner)
callbacks/metrics.jl:68
on(::FluxTraining.Events.EpochEnd, phase::FluxTraining.Phases.Phase, recorder::Recorder, learner)
callbacks/recorder.jl:43
on(::FluxTraining.Events.StepEnd, phase::FluxTraining.Phases.Phase, recorder::Recorder, learner)
callbacks/recorder.jl:36
on(::FluxTraining.Events.EpochBegin, phase::FluxTraining.Phases.Phase, recorder::Recorder, learner)
callbacks/recorder.jl:31
on(::FluxTraining.Events.EpochBegin, phase::FluxTraining.Phases.AbstractTrainingPhase, cb::SanityCheck, learner)
callbacks/sanitycheck.jl:75
on(::FluxTraining.Events.StepBegin, phase::FluxTraining.Phases.AbstractTrainingPhase, scheduler::Scheduler, learner)
callbacks/scheduler.jl:52