Cosa sono i dati sintetici?

I dati sintetici sono informazioni generate artificialmente da algoritmi informatici anziché raccolte da eventi del mondo reale. È come un simulatore di volo per l'intelligenza artificiale (AI). Proprio come un pilota impara a volare in una cabina di pilotaggio simulata senza rischiare un vero aereo, i modelli di AI possono imparare a riconoscere i pattern utilizzando dati simulati senza mettere a rischio la privacy degli utenti.

La differenza fondamentale è che i dati sintetici imitano le proprietà statistiche dei dati reali, come medie, correlazioni e distribuzioni, ma non contengono informazioni identificabili su persone reali. Sembra e si comporta come la realtà, ma nessun essere umano è stato coinvolto nella creazione di una registrazione specifica.

Come vengono generati i dati sintetici?

La generazione di dati sintetici non è solo una questione di copia e incolla. Implica l'utilizzo di modelli di machine learning avanzati per comprendere la "forma" dei dati reali e quindi creare nuovi campioni originali che si adattino a quella forma.

  • Gli ingegneri spesso utilizzano modelli generativi per questo scopo. Tecnologie come le reti contraddittorie generative (GAN), gli autoencoder variazionali (VAE) e i modelli di diffusione analizzano un set di dati reale per apprendere i suoi pattern nascosti. Una volta che il modello apprende questi pattern, può generare un numero infinito di nuovi campioni falsi che sono statisticamente identici al set originale.
  • Un altro metodo comune è la simulazione. È una tecnica molto diffusa in settori come la robotica e la guida autonoma. Gli sviluppatori utilizzano motori fisici, simili a quelli usati nei videogiochi, per creare mondi virtuali. In questi mondi, possono generare dati simulando scenari, come un'auto che guida in una città piovosa o un braccio robotico che raccoglie una scatola, senza mai aver bisogno di una fotocamera o di un sensore fisico.

Tipi di dati sintetici

Non tutti i dati sintetici sono uguali. A seconda delle tue esigenze di privacy rispetto all'accuratezza, potresti scegliere tipi diversi.

Questi dati vengono generati completamente da zero. Non contiene dati utente originali, il che significa che non esiste una mappatura uno a uno tra un record sintetico e una persona reale. Poiché non si riferisce a nessun individuo specifico, offre il massimo livello di protezione della privacy. Tuttavia, richiede una rigorosa convalida per garantire che sia ancora sufficientemente accurato da essere utile per l'addestramento dell'AI.

A volte, è necessario conservare alcuni dati reali per rendere utile il set di dati. I dati parzialmente sintetici prevedono l'utilizzo di un set di dati reale e la sostituzione solo delle parti sensibili, come nomi, numeri di previdenza sociale o indirizzi, con valori sintetici. Il resto dei dati rimane distinto. Questo approccio bilancia la privacy con un'elevata utilità, ma comporta un rischio leggermente maggiore di reidentificazione rispetto ai dati completamente sintetici.

Questo approccio combina record reali e sintetici per creare un "super-set" di dati. Viene spesso utilizzato per arricchire un set di dati reali più piccolo. Ad esempio, se hai molti dati sulle normali transazioni bancarie, ma pochissimi dati sulle frodi, puoi generare record di frodi sintetici da mescolare con quelli reali. Ciò aiuta a "sovra-campionare" gli eventi rari in modo che il modello di AI abbia abbastanza esempi da cui apprendere.

Dati sintetici e dati reali

I dati reali sono lo standard per l'accuratezza, ma possono essere costosi da raccogliere, spesso disordinati o incompleti e fortemente limitati da leggi sulla privacy come il GDPR o l'HIPAA. La raccolta di dati reali può richiedere mesi o anni.

I dati sintetici, d'altra parte, possono essere meno costosi da scalare. Puoi generare milioni di record in poche ore. È perfettamente etichettato (poiché è stato creato dal computer, sa esattamente cosa ha creato) ed è conforme alla privacy fin dalla progettazione. Inoltre, i dati sintetici possono essere bilanciati per rimuovere i bias naturali che si trovano spesso nelle raccolte del mondo reale.

Funzionalità

Dati reali

