Smetti di usare PowerPoint per le tue presentazioni di Machine Learning e prova invece questo

Prova questo, smetti di usare PowerPoint per le presentazioni di Machine Learning.

Gradio è un modo infallibile per impressionare sia gli stakeholder tecnici che non tecnici – perché non lo usano di più i Data Scientists e gli MLE?

Immagine di Will Porada su Unsplash

Le presentazioni PowerPoint fanno schifo.

Almeno, quelle brutte.

Le brutte presentazioni PowerPoint creano un pubblico distratto (che spegne le telecamere e fa multitasking), e facilitano i presentatori a fare brutte abitudini come usare troppo gergo tecnico e dilungarsi troppo a lungo.

Allora perché i Data Scientists usano così tanto PowerPoint?

In un recente thread Reddit su questo argomento, i partecipanti che lavorano in DS hanno riportato di passare tra il 10% e il 60% del loro tempo a creare slide o fare presentazioni. Mi rendo conto che non è una statistica molto robusta, ma indipendentemente dalla vera distribuzione, il sentimento è vero per molti di noi che lavorano in Data Science: usiamo PowerPoint – MOLTO – per mostrare tutto, dalle schede dei modelli a screenshot delle curve ROC e dei valori di Shapley.

Vi piaccia o no, PowerPoint è una grande parte delle moderne pile di Machine Learning e non sta andando da nessuna parte.

O forse sì?

In questo articolo, ti presenterò Gradio, un tool gratuito che ti permette di:

  1. Visualizzare modelli di ML tramite il tuo browser o Jupyter Notebook
  2. Impressionare i tuoi stakeholder non tecnici tramite visualizzazioni interattive e facili da capire
  3. Testare i tuoi modelli e identificare debolezze e importanza delle caratteristiche

Non ho nessun legame con Gradio e non sto cercando di venderti nulla – voglio solo mostrarti uno strumento che ha funzionato bene per me nel mio lavoro come Data Scientist, specialmente per modelli che utilizzano dati tabulari, come XGBoost.

Presentazione di Gradio: un modo gratuito e interattivo per mostrare e testare i tuoi modelli di ML

Nelle parole degli sviluppatori,

Gradio è il modo più veloce per dimostrare il tuo modello di machine learning con un’interfaccia web amichevole in modo che chiunque possa usarlo, ovunque!

Come funziona? È sorprendentemente semplice.

Ciao, mondo!

Prima di tutto, installa Gradio tramite pip .

pip install gradio

Successivamente, importa Gradio e definisci una funzione che può prendere un input. Poi, avvolgi il tuo modello in una classe ‘gradio.Interace()’, e – presto – il tuo modello viene dotato di un’interfaccia amichevole e interattiva che può essere incorporata in un notebook o in una pagina web. Ecco un esempio che utilizza una funzione molto semplice “Ciao {user}!”:

import gradio as grdef greet(name):    return "Ciao " + name + "!"demo = gr.Interface(fn=greet, inputs="text", outputs="text")demo.launch()   
Immagine dell'autore

Se esegui questo in un Jupyter Notebook, la demo sopra apparirà automaticamente in una nuova cella. Se lo esegui in uno script, la demo apparirà nel tuo browser all’indirizzo http://localhost:7860. Se lo desideri, puoi anche “generare automaticamente un link pubblico che puoi condividere con i colleghi che consente loro di interagire con il modello sul tuo computer in remoto dai loro dispositivi” ( docs ).

Come utilizzare Gradio con i tuoi modelli di ML

Per fare un esempio leggermente più complesso, diciamo che abbiamo un modello di ML che può riconoscere immagini disegnate a mano. Utilizzando Gradio, potremmo creare un blocco per schizzi che accetta l’input dell’utente…

import gradio as grdef riconoscimento_sketch(img):    pass# Implementa qui il tuo modello di riconoscimento sketch...gr.Interface(fn=riconoscimento_sketch, inputs="sketchpad", outputs="label").launch()

… offrendoci un modo pratico per disegnare schizzi, passarli al modello e mostrare il modello in tempo reale:

Immagine dell'autore

