class_docstr: OneShotDecoder.
  
  Parameters
  ----------
  decoder_length
      length of the decoder (number of time steps)
  layer_sizes
      dimensions of the hidden layers
  static_outputs_per_time_step
      number of outputs per time step
class_docstr_tok: ["OneShotDecoder",".","Parameters","--","--","--","--","--","decoder_length","length","of","the","decoder","(","number","of","time","steps",")","layer_sizes","dimensions","of","the","hidden","layers","static_outputs_per_time_step","number","of","outputs","per","time","step"]
code: def __init__(
      self,
      decoder_length: int,
      layer_sizes: List[int],
      static_outputs_per_time_step: int,
  ) -> None:
      super().__init__()
      self.decoder_length = decoder_length
      self.static_outputs_per_time_step = static_outputs_per_time_step
      with self.name_scope():
          self.mlp = MLP(layer_sizes, flatten=False)
          self.expander = nn.Dense(
              units=decoder_length * static_outputs_per_time_step
          )
  
file_path: gluonts/src/gluonts/mx/block/decoder.py
imports: from typing import List
  from mxnet.gluon import nn
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from gluonts.mx.block.mlp import MLP
label_desc: Use image node_id 1 to create a new OneShotDecoder object from inherited base classes: Seq2SeqDecoder with example: obj = OneShotDecoder(decoder_length, layer_sizes, static_outputs_per_time_step)