code: def __init__(
      self,
      embed_dim: int,
      lstm_dim: int,
      padding_value: float,
      dropout: float,
  ) -> None:
      super().__init__()
      self.lstm_dim = lstm_dim
      self.padding_value = padding_value
      self.dropout = nn.Dropout(dropout)
  
      total_size = embed_dim + lstm_dim
      self.f_gate = nn.Linear(total_size, lstm_dim)
      self.i_gate = nn.Linear(total_size, lstm_dim)
      self.o_gate = nn.Linear(total_size, lstm_dim)
      self.c_hat_gate = nn.Linear(total_size, lstm_dim)
      self.master_forget_no_cumax_gate = nn.Linear(total_size, lstm_dim)
      self.master_input_no_cumax_gate = nn.Linear(total_size, lstm_dim)
      log_class_usage(__class__)
  
file_path: pytext/pytext/models/representations/ordered_neuron_lstm.py
imports: from typing import List, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  from pytext.config import ConfigBase
  from pytext.models.module import Module
  from pytext.utils import cuda
  from pytext.utils.usage import log_class_usage
  from .representation_base import RepresentationBase
label_desc: Use image node_id 1 to create a new OrderedNeuronLSTMLayer object from inherited base classes: Module with example: obj = OrderedNeuronLSTMLayer(embed_dim, lstm_dim, padding_value, dropout)