Ricercatori della CMU presentano Zeno un framework per la valutazione comportamentale dei modelli di apprendimento automatico (ML).

CMU researchers present Zeno, a framework for behavioral evaluation of ML models.

La prototipazione di sistemi basati sull’intelligenza artificiale è sempre stata più complessa. Tuttavia, dopo aver utilizzato il prototipo per un po’ di tempo, potresti scoprire che potrebbe essere più funzionale. Un chatbot per prendere appunti, un editor per creare immagini da testo e uno strumento per riassumere i commenti dei clienti possono essere realizzati con una conoscenza di base della programmazione e un paio d’ore.

Nel mondo reale, i sistemi di apprendimento automatico (ML) possono incorporare problemi come pregiudizi sociali e preoccupazioni sulla sicurezza. Dai pregiudizi razziali nei modelli di rilevamento dei pedoni alla classificazione errata sistematica di particolari immagini mediche, i professionisti e i ricercatori scoprono continuamente limitazioni e fallimenti significativi nei modelli all’avanguardia. L’analisi del comportamento o il test viene comunemente utilizzato per scoprire e convalidare le limitazioni del modello. Comprendere i modelli di output del modello per sottogruppi o fette di dati di input va oltre l’esame di metriche aggregate come l’accuratezza o il punteggio F1. Le parti interessate, come gli ingegneri di ML, i designer e gli esperti di dominio, devono lavorare insieme per identificare i difetti attesi e potenziali di un modello.

L’importanza di effettuare valutazioni comportamentali è stata ampiamente sottolineata, anche se rimane difficile farlo. Inoltre, molti strumenti popolari di valutazione comportamentale, come le toolkit di equità, non supportano i modelli, i dati o i comportamenti con cui i professionisti del mondo reale devono generalmente confrontarsi. I professionisti testano manualmente casi selezionati dagli utenti e dagli interessati per valutare i modelli e selezionare la versione di distribuzione ottimale. I modelli vengono spesso creati prima che i professionisti siano familiari con i prodotti o i servizi per i quali verrà utilizzato il modello.

Capire quanto bene un modello di apprendimento automatico può completare un compito particolare è la difficoltà della valutazione del modello. Le prestazioni dei modelli possono essere solo approssimate utilizzando indicatori aggregati, proprio come un test di intelligenza è solo una misura approssimativa e imperfetta dell’intelligenza umana. Ad esempio, potrebbero non riuscire a incorporare capacità fondamentali come una grammatica accurata nei sistemi NLP o coprire difetti sistemici come pregiudizi sociali. Il metodo di test standard prevede il calcolo di una metrica di prestazione complessiva su un sottoinsieme dei dati.

La difficoltà di determinare quali caratteristiche dovrebbe possedere un modello è essenziale per il campo della valutazione comportamentale. In domini complessi, l’elenco dei requisiti sarebbe impossibile da testare perché potrebbero esserci un numero infinito di essi. Invece, gli ingegneri di ML collaborano con esperti di dominio e designer per descrivere le capacità attese di un modello prima che venga iterato e distribuito. Gli utenti contribuiscono al feedback sulle limitazioni e i comportamenti attesi del modello attraverso le loro interazioni con prodotti e servizi, che vengono successivamente inclusi nelle future iterazioni del modello.

Esistono molti strumenti per individuare, convalidare e monitorare i comportamenti dei modelli nei sistemi di valutazione ML. Gli strumenti utilizzano trasformazioni dati e visualizzazioni per scoprire pattern come preoccupazioni di equità e casi limite. Zeno lavora insieme ad altri sistemi e combina i metodi di altri. L’analisi basata su sottogruppi o fette, che calcola metriche su sottoinsiemi di un dataset, è il metodo di valutazione comportamentale più simile a Zeno. Zeno consente ora test basati su scorrimento e test metamorfici per qualsiasi dominio o attività.

Zeno è composto da un’interfaccia di programmazione dell’applicazione (API) Python e un’interfaccia utente grafica (GUI) (UI). I risultati del modello, le metriche, i metadati e le istanze alterate sono solo alcune delle componenti fondamentali della valutazione comportamentale che possono essere implementate come funzioni API Python. I risultati dell’API costituiscono un framework per costruire l’interfaccia principale per condurre la valutazione e il test comportamentale. Ci sono due visualizzazioni principali dell’interfaccia di Zeno: l’interfaccia di esplorazione, utilizzata per la scoperta dei dati e la creazione di fette, e l’interfaccia di analisi, utilizzata per la creazione di test, la creazione di rapporti e il monitoraggio delle prestazioni.

Zeno è reso disponibile al pubblico tramite uno script Python. Il frontend integrato, scritto in Svelte, utilizza Vega-Lite per la visualizzazione e Arquero per l’elaborazione dei dati; questa libreria è inclusa nel pacchetto Python. Gli utenti avviano l’elaborazione e l’interfaccia di Zeno dalla riga di comando dopo aver specificato le impostazioni necessarie, tra cui i file di test, i percorsi dei dati e i nomi delle colonne in un file di configurazione TOML. La capacità di Zeno di ospitare l’interfaccia utente come punto di accesso URL significa che può essere distribuito localmente o su un server con altri calcoli e gli utenti possono comunque accedervi dai propri dispositivi. Questo framework è stato provato e testato con dataset contenenti milioni di istanze. Pertanto, dovrebbe adattarsi bene a grandi scenari di distribuzione.

