class_docstr: Generate the logits of masked and unmasked inputs.
  Args:
      encoder_embed_dim (int): The dimension of the transformer embedding output.
      num_classes (int): The number of classes in the labels.
      final_dim (int): Project final representations and targets to `final_dim`.
      skip_masked (bool): If True, skip computing losses over masked frames.
      skip_nomask (bool): If True, skip computing losses over unmasked frames.
class_docstr_tok: ["Generate","the","logits","of","masked","and","unmasked","inputs",".","Args",":","encoder_embed_dim","(","int",")",":","The","dimension","of","the","transformer","embedding","output",".","num_classes","(","int",")",":","The","number","of","classes","in","the","labels",".","final_dim","(","int",")",":","Project","final","representations","and","targets","to","`","final_dim","`",".","skip_masked","(","bool",")",":","If","True",",","skip","computing","losses","over","masked","frames",".","skip_nomask","(","bool",")",":","If","True",",","skip","computing","losses","over","unmasked","frames","."]
code: def __init__(
      self,
      encoder_embed_dim: int,
      num_classes: int,
      final_dim: int,
      skip_masked: bool,
      skip_nomask: bool,
  ):
      super().__init__()
      self.label_embeddings = Parameter(
          torch.FloatTensor(num_classes, final_dim)
      )
      torch.nn.init.uniform_(self.label_embeddings)
      self.final_proj = torch.nn.Linear(encoder_embed_dim, final_dim)
      self.skip_masked = skip_masked
      self.skip_nomask = skip_nomask
  
imports: import logging
  from typing import List, Optional, Tuple
  import torch
  from torch import nn, Tensor
  from torch.nn import Module, Parameter
  from .wavlm_attention import WavLMSelfAttention
label_desc: Use image node_id 1 to create a new LogitGenerator object from inherited base classes: Module with example: obj = LogitGenerator(encoder_embed_dim, num_classes, final_dim, skip_masked, skip_nomask)