mlr_pipeops_nn_block {mlr3torch} | R Documentation |
Block Repetition
Description
Repeat a block n_blocks
times by concatenating it with itself (via %>>%
).
Naming
For the generated module graph, the IDs of the modules are generated by prefixing the
IDs of the n_blocks
layers with the ID of the PipeOpTorchBlock
and postfixing them with
__<layer>
.
Parameters
The parameters available for the block itself, as well as
-
n_blocks
::integer(1)
How often to repeat the block.
Input and Output Channels
The PipeOp
sets its input and output channels to those from the block
(Graph)
it received during construction.
State
The state is the value calculated by the public method $shapes_out()
.
Super classes
mlr3pipelines::PipeOp
-> mlr3torch::PipeOpTorch
-> PipeOpTorchBlock
Active bindings
block
(
Graph
)
The neural network segment that is repeated by thisPipeOp
.
Methods
Public methods
Inherited methods
Method new()
Creates a new instance of this R6 class.
Usage
PipeOpTorchBlock$new(block, id = "nn_block", param_vals = list())
Arguments
block
(
Graph
)
A graph consisting primarily ofPipeOpTorch
objects that is to be repeated.id
(
character(1)
)
The id for of the new object.param_vals
(named
list()
)
Parameter values to be set after construction.
Method clone()
The objects of this class are cloneable with this method.
Usage
PipeOpTorchBlock$clone(deep = FALSE)
Arguments
deep
Whether to make a deep clone.
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_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_gelu
,
mlr_pipeops_nn_glu
,
mlr_pipeops_nn_hardshrink
,
mlr_pipeops_nn_hardsigmoid
,
mlr_pipeops_nn_hardtanh
,
mlr_pipeops_nn_head
,
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_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_unsqueeze
,
mlr_pipeops_torch_ingress
,
mlr_pipeops_torch_ingress_categ
,
mlr_pipeops_torch_ingress_ltnsr
,
mlr_pipeops_torch_ingress_num
,
mlr_pipeops_torch_loss
,
mlr_pipeops_torch_model
,
mlr_pipeops_torch_model_classif
,
mlr_pipeops_torch_model_regr
Examples
block = po("nn_linear") %>>% po("nn_relu")
po_block = po("nn_block", block,
nn_linear.out_features = 10L, n_blocks = 3)
network = po("torch_ingress_num") %>>%
po_block %>>%
po("nn_head") %>>%
po("torch_loss", t_loss("cross_entropy")) %>>%
po("torch_optimizer", t_opt("adam")) %>>%
po("torch_model_classif",
batch_size = 50,
epochs = 3)
task = tsk("iris")
network$train(task)