I dati sintetici sono informazioni generate artificialmente che possono essere utilizzate al posto dei dati storici reali per addestrare modelli di IA quando i set di dati effettivi sono carenti in termini di qualità, volume o varietà. I dati sintetici possono essere uno strumento utile quando i dati disponibili non soddisfano le esigenze aziendali o potrebbero creare problemi di privacy se utilizzati per addestrare modelli di machine learning, testare software o altre iniziative di intelligenza artificiale.

Secondo Svetlana Sicular, analista di Gartner, entro il 2024 il 60% dei dati utilizzati per lo sviluppo di soluzioni di intelligenza artificiale e analytics sarà generato sinteticamente, rispetto all’1% nel 2021.

Casi d’uso dei dati sintetici

I dati artificiali hanno molti usi nelle strategie di IA aziendale. Come sostituti dei dati reali, i dati sintetici possono essere utili nei seguenti scenari.

Per i modelli di addestramento quando mancano i dati del mondo reale: i sistemi di intelligenza artificiale e ML richiedono enormi quantità di dati. Per alcuni casi d’uso non sono disponibili dati in quantità sufficiente, perché il caso d’uso si verifica molto raramente o perché è nuovo e non sono ancora disponibili molti dati storici. I dati sintetici possono anche ridurre i costi quando l’acquisto di dati del mondo reale ha un costo proibitivo.

Per colmare le lacune nei dati di addestramento: alcuni set di dati non riflettono completamente i casi d’uso di un’azienda. Per esempio, un sistema addestrato a riconoscere i numeri di telefono potrebbe non avere sufficienti numeri internazionali con cui lavorare.

Un altro problema comune è bilanciare un set di dati. Per esempio, “un set di dati storici potrebbe essere composto per il 99% da transazioni non fraudolente e per meno dell’1% da quelle fraudolente”, spiega John Blankenbaker, data scientist presso SSA & Co., una società di consulenza gestionale globale. “Molti modelli decideranno che la politica di maggior successo sarà etichettare ogni transazione come non fraudolenta“.

I dati sintetici possono aiutare a bilanciare il set di dati, ma devono essere gestiti con molta attenzione. “Saranno utili solo se il processo di sintesi cattura qualsiasi cosa riguardo una transazione che indica la presenza di una frode“, afferma Blankenbaker. “E questo non è per niente ovvio, perché in tal caso lo useremmo come nostro rilevatore di frodi“.

Casi d’uso “a coda lunga”: man mano che l’IA diventa onnipresente nelle organizzazioni, le aziende stanno esaurendo i casi d’uso in cui i dati di formazione richiesti sono abbondanti e facilmente disponibili. Una volta che questi progetti avranno successo, i leader aziendali vorranno utilizzare gli stessi approcci per i propri casi d’uso.

Per accelerare lo sviluppo del modello: la raccolta dei dati di addestramento del mondo reale può richiedere tempo, poiché le informazioni vengono raccolte, etichettate, elaborate e sottoposte a controlli di conformità. Ciò può rallentare lo sviluppo di nuovi modelli di intelligenza artificiale. Con i dati sintetici, i modelli possono essere addestrati e calibrati prima che i dati del mondo reale diventino disponibili.

Per simulare scenari futuri: quando i trend cambiano, i dati storici potrebbero diventare obsoleti dall’oggi al domani. Per esempio, quando le persone sono passate dalle cuffie cablate a quelle wireless, tutti i dati storici dei clienti hanno perso il loro valore predittivo. I motori di suggerimenti che si basano sui vecchi dati di addestramento potrebbero ancora consigliare opzioni cablate. La sostituzione o l’aumento dei dati storici con dati sintetici che tengono conto del cambiamento di tendenza può aiutare a mantenere i motori di raccomandazione pertinenti.

Per simulare scenari alternativi: se è in arrivo un cambiamento e non è chiaro quale direzione prenderanno i clienti, i dati sintetici possono aiutare le aziende a eseguire simulazioni di scenari ed essere preparate per diverse opzioni.

Per simulare gli eventi “cigno nero”: alcune situazioni si verificano molto raramente e potrebbero non essere presenti nei dati storici, ma se il loro impatto su un’organizzazione fosse drammatico, allora è necessario essere preparati. L’utilizzo di dati sintetici per simulare tali situazioni può aiutare un’azienda a modellare le risposte.

