Block Repetition
Repeat a block n_blocks
times by concatenating it with itself (via %>>%
).
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>
.
The parameters available for the block itself, as well as
n_blocks
:: integer(1)
How often to repeat the block.
The PipeOp
sets its input and output channels to those from the block
(Graph) it received during construction.
The state is the value calculated by the public method $shapes_out()
.
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)
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
mlr3pipelines::PipeOp
-> mlr3torch::PipeOpTorch
-> PipeOpTorchBlock
block
: (Graph
)
The neural network segment that is repeated by this `PipeOp`.
new()
Creates a new instance of this R6 class.
PipeOpTorchBlock$new(block, id = "nn_block", param_vals = list())
block
: (Graph
)
A graph consisting primarily of `PipeOpTorch` 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.
clone()
The objects of this class are cloneable with this method.
PipeOpTorchBlock$clone(deep = FALSE)
deep
: Whether to make a deep clone.
Useful links