class_docstr: ADULT decoder used in the Counterfactual with Reinforcement Learning experiments. The model consists of
  of a fully connected layer with ReLU nonlinearity, and a multiheaded layer, one for each categorical feature and
  a single head for the rest of numerical features. The hidden dimension used in the paper is 128.
docstr: Constructor.
  
  Parameters
  ----------
  hidden_dim
      Hidden dimension.
  output_dim
      List of output dimensions.
docstr_tok: ["Constructor",".","Parameters","--","--","--","--","--","hidden_dim","Hidden","dimension",".","output_dim","List","of","output","dimensions","."]
code: def __init__(self, hidden_dim: int, output_dims: List[int], **kwargs):
      """
      Constructor.
  
      Parameters
      ----------
      hidden_dim
          Hidden dimension.
      output_dim
          List of output dimensions.
      """
      super().__init__(**kwargs)
  
      self.fc1 = keras.layers.Dense(hidden_dim)
      self.fcs = [keras.layers.Dense(dim) for dim in output_dims]
  
imports: import tensorflow
  import tensorflow.keras
  from typing import List
label_desc: Use image node_id 1 to create a new ADULTDecoder object from inherited base classes: keras with example: obj = ADULTDecoder(hidden_dim, output_dims)