trw.layers.resnet_preact

Module Contents

Classes

PreActResNet

Pre-activation Resnet model

Attributes

PreActResNet18

PreActResNet34

class trw.layers.resnet_preact.PreActResNet(dimensionality: int, input_channels: int, output_channels: Optional[int], *, block=BlockResPreAct, num_blocks: Sequence[int] = (2, 2, 2, 2), strides: Sequence[trw.basic_typing.Stride] = (1, 2, 2, 2), channels: Sequence[int] = (64, 128, 256, 512), init_block_fn=partial(BlockConvNormActivation, kernel_size=3, stride=1, bias=False), output_block_fn=BlockPoolClassifier, config: trw.layers.layer_config.LayerConfig = default_layer_config(dimensionality=None, pool_type=PoolType.AvgPool))

Bases: torch.nn.Module, trw.layers.convs.ModuleWithIntermediate

Pre-activation Resnet model

Examples

>>> pre_act_resnet18 = PreActResNet(2, 3, 10)
>>> c = pre_act_resnet18(torch.zeros(10, 3, 32, 32))

References

[1] https://arxiv.org/pdf/1603.05027.pdf

Notes

The default pooling kernel has been adapted to fit CIFAR10 rather than imagenet image size (kernel size=4 instead of 7)

_make_layer(self, config, block, planes, num_blocks, stride)
forward_with_intermediate(self, x: torch.Tensor, **kwargs) List[torch.Tensor]
forward(self, x)
trw.layers.resnet_preact.PreActResNet18
trw.layers.resnet_preact.PreActResNet34