Ricerca

I dati sintetici per addestrare AI più accurate

Alcune ricerche dimostrano che quando sono usati correttamente, i Syntetic Data possono avere performance anche superiori rispetto ai dati reali

Pubblicato il 14 Nov 2022

Gioele Fierro

CEO e Founder Promezio Engineering

dati sintetici

L’accuracy dell’intelligenza artificiale ha un costo: il training è un processo “energivoro” e “dativoro”, ovvero richiede molta energia e una quantità notevole di dati. Gli ingegneri che progettano reti neurali per l’apprendimento automatico hanno necessità di dataset di grandi dimensioni, che siano accuratamente selezionati e ben etichettati. Questa fase di raccolta dati può essere molto dispendiosa e rappresenta spesso una zavorra non di poco conto all’evoluzione dell’intelligenza artificiale. Un’alternativa interessante alla raccolta di milioni (o anche miliardi) di dati può essere la generazione di dati sintetici. Questi dataset sono generati da algoritmi più o meno complessi. Quello che ci chiediamo è però se l’accuracy delle reti neurali addestrate con dati sintetici sia buona almeno tanto quanto quella delle reti addestrate su dati reali.

Per ottenere una buona accuracy i dati devono essere robusti, consistenti e ben strutturati. Un dataset sintetico può contenere dati di varia natura, che siano numerici, testuali o multimediali. Ma in ogni caso questi dati devono essere statisticamente ben diversificati e distribuiti, mantenendo comunque un realismo sufficiente a rendere l’intelligenza artificiale adatta in scenari reali. Inoltre, bisogna massimizzare la “personalizzazione” e la “parametrizzazione” nella fase di generazione, così da permettere agli sviluppatori di adattare quanto più possibile il dataset sintetico alle esigenze specifiche della rete neurale.

Una task force congiunta di ricercatori in ambito AI, provenienti dalle migliori università, ha elaborato un paper molto interessante volto a comprendere l’accuracy di un’intelligenza artificiale addestrata su dati multimediali sintetici. Useremo queste analisi come base di partenza per valutare se il futuro del training passa per i Syntetic Data o se questo non è uno scenario realmente applicabile.

Cosa sono i Syntetic Data

Dati sintetici

Di solito, per raccogliere dati utili ad addestrare un’intelligenza artificiale che svolga efficientemente un compito decisionale, è necessario registrare processi e interazioni tra persone e macchine che andranno a costituire il training set, ovvero la base di dati con cui addestrare iterativamente l’AI. Quando parliamo invece di Syntetic Data, ci riferiamo a training set che sono stati generati ex-novo da un computer, dati simulati che non sono derivati direttamente da dati reali ma che sono stati “costruiti” per lo scopo da un algoritmo.

Esistono tre tipologie fondamentali di dati sintetici:

  • Random Syntetic Data: questi dati sono generati da un algoritmo in maniera pseudo casuale, seguendo una serie di parametri impostati a priori. Ad esempio, se devo generare un dataset sintetico che contiene l’altezza e il peso degli studenti universitari italiani, imposterò parametri che riguardano i valori massimi, i valori minimi e le medie recuperate da dati reali, e il mio algoritmo genererà così un dataset realistico basato su queste informazioni.
  • Rule Based Syntetic Data: se le cose sono più complesse non basta generare dei dati casuali ma è necessario sviluppare un algoritmo, sempre basato su parametri, che sia in grado di articolare in modo più dinamico i dati sintetici. In questo caso si creano dei modelli software che rappresentano la variabilità dei dati reali e si lascia al computer la generazione di dataset anche molto grandi e complessi.
  • AI Based Syntetic Data: in molti scenari un algoritmo, per quanto complesso, non è in grado di generare dati utili. Ad esempio, se necessitiamo di addestrare l’AI con dati multimediali (immagini e video) bisogna lasciare il compito della creazione del dataset a una AI generativa. Nel pratico, se per il training servono milioni di volti umani, non possiamo scrivere un algoritmo che li generi ma possiamo affidare il compito a una rete neurale appositamente addestrata.

Perché serve generare dati sintetici?

Ma perché un tale sforzo per generare dati sintetici? Ci sono tantissimi vantaggi in questo approccio rispetto alla raccolta dati tradizionali, vediamone alcuni.

