Configures the loss of a deep learning model.
Input and Output Channels
One input channel called "input" and one output channel called "output".
For an explanation see PipeOpTorch.
Internals
During training the loss is cloned and added to the ModelDescriptor.
See also
Other PipeOps:
mlr_pipeops_nn_adaptive_avg_pool1d,
mlr_pipeops_nn_adaptive_avg_pool2d,
mlr_pipeops_nn_adaptive_avg_pool3d,
mlr_pipeops_nn_avg_pool1d,
mlr_pipeops_nn_avg_pool2d,
mlr_pipeops_nn_avg_pool3d,
mlr_pipeops_nn_batch_norm1d,
mlr_pipeops_nn_batch_norm2d,
mlr_pipeops_nn_batch_norm3d,
mlr_pipeops_nn_block,
mlr_pipeops_nn_celu,
mlr_pipeops_nn_conv1d,
mlr_pipeops_nn_conv2d,
mlr_pipeops_nn_conv3d,
mlr_pipeops_nn_conv_transpose1d,
mlr_pipeops_nn_conv_transpose2d,
mlr_pipeops_nn_conv_transpose3d,
mlr_pipeops_nn_dropout,
mlr_pipeops_nn_elu,
mlr_pipeops_nn_flatten,
mlr_pipeops_nn_ft_cls,
mlr_pipeops_nn_ft_transformer_block,
mlr_pipeops_nn_geglu,
mlr_pipeops_nn_gelu,
mlr_pipeops_nn_glu,
mlr_pipeops_nn_hardshrink,
mlr_pipeops_nn_hardsigmoid,
mlr_pipeops_nn_hardtanh,
mlr_pipeops_nn_head,
mlr_pipeops_nn_identity,
mlr_pipeops_nn_layer_norm,
mlr_pipeops_nn_leaky_relu,
mlr_pipeops_nn_linear,
mlr_pipeops_nn_log_sigmoid,
mlr_pipeops_nn_max_pool1d,
mlr_pipeops_nn_max_pool2d,
mlr_pipeops_nn_max_pool3d,
mlr_pipeops_nn_merge,
mlr_pipeops_nn_merge_cat,
mlr_pipeops_nn_merge_prod,
mlr_pipeops_nn_merge_sum,
mlr_pipeops_nn_prelu,
mlr_pipeops_nn_reglu,
mlr_pipeops_nn_relu,
mlr_pipeops_nn_relu6,
mlr_pipeops_nn_reshape,
mlr_pipeops_nn_rrelu,
mlr_pipeops_nn_selu,
mlr_pipeops_nn_sigmoid,
mlr_pipeops_nn_softmax,
mlr_pipeops_nn_softplus,
mlr_pipeops_nn_softshrink,
mlr_pipeops_nn_softsign,
mlr_pipeops_nn_squeeze,
mlr_pipeops_nn_tanh,
mlr_pipeops_nn_tanhshrink,
mlr_pipeops_nn_threshold,
mlr_pipeops_nn_tokenizer_categ,
mlr_pipeops_nn_tokenizer_num,
mlr_pipeops_nn_unsqueeze,
mlr_pipeops_torch_ingress,
mlr_pipeops_torch_ingress_categ,
mlr_pipeops_torch_ingress_ltnsr,
mlr_pipeops_torch_ingress_num,
mlr_pipeops_torch_model,
mlr_pipeops_torch_model_classif,
mlr_pipeops_torch_model_regr
Other Model Configuration:
ModelDescriptor(),
mlr_pipeops_torch_callbacks,
mlr_pipeops_torch_optimizer,
model_descriptor_union()
Super class
mlr3pipelines::PipeOp -> PipeOpTorchLoss
Methods
Method new()
Creates a new instance of this R6 class.
Usage
PipeOpTorchLoss$new(loss, id = "torch_loss", param_vals = list())Arguments
loss(
TorchLossorcharacter(1)ornn_loss)
The loss (or something convertible viaas_torch_loss()).id(
character(1))
Identifier of the resulting object.param_vals(
list())
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction.
Examples
po_loss = po("torch_loss", loss = t_loss("cross_entropy"))
po_loss$param_set
#> <ParamSet(3)>
#> id class lower upper nlevels default value
#> <char> <char> <num> <num> <num> <list> <list>
#> 1: class_weight ParamUty NA NA Inf [NULL] [NULL]
#> 2: ignore_index ParamInt -Inf Inf Inf -100 [NULL]
#> 3: reduction ParamFct NA NA 2 mean [NULL]
mdin = po("torch_ingress_num")$train(list(tsk("iris")))
mdin[[1L]]$loss
#> NULL
mdout = po_loss$train(mdin)[[1L]]
mdout$loss
#> <TorchLoss:cross_entropy> Cross Entropy
#> * Generator: function
#> * Parameters: list()
#> * Packages: torch,mlr3torch
#> * Task Types: classif