class_docstr: Basic example decoder, consisting of an embedding layer and a 1-layer LSTM with the
  specified hidden size. Decoder allows for incremental decoding by ingesting the
  current incremental state on each forward pass.
  
  Pay particular note to the ``forward``.
class_docstr_tok: ["Basic","example","decoder",",","consisting","of","an","embedding","layer","and","a","1-layer","LSTM","with","the","specified","hidden","size",".","Decoder","allows","for","incremental","decoding","by","ingesting","the","current","incremental","state","on","each","forward","pass",".","Pay","particular","note","to","the","``","forward","``","."]
docstr: Initialization.
  
  Arguments here can be used to provide hyperparameters.
docstr_tok: ["Initialization",".","Arguments","here","can","be","used","to","provide","hyperparameters","."]
code: def __init__(self, embeddings, hidden_size):
      """
      Initialization.
  
      Arguments here can be used to provide hyperparameters.
      """
      super().__init__()
      self.embeddings = embeddings
      self.lstm = nn.LSTM(
          input_size=hidden_size,
          hidden_size=hidden_size,
          num_layers=1,
          batch_first=True,
      )
  
imports: from typing import Optional
  from parlai.core.params import ParlaiParser
  from parlai.core.opt import Opt
  import torch.nn
  import torch.nn.functional
  import parlai.core.torch_generator_agent
label_desc: Use image node_id 1 to create a new Decoder object from inherited base classes: nn with example: obj = Decoder(embeddings, hidden_size)