Nota: per mantenere questo articolo di una lunghezza gestibile, non includo dettagli sul modello stesso; se stai cercando modelli, potresti voler dare un’occhiata a HuggingFace, un ottimo repository di modelli pre-addestrati che possono essere facilmente caricati in un notebook Jupyter o script Python e utilizzati con Gradio.

Con poche righe di codice, Gradio rende facile mostrare i tuoi modelli in modo interattivo che chiunque può capire. Pensa alle possibilità nel tuo team – quanto sarebbe più facile mostrare i tuoi modelli al tuo team o agli stakeholder?

Se ti piace questa storia, sarebbe molto importante per me se clicchi sul mio pulsante “Segui” – solo l’1% dei miei lettori lo fa! Grazie per la lettura.

Che ne dici di XGBoost?

Sì, lo so – va bene fare una demo con un modello di riconoscimento delle immagini sofisticato, ma nella realtà XGBoost spesso regna sovrano nei team di Data Science del mondo reale.

Bene, se è quello che stai pensando, ho una grande notizia per te: Gradio funziona con tutti i tipi di modelli, compresi quelli progettati per dati tabulari, come XGBoost.

Ecco un esempio di un modello XGBoost che predice il reddito delle persone, mostrato tramite Gradio:

Immagine dell'autore. Codice disponibile qui

Come puoi vedere, Gradio rende possibile interagire con il modello regolando gli interruttori e gli slider e vedere come questi influenzano le previsioni. Puoi persino utilizzare i valori di Shapley per vedere l’importanza delle diverse caratteristiche nel determinare le previsioni del modello!

Come uso Gradio

Gradio non sarà mai un sostituto dei metodi tradizionali di test e valutazione dei modelli (ad es. rapporti di classificazione e l’utilizzo di un adeguato set di dati di test fuori campione), ma trovo che sia utile per due cose nel mio lavoro quotidiano:

  1. Spiegare i modelli agli stakeholder non tecnici – Gradio mi aiuta a rispondere alle domande ad hoc degli stakeholder come “cosa succederebbe alle previsioni del modello se cambiamo questa variabile?” Inoltre, non è necessario avere un dottorato di ricerca in Intelligenza Artificiale per giocare con gli interruttori, quindi tutti possono provare a interagire con il modello e costruire la propria comprensione di come funziona, indipendentemente dal fatto che abbiano una formazione tecnica o sappiano come codificare.
  2. Testare i miei modelli – Gradio consente di interrogare i tuoi modelli in tempo reale, testare le tue ipotesi e identificare rapidamente debolezze nascoste nel tuo modello (ad es. individuare comportamenti inaspettati). È un’alternativa più veloce ai test batch e – cosa fondamentale – democratizza il processo di test. Utilizzando Gradio, non è necessario fare affidamento solo su un Data Scientist per eseguire test batch in un notebook – puoi semplicemente ospitare il tuo modello pubblicamente (ad es. su HuggingFace Spaces), condividere il link al modello e tutti nel tuo team possono partecipare e provare a sondare il modello.

Gradio è l’uccisore di PowerPoint profetizzato?

No – ma questo non è realmente il punto.

La versatilità di PowerPoint significa che uno strumento limitato come Gradio non può essere una sostituzione completa. Inoltre, se PowerPoint viene utilizzato correttamente, può essere un modo incredibilmente efficace per mostrare parti del ciclo di vita del Machine Learning come model cards e casi aziendali.

MA per altre parti del ciclo di vita del Machine Learning (come mostrare l’importanza delle caratteristiche e i risultati del modello), PowerPoint non sempre funziona molto bene, e potresti scoprire che Gradio aiuta a risolvere alcune delle sue debolezze e impedisce al tuo pubblico di addormentarsi durante le presentazioni.

Quindi, se sei un Data Scientist o un MLE che trova che PowerPoint sia noioso o inefficace, perché non provare Gradio? È sicuramente stato di grande aiuto per me.

Un’altra cosa – potresti far parte del mio 1%?

Meno dell’1% dei miei lettori su Nisoo fa clic sul mio pulsante ‘Segui’, quindi significa davvero molto quando lo fai, che sia qui su Nisoo, Twitter o LinkedIn. Grazie per la lettura!