class_docstr: Implementation of DeepZ to certify neural network robustness. We use the zonotope representation of a datapoint as
  it travels through the network to then verify if it can have its class changed given a certain perturbation.
  
  | Paper link: https://papers.nips.cc/paper/2018/file/f2f446980d8e971ef3da97af089481c3-Paper.pdf
class_docstr_tok: ["Implementation","of","DeepZ","to","certify","neural","network","robustness",".","We","use","the","zonotope","representation","of","a","datapoint","as","it","travels","through","the","network","to","then","verify","if","it","can","have","its","class","changed","given","a","certain","perturbation",".","|","Paper","link",":","https",":","\/\/papers.nips.cc\/paper\/2018\/file\/f2f446980d8e971ef3da97af089481c3-Paper.pdf"]
docstr: Access function to get preprocessing
  
  :param x: unprocessed input data.
  :param y: unprocessed labels.
  :param fit: `True` if the function is call before fit/training and `False` if the function is called before a
               predict operation.
  :return: Tuple with the processed input data and labels.
docstr_tok: ["Access","function","to","get","preprocessing",":","param","x",":","unprocessed","input","data",".",":","param","y",":","unprocessed","labels",".",":","param","fit",":","`","True","`","if","the","function","is","call","before","fit\/training","and","`","False","`","if","the","function","is","called","before","a","predict","operation",".",":","return",":","Tuple","with","the","processed","input","data","and","labels","."]
code: def apply_preprocessing(
      self, x: np.ndarray, y: np.ndarray, fit: bool
  ) -> Tuple[Any, Any]:
      """
      Access function to get preprocessing
  
      :param x: unprocessed input data.
      :param y: unprocessed labels.
      :param fit: `True` if the function is call before fit/training and `False` if the function is called before a
                   predict operation.
      :return: Tuple with the processed input data and labels.
      """
      x_preprocessed, y_preprocessed = self._apply_preprocessing(
          x, y, fit=fit
      )
      return x_preprocessed, y_preprocessed
  
imports: from typing import List, Optional, Tuple, Union, Callable, Any, TYPE_CHECKING
  import logging
  import math
  import warnings
  import sys
  import numpy
  import torch
  from art.estimators.certification.deep_z.deep_z import ZonoConv, ZonoDenseLayer, ZonoReLU, ZonoBounds
  from art.estimators.classification.pytorch import PyTorchClassifier
label_desc: Use image node_id 5 for calling the PytorchDeepZ obj's underlying member method code with example usage: obj.apply_preprocessing(x, y, fit) and returns: x_preprocessed,  y_preprocessed