Per simulare il metaverso: il metaverso, simulazioni virtuali in 3D di ambienti di gioco, sociali e aziendali, richiederà un’enorme quantità di contenuti. Sarà necessario creare stanze, edifici, paesaggi e così via e assumere designer 3D per creare tutto questo contenuto da zero avrà un costo proibitivo. I dati sintetici possono colmare alcune lacune per creare impostazioni e oggetti realistici e appropriati per ambienti, eventi e interazioni virtuali.

Per generare immagini di marketing: gli inserzionisti stanno già creando immagini sintetiche per mostrare i loro prodotti. Per esempio, la fotografia di una modella che indossa un maglione in un colore può essere trasformata in foto realistiche della stessa modella che indossa tutte le diverse versioni dello stesso maglione. Sono inoltre disponibili strumenti di generazione di immagini che possono persino generare volti realistici, ma unici o mostrare complementi di arredamento in diverse disposizioni.

Per il test del software: l’utilizzo di dati reali per testare il nuovo software può creare problemi di privacy e sicurezza. In questo caso è possibile usare dati sintetici, che simulano i dati reali senza metterli a rischio. “Se vogliamo vedere come la nostra infrastruttura gestisce un gran numero di account utente, è facile scrivere un programma che si collega al nostro sito web e registra utenti sintetici“, spiega Blankenbaker di SSA.

Per creare gemelli digitali: nei casi giudiziari, gli avvocati a volte creano una giuria ombra per testare le argomentazioni. Le organizzazioni possono fare qualcosa di simile utilizzando dati sintetici. Per esempio, nel 2019, l’amministrazione norvegese del lavoro e del welfare ha creato una versione sintetica dell’intera popolazione. “I dati vengono rigenerati quotidianamente”, afferma Sicular di Gartner, “e vengono utilizzati da numerose organizzazioni esterne”.

Al posto di dati medici e finanziari: l’utilizzo di dati reali di clienti o pazienti per addestrare modelli di intelligenza artificiale, eseguire simulazioni o trovare trattamenti o correlazioni utili può essere molto rischioso dal punto di vista della conformità. “Anche i dati cancellati o resi anonimi possono spesso essere decodificati per recuperare i dati originali”, sottolinea Andy Thurai, vicepresidente e analista di Constellation Research. I dati sintetici non possono essere resi anonimi, ma possono comunque essere utilizzati per trovare informazioni preziose.

Per le vendite e il marketing: quando un team di vendita chiede a un cliente di dimostrare un prodotto o servizio che acquisisce dati, può essere utile utilizzare campioni il più vicino possibile al caso d’uso del cliente. L’utilizzo dei dati di un altro cliente costituirebbe una violazione della privacy. I dati sintetici possono consentire al team di vendita di mettere alla prova il prodotto in un caso d’uso simile a quello del cliente, senza divulgare informazioni sensibili.

Una startup che sta cercando di creare un’applicazione sanitaria può costruire il proprio intero framework utilizzando dati sintetici PHI (Protected Health Information) per creare un framework end-to-end per potenziali demo per i clienti invece di doversi chiedere e aspettare per fare il giusto connessioni per utilizzare i dati PHI effettivi“, afferma Priya Iragavarapu, vicepresidente del centro di eccellenza dei dati presso AArete, una società di consulenza gestionale globale.

Per testare i sistemi di intelligenza artificiale sui pregiudizi: quando i sistemi di intelligenza artificiale discriminano in base a razza, religione o altri fattori, possono creare una responsabilità di conformità o un disastro nelle pubbliche relazioni, o entrambi. Con i sistemi di intelligenza artificiale “scatola nera” e le nuove tecnologie di intelligenza artificiale come le reti neurali, può essere difficile capire perché un’intelligenza artificiale raccomanda di farlo. Testare i sistemi di intelligenza artificiale rispetto a set di dati sintetici progettati per imitare i dati demografici del mondo reale può aiutare a scoprire questi pregiudizi nascosti.

Generazione di dati sintetici

In alcuni casi la generazione di dati sintetici può essere molto semplice. Un elenco di nomi, per esempio, può essere generato combinando un nome scelto casualmente da un elenco di nomi e un cognome da un elenco di cognomi. I codici postali possono essere prelevati casualmente da un elenco di codici postali. Potrebbe essere sufficiente per alcune applicazioni. Per altri scopi, tuttavia, potrebbe essere necessario bilanciare l’elenco in modo che, per esempio, i dati di spesa sintetici siano correlati ai normali modelli di spesa in quei codici postali.

