Note

This page is a reference documentation. It only explains the class signature, and not how to use it. Please refer to the user guide for the big picture.

nidl.estimators.ssl.utils.YAwareProjectionHead

class nidl.estimators.ssl.utils.YAwareProjectionHead(input_dim=2048, hidden_dim=512, output_dim=128)[source]

Bases: ProjectionHead

Projection head used for yAware contrastive learning.

This module implements the projection head z_{\theta_2} as described in yAware [1], which is a simple multilayer perceptron (MLP) similar to that used in SimCLR [2]. It maps feature representations into a space where contrastive loss can be applied.

Typically, this MLP consists of one hidden layer followed by a non-linearity (ReLU) and a final linear projection.

References

[1]

Dufumier, B., et al., “Contrastive learning with continuous proxy meta-data for 3D MRI classification.” MICCAI, 2021. https://arxiv.org/abs/2106.08808

[2]

Chen, T., et al. “A Simple Framework for Contrastive Learning of Visual Representations.” ICML, 2020. https://arxiv.org/abs/2002.05709

__init__(input_dim=2048, hidden_dim=512, output_dim=128)[source]

Initialize internal Module state, shared by both nn.Module and ScriptModule.