class_docstr: Implementation of the imperceptible attack against a speech recognition model.
  
  | Paper link: http://proceedings.mlr.press/v97/qin19a.html
docstr: Create imperceptible, adversarial sample.
  
  This is a helper method that calls the methods to create an adversarial (`ImperceptibleASR._create_adversarial`)
  and imperceptible (`ImperceptibleASR._create_imperceptible`) example subsequently.
code: def _generate_batch(self, x: np.ndarray, y: np.ndarray) -> np.ndarray:
      """
      Create imperceptible, adversarial sample.
  
      This is a helper method that calls the methods to create an adversarial (`ImperceptibleASR._create_adversarial`)
      and imperceptible (`ImperceptibleASR._create_imperceptible`) example subsequently.
      """
      # create adversarial example
      x_adversarial = self._create_adversarial(x, y)
      if self.max_iter_2 == 0:
          return x_adversarial
  
      # make adversarial example imperceptible
      x_imperceptible = self._create_imperceptible(x, x_adversarial, y)
      return x_imperceptible
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import logging
  from typing import TYPE_CHECKING, Optional, Tuple, Union
  import numpy
  import scipy.signal
  from art.attacks.attack import EvasionAttack
  from art.estimators.estimator import BaseEstimator, LossGradientsMixin, NeuralNetworkMixin
  from art.estimators.pytorch import PyTorchEstimator
  from art.estimators.speech_recognition.speech_recognizer import SpeechRecognizerMixin
  from art.estimators.tensorflow import TensorFlowV2Estimator
  from art.utils import pad_sequence_input
label_desc: Use image node_id 3 for calling the ImperceptibleASR obj's underlying member method code with example usage: obj._generate_batch(x, y) and returns: x_imperceptible, x_adversarial