class_docstr: Wrapper of Cleverhans Model object.
class_docstr_tok: ["Wrapper","of","Cleverhans","Model","object","."]
code: def fprop(self, x):
      if x.name in self._logits_dict:
          return self._logits_dict[x.name]
  
      x = tf.map_fn(tf.image.per_image_standardization, x)
      self._additional_features["inputs"] = x
  
      if self._scope is None:
          scope = tf.variable_scope(
              tf.get_variable_scope(), reuse=tf.AUTO_REUSE
          )
      else:
          scope = tf.variable_scope(self._scope, reuse=tf.AUTO_REUSE)
  
      with scope:
          logits = self._model_fn(
              self._additional_features,
              None,
              "attack",
              params=self._params,
              config=self._config,
          )
      self._logits_dict[x.name] = logits
  
      return {
          model.Model.O_LOGITS: tf.reshape(
              logits, [-1, logits.shape[-1]]
          )
      }
  
file_path: tensor2tensor/tensor2tensor/utils/adv_attack_utils.py
imports: from cleverhans import attacks
  from cleverhans import model
  from cleverhans import utils_tf
  import numpy
  from tensor2tensor.utils import registry
  import tensorflow.compat.v1
label_desc: Use image node_id 2 for calling the T2TAttackModel obj's underlying member method code with example usage: obj.fprop(x) and returns: dict, self