class_docstr: This network takes current state and previous observed values as input
  and returns its parameters, mean, standard deviation and probability
  of transition to the next state
class_docstr_tok: ["This","network","takes","current","state","and","previous","observed","values","as","input","and","returns","its","parameters",",","mean",",","standard","deviation","and","probability","of","transition","to","the","next","state"]
code: def __init__(
      self,
      encoder_dim: int,
      memory_rnn_dim: int,
      frame_channels: int,
      outputnet_size: List[int],
      flat_start_params: dict,
      std_floor: float = 1e-2,
  ):
      super().__init__()
  
      self.frame_channels = frame_channels
      self.flat_start_params = flat_start_params
      self.std_floor = std_floor
  
      input_size = memory_rnn_dim + encoder_dim
      output_size = 2 * frame_channels + 1
  
      self.parametermodel = ParameterModel(
          outputnet_size=outputnet_size,
          input_size=input_size,
          output_size=output_size,
          flat_start_params=flat_start_params,
          frame_channels=frame_channels,
      )
  
imports: from typing import List, Tuple
  import torch
  import torch.nn.functional
  from torch import nn
  from tqdm.auto import tqdm
  from TTS.tts.layers.tacotron.common_layers import Linear
  from TTS.tts.layers.tacotron.tacotron2 import ConvBNBlock
label_desc: Use image node_id 1 to create a new Outputnet object from inherited base classes: nn with example: obj = Outputnet(encoder_dim, memory_rnn_dim, frame_channels, outputnet_size, flat_start_params, std_floor)