class_docstr: Removes model bias from audio produced with waveglow 
class_docstr_tok: ["Removes","model","bias","from","audio","produced","with","waveglow"]
code: def __init__(
      self,
      waveglow,
      filter_length=1024,
      n_overlap=4,
      win_length=1024,
      mode="zeros",
  ):
      super(Denoiser, self).__init__()
      self.stft = STFT(
          filter_length=filter_length,
          hop_length=int(filter_length / n_overlap),
          win_length=win_length,
      )
      if mode == "zeros":
          mel_input = torch.zeros(
              (1, 80, 88),
              dtype=waveglow.upsample.weight.dtype,
              device=waveglow.upsample.weight.device,
          )
      elif mode == "normal":
          mel_input = torch.randn(
              (1, 80, 88),
              dtype=waveglow.upsample.weight.dtype,
              device=waveglow.upsample.weight.device,
          )
      else:
          raise Exception("Mode {} if not supported".format(mode))
  
      with torch.no_grad():
          bias_audio = waveglow.infer(mel_input, sigma=0.0).float()
          bias_spec, _ = self.stft.transform(bias_audio)
  
      self.register_buffer("bias_spec", bias_spec[:, :, 0][:, :, None])
  
imports: import torch
  from .layers import STFT
label_desc: Use image node_id 1 to create a new Denoiser object from inherited base classes: torch.nn with example: obj = Denoiser(waveglow, filter_length, n_overlap, win_length, mode)