class_docstr: CoMBD (Collaborative Multi-band Discriminator) module
  from from https://arxiv.org/abs/2206.13404
class_docstr_tok: ["CoMBD","(","Collaborative","Multi-band","Discriminator",")","module","from","from","https",":","\/\/arxiv.org\/abs\/2206.13404"]
code: def _pqmf_forward(self, ys, ys_hat):
      # preprocess for multi_scale forward
      multi_scale_inputs = []
      multi_scale_inputs_hat = []
      for pqmf in self.pqmf:
          multi_scale_inputs.append(
              pqmf.to(ys[-1]).analysis(ys[-1])[:, :1, :]
          )
          multi_scale_inputs_hat.append(
              pqmf.to(ys[-1]).analysis(ys_hat[-1])[:, :1, :]
          )
  
      outs_real = []
      f_maps_real = []
      # real
      # for hierarchical forward
      outs_real, f_maps_real = self._block_forward(
          ys, self.blocks, outs_real, f_maps_real
      )
      # for multi_scale forward
      outs_real, f_maps_real = self._block_forward(
          multi_scale_inputs, self.blocks[:-1], outs_real, f_maps_real
      )
  
      outs_fake = []
      f_maps_fake = []
      # predicted
      # for hierarchical forward
      outs_fake, f_maps_fake = self._block_forward(
          ys_hat, self.blocks, outs_fake, f_maps_fake
      )
      # for multi_scale forward
      outs_fake, f_maps_fake = self._block_forward(
          multi_scale_inputs_hat,
          self.blocks[:-1],
          outs_fake,
          f_maps_fake,
      )
  
      return outs_real, outs_fake, f_maps_real, f_maps_fake
  
imports: import logging
  from typing import Any, Dict, List, Optional
  import torch
  import torch.nn.functional
  from torch.nn import Conv1d
  from torch.nn.utils import spectral_norm, weight_norm
  from espnet2.gan_svs.visinger2.visinger2_vocoder import MultiFrequencyDiscriminator
  from espnet2.gan_tts.hifigan.residual_block import ResidualBlock
  from espnet2.gan_tts.melgan.pqmf import PQMF
label_desc: Use image node_id 3 for calling the CoMBD obj's underlying member method code with example usage: obj._pqmf_forward(ys, ys_hat) and returns: outs_real,  outs_fake,  f_maps_real,  f_maps_fake