class_docstr: Shallow Decision Tree (low depth).
  
  Currently wrapper around DecisionTreeClassifier or DecisionTreeRegressor in scikit-learn.
  To keep the tree shallow, max depth is defaulted to 3.
  
  https://github.com/scikit-learn/scikit-learn
class_docstr_tok: ["Shallow","Decision","Tree","(","low","depth",")",".","Currently","wrapper","around","DecisionTreeClassifier","or","DecisionTreeRegressor","in","scikit-learn",".","To","keep","the","tree","shallow",",","max","depth","is","defaulted","to","3.","https",":","\/\/github.com\/scikit-learn\/scikit-learn"]
docstr: Provides global explanation for model.
  
  Args:
      name: User-defined explanation name.
  
  Returns:
      An explanation object,
      visualizing feature-value pairs as horizontal bar chart.
docstr_tok: ["Provides","global","explanation","for","model",".","Args",":","name",":","User-defined","explanation","name",".","Returns",":","An","explanation","object",",","visualizing","feature-value","pairs","as","horizontal","bar","chart","."]
code: def explain_global(self, name=None):
      """Provides global explanation for model.
  
      Args:
          name: User-defined explanation name.
  
      Returns:
          An explanation object,
          visualizing feature-value pairs as horizontal bar chart.
      """
  
      check_is_fitted(self, "has_fitted_")
  
      if name is None:
          name = gen_name_from_class(self)
  
      # Extract decision tree structure
      nodes, edges = self._graph_from_tree(
          self._model(),
          self.feature_names_in_,
          max_depth=self.max_depth,
      )
      overall_data_dict = {
          "type": "tree",
          "features": self.feature_names_in_,
          "nodes": nodes,
          "edges": edges,
      }
      data_dicts = [
          {
              "type": "tree",
              "features": self.feature_names_in_,
              "nodes": nodes,
              "edges": edges,
          }
          for _ in self.feature_names_in_
      ]
  
      internal_obj = {
          "overall": overall_data_dict,
          "specific": data_dicts,
      }
  
      return TreeExplanation(
          "global",
          internal_obj,
          feature_names=self.feature_names_in_,
          feature_types=self.feature_types_in_,
          name=name,
          selector=self.global_selector_,
      )
  
imports: from ..api.base import ExplainerMixin, ExplanationMixin
  from ..utils._explanation import gen_name_from_class, gen_local_selector, gen_global_selector, gen_perf_dicts
  from sklearn.base import ClassifierMixin, RegressorMixin
  from sklearn.tree import DecisionTreeClassifier
  from sklearn.tree import DecisionTreeRegressor
  from sklearn.base import is_classifier
  from sklearn.utils.validation import check_is_fitted
  import numpy
  from abc import abstractmethod
  from sklearn.tree import _tree
  from copy import deepcopy
  from ..utils._clean_x import preclean_X
  from ..utils._clean_simple import clean_dimensions, typify_classification
  from ..utils._unify_data import unify_data
  import logging
label_desc: Use image node_id 5 for calling the BaseShallowDecisionTree obj's underlying member method code with example usage: obj.explain_global(name) and returns: TreeExplanation