L’ambiente di ML ha numerosi framework e librerie, ognuno dedicato a un dato o modello specifico. Zeno si basa fortemente su un’API di elaborazione dei dati e inferenza del modello basata su Python che può essere personalizzata. I ricercatori hanno sviluppato l’API backend per Zeno come un insieme di metodi decorator Python che possono supportare la maggior parte dei moderni modelli di ML, anche se la maggior parte delle librerie di ML si basano su Python e quindi soffrono della stessa frammentazione.

Studi di caso condotti dal team di ricerca hanno dimostrato come l’API e l’interfaccia utente di Zeno lavorano insieme per aiutare i professionisti a scoprire importanti difetti del modello tra i dataset e i lavori. In senso più ampio, i risultati dello studio suggeriscono che un framework di valutazione comportamentale può essere utile per vari tipi di dati e modelli.

A seconda delle esigenze dell’utente e delle difficoltà del compito in corso, le varie possibilità offerte da Zeno hanno reso la valutazione comportamentale più semplice, più veloce e più accurata. Il partecipante al caso di studio 2 ha utilizzato l’estensibilità dell’API per creare metadati di analisi del modello. I partecipanti allo studio di caso hanno segnalato poche o nessuna difficoltà nell’incorporare Zeno nei loro flussi di lavoro esistenti e nel codificare comunicazioni con l’API di Zeno.

Vincoli e misure preventive

  • Sapere quali comportamenti sono essenziali per gli utenti finali e codificati da un modello è una grande difficoltà per la valutazione comportamentale. I ricercatori stanno sviluppando attivamente ZenoHub, un repository collaborativo in cui gli utenti possono condividere le loro funzioni Zeno e trovare più facilmente componenti di analisi pertinenti per favorire il riutilizzo delle funzioni del modello per facilitare le scoperte.
  • La funzione principale di Zeno è quella di definire e testare metriche su porzioni di dati, ma lo strumento offre solo limitate visualizzazioni a griglia e a tabella per la visualizzazione dei dati e delle porzioni. L’utilità di Zeno potrebbe essere migliorata supportando vari metodi di visualizzazione efficaci. Gli utenti potrebbero essere in grado di scoprire modelli e comportamenti nuovi nei loro dati utilizzando visualizzazioni istantanee che codificano somiglianze semantiche, come DendroMap, Facets o AnchorViz. ML Cube, Neo e ConfusionFlow sono solo alcune delle visualizzazioni delle prestazioni di ML che Zeno può modificare per visualizzare meglio i comportamenti del modello.
  • Anche se la computazione parallela e la memorizzazione nella cache di Zeno gli consentono di scalare a dataset enormi, la dimensione dei dataset di machine learning sta aumentando rapidamente. Pertanto, ulteriori miglioramenti accelererebbero notevolmente l’elaborazione. L’elaborazione in cluster di calcolo distribuito utilizzando una libreria come Ray potrebbe essere un aggiornamento futuro.
  • Il filtraggio incrociato di diversi istogrammi su tabelle molto grandi è un altro ostacolo. Zeno potrebbe utilizzare un metodo di ottimizzazione come Falcon per facilitare il filtraggio incrociato in tempo reale su dataset massicci.

In conclusione –

Anche se un modello di machine learning raggiunge una grande accuratezza sui dati di addestramento, potrebbe comunque soffrire di fallimenti sistemici nel mondo reale, come bias negativi e pericoli per la sicurezza. I professionisti conducono una valutazione comportamentale dei loro modelli, ispezionando le uscite del modello per determinati input al fine di individuare e correggere tali limitazioni. La valutazione comportamentale, importante ma difficile, richiede la scoperta di modelli del mondo reale e la validazione di fallimenti sistemici. La valutazione comportamentale dell’apprendimento automatico è cruciale per identificare e correggere comportamenti problematici del modello, tra cui bias e problemi di sicurezza. In questo studio, gli autori hanno approfondito le difficoltà della valutazione dell’apprendimento automatico e hanno sviluppato un metodo universale per valutare i modelli in vari contesti. Attraverso quattro studi di caso in cui i professionisti hanno valutato modelli del mondo reale, i ricercatori hanno dimostrato come Zeno potrebbe essere applicato in diversi settori.

Molte persone hanno grandi speranze per lo sviluppo dell’intelligenza artificiale. Tuttavia, la complessità delle loro azioni si sta sviluppando allo stesso ritmo delle loro capacità. È essenziale disporre di risorse robuste per consentire lo sviluppo basato sul comportamento e garantire la costruzione di sistemi intelligenti in armonia con i valori umani. Zeno è una piattaforma flessibile che consente agli utenti di effettuare questo tipo di esame approfondito su una vasta gamma di lavori legati all’intelligenza artificiale.