| Callback {mlr3misc} | R Documentation |
Callback
Description
Callbacks allow to customize the behavior of processes in mlr3 packages. The following packages implement callbacks:
-
CallbackOptimizationin bbotk. -
CallbackTuningin mlr3tuning. -
CallbackTorchinmlr3torch
Details
Callback is an abstract base class.
A subclass inherits from Callback and adds stages as public members.
Names of stages should start with "on_".
For each subclass a function should be implemented to create the callback.
For an example on how to implement such a function see callback_optimization() in bbotk.
Callbacks are executed at stages using the function call_back().
A Context defines which information can be accessed from the callback.
Public fields
id(
character(1))
Identifier of the callback.label(
character(1))
Label for this object. Can be used in tables, plot and text output instead of the ID.man(
character(1))
String in the format[pkg]::[topic]pointing to a manual page for this object. Defaults toNA, but can be set by child classes.state(named
list())
A callback can write data into the state.
Methods
Public methods
Method new()
Creates a new instance of this R6 class.
Usage
Callback$new(id, label = NA_character_, man = NA_character_)
Arguments
id(
character(1))
Identifier for the new instance.label(
character(1))
Label for the new instance.man(
character(1))
String in the format[pkg]::[topic]pointing to a manual page for this object. The referenced help package can be opened via method$help().
Method format()
Helper for print outputs.
Usage
Callback$format(...)
Arguments
...(ignored).
Method print()
Printer.
Usage
Callback$print(...)
Arguments
...(ignored).
Method help()
Opens the corresponding help page referenced by field $man.
Usage
Callback$help()
Method call()
Call the specific stage for a given context.
Usage
Callback$call(stage, context)
Arguments
stage(
character(1))
stage.context(
Context)
Context.
Method clone()
The objects of this class are cloneable with this method.
Usage
Callback$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
Examples
library(R6)
# implement callback subclass
CallbackExample = R6Class("CallbackExample",
inherit = mlr3misc::Callback,
public = list(
on_stage_a = NULL,
on_stage_b = NULL,
on_stage_c = NULL
)
)