code: def __init__(self, args: dict):
      BaseEncoder.__init__(self)
      self.input_dim = args.input_dim
      self.latent_dim = args.latent_dim
  
      layers = nn.ModuleList()
  
      layers.append(
          nn.Sequential(
              nn.Linear(np.prod(args.input_dim), 300), nn.Softplus()
          )
      )
  
      self.layers = layers
      self.depth = len(layers)
  
      self.embedding = nn.Linear(300, self.latent_dim)
      self.log_var = nn.Linear(300, self.latent_dim)
  
file_path: benchmark_VAE/examples/scripts/reproducibility/hvae.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 HVAE, AutoModel, HVAEConfig
  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 Encoder object from inherited base classes: BaseEncoder with example: obj = Encoder(args)