class_docstr: Represents the categorical functional causal model of the form
      Y = f(X, N),
  where X is the input (typically, direct causal parents of Y) and the noise N here is uniform on [0, 1]. The model
  is mostly based on a standard classification model that outputs probabilities. In order to generate a new random
  sample given an input x, the return value y is uniformly sampled based on the class probabilities p(y | x). Here,
  the noise is used to make this sampling process deterministic by using the cumulative distribution functions defined
  by the given inputs.
class_docstr_tok: ["Represents","the","categorical","functional","causal","model","of","the","form","Y","=","f","(","X",",","N",")",",","where","X","is","the","input","(","typically",",","direct","causal","parents","of","Y",")","and","the","noise","N","here","is","uniform","on","[","0",",","1","]",".","The","model","is","mostly","based","on","a","standard","classification","model","that","outputs","probabilities",".","In","order","to","generate","a","new","random","sample","given","an","input","x",",","the","return","value","y","is","uniformly","sampled","based","on","the","class","probabilities","p","(","y","|","x",")",".","Here",",","the","noise","is","used","to","make","this","sampling","process","deterministic","by","using","the","cumulative","distribution","functions","defined","by","the","given","inputs","."]
code: def clone(self):
      return ClassifierFCM(
          classifier_model=self._classifier_model.clone()
      )
  
imports: import copy
  from abc import ABC, abstractmethod
  from typing import List, Optional
  import numpy
  from dowhy.gcm.ml import ClassificationModel, PredictionModel
  from dowhy.gcm.ml.regression import InvertibleFunction, SklearnRegressionModel
  from dowhy.gcm.util.general import is_categorical, is_discrete, shape_into_2d
label_desc: Use image node_id 6 for calling the ClassifierFCM obj's underlying member method code with example usage: obj.clone() and returns: ClassifierFCM