class_docstr: Upsampling network module.
class_docstr_tok: ["Upsampling","network","module","."]
docstr: Calculate forward propagation.
  
  Args:
      c : Input tensor (B, C, T_feats).
  
  Returns:
      Tensor: Upsampled tensor (B, C, T_wav).
docstr_tok: ["Calculate","forward","propagation",".","Args",":","c",":","Input","tensor","(","B",",","C",",","T_feats",")",".","Returns",":","Tensor",":","Upsampled","tensor","(","B",",","C",",","T_wav",")","."]
code: def forward(self, c: torch.Tensor) -> torch.Tensor:
      """Calculate forward propagation.
  
      Args:
          c : Input tensor (B, C, T_feats).
  
      Returns:
          Tensor: Upsampled tensor (B, C, T_wav).
  
      """
      c = c.unsqueeze(1)  # (B, 1, C, T)
      for f in self.up_layers:
          c = f(c)
      return c.squeeze(1)
  
imports: from typing import Any, Dict, List, Optional
  import numpy
  import torch
  import torch.nn.functional
  from espnet2.gan_tts.wavenet.residual_block import Conv1d
label_desc: Use image node_id 2 for calling the UpsampleNetwork obj's underlying member method code with example usage: obj.forward(c) and returns: c