Dati sintetici

Costo

Più elevato (raccolta ed etichettatura)

Inferiore (solo potenza di calcolo)

Velocità

Più lento (mesi/anni)

Più veloce (ore/giorni)

Privacy

Più limitato (rischi PII)

Più sicuro (senza PII)

Accuratezza

Più alto (riflette la realtà)

Variabile (dipende dalla qualità del modello)

Funzionalità

Dati reali

Dati sintetici

Costo

Più elevato (raccolta ed etichettatura)

Inferiore (solo potenza di calcolo)

Velocità

Più lento (mesi/anni)

Più veloce (ore/giorni)

Privacy

Più limitato (rischi PII)

Più sicuro (senza PII)

Accuratezza

Più alto (riflette la realtà)

Variabile (dipende dalla qualità del modello)

Casi d'uso di settore per i dati sintetici

I veicoli autonomi e la robotica si basano in gran parte sui dati sintetici perché la raccolta di informazioni nel mondo reale è lenta. Anche dopo aver percorso milioni di chilometri su strada, i test fisici non possono tenere conto di ogni singolo scenario di incidente. Generando ambienti di guida virtuali, gli ingegneri possono addestrare le auto su miliardi di chilometri di strade simulate, testandole in situazioni pericolose come un bambino che corre in strada senza alcun rischio fisico.

I dati medici sono estremamente privati e difficili da condividere. I dati sintetici consentono ai ricercatori di creare cartelle cliniche false che imitano i pattern statistici delle malattie reali. Ciò consente agli ospedali di condividere i dati per la ricerca sul cancro o per studi su malattie rare senza violare l'HIPAA. Un sondaggio di ManageEngine ha rilevato che l'81% delle organizzazioni sanitarie ora utilizza dati sintetici per innovare, gestendo al contempo i problemi di privacy.

Il rilevamento delle frodi è difficile perché le frodi effettive sono rare. Il che può rendere difficile per l'AI imparare a riconoscere le frodi. Le banche possono utilizzare dati sintetici per generare migliaia di pattern di transazioni fraudolente. Questo "upsampling" aiuta ad addestrare l'AI a individuare attività sospette senza esporre le storie finanziarie reali dei clienti.

Gli sviluppatori hanno bisogno di enormi quantità di dati per testare le prestazioni di un'applicazione sotto pressione. Questo è noto come "gestione dei dati di test". Invece di utilizzare una copia pericolosa del database di produzione reale, i team DevOps possono popolare un ambiente di gestione temporanea con milioni di utenti sintetici. Ciò consente di testare a fondo i nuovi aggiornamenti delle app in modo sicuro e di garantire che il sistema sia in grado di gestire un traffico elevato.

Vantaggi dei dati sintetici

Privacy e conformità

I dati sintetici riducono notevolmente il rischio di esporre informazioni che consentono l'identificazione personale (PII). Poiché i dati non si riferiscono a persone reali, in genere non rientrano nell'ambito di normative rigorose come il GDPR e il CCPA. Ciò consente ai team globali di condividere più facilmente i set di dati oltre confine, senza dover superare complessi ostacoli legali.

Costo e velocità

L'utilizzo di dati sintetici può accelerare in modo significativo il ciclo di vita "dai dati all'AI". Non devi assumere persone per etichettare manualmente le immagini o aspettare che i dati vengano raccolti sul campo. Questa efficienza può ridurre i costi e accelerare lo sviluppo.

Mitigazione dei bias

I dati del mondo reale spesso riflettono i pregiudizi del mondo reale. Se addestri un'AI su dati storici di assunzione, potrebbe imparare a preferire un gruppo demografico rispetto a un altro. I dati sintetici consentono agli sviluppatori di correggere artificialmente questi squilibri. Puoi generare più dati per i gruppi sottorappresentati, ad esempio assicurandoti che un'AI riconosca tutti i toni della pelle o i generi in modo equo, per creare modelli più equi e solidi.

Test dei casi limite

Alcuni scenari sono troppo pericolosi o rari per essere testati nella vita reale. Non puoi distruggere mille auto vere solo per vedere come funziona il sensore dell'airbag. I dati sintetici ti consentono di creare questi "casi limite" in modo sicuro. Puoi simulare eventi rari, come una bufera di neve a Phoenix o un guasto specifico del motore, per addestrare i sistemi su situazioni che rappresentano meno dello 0,01% dei dati del mondo reale, ma sono fondamentali per la sicurezza.

Generazione di dati tabulari sintetici utilizzando Gemini su Gemini Enterprise Agent Platform

Per gli sviluppatori, il modo più rapido per generare un set di dati sintetico di piccole o medie dimensioni (ad esempio per test unitari o demo semplici) spesso non è quello di addestrare una GAN complessa, ma di sfruttare le capacità generative dei modelli linguistici di grandi dimensioni (LLM). Queste funzionalità ora sono unificate in Gemini Enterprise Agent Platform (in precedenza Vertex AI). Questa piattaforma fornisce un ambiente completo per creare, eseguire il deployment e scalare modelli di machine learning, incluso l'accesso a modelli potenti come Gemini.


In questa procedura dettagliata utilizzeremo l'SDK della piattaforma per agenti (in precedenza SDK Vertex AI) per Python e Gemini per generare da zero un set di dati sintetico di "transazioni dei clienti". Immagina di essere uno sviluppatore che sta creando una dashboard di tecnologia finanziaria. Hai bisogno di 50 righe di "dati sulle transazioni" per testare il frontend.

Hai bisogno di campi specifici:transaction_id, timestamp, amount, merchant_category e is_fraud.

Passaggio 1: configura l'ambiente

Innanzitutto, assicurati di aver installato l'SDK Agent Platform nel tuo ambiente Python. Sebbene la piattaforma sia stata rinominata, il pacchetto Python rimane google-cloud-aiplatform.

  • Bash
Caricamento in corso...

Passaggio 2: inizializza l'SDK Agent Platform

Importa la libreria e inizializzala con i dettagli del tuo progetto. Questa configurazione è standard per l'utilizzo dei modelli Gemini tramite l'SDK Agent Platform all'interno di Gemini Enterprise Agent Platform.

  • Python
Caricamento in corso...

Passaggio 3: crea un prompt strutturato

La qualità dei dati sintetici di un LLM dipende in gran parte dal prompt. Devi essere specifico riguardo allo schema, ai vincoli (ad esempio, nessun numero negativo) e al formato di output (CSV o JSON). Istruzioni chiare e specifiche sono fondamentali per un'efficace progettazione dei prompt con i modelli Gemini su Gemini Enterprise Agent Platform.

  • Python
Caricamento in corso...

Genera e analizza i dati

Invia il prompt al modello e carica la risposta direttamente in un DataFrame Pandas. Il metodo generate_content fa parte dell'SDK Agent Platform.

  • Python
Caricamento in corso...

L'utilizzo di un LLM generico come Gemini per i dati tabulari sintetici è spesso più veloce dell'addestramento di un modello statistico personalizzato (come un VAE) quando sono necessari solo dati "plausibili" per testare la funzionalità del software.

  • Velocità: i dati sono disponibili in pochi secondi
  • Flessibilità:puoi modificare lo schema semplicemente modificando il prompt di testo
  • Logica: puoi chiedere al modello di incorporare una logica complessa (ad esempio, "Se il commerciante è 'Viaggi', l'importo deve essere superiore a 100 $"), cosa difficile da fare con semplici randomizzatori

*Nota per la scalabilità aziendale: se devi generare milioni di righe che clonano statisticamente un enorme set di dati privati esistente, probabilmente passerai dal semplice prompting LLM all'utilizzo di Gemini Enterprise Agent Platform Pipelines (in precedenza Vertex AI Pipelines) integrato con partner specializzati come Gretel.ai o MOSTLY AI, disponibili direttamente in Google Cloud Marketplace. Questi flussi di lavoro avanzati possono essere orchestrati e gestiti all'interno della più ampia Gemini Enterprise Agent Platform.

Risolvi le tue sfide aziendali con Google Cloud

I nuovi clienti ricevono 300 $ di crediti senza costi da spendere su Google Cloud.

Fai il prossimo passo

Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.

Google Cloud