La maggior parte dei set di dati viene ancora prodotta manualmente con SQL per l’estrazione e l’anonimizzazione dei dati e viene quindi ripulita utilizzando linguaggi di programmazione standard”, afferma Steven Karan, vicepresidente e responsabile di Insights and Data di Capgemini Canada. “Sul mercato non è ancora arrivata una soluzione commerciale pronta all’uso. Sebbene ci siano poche startup che forniscono soluzioni di dati sintetici, nessuna di loro ha raggiunto un livello diffuso di adozione“.

La maggior parte dei data scientist sfrutta i pacchetti predefiniti per generare set di dati sintetici. La generazione di set di dati sintetici che siano statisticamente significativi e riflettano dati reali in modi rilevanti per i casi d’uso può essere una sfida. Più recentemente, sono stati utilizzati algoritmi di intelligenza artificiale e apprendimento automatico per creare dati sintetici più utili e rappresentativi. Per esempio, “i data scientist hanno appena iniziato a utilizzare le reti generative contraddittorie (GAN)”, afferma Iragavarapu di AArete. “È un tipo di lavoro neurale che ha fatto un enorme passo avanti nel trasformare in realtà la generazione di dati sintetici“.

All’interno di una GAN un primo sistema genera dati – per esempio l’immagine di un gatto – e un secondo sistema cerca di stabilire se l’immagine è reale o falsa. Mettendo i due sistemi in competizione l’uno contro l’altro, le immagini generate diventano rapidamente indistinguibili da quelle reali.

Strumenti disponibili per creare dati sintetici

Attualmente sono disponibili numerosi strumenti per le aziende interessate a generare i propri dati sintetici, la maggior parte dei quali sono open source. Di seguito sono riportati alcuni degli strumenti più diffusi per la creazione di dati sintetici:

  • GPT-J: alternativa open source allo strumento di generazione del testo GPT-3 di OpenAI
  • Synthea: strumento open source utilizzato in campo medico
  • scikit-learn: utilizzato per generare set di dati sintetici da utilizzare in regressione, clustering e classificazione con l’obiettivo di produrre set di dati in grado di consentire previsioni, come spiega Karan di Capgemini
  • symPy: utilizzato dai data scientist che necessitano di set di dati sintetici più personalizzati per esigenze specifiche, poiché consente la creazione e lo sviluppo di espressioni simboliche personalizzate
  • pydbgen: utilizzato per generare set di dati comuni, come numeri di telefono o indirizzi e-mail
  • synthpop: un pacchetto R utilizzato per generare dati demografici
  • faker: un pacchetto Python in grado di generare dati come nomi, indirizzi, e-mail, numeri di previdenza sociale
  • SDV: uno strumento Python per la generazione di tabelle, database relazionali e modelli di serie temporali

Tra le diverse aziende attive nella creazione dei dati sintetici da utilizzare nei modelli, ci sono BiText, Datagen, Diveplane, Gretel, Hazy, Mirry AI, Mostly AI, OpenAI, Synthesized, Tonic, Ydata.

Strategie ed errori da non fare per sperimentare con i dati sintetici

Le aziende che vogliono sperimentare con i dati sintetici dovrebbero iniziare con esempi ben strutturati”, suggerisce Sicular di Gartner. Questi casi d’uso possono essere i più facili da implementare e offrire il più alto valore iniziale. Per esempio, un database di nomi e numeri di previdenza sociale può essere facilmente sostituito da un equivalente sintetico che offre vantaggi aziendali senza creare problemi di conformità.

Thurai di Constellation sconsiglia l’utilizzo di dati sintetici sia per la creazione del modello che per il test. “Questo può portare a falsi positivi“, spiega. “Ed è meglio non utilizzare solo dati sintetici: è necessaria anche una buona quantità di dati del mondo reale da combinare con quelli sintetici“.

Un altro errore sarebbe usare dati sintetici per capire se le cose sono causalmente correlate o per generare valori anomali sintetici, a meno che non ci sia una logica specifica con cui sono generati”, dice Iragavarapu di AArete. “Dobbiamo sempre citare esplicitamente dove utilizziamo i dati sintetici rispetto ai dati effettivi per rimanere trasparenti con i nostri utenti e clienti“.