class_docstr: Implementation of the SimCLR[0] architecture
  
  Recommended loss: :py:class:`lightly.loss.ntx_ent_loss.NTXentLoss`
  
  [0] SimCLR, 2020, https://arxiv.org/abs/2002.05709
  
  Attributes:
      backbone:
          Backbone model to extract features from images.
      num_ftrs:
          Dimension of the embedding (before the projection head).
      out_dim:
          Dimension of the output (after the projection head).
code: def __init__(
      self, backbone: nn.Module, num_ftrs: int = 32, out_dim: int = 128
  ):
      super(SimCLR, self).__init__()
  
      self.backbone = backbone
      self.projection_head = SimCLRProjectionHead(
          num_ftrs, num_ftrs, out_dim, batch_norm=False
      )
  
      warnings.warn(
          Warning(
              "The high-level building block SimCLR will be deprecated in version 1.3.0. "
              + "Use low-level building blocks instead. "
              + "See https://docs.lightly.ai/self-supervised-learning/lightly.models.html for more information"
          ),
          DeprecationWarning,
      )
  
file_path: lightly/lightly/models/simclr.py
imports: import warnings
  import torch
  import torch.nn
  from lightly.models.modules import SimCLRProjectionHead
label_desc: Use image node_id 1 to create a new SimCLR object from inherited base classes: nn with example: obj = SimCLR(backbone, num_ftrs, out_dim)