Note
Click here to download the full example code
01. Explainer Dash
This example runs an app which an interactive user interface to explore the importance of the features using SHAP values.
Note
Requires plotly<6
Out:
The version of 'plotly' is: 6.3.1
16 # Libraries
17 import sys
18
19 try:
20 __file__
21 TERMINAL = True
22 except:
23 TERMINAL = False
24
25
26
27 def check_version(name):
28 """"""
29 if sys.version_info >= (3, 8):
30 # Since python 3.8
31 from importlib.metadata import version, PackageNotFoundError
32 else:
33 # For older Python versions, you need to install the backport
34 from importlib_metadata import version, PackageNotFoundError
35
36 try:
37 pkg_version = version(name)
38 print(f"The version of '{name}' is: {pkg_version}")
39 return pkg_version
40 except PackageNotFoundError:
41 print("One of the packages is not installed.")
42 return None
43
44
45
46
47 if __name__ == '__main__':
48
49 if check_version('plotly') < '6':
50
51 # Libraries
52 from sklearn.ensemble import RandomForestClassifier
53 from explainerdashboard import ClassifierExplainer
54 from explainerdashboard import ExplainerDashboard
55 from explainerdashboard.datasets import titanic_survive
56 from explainerdashboard.datasets import titanic_names
57 from explainerdashboard.datasets import feature_descriptions
58
59 # Get data
60 X_train, y_train, X_test, y_test = titanic_survive()
61
62 # Create and fit model
63 model = RandomForestClassifier(n_estimators=50, max_depth=10) \
64 .fit(X_train, y_train)
65
66 # Configure explainer
67 explainer = ClassifierExplainer(model, X_test, y_test,
68 cats=['Sex', 'Deck', 'Embarked'],
69 descriptions=feature_descriptions,
70 labels=['Not survived', 'Survived'])
71
72 # Run
73 if TERMINAL:
74 ExplainerDashboard(explainer).flask_server()
Total running time of the script: ( 0 minutes 0.005 seconds)