Generally this base learner class should not be instantiated. Intended to be an abstract class, although abstract classes are not explicitly supported by R6. All learners support the methods and fields documented below. For more information on a particular learner, see its help file.

make_learner(learner_class, ...)

Arguments

learner_class

The learner class to instantiate.

...

Parameters with which to instantiate the learner. See Parameters section below.

Format

R6Class object.

Value

Learner object with methods for training and prediction

Common Parameters

Individual learners have their own sets of parameters. Below is a list of shared parameters, implemented by Lrnr_base, and shared by all learners.

covariates

A character vector of covariates. The learner will use this to subset the covariates for any specified task

outcome_type

A variable_type object used to control the outcome_type used by the learner. Overrides the task outcome_type if specified

...

All other parameters should be handled by the invidual learner classes. See the documentation for the learner class you're instantiating

User Methods

train(task)

Trains learner to a task using delayed. Returns a fit object

  • task: The task to use for training

base_train(task, trained_sublearners = NULL)

Trains learner to a task. Returns a fit object

  • task: The task to use for training

  • trained_sublearners: Any sublearners previous trained. Almost always NULL

predict(task=NULL)

Generates predictions using delayed. Returns a prediction vector or matrix.

  • task: The task to use for prediction. If no task is provided, it will use the task used for training.

base_predict(task=NULL)

Generates predictions. Returns a prediction vector or matrix.

  • task: The task to use for prediction. If no task is provided, it will use the task used for training.

chain(task=NULL)

Generates a chained task using delayed

  • task: The task to use for chaining If no task is provided, it will use the task used for training.

base_chain(task=NULL)

Generates a chained task

  • task: The task to use for chaining If no task is provided, it will use the task used for training.

Fields

is_trained

TRUE if this is a learner fit, not an untrained learner

fit_object

The internal fit object

name

The learner name

learner_uuid

A unique identifier of this learner, but common to all fits of this learner

fit_uuid

A unique identifier of this learner fit. NULL if this is an untrained learner

params

A list of learner parameters, as specified on construction

training_task

The task used for training. NULL if this is an untrained learner

training_outcome_type

The outcome_type of the task used for training. NULL if this is an untrained learner

properties

The properties supported by this learner

coefficients

Fit coefficients, if this learner has coefficients. NULL otherwise, or if this is an untrained learner

Internal Methods

These methods are primiarily for internal use only. They're not recommended for public consumption.

subset_covariates(task)

Returns a task with covariates subsetted using the covariates parameter.

  • task: The task to subset

get_outcome_type(task)

Mediates between the task outcome_type and parameter outcome_type. If a parameter outcome_type was specified, returns that. Otherwise, returns the task$outcome_type.

  • task: The task for which to determine the outcome_type

train_sublearners(task)

Trains sublearners to a task using delayed. Returns a delayed sublearner fit.

  • task: The task to use for training

set_train(fit_object, training_task)

Converts a learner to a learner fit.

  • fit_object: The fit object generated by a call to private$.train

  • training_task: The task used for training

assert_trained()

Throws an error if this learner does not have a fit_object

See also