Spiegazione dei modelli di intelligenza artificiale generativa

Pubblicato: 2024-04-15

Quando pensi ai modelli di intelligenza artificiale generativa, probabilmente pensi ai modelli linguistici di grandi dimensioni (LLM) che hanno avuto un tale successo negli ultimi anni. Tuttavia, l’intelligenza artificiale generativa risale a molti decenni fa e gli LLM sono solo l’ultima evoluzione. Oltre agli LLM, vengono utilizzati molti tipi diversi di modelli di intelligenza artificiale generativa per diversi strumenti e casi d’uso di intelligenza artificiale generativa, come i modelli di diffusione utilizzati per la generazione di immagini.

In questo articolo spiegheremo cosa sono i modelli di IA generativa, come vengono sviluppati e forniremo un approfondimento su alcuni dei modelli di IA generativa più comuni oggi, abbastanza per darti una comprensione concettuale di questi modelli che impressionerà i tuoi lettori. amici e colleghi, senza che tu debba seguire un corso universitario di machine learning.

Sommario

  • Cos’è un modello di IA generativa?
  • Come funzionano i modelli di intelligenza artificiale generativa
  • Come vengono sviluppati i modelli di IA generativa?
  • Tipi di modelli di IA generativa
  • Conclusione

Cos’è un modello di IA generativa?

I modelli di intelligenza artificiale generativa sono un sottoinsieme di sistemi di intelligenza artificiale specializzati nella creazione di contenuti nuovi e originali che rispecchiano le caratteristiche dei dati di addestramento. Attraverso l'apprendimento da modelli e relazioni nei dati, questi modelli possono generare output come testo, immagini, suoni o video che ricordano lo stile, il tono e le sfumature del materiale originale. Questa capacità posiziona l’intelligenza artificiale generativa al centro dell’innovazione, consentendo applicazioni creative e dinamiche in diversi campi interpretando e trasformando i dati di input in nuove creazioni.

Lavora in modo più intelligente con Grammarly
Il partner di scrittura basato sull'intelligenza artificiale per chiunque abbia del lavoro da svolgere

Come funzionano i modelli di intelligenza artificiale generativa

I modelli di intelligenza artificiale generativa funzionano sfruttando una forma sofisticata di algoritmo di apprendimento automatico noto come rete neurale. Una rete neurale comprende più strati di nodi interconnessi, ciascuno rappresentato da un frammento di codice informatico. Questi nodi svolgono compiti minori e individuali ma contribuiscono collettivamente a prendere decisioni complesse, rispecchiando la funzionalità dei neuroni nel cervello umano.

Per illustrare, consideriamo una rete neurale incaricata di distinguere tra immagini di torte e torte. La rete analizza l'immagine a livello granulare, suddividendola in pixel. A un livello molto elementare, ci saranno diversi nodi nella rete dedicati alla comprensione dei diversi pixel e gruppi di pixel. Forse alcuni guarderanno se ci sono strati nel dessert, mentre altri determineranno se c'è glassa o crosta. Ciascun nodo memorizza informazioni sulle caratteristiche di come appare la torta rispetto alla torta e ogni volta che entra in gioco una nuova immagine, viene elaborata attraverso ogni singolo nodo per produrre una previsione finale.

Nel contesto dell’intelligenza artificiale generativa, questo principio si estende oltre il semplice riconoscimento e si estende alla creazione di contenuti nuovi e originali. Invece di limitarsi a identificare le caratteristiche, i modelli generativi utilizzano le reti neurali per comprendere i modelli e le strutture sottostanti dei dati su cui sono addestrati. Questo processo comporta interazioni e aggiustamenti complessi all'interno della rete neurale, guidati da algoritmi progettati per ottimizzare la creatività e l'accuratezza dell'output generato.

Come vengono sviluppati i modelli di IA generativa?

Lo sviluppo di modelli di IA generativa prevede una serie di passaggi complessi e interconnessi, tipicamente eseguiti da team di ricercatori e ingegneri. Questi modelli, come GPT (generative pre-trained Transformer), di OpenAI e altre architetture simili, sono progettati per generare nuovi contenuti che imitano la distribuzione dei dati su cui sono stati addestrati.

