class_docstr: Simply tree MAPLE into the common SHAP interface.
  
  Parameters
  ----------
  model : function
      User supplied function that takes a matrix of samples (# samples x # features) and
      computes the output of the model for those samples. The output can be a vector
      (# samples) or a matrix (# samples x # model outputs).
  
  data : numpy.array
      The background dataset.
code: def __init__(self, model, data):
      self.model = model
  
      if str(type(model)).endswith(
          "sklearn.ensemble.gradient_boosting.GradientBoostingRegressor'>"
      ):
          fe_type = "gbdt"
      # elif str(type(model)).endswith("sklearn.tree.tree.DecisionTreeClassifier'>"):
      # pass
      elif str(type(model)).endswith(
          "sklearn.ensemble.forest.RandomForestRegressor'>"
      ):
          fe_type = "rf"
      # elif str(type(model)).endswith("sklearn.ensemble.forest.RandomForestClassifier'>"):
      #     pass
      # elif str(type(model)).endswith("xgboost.sklearn.XGBRegressor'>"):
      #     pass
      # elif str(type(model)).endswith("xgboost.sklearn.XGBClassifier'>"):
      #     pass
      else:
          raise NotImplementedError(
              "The passed model is not yet supported by TreeMapleExplainer: "
              + str(type(model))
          )
  
      if isinstance(data, pd.DataFrame):
          data = data.values
      self.data = data
      self.data_mean = self.data.mean(0)
  
      out = self.model.predict(data[0:1])
      if len(out.shape) == 1:
          self.out_dim = 1
          self.flat_out = True
      else:
          self.out_dim = self.model.predict(data[0:1]).shape[1]
          self.flat_out = False
  
      # _, X_valid, _, y_valid = train_test_split(data, self.model.predict(data), test_size=0.2, random_state=0)
      preds = self.model.predict(data)
      self.explainer = MAPLE(
          data, preds, data, preds, fe=self.model, fe_type=fe_type
      )
  
imports: import numpy
  import pandas
  from sklearn.model_selection import train_test_split
  from .._explainer import Explainer
  import numpy
  from sklearn.ensemble import GradientBoostingRegressor, RandomForestRegressor
  from sklearn.linear_model import Ridge
  from sklearn.metrics import mean_squared_error
label_desc: Use image node_id 1 to create a new TreeMaple object from inherited base classes: Explainer with example: obj = TreeMaple(model, data)