code: def __init__(self, args: dict):
      BaseDecoder.__init__(self)
  
      self.input_dim = args.input_dim
      self.latent_dim = args.latent_dim
  
      layers = nn.ModuleList()
  
      layers = nn.Sequential(
          nn.Linear(self.latent_dim, 1200),
          nn.Tanh(),
          nn.Linear(1200, 1200),
          nn.Tanh(),
          nn.Linear(1200, 1200),
          nn.Tanh(),
          nn.Linear(1200, np.prod(args.input_dim)),
          nn.Sigmoid(),
      )
  
      self.layers = layers
      self.depth = len(layers)
  
file_path: benchmark_VAE/examples/scripts/reproducibility/betatcvae.py
imports: import logging
  import os
  from typing import List
  import numpy
  import torch
  import torch.nn
  from pythae.data.preprocessors import DataProcessor
  from pythae.models import BetaTCVAE, BetaTCVAEConfig
  from pythae.models.base.base_utils import ModelOutput
  from pythae.models.nn import BaseDecoder, BaseEncoder
  from pythae.trainers import BaseTrainer, BaseTrainerConfig
label_desc: Use image node_id 1 to create a new Decoder object from inherited base classes: BaseDecoder with example: obj = Decoder(args)