class_docstr: This is abstract class for different backend-specific implementations of Fast is Better than Free protocol
  for adversarial training.
  
  | Paper link: https://openreview.net/forum?id=BJx040EFvH
docstr: Train a model adversarially with FBF. See class documentation for more information on the exact procedure.
  
  :param x: Training set.
  :param y: Labels for the training set.
  :param validation_data: Tuple consisting of validation data, (x_val, y_val)
  :param batch_size: Size of batches.
  :param nb_epochs: Number of epochs to use for trainings.
  :param kwargs: Dictionary of framework-specific arguments. These will be passed as such to the `fit` function of
         the target classifier.
code: def fit(  # pylint: disable=W0221
      self,
      x: np.ndarray,
      y: np.ndarray,
      validation_data: Optional[Tuple[np.ndarray, np.ndarray]] = None,
      batch_size: int = 128,
      nb_epochs: int = 20,
      **kwargs,
  ):
      """
      Train a model adversarially with FBF. See class documentation for more information on the exact procedure.
  
      :param x: Training set.
      :param y: Labels for the training set.
      :param validation_data: Tuple consisting of validation data, (x_val, y_val)
      :param batch_size: Size of batches.
      :param nb_epochs: Number of epochs to use for trainings.
      :param kwargs: Dictionary of framework-specific arguments. These will be passed as such to the `fit` function of
             the target classifier.
      """
      raise NotImplementedError
  
file_path: adversarial-robustness-toolbox/art/defences/trainer/adversarial_trainer_fbf.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import abc
  from typing import Optional, Union, Tuple, TYPE_CHECKING
  import numpy
  from art.defences.trainer.trainer import Trainer
label_desc: Use image node_id 2 for calling the AdversarialTrainerFBF obj's underlying member method code with example usage: obj.fit(x, y, validation_data, batch_size, nb_epochs) without return types