A python library for decision tree visualization and model interpretation.
See https://github.com/parrt/dtreeviz/milestone/40?closed=1
Support string categorical vars in regressors and classifiers. See https://github.com/parrt/dtreeviz/pull/265
Minor improvement release: https://github.com/parrt/dtreeviz/pull/259
Add doc for feature space partitioning functions. Fix bug in tessellate() function.
Fix compatibility issue with tensorflow trees.
This is a major cleanup release, with @mepland doing most of the heavy lifting; there are refactorings, if you bug fixes, and lots of visualization clean up.
ctree_leaf_distributions()
should use the classnames not classes (bug)This release re-organizes the API to focus on using a model adaptor that adapts the visualization library to the various supported decision tree libraries.
We simplified the README and rebuilt all of the library-specific notebooks to demonstrate the new API, using a common set of examples:
New API:
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
import dtreeviz
iris = load_iris()
X = iris.data
y = iris.target
clf = DecisionTreeClassifier(max_depth=4)
clf.fit(X, y)
viz_model = dtreeviz.model(clf,
X_train=X, y_train=y,
feature_names=iris.feature_names,
target_name='iris',
class_names=iris.target_names)
v = viz_model.view() # render as SVG into internal object
Previous API: Previously, we did something like this to call functions and pass in the various details of the model and training data:
from dtreeviz.trees import dtreeviz
dtreeviz(tree_model=clf, X_train, ...)
Using old functions with 2.0+:
For backward compatibility to call function dtreeviz()
and the old API, you can change the import to be:
from dtreeviz import *
dtreeviz(tree_model=clf, X_train, ...)
Argument name changes:
If you were previously using internal model adaptors, such as ShadowLightGBMTree
, please note we have changed the following argument names: x_data
->X_train
and y_data
->y_train
.
Stuff we completed:
Fixing this bug: https://github.com/parrt/dtreeviz/issues/196