class_docstr: A classical (non-variational) autoencoder that
  does not use reparameterization but instead uses
  an ordinary normalization technique to constrain
  the latent space
  
  Arguments
  ---------
  encoder: torch.nn.Module
      the encoder to be used
  decoder: torch.nn.Module
      the decoder to be used
  norm: torch.nn.Module
      the normalization module
  mask_latent: bool
      where to apply the length mask to the latent representation
  mask_out: bool
      whether to apply the length mask to the output
  out_mask_value: float
      the mask value used for the output
  
  Examples
  --------
  >>> import torch
  >>> from torch import nn
  >>> from speechbrain.nnet.linear import Linear
  >>> ae_enc = Linear(n_neurons=16, input_size=128)
  >>> ae_dec = Linear(n_neurons=128, input_size=16)
  >>> ae = NormalizingAutoencoder(
  ...     encoder=ae_enc,
  ...     decoder=ae_dec,
  ... )
  >>> x = torch.randn(4, 10, 128)
  >>> x_enc = ae.encode(x)
  >>> x_enc.shape
  torch.Size([4, 10, 16])
  >>> x_dec = ae.decode(x_enc)
  >>> x_dec.shape
  torch.Size([4, 10, 128])
code: def __init__(
      self,
      encoder,
      decoder,
      latent_padding=None,
      norm=None,
      len_dim=1,
      mask_out=True,
      mask_latent=True,
      out_mask_value=0.0,
      latent_mask_value=0.0,
  ):
      super().__init__()
      self.encoder = encoder
      self.decoder = decoder
      self.latent_padding = latent_padding
      if norm is None:
          norm = GlobalNorm()
      self.norm = norm
      self.len_dim = len_dim
      self.mask_out = mask_out
      self.mask_latent = mask_latent
      self.out_mask_value = out_mask_value
      self.latent_mask_value = latent_mask_value
  
imports: import torch
  from torch import nn
  from collections import namedtuple
  from speechbrain.dataio.dataio import clean_padding
  from speechbrain.utils.data_utils import trim_as
  from speechbrain.processing.features import GlobalNorm
label_desc: Use image node_id 1 to create a new NormalizingAutoencoder object from inherited base classes: Autoencoder with example: obj = NormalizingAutoencoder(encoder, decoder, latent_padding, norm, len_dim, mask_out, mask_latent, out_mask_value, latent_mask_value)