What-if Tool Jupyter Notebook

Artificial Intelligence Software

The What-If Tool is an incredibly powerful tool that I have been using in my data analysis projects. It is a feature of Jupyter Notebook that allows me to explore my models and gain deeper insights into their predictions. In this article, I will walk you through the What-If Tool in Jupyter Notebook and share my personal experiences and commentary along the way.

What is the What-If Tool?

The What-If Tool is a visualization tool that helps in understanding how machine learning models make predictions. It provides an interactive interface where you can manipulate the inputs to your model and observe the changes in the output predictions. This tool is particularly useful when you want to explain your model’s behavior to stakeholders or debug any unexpected predictions.

Installing the What-If Tool

Before we dive into using the What-If Tool, let’s first install it. To install the What-If Tool, you can use the following command in your Jupyter Notebook:

!pip install witwidget

This will install the necessary packages required for the tool to function properly.

Exploring Model Predictions with the What-If Tool

Once the What-If Tool is installed, we can start exploring our model predictions. The first step is to load our model and the dataset we want to analyze. Let’s assume we have a trained model for predicting housing prices, and we have a dataset of housing features and corresponding prices.

Loading the Model and Dataset

# Load the trained model
model = load_model('housing_model.h5')

# Load the dataset
data = pd.read_csv('housing_data.csv')

Once the model and dataset are loaded, we can start using the What-If Tool.

Using the What-If Tool

To use the What-If Tool, we need to create an instance of the WhatIfToolWidget class and pass in the necessary parameters. Let’s see how this can be done:

# Create an instance of the WhatIfToolWidget
wit = WhatIfToolWidget(model, examples=data)

Once the WhatIfToolWidget instance is created, you can display it using the display function. This will render the tool in your Jupyter Notebook and make it interactive.

# Display the What-If Tool

Now, you can start exploring your model predictions using the What-If Tool interface. You can change the feature values of the examples in the dataset and observe how the model’s predictions change in real-time. This interactive nature of the tool makes it easy to gain insights and understand the model’s behavior.


The What-If Tool in Jupyter Notebook is an incredibly powerful tool for exploring and visualizing machine learning models. With its interactive interface, it allows us to manipulate inputs and observe the corresponding changes in predictions, providing valuable insights into model behavior. I have personally found this tool to be immensely helpful in my data analysis projects, and I highly recommend giving it a try in your own work.