Machine Learning Model Dashboard. Creating dashboards to interpret... | by Himanshu Sharma | Towards Data Science

Nowadays, creating a machine learning model is easy because of different python libraries that are in the market like sklearn, lazypredict, etc. These libraries are easy to use and used to create different types of models along with different types of visualizations and finding out the model performance. If you don’t know how lazy predict works, check out the article given below.
towardsdatascience.com
The main challenge nowadays is that models are not interpreted easily which makes it difficult for a non-technical person to understand and interpret the logic and how the model is working.
Explainer dashboard is an open-source python library that creates machine learning model dashboards that can be used to easily understand and analyze the important factors on which the model is working like feature importance, model performance, visualizations, etc.
In this article, we will use an explainer dashboard to create machine learning dashboards and understand how the model is working.
Let’s get started...
We will start by installing an explainer dashboard using pip. The command given below will do that.
pip install explainerdashboard
In this step, we will import the required libraries and functions to create a machine learning model and dashboard.
from sklearn.ensemble import RandomForestClassifierfrom explainerdashboard import ClassifierExplainer, ExplainerDashboardfrom explainerdashboard.datasets import titanic_survive, titanic_names
This is the final step in which we will create the machine learning model and then interpret that model by creating a dashboard.
Creating Model
Creating Model
feature_descriptions = {    "Sex": "Gender of passenger",    "Gender": "Gender of passenger",    "Deck": "The deck the passenger had their cabin on",    "PassengerClass": "The class of the ticket: 1st, 2nd or 3rd class",    "Fare": "The amount of money people paid",     "Embarked": "the port where the passenger boarded the Titanic. Either Southampton, Cherbourg or Queenstown",    "Age": "Age of the passenger",    "No_of_siblings_plus_spouses_on_board": "The sum of the number of siblings plus the number of spouses on board",    "No_of_parents_plus_children_on_board" : "The sum of the number of parents plus the number of children on board",}X_train, y_train, X_test, y_test = titanic_survive()train_names, test_names = titanic_names()model = RandomForestClassifier(n_estimators=50, max_depth=5)model.fit(X_train, y_train)
2. Creating Dashboard
from sklearn.ensemble import RandomForestClassifierfrom explainerdashboard import ClassifierExplainer, ExplainerDashboardfrom explainerdashboard.datasets import titanic_survive, titanic_namesfeature_descriptions = {    "Sex": "Gender of passenger",    "Gender": "Gender of passenger",    "Deck": "The deck the passenger had their cabin on",    "PassengerClass": "The class of the ticket: 1st, 2nd or 3rd class",    "Fare": "The amount of money people paid",     "Embarked": "the port where the passenger boarded the Titanic. Either Southampton, Cherbourg or Queenstown",    "Age": "Age of the passenger",    "No_of_siblings_plus_spouses_on_board": "The sum of the number of siblings plus the number of spouses on board",    "No_of_parents_plus_children_on_board" : "The sum of the number of parents plus the number of children on board",}X_train, y_train, X_test, y_test = titanic_survive()train_names, test_names = titanic_names()model = RandomForestClassifier(n_estimators=50, max_depth=5)model.fit(X_train, y_train)explainer = ClassifierExplainer(model, X_test, y_test,                                 cats=['Deck', 'Embarked',                                    {'Gender': ['Sex_male', 'Sex_female', 'Sex_nan']}],                                cats_notencoded={'Embarked': 'Stowaway'},                                 descriptions=feature_descriptions,                                labels=['Not survived', 'Survived'],                                 idxs = test_names,                                 index_name = "Passenger",                                 target = "Survival",                                 )db = ExplainerDashboard(explainer,                         title="Titanic Explainer",                         shap_interaction=False,                        )db.run(port=8050)
In the video given below, I have shown the dashboard created using the explainer dashboards.
Here you can clearly visualize the dashboard create using the explainer dashboard. We can clearly analyze different properties of the model and other parameters.
Go ahead try this with different datasets and create beautiful dashboards to interpret the model. In case you find any difficulty please let me know in the response section.
This article is in collaboration with Piyush Ingale.
Thanks for reading! If you want to get in touch with me, feel free to reach me on hmix13@gmail.com or my LinkedIn Profile. You can view my Github profile for different data science projects and packages tutorials. Also, feel free to explore my profile and read different articles I have written related to Data Science.