code: def __init__(
      self,
      d_model: int,
      n_layer: int,
      n_hidden: int = 1,
  ) -> None:
      super(SimpleDiscriminator, self).__init__()
      self.d_model = d_model
      self.d_hidden = d_model * n_hidden
      self.n_layer = n_layer
  
      self.weights = nn.ParameterList()
      self.biases = nn.ParameterList()
      for layer in range(n_layer):
          d_input = self.d_model if layer == 0 else self.d_hidden
          d_output = (
              self.d_model if layer == n_layer - 1 else self.d_hidden
          )
          self.weights.append(nn.Parameter(Tensor(d_output, d_input)))
          self.biases.append(nn.Parameter(Tensor(d_output)))
      self.class_weight = nn.Parameter(Tensor(1, self.d_model))
      self.class_bias = nn.Parameter(Tensor(1))
  
      self._reset_parameters()
  
imports: import torch
  from torch import Tensor, nn
  from torch.nn import init, functional
label_desc: Use image node_id 1 to create a new SimpleDiscriminator object from inherited base classes: nn with example: obj = SimpleDiscriminator(d_model, n_layer, n_hidden)