class maze.perception.blocks.feed_forward.vgg_conv.VGGConvolutionBlock(*args: Any, **kwargs: Any)

A block containing multiple subsequent vgg style convolutions.

One convolution stack consists of two subsequent 3x3 convolution layers followed by 2x2 max pooling. The block expects the input tensors to have the from (batch-dim, channel-dim, row-dim, column-dim).

  • in_keys – One key identifying the input tensors.

  • out_keys – One key identifying the output tensors.

  • in_shapes – List of input shapes.

  • hidden_channels – List containing the number of hidden channels for hidden layers.

  • non_lin – The non-linearity to apply after each layer.


Compiles a block-specific dictionary of network layers. This could be overwritten by derived layers (e.g. to get a ‘BatchNormalizedConvolutionBlock’).


Ordered dictionary of torch modules [str, nn.Module]

normalized_forward(block_input: Dict[str, torch.Tensor]) → Dict[str, torch.Tensor]

(overrides ShapeNormalizationBlock)

implementation of ShapeNormalizationBlock interface