class_docstr: Reduces the sensibility of the features of a sample.
  
  | Paper link: https://arxiv.org/abs/1704.01155
  
  | Please keep in mind the limitations of defences. For more information on the limitations of this defence,
      see https://arxiv.org/abs/1803.09868 . For details on how to evaluate classifier security in general,
      see https://arxiv.org/abs/1902.06705
class_docstr_tok: ["Reduces","the","sensibility","of","the","features","of","a","sample",".","|","Paper","link",":","https",":","\/\/arxiv.org\/abs\/1704.01155","|","Please","keep","in","mind","the","limitations","of","defences",".","For","more","information","on","the","limitations","of","this","defence",",","see","https",":","\/\/arxiv.org\/abs\/1803.09868",".","For","details","on","how","to","evaluate","classifier","security","in","general",",","see","https",":","\/\/arxiv.org\/abs\/1902.06705"]
docstr: Create an instance of feature squeezing.
  
  :param clip_values: Tuple of the form `(min, max)` representing the minimum and maximum values allowed
         for features.
  :param bit_depth: The number of bits per channel for encoding the data.
  :param apply_fit: True if applied during fitting/training.
  :param apply_predict: True if applied during predicting.
docstr_tok: ["Create","an","instance","of","feature","squeezing",".",":","param","clip_values",":","Tuple","of","the","form","`","(","min",",","max",")","`","representing","the","minimum","and","maximum","values","allowed","for","features",".",":","param","bit_depth",":","The","number","of","bits","per","channel","for","encoding","the","data",".",":","param","apply_fit",":","True","if","applied","during","fitting\/training",".",":","param","apply_predict",":","True","if","applied","during","predicting","."]
code: def __init__(
      self,
      clip_values: CLIP_VALUES_TYPE,
      bit_depth: int = 8,
      apply_fit: bool = False,
      apply_predict: bool = True,
  ) -> None:
      """
      Create an instance of feature squeezing.
  
      :param clip_values: Tuple of the form `(min, max)` representing the minimum and maximum values allowed
             for features.
      :param bit_depth: The number of bits per channel for encoding the data.
      :param apply_fit: True if applied during fitting/training.
      :param apply_predict: True if applied during predicting.
      """
      super().__init__(
          is_fitted=True,
          apply_fit=apply_fit,
          apply_predict=apply_predict,
      )
      self.clip_values = clip_values
      self.bit_depth = bit_depth
      self._check_params()
  
file_path: adversarial-robustness-toolbox/art/defences/preprocessor/feature_squeezing.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import logging
  from typing import Optional, Tuple
  import numpy
  from art.utils import CLIP_VALUES_TYPE
  from art.defences.preprocessor.preprocessor import Preprocessor
label_desc: Use image node_id 1 to create a new FeatureSqueezing object from inherited base classes: Preprocessor with example: obj = FeatureSqueezing(clip_values, bit_depth, apply_fit, apply_predict)