nidl.volume.backbones: Available backbones

This modules details the public API you should use and implement for a nidl compatible backbone, as well as the backbones available in nidl.

Introduction

An backbone is a torch.nn.Module class and contains definitions of models for addressing different tasks, including image classification, image segmentation, represnetation learning…

Pre-trained weights

nidl offers pre-trained weights for every provided architecture. The weights can be restored using the nidl.utils.weights.Weights.load_pretrained method. Available weights are listed here.

Weights

Classes that allow to restore pre-trained weights.

Weights(name, data_dir, filepath)

A class to handle (retrieve and apply) model weights or lightning checkpoints.

Volume

Classes that implement architectures that can be applied on brain volumes and various utility functions.

AlexNet([n_embedding, in_channels])

3D AlexNet architecture adapted from Abrol et al., 2021.

DenseNet([growth_rate, block_config, ...])

3D Densenet architecture adapted from Huang et al. 2018.

ResNet(block, layers[, in_channels, ...])

3D ResNet architecture adapted from He et al. 2015.

ResNetTruncated(*args[, depth])

3D truncated ResNet-18 architecture adapted from He et al. 2015.

        classDiagram
  Module <|-- AlexNet
  Module <|-- DenseNet
  Module <|-- ResNet
  ResNet <|-- ResNetTruncated
    

densenet121(**kwargs)

3D Densenet-121 model adapted from Huang et al. 2018.

resnet18_trunc(depth, **kwargs)

3D truncated ResNet-18 architecture adapted from He et al. 2015.

resnet50(**kwargs)

3D ResNet-50 architecture adapted from He et al. 2015.

resnet50_trunc(depth, **kwargs)

3D truncated ResNet-50 architecture adapted from He et al. 2015.

Surface

Classes that implement architectures that ccan be applied on brain surfaces and various utility functions.

coming soon