Costi. I dati reali sono molto costosi da raccogliere e richiedono molto tempo e risorse per essere ottimizzati. I dataset spesso sono imprecisi, distorti e richiedono un processo di etichettatura estremamente dispendioso. I dati sintetici, a parità di qualità riducono il costo a una frazione e quindi consentono agli sviluppatori di creare più modelli, spingendo la ricerca e lo sviluppo.

Tempi. Il training, e questo l’abbiamo già chiarito, richiede enormi quantità di dati. Recuperare dataset reali di tali dimensioni richiede molto tempo, e rendere questi dataset utilizzabili da un’AI può essere un compito ancora più arduo. I dati sintetici sono scalabili, aiutano a sviluppare in fretta dataset robusti e si integrano ai dati reali consentendo un training migliore che garantisce previsioni più accurate.

Quantità. I dataset reali hanno dei limiti fisici alle loro dimensioni. I dati sintetici possono essere generati in grandi quantità senza particolari difficoltà. Questo comporta una maggiore robustezza delle reti neurali decisionali e quindi una maggiore affidabilità delle AI.

Privacy. Raccogliere dati ha molte implicazioni relative alla privacy delle persone che interagiscono con i sistemi monitorati. I dati sintetici non sono normati da regolamenti sulla privacy, non devono sottostare al GDPR e sono compliant-by-design.

Accuracy e dati sintetici

Dati sintetici

Tanti vantaggi e tante potenzialità, ma la domanda resta: quanto sono affidabili questi dati? Come si comportano in situazioni reali le AI addestrate con dati sintetici? A tal proposito è illuminante il lavoro di un team di ricercatori del MIT, del MIT-IBM Watson AI Lab e della Boston University, che per rispondere scientificamente a questi quesiti ha costruito un dataset sintetico costituito da ben 150mila video e l’hanno usato per addestrare modelli di apprendimento automatico. Le AI conseguenti sono state usate su video reali, riprese di persone che compiono azioni simili a quelle del dataset sintetico, per comprendere fino a che punto l’AI aveva imparato a riconoscere determinate azioni.

Secondo il gruppo di ricerca, se l’accuracy fosse sufficiente si avrebbe uno strumento potentissimo in grado di accelerare lo sviluppo di AI sempre più efficaci in scenari sempre più complessi. Inoltre, questo approccio evita problemi di privacy e bias introdotti da interazioni umane durante le fasi di pulizia ed etichettatura dei dati.

I risultati della ricerca sono eccellenti. I modelli addestrati su dati sintetici, messi alla prova nel mondo reale, hanno ottenuto performance superiori a quelli dei modelli addestrati con video reali. Nella comparazione, le AI basate su dati sintetici sono riuscite a separare più efficacemente il soggetto dallo sfondo, e a generalizzare il suo aspetto separandolo accuratamente dall’azione da riconoscere. Uno dei ricercatori afferma: “nei video con bassa distorsione scena-oggetto, la dinamica temporale delle azioni è più importante dell’aspetto degli oggetti o dello sfondo, questo sembra essere ben generalizzato con l’utilizzo di dati sintetici”.

Questo eccellente lavoro di ricerca ha due risvolti immediati pratici: fornisce gli strumenti per creare sistemi di generazione dati sintetici ancora più efficaci e pone le basi per un incremento degli investimenti sui sistemi che li generano. Al momento, infatti, l’utilizzo dei Syntetic Data non è ancora sufficientemente esteso, e in diversi ambiti i ricercatori non dispongono di dataset abbastanza ampi da poter competere con i classici database usati nella ricerca e basati su dati reali. I risultati esposti in questo paper possono rappresentare una spinta motivante verso questa direzione.

Conclusioni

L’AI fa da capofila all’evoluzione tecnologica degli anni che stiamo vivendo. Identificare nuovi strumenti che consentano di migliorarne le performance è uno degli obiettivi primari da raggiungere se si vuole estendere l’applicazione dei sistemi di apprendimento automatico a un numero sempre maggiore di scenari operativi reali.

I dati sintetici hanno il potenziale per fare la differenza, possono offrire ai ricercatori di realtà grandi e piccole uno strumento in più che acceleri lo sviluppo e lo renda più economico. AI che generano dati che servono ad addestrare altre AI più performanti. E per fortuna non parliamo di uno scenario distopico ma di una realtà fattuale che modificherà l’approccio alla vita e al lavoro del genere umano.

Paper di riferimento

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati