Stop Using PowerPoint for Your ML Presentations and Try This Instead

Author:Murphy  |  View: 22345  |  Time: 2025-03-23 18:12:14

Stop Using PowerPoint for Your ML Presentations and Try This Instead

PowerPoint presentations suck.

At least, bad ones do.

Bad PowerPoints create distracted audiences (who turn off their cameras and multitask), and they make it easy for presenters to get away with bad habits like using too much technical jargon and waffling on for too long.

So why do Data Scientists use PowerPoint so much?

On a recent Reddit thread on this topic, respondents working in DS reported spending anywhere between 10–60% of their time making slide decks or giving presentations. I realise that's not a very robust statistic, but regardless of the true distribution, the sentiment chimes true for many of us working in Data Science: we use PowerPoint – A LOT – to showcase everything from model cards to screenshots of ROC curves and Shapley values.

Like it or not, PowerPoint is a big part of modern Machine Learning stacks, and it's not going anywhere.

Or is it?

In this article, I'm going to introduce you to Gradio, a free tool which lets you:

  1. Visualise ML models via your browser or Jupyter Notebook
  2. Impress your non-technical stakeholders via interactive, easy-to-understand visualisations
  3. Test your models and identify weaknesses and feature importances

I have no affiliation with Gradio and I'm not trying to sell you anything – I simply want to show you a tool which has worked well for me in my job as a Data Scientist, ESPECIALLY for models that use tabular data, like XGBoost.

Introducing Gradio: A free, interactive way to showcase and test your ML models

In the developers' own words,

Gradio is the fastest way to demo your machine learning model with a friendly web interface so that anyone can use it, anywhere!

How does this work? It's surprisingly simple.

Hello, world!

First, install Gradio via pip.

pip install gradio

Next, import Gradio and define a function that can take an input. Then, wrap your model in a ‘gradio.Interface()' class, and – hey presto – your model is given a friendly, interactive interface which can be embedded in a notebook or webpage. Here's an example using a very simple "Hello {user}!" function:

import gradio as gr

def greet(name):
    return "Hello " + name + "!"

demo = gr.Interface(fn=greet, inputs="text", outputs="text")

demo.launch()   

If you run that in a Jupyter Notebook, the demo above will appear automatically in a new cell. If you run it in a script, the demo will appear in your browser at http://localhost:7860. If you like, you can also "automatically generate a public link you can share with colleagues that lets them interact with the model on your computer remotely from their own devices" (docs).

How to use Gradio with your ML models

To take a slightly more complex example, let's say we had an ML model which could recognise hand-drawn images. Using Gradio, we could create a sketch pad which accepts user input…

import gradio as gr
def sketch_recognition(img):
    pass# Implement your sketch recognition model here...

gr.Interface(fn=sketch_recognition, inputs="sketchpad", outputs="label").launch()

… giving us a nifty way to draw sketches, pass them to the model, and demo the model in live-time:

Note: to keep this article to a manageable length, I'm not including details on the model itself; if you're looking for models, you might want to check out HuggingFace, a great repository of pre-trained models which can be easily loaded into a Jupyter notebook or Python script and used with Gradio.

With just a few lines of code, Gradio makes it easy to showcase your models in an interactive way that anyone can understand. Think about the possibilities in your team – how much easier could this make it to showcase your models to your team or stakeholders?


If you're liking this story, it would mean a lot to me if you click my ‘Follow' button – only 1% of my readers do! Thanks for reading.


What about XGBoost?

Yes, yes, I know – it's all very well doing a demo with some fancy image recognition model, but in reality XGBoost often reigns supreme in real-world Data Science teams.

Well, if that's what you're thinking, I've got some great news for you: Gradio works with all kinds of models, including models designed for tabular data, like XGBoost.

Here's an example of an XGBoost model that predicts people's incomes, showcased via Gradio:

As you can see, Gradio makes it possible to interact with the model by adjusting the toggles and sliders and seeing how these affect the predictions. You can even use Shapley values to see the importance of different features in determining the model's predictions!

How I use Gradio

Gradio is never going to be a replacement for traditional methods of testing and evaluating models (e.g. classification reports and using a proper out-of-sample testing dataset), but I do find that it's useful for two things in my day-to-day job:

  1. Explaining models to non-technical stakeholders – Gradio helps me answer stakeholders' ad hoc questions like "what would happen to the model's predictions if we changed this variable?" Plus, you don't need a PhD in AI to fiddle with the toggles, so everyone can have a go at playing with the model and building their own understanding of how it works, regardless of whether they've got a technical background or know how to code.
  2. Testing my models – Gradio lets you query your models in live time, test your hypotheses and quickly identify hidden weakness in your model (e.g. finding unexpected behaviours). It's a speedier alternative to batch testing and – crucially – it democratizes the testing process. Using Gradio, you don't need to rely on a lone Data Scientist to run batch tests in a notebook – you can just host your model publicly (e.g. on HuggingFace Spaces), share the link to the model, and everyone in your team can get involved and have a go at probing the model.

Is Gradio the prophesied PowerPoint-killer?

Nope – but that's not really the point.

PowerPoint's versatility means that a narrow tool like Gradio can't be a full replacement. Besides, if PowerPoint is used well, it can actually be an incredibly effective way to showcase parts of the ML lifecycle like model cards and business cases.

BUT for other parts of the ML lifecycle (like showcasing feature importances and model results), PowerPoint doesn't always work very well, and you might find that Gradio helps address some of its weaknesses and stops your audience from falling asleep during presentations.

So, if you're a Data Scientist or MLE who's finding that PowerPoint is boring or ineffective, why not give Gradio a go? It's certainly been a big help for me.

Oh, one more thing –

I've started a free newsletter called AI in Five where I share 5 bullet points each week on the latest AI news, Coding tips and career stories for Data Scientists/Analysts. There's no hype, no "data is the new oil" rubbish and no tweets from Elon – just practical tips and insights to help you develop in your career. Subscribe here if that sounds up your street!

AI in Five | Matt Chapman | Substack

Tags: Artificial Intelligence Coding Data Science Machine Learning Programming

Comment