Ecco una ripartizione passo passo di questo processo:

1 Raccolta dati

I data scientist e gli ingegneri determinano innanzitutto gli obiettivi e i requisiti del loro progetto, che li guidano nella raccolta di un set di dati ampio e appropriato. Spesso utilizzano set di dati pubblici, che offrono grandi quantità di testo o immagini per le loro esigenze. Ad esempio, l'addestramento di ChatGPT (GPT-3.5) ha comportato l'elaborazione di 570 GB di dati, equivalenti a 300 miliardi di parole provenienti da fonti Internet pubbliche, inclusi quasi tutti i contenuti di Wikipedia.

2 Selezione del modello

La scelta della giusta architettura del modello è un passaggio fondamentale nello sviluppo di sistemi di intelligenza artificiale generativa. La decisione è guidata dalla natura del compito da svolgere, dal tipo di dati disponibili, dalla qualità desiderata dell'output e dai vincoli computazionali. Architetture specifiche, tra cui VAE, GAN e modelli basati su trasformatori e di diffusione, verranno discusse in maggior dettaglio più avanti in questo articolo. In questa fase, è importante capire che i nuovi modelli spesso partono da una struttura architettonica preesistente. Questo approccio sfrutta strutture collaudate come base, consentendo perfezionamenti e innovazioni su misura per i requisiti unici del progetto in questione.

3 Formazione modello

Il modello scelto viene addestrato utilizzando il set di dati raccolto dal primo passaggio. L'addestramento di modelli di intelligenza artificiale generativa spesso richiede una grande quantità di potenza di calcolo, utilizzando hardware speciale come GPU (unità di elaborazione grafica) e TPU (unità di elaborazione tensore). Anche se l'approccio alla formazione varia in base all'architettura del modello, tutti i modelli passano attraverso un processo chiamato ottimizzazione degli iperparametri. È qui che i data scientist regolano determinate impostazioni di prestazione per ottenere i migliori risultati.

4 Valutazione e messa a punto

Infine, le prestazioni del modello vengono valutate o testate nel mondo reale. La valutazione dei modelli di intelligenza artificiale generativa è leggermente diversa dalla valutazione dei modelli tradizionali di machine learning perché l’intelligenza artificiale generativa crea un output completamente nuovo e la qualità di questo output tende ad essere soggettiva. Le metriche differiscono in base a ciò che il modello sta creando e le tecniche di valutazione per l’intelligenza artificiale generativa in genere includono l’uso di valutatori umani e possono impiegare la strategia di far valutare reciprocamente i modelli di intelligenza artificiale generativa. Gli insegnamenti tratti dalla fase di valutazione vengono in genere applicati nuovamente per mettere a punto il modello o addirittura riqualificarlo. Dopo che le prestazioni del modello sono state convalidate, è pronto per la produzione.

Tipi di modelli di IA generativa

Basandoci sulla nostra conoscenza di base dei modelli di intelligenza artificiale generativa e delle reti neurali che li alimentano, siamo ora pronti ad approfondire tipi specifici di architetture di modelli emersi dall'inizio degli anni 2010. Esploreremo i punti di forza e di debolezza specifici di ciascun modello, nonché le loro applicazioni pratiche.

Ecco una breve panoramica dei modelli di cui parleremo:

  • Gli autoencoder variazionali (VAE) sono esperti nell'apprendimento di distribuzioni complesse di dati e vengono spesso utilizzati per attività come la generazione e la modifica di immagini.
  • Le reti avversarie generative (GAN) sono note per la loro capacità di creare immagini altamente realistiche e sono diventate popolari in una varietà di applicazioni creative.
  • I modelli di diffusione sono una classe più recente di modelli che generano campioni di alta qualità attraverso un processo di aggiunta e quindi rimozione graduale del rumore.
  • I modelli linguistici eccellono nella comprensione e nella generazione del linguaggio umano, rendendoli utili per applicazioni come chatbot e completamento del testo.
  • I modelli basati su trasformatore sono stati inizialmente progettati per attività di elaborazione del linguaggio naturale (NLP), ma sono stati adattati per l'uso in modelli generativi grazie alla loro potente capacità di gestire dati sequenziali.

Esaminiamo più a fondo ciascuna di queste architetture per capire come funzionano e dove possono essere applicate al meglio.

Codificatori automatici variazionali (VAE)

Gli autocodificatori variazionali sono stati inventati da Max Welling e Diederik P. Kingma nel 2013. Si basano sul fatto che una rete neurale può codificare i concetti di alto livello che il modello apprende durante la fase di addestramento. Questa operazione viene talvolta definita “compressione” o “proiezione” dei dati grezzi.

Se un modello guarda l'immagine di una torta, ad esempio, potrebbe trasformarla in una codifica contenente tutte le caratteristiche dell'immagine: granelli, colore della glassa, strati spugnosi, ecc. Questa codifica assomiglia a un insieme di numeri che ha senso il modello ma non per gli esseri umani. Può essere decodificato da un'altra rete neurale per tentare di ricreare l'immagine originale, anche se presenterà alcune lacune perché la codifica è una compressione. Questo tipo di modello, con i componenti del codificatore e del decodificatore che lavorano insieme, è chiamato codificatore automatico.

Gli autoencoder variazionali danno una svolta all'idea dell'autoencoder per generare nuovi output. Quando genera le sue codifiche, un VAE utilizza probabilità invece di numeri discreti. Dopotutto, la panna montata conta come glassa? A Volte si; a volte no.

Si scopre che se si addestra una rete neurale a creare queste codifiche probabilistiche e si addestra un'altra rete neurale a decodificarle, è possibile ottenere risultati piuttosto interessanti. Il decodificatore può campionare punti nello “spazio” di codifica variazionale e creare output completamente nuovi che appariranno comunque realistici perché hanno preservato le relazioni probabilistiche dei dati di addestramento.

Vantaggi e svantaggi

Gli autocodificatori variazionali utilizzano l’apprendimento non supervisionato, il che significa che il modello apprende da solo dai dati grezzi senza richiedere agli esseri umani di etichettare caratteristiche o risultati diversi. Tali modelli sono particolarmente efficaci nel creare contenuti che si discostano leggermente dall’originale. A causa del modo in cui funzionano con le codifiche, possono anche ricevere istruzioni specifiche in base alle caratteristiche dei dati di addestramento: "Mostrami un dessert che rappresenti il ​​punto medio perfetto tra torta e torta". Detto questo, i VAE ottimizzano per risultati probabili, quindi è improbabile che eccellano nella creazione di contenuti molto originali o innovativi.

Una lamentela comune sui VAE è che possono produrre immagini rumorose (cioè sfocate) a causa del fatto che la codifica e la decodifica comportano la compressione, che introduce una perdita di informazioni.

Casi d'uso

I codificatori automatici variazionali funzionano con tutti i tipi di dati, sebbene vengano utilizzati principalmente per generare immagini, audio e testo. Un'applicazione interessante è il rilevamento delle anomalie: in un set di dati, i VAE possono trovare i punti dati che si discostano maggiormente dalla norma, perché quei punti avranno l'errore di ricostruzione più alto, il che significa che saranno i più lontani dalle probabilità che il VAE ha codificato.

Reti avversarie generative (GAN)

Le reti generative avversarie sono state sviluppate da Ian Goodfellow nel 2014. Sebbene le reti neurali fossero state in grado di generare immagini prima di allora, i risultati tendevano ad essere sfocati e poco convincenti. La domanda (e l’intuizione) centrale dietro i GAN è questa: cosa succede se metti due reti neurali l’una contro l’altra? A uno, chiamato generatore, viene insegnato a generare nuovi contenuti, mentre a un altro, chiamato discriminatore, viene insegnato a conoscere la differenza tra contenuti reali e falsi.

Il generatore crea immagini candidate e le mostra al discriminatore. Sulla base del feedback, il generatore aggiorna di conseguenza le sue previsioni, migliorando sempre di più nel “ingannare” il discriminatore. Una volta che riesce a ingannare il discriminatore il 50% delle volte (come il lancio di una moneta tra reale e falso), il ciclo di addestramento del feedback si interrompe. La parte generatrice del GAN ​​è quindi pronta per la valutazione e la produzione.

Dal 2014 sono state sviluppate centinaia di varianti di GAN per diversi casi d'uso e per bilanciare i vantaggi e gli svantaggi intrinseci dei GAN.

Vantaggi e svantaggi

Le reti avversarie generative, insieme ai VAE, inizialmente hanno suscitato molto entusiasmo attorno al potenziale dell’intelligenza artificiale generativa. Usano l’apprendimento non supervisionato, quindi il modello migliora da solo senza che i ricercatori debbano dirgli se i suoi risultati sono buoni o cattivi. Anche le reti avversarie generative riescono ad apprendere molto rapidamente; rispetto ad altre soluzioni esistenti al momento del loro rilascio, potevano ottenere buoni risultati con molti meno dati di addestramento: centinaia di immagini rispetto a migliaia.

Tuttavia, i GAN generalmente faticano a creare contenuti che non assomiglino ai dati di addestramento: sono imitatori, non creatori. E a volte possono “adattare eccessivamente” i loro dati di addestramento, come quando i GAN hanno creato immagini di foto di gatti contenenti lettere perché venivano mostrati molti meme di gatti.

Formare un GAN è una sfida. Durante l'allenamento è necessario destreggiarsi tra due reti. Possono sorgere problemi anche quando il discriminatore è troppo bravo, portando a cicli di formazione che non finiscono mai, o se il discriminatore non è abbastanza bravo, il che porta a scarsi risultati. Possono anche soffrire del cosiddetto collasso della modalità, in cui non riescono a produrre risultati diversi perché il generatore impara alcuni modi per ingannare il discriminatore e si concentra su quelle strategie escludendo gli altri.

Casi d'uso

Le reti avversarie generative vengono utilizzate principalmente per generare contenuti molto simili all'originale. Ad esempio, possono produrre volti umani convincenti o foto realistiche di interni o paesaggi da utilizzare nella fotografia stock o nei videogiochi. Possono anche creare immagini che sono state alterate in qualche modo, ad esempio cambiando un'immagine da colore a bianco e nero o invecchiando un volto in un'immagine. Detto questo, non tutti i GAN producono immagini. Ad esempio, alcuni GAN sono stati utilizzati per produrre output di sintesi vocale.

Modelli di diffusione

Anche i modelli di diffusione sono nati a metà degli anni 2010, offrendo alcune innovazioni che hanno prodotto prestazioni migliori entro l’inizio degli anni 2020. Alimentano strumenti di generazione di immagini come DALL-E, Stable Diffusion e Midjourney.

I modelli di diffusione funzionano introducendo il rumore gaussiano in un’immagine, distorcendola in una serie di passaggi e quindi addestrando un modello a invertire questi passaggi e trasformare l’immagine “rumorosa” in un’immagine chiara. ("Rumore gaussiano" significa semplicemente che il rumore viene aggiunto casualmente utilizzando una curva di probabilità a campana.)

Puoi pensare all'immagine rumorosa come a una codifica VAE, e in effetti VAE e modelli di diffusione sono correlati. Le immagini dei dati di addestramento, ad esempio, della torta al lime, finiranno con versioni rumorose abbastanza simili. Ma anche la stessa immagine rumorosa non verrà “denoizzata” ogni volta sulla stessa cosa, perché il modello fa ipotesi plausibili lungo il percorso.

Potresti aver già capito dove entra in gioco la parte generativa. Se fornisci al modello una rappresentazione dell'immagine nello spazio rumoroso, sarà in grado di eliminare il rumore dall'immagine e ottenere un'immagine completamente nuova e chiara. È un po' come il modo in cui il decodificatore campiona dalla codifica. Ma c'è una differenza importante: non c'è stata alcuna compressione lungo il percorso. Quindi non c'è stata alcuna reale perdita di dati e l'immagine risultante sarà di qualità superiore.

Gli strumenti di intelligenza artificiale generativa che passano da un messaggio di testo a un'immagine lo fanno con l'aiuto di un modello separato che comprende come qualcosa come una "torta di compleanno a tema unicorno" potrebbe mapparsi a diverse caratteristiche dell'immagine. La versione rumorosa di queste caratteristiche viene quindi invertita per rivelare un'immagine chiara.

Vantaggi e svantaggi

I modelli di diffusione non comprimono i dati di addestramento, quindi riescono a creare immagini molto realistiche e di alta qualità. Tuttavia, la formazione richiede molte più risorse e tempo rispetto ad altri modelli. Detto questo, la formazione stessa è più semplice perché non incorre nel collasso della modalità dei GAN e in altri inconvenienti della rete avversaria. Inoltre, non soffrono della perdita di dati (e dei conseguenti output di qualità inferiore) dei VAE.

Casi d'uso

I modelli di diffusione vengono utilizzati principalmente per la generazione di immagini, suoni e video. Non esiste alcuna ragione intrinseca per cui non possano essere utilizzati anche per generare testo, ma finora i modelli basati su trasformatori si sono rivelati più efficaci per il linguaggio naturale.

Modelli linguistici

I modelli linguistici si riferiscono a qualsiasi tecnica di apprendimento automatico che genera un modello probabilistico del linguaggio naturale. Il tipo più noto di modello linguistico oggi sono i modelli linguistici di grandi dimensioni (LLM), che vengono addestrati su enormi quantità di dati grezzi e utilizzano un'architettura basata su trasformatore per generare testo. (Maggiori informazioni sui trasformatori nella sezione successiva.)

Prima dei modelli basati sui trasformatori, la maggior parte dei modelli linguistici più avanzati utilizzavano reti neurali ricorrenti (RNN). Le reti neurali ricorrenti introducono piccoli anelli nelle interconnessioni tra i nodi in modo che oltre ad apprendere dai segnali presenti, come in una tradizionale rete neurale feedforward, i nodi possano anche apprendere dal recente passato. Ciò è importante per l'elaborazione o la generazione di un linguaggio naturale, come un flusso di testo o un input vocale. A differenza delle immagini, il linguaggio è altamente contestuale: il modo in cui lo interpretiamo dipende da ciò che è accaduto prima.

Vantaggi e svantaggi

Poiché “modelli linguistici” si riferisce a un gruppo così ampio di modelli, è difficile generalizzare i loro vantaggi e svantaggi. Le sfide della modellazione linguistica includono il fatto che la lingua è altamente dimensionale: in ogni lingua è presente un vasto numero di parole diverse e alcune combinazioni potrebbero non apparire mai nei dati di addestramento.

Inoltre, il linguaggio dipende fortemente dal contesto di ciò che è accaduto prima nella sequenza, richiedendo alla rete di gestire o rappresentare quel contesto in qualche modo. La capacità di rispondere a questa esigenza ha portato le RNN con memorie a lungo e breve termine e successivamente trasformatori, in grado di elaborare un'intera frase nel suo insieme, ad emergere come l'architettura all'avanguardia per i modelli linguistici.

Casi d'uso

I modelli linguistici possono essere utilizzati per la traduzione, il riepilogo, la correzione degli errori grammaticali, il riconoscimento vocale e molte altre attività. Vengono utilizzati per generare nuovi contenuti testuali creativi con molte applicazioni e si stanno dimostrando capaci di ragionamenti avanzati, come l'analisi di dati e la risoluzione di enigmi logici. È interessante notare che la ricerca ha scoperto che una capacità emergente degli LLM è la consapevolezza spaziale e la capacità di creare disegni di base, anche se sono formati interamente sul testo.

Modelli basati su trasformatore

Transformers, inventato dai ricercatori di Google e dell'Università di Toronto nel 2017, ha rivoluzionato il campo del deep learning. I modelli linguistici di grandi dimensioni come ChatGPT sono modelli basati su trasformatori e anche i risultati di ricerca di Google sono alimentati da trasformatori.

Un modello basato su trasformatore utilizza i dati di addestramento per apprendere come sono correlate le diverse parole. Ad esempio, potrebbe apprendere chetortaecrostatasono concettualmente simili, mentretortaemantellonon sono direttamente correlati. Potrebbe anche apprendere chefettapuò essere collegata atortaetorta, soprattutto se queste parole si trovano nelle immediate vicinanze.

Quando si analizza il testo, il modello utilizza questa comprensione di base per costruire quello che assomiglia a un enorme foglio di calcolo. Può cercare due parole qualsiasi nel testo e ottenere una risposta su quanto probabilmente sono correlate.

Sfruttando questi segnali contestuali, un modello di trasformazione interpreta abilmente il linguaggio e prevede potenziali continuità in una conversazione. Ad esempio, se qualcuno menziona una torta in un segmento e poi passa a parlare del suo compleanno in quello successivo, il modello anticipa l'eventuale menzione di candeline o di una festa, in base alle connessioni linguistiche stabilite.

Vantaggi e svantaggi

Quando si tratta di analizzare e generare linguaggio, i trasformatori presentano alcuni vantaggi rispetto agli RNNS, i loro predecessori. Possono elaborare il testo in parallelo attraverso la rete anziché elaborare ogni parola in sequenza. Ciò li rende più rapidi ed efficienti nell'addestramento su set di dati di grandi dimensioni. Possono anche creare connessioni tra le parole indipendentemente da quanto siano distanti, consentendo loro di sfruttare più contesto dal testo.

Tuttavia, i trasformatori hanno bisogno di molti dati per funzionare bene e, con set di dati più piccoli, le architetture di rete neurale più tradizionali potrebbero funzionare meglio.

Casi d'uso

I trasformatori hanno molte applicazioni di intelligenza artificiale generativa. Mentre i modelli basati su trasformatori vengono generalmente utilizzati per generare testo o parlato, i ricercatori stanno esplorando il loro utilizzo per la generazione di immagini, poiché sono meno impegnativi dal punto di vista computazionale rispetto ai modelli di diffusione.

I più famosi sono i modelli LLM basati su trasformatori. I modelli linguistici utilizzano solo la parte decodificatore dell'architettura. Il prompt viene inserito nel modello come una codifica: quell'insieme di valori numerici, probabilità e dati sull'attenzione di cui abbiamo parlato prima. Il modello decodifica l'input utilizzando il meccanismo di auto-attenzione e guardando in parallelo tutte le parole nel prompt. L'obiettivo del modello è fornire una previsione per la parola successiva nella frase.

I trasformatori hanno molte applicazioni al di fuori della generazione di testo nell'elaborazione del linguaggio naturale. Infatti, originariamente erano stati concepiti per tradurre, o trasformare, il testo da una lingua all'altra. Grammarly ha contribuito alla ricerca sull'utilizzo dei trasformatori per correggere gli errori grammaticali.

Lavora in modo più intelligente con Grammarly
Il partner di scrittura basato sull'intelligenza artificiale per chiunque abbia del lavoro da svolgere

Conclusione

I modelli di intelligenza artificiale generativa hanno fatto molta strada negli ultimi dieci anni. Ci auguriamo che ora tu capisca qualcosa in più sull'evoluzione di questi modelli, su come funzionano e su come potrebbero essere applicati a diversi casi d'uso. Questo articolo, tuttavia, ha solo scalfito la superficie e ha tralasciato molti dettagli importanti con l'obiettivo di fornire una panoramica per il lettore medio. Ti invitiamo a continuare a conoscere la matematica e la scienza dietro questi modelli studiando i documenti di ricerca su cui si basano e imparando di più su come funzionano da una prospettiva probabilistica e statistica.