class_docstr: Defines a multilayer perceptron used as an encoder.
  
  Parameters
  ----------
  layer_sizes
      number of hidden units per layer.
  kwargs
class_docstr_tok: ["Defines","a","multilayer","perceptron","used","as","an","encoder",".","Parameters","--","--","--","--","--","layer_sizes","number","of","hidden","units","per","layer",".","kwargs"]
docstr: Parameters
  ----------
  F
      A module that can either refer to the Symbol API or the NDArray
      API in MXNet.
  target
      target time series,
      shape (batch_size, sequence_length)
  static_features
      static features,
      shape (batch_size, num_feat_static)
  dynamic_features
      dynamic_features,
      shape (batch_size, sequence_length, num_feat_dynamic)
  
  Returns
  -------
  Tensor
      static code,
      shape (batch_size, num_feat_static)
  Tensor
      dynamic code,
      shape (batch_size, sequence_length, num_feat_dynamic)
docstr_tok: ["Parameters","--","--","--","--","--","F","A","module","that","can","either","refer","to","the","Symbol","API","or","the","NDArray","API","in","MXNet",".","target","target","time","series",",","shape","(","batch_size",",","sequence_length",")","static_features","static","features",",","shape","(","batch_size",",","num_feat_static",")","dynamic_features","dynamic_features",",","shape","(","batch_size",",","sequence_length",",","num_feat_dynamic",")","Returns","--","--","--","-","Tensor","static","code",",","shape","(","batch_size",",","num_feat_static",")","Tensor","dynamic","code",",","shape","(","batch_size",",","sequence_length",",","num_feat_dynamic",")"]
code: def hybrid_forward(
      self,
      F,
      target: Tensor,
      static_features: Tensor,
      dynamic_features: Tensor,
  ) -> Tuple[Tensor, Tensor]:
      """
      Parameters
      ----------
      F
          A module that can either refer to the Symbol API or the NDArray
          API in MXNet.
      target
          target time series,
          shape (batch_size, sequence_length)
      static_features
          static features,
          shape (batch_size, num_feat_static)
      dynamic_features
          dynamic_features,
          shape (batch_size, sequence_length, num_feat_dynamic)
  
      Returns
      -------
      Tensor
          static code,
          shape (batch_size, num_feat_static)
      Tensor
          dynamic code,
          shape (batch_size, sequence_length, num_feat_dynamic)
      """
  
      inputs = self._assemble_inputs(
          F, target, static_features, dynamic_features
      )
      static_code = self.model(inputs)
      dynamic_code = F.zeros_like(target).expand_dims(2)
      return static_code, dynamic_code
  
imports: from typing import List, Tuple
  from mxnet.gluon import nn
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from gluonts.mx.block.cnn import CausalConv1D
  from gluonts.mx.block.mlp import MLP
  from gluonts.mx.block.rnn import RNN
label_desc: Use image node_id 2 for calling the MLPEncoder obj's underlying member method code with example usage: obj.hybrid_forward(F, target, static_features, dynamic_features) and returns: static_code,  dynamic_code