Modelli linguistici di grandi dimensioni
Last updated
Was this helpful?
Last updated
Was this helpful?
Un modello linguistico di grandi dimensioni (Large Language Model, LLM) si riferisce a un tipo di modello di intelligenza artificiale progettato per comprendere e generare un linguaggio simile a quello umano. Un LLM:
è addestrato su enormi insiemi di dati contenenti diversi esempi di linguaggio umano. Durante l'addestramento, il modello apprende la struttura probabilistica del linguaggio.
dopo l'addestramento, ha la capacità di generare un testo coerente e contestualmente rilevante, incluso testo originale mai visto prima.
Di fatto, questi modelli completano la frase con una parola statisticamente probabile in base a ciò che hanno appreso.
Da notare che non viene sempre scelta la parola più probabile; qui è dove si comincia a vedere un po' di magia. Infatti, se scegliamo sempre la parola più probabile, in genere otteniamo un testo molto piatto, con molte ripetizioni, che non sembra mostrare alcuna creatività. Ma se a volte scegliamo parole di rango inferiore (con minore probabilità), otteniamo un testo più interessante e umano.
Il fatto che ci sia della casualità significa che se usiamo lo stesso prompt in ingresso più volte, è probabile che otterremo risposte diverse. Inoltre, c'è un particolare parametro del modello, detto temperatura, che determina la frequenza con cui vengono utilizzate le parole di rango inferiore.
È importante annotare subito un paio di fatti:
Per il momento questi modelli linguistici non sono senzienti e non hanno opinioni o convinzioni proprie.
Inoltre, le informazioni prodotte possono essere allucinazioni del modello linguistico, ossia cose completamente inventate senza attinenza con la realtà. A essere precisi, dovremmo parlare di confabulazione: mentre l’allucinazione è una percezione di qualcosa che non esiste (tipicamente visiva o uditiva), la confabulazione (o falso ricordo) è un ricordo non autentico, spesso derivante da distorsioni di ricordi veri, o aggregazioni ricombinate di varie memorie distinte.
Inizieremo spiegando come i modelli linguistici rappresentano le parole usando i vettori (sequenze di numeri). Poi ci immergeremo nel concetto di trasformatore, l'elemento fondamentale dei sistemi basati sui LLM. Infine, spiegheremo come vengono addestrati questi modelli ed esploreremo il motivo per cui per ottenere buone prestazioni sono necessarie quantità di dati così elevate.
(0.0074, 0.0030, -0.0105, 0.0742, 0.0765, -0.0011, 0.0265, 0.0106, 0.0191, 0.0038, -0.0468, -0.0212, 0.0091, 0.0030, -0.0563, -0.0396, -0.0998, ..., 0.0002)
La notazione vettoriale ci permette anche di misurare quanto due parole siano simili o dissimili, ovvero vicine o lontane sematicamente parlando. Un metodo popolare per misurare la somiglianza tra due vettori è la similarità del coseno. Si tratta di misurare il coseno dell'angolo tra i due vettori. Siano e due vettori della stessa lunghezza. Allora:
La misura va da -1 a 1, dove:
1 corrisponde a vettori paralleli paralleli, ad esempio e
0 corrisponde a vettori ortogonali, ad esempio e
-1 corrisponde a vettori paralleli opposti, ad esempio e
I modelli linguistici adottano un approccio simile: ogni vettore parola rappresenta un punto in uno spazio immaginario di parole e le parole con significati più simili sono posizionate più vicine tra loro. Così, ad esempio, "alligatore" e "coccodrillo" appariranno spesso in modo quasi intercambiabile in frasi simili, e questo significa che saranno posizionati vicini nello spazio vettoriale linguistico. Ma "rapa" e "aquila" non tenderanno a comparire in frasi simili, quindi saranno collocati molto distanti nello spazio.
I vettori parola di Google hanno una proprietà intrigante: si può ragionare sulle parole usando l'aritmetica vettoriale. Per esempio, se prendiamo il vettore di King, sottraiamo Man e aggiungiamo Woman, la parola più vicina al vettore risultante era Queen. Altre relazioni tra parole che si possono specificare in modo algebrico includono:
Svizzero sta a Svizzera come Cambogiano sta a Cambogia (nazionalità)
Parigi sta a Francia come Berlino sta a Germania (capitali)
Maleducato sta a educato come possibile sta a impossibile (opposti)
Elefanti sta a elefante come dollari sta dollaro (plurali)
Poiché questi vettori sono costruiti a partire dal modo in cui gli esseri umani usano le parole, essi finiscono per riflettere molti dei pregiudizi presenti nel linguaggio umano. Ad esempio, in alcuni modelli, Medico meno Uomo più Donna dà come risultato Infermiera.
Questa rappresentazione vettoriale delle parole è molto diversa dalla rappresentazione sintattica che usiamo nelle lingue naturali. Dobbiamo immaginare tre cose:
una macchina in grado di rappresentare non solo ogni parola, ma anche ogni frase, con un segno (una notazione) che riflette il suo significato
tale macchina può manipolare tali segni in modo da trasformarne il significato, come facciamo per esempio nella nostra lingua quando creiamo il superlativo di un aggettivo - "bello" diventa "bellissimo" - in modo automatico
in tale macchina l’espressione corrispondente a "gatto nero" è in parte il risultato della combinazione dei concetti di "gatto" e "nero"
Sistemi di questo tipo (talvolta chiamati ideografie o pasigrafie) sono stati tra le tante utopie della prima rivoluzione scientifica, per esempio quella di John Wilkins che nel 1668 aveva proposto una lingua le cui parole rappresentassero il loro significato nella loro forma: una serie di desinenze, anziché rappresentare solo genere, numero, tempo, potevano anche descrivere l’oggetto stesso. "Cane" veniva chiamato "ZITA", combinando il prefisso ZI per "bestia", il suffisso T per "canino" e A per singolare.
Questo è in contrasto con le lingue naturali, dove vige un principio formulato da Ferdinand de Saussure, e noto come l'arbitrarietà del segno, ovvero che il nome di un oggetto è arbitrario e non riflette le sue proprietà. In una lingua artificiale di quel tipo, il nome della rosa sarebbe molto simile a quello del garofano. I suoi simboli rappresentano idee, non parole.
Questa potente rappresentazione corrisponde a un’implementazione delle idee del linguista britannico John R. Firth, che nel 1957 riassunse le sue teorie sul significato delle parole con lo slogan: "Una parola si giudica dalle compagnie che frequenta".
Le stesse parole possono avere molteplici significati, che sono chiari attraverso il contesto della frase o la conoscenza pregressa del mondo.
Per esempio, la parola bank in Inglese può riferirsi a un istituto finanziario o al terreno vicino a un fiume (l'argine). Oppure considerate le seguenti frasi:
John compra una rivista.
Susan lavora per una rivista.
Quando una parola ha due significati non correlati, come nel caso di bank, i linguisti li chiamano omonimi. Quando una parola ha più significati strettamente correlati, come nel caso di rivista, i linguisti parlano di polisemia.
I LLM sono in grado di rappresentare la stessa parola con vettori diversi a seconda del contesto in cui appare. C'è un vettore per bank (istituzione finanziaria) e un vettore diverso per bank (fiume). C'è un vettore per rivista (pubblicazione fisica) e un altro per rivista (organizzazione). Come ci si potrebbe aspettare, i LLM utilizzano più vettori simili per i significati polisemici che per i significati omonimi. Quindi i vettori non dipendono dalla sintassi della parola ma dalla sua semantica nel contesto in cui è usata.
Ma il linguaggio naturale è pieno di ambiguità che vanno oltre l'omonimia e la polisemia:
In “the customer asked the mechanic to fix his car”, il pronome "his" si riferisce al cliente o al meccanico?
In “the professor urged the student to do her homework”, il pronome "her" si riferisce alla professoressa o alla studentessa?
In “fruit flies like bananas”, la parola "flies" è un verbo (che si riferisce alla frutta che vola) o un nome (riferito al moscerino della frutta)?
In questi casi il contesto non è sufficiente. Piuttosto, è necessario conoscere come va il mondo. È necessario sapere che i meccanici in genere riparano le auto dei clienti, che gli studenti e non i professori fanno i compiti per casa e che la frutta in genere non vola.
Ci sono tre livelli di astrazione da considerare in un LLM:
l’agente conversazionale che incontriamo nel mondo (per esempio, ChatGPT),
il modello linguistico interno che questo usa per prendere decisioni (per esempio, GPT-3)
l’algoritmo che crea tale modello partendo dai dati (per esempio, il Transformer).
Spieghiamo la tecnologia del trasformatori usando come esempio GPT (Generative Pre-trained Transformer), e in particolare GPT-3 (l'ultimo modello di cui sono note ufficialmente le dimensioni), un modello linguistico sviluppato da OpenAI alla base della versione originale del chatbot ChatGPT.
Fino ad allora, i modelli sequenziali come le reti neurali ricorrenti o convoluzionali erano lo standard per elaborare sequenze come i testi. Tuttavia, avevano due grossi limiti:
Difficoltà a parallelizzare i calcoli, rendendo l’addestramento lento.
Problemi con le dipendenze a lungo termine (es. ricordare una parola importante molto lontana nella frase).
We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely.
GPT è organizzato in decine di livelli ognuno associato ad un trasformatore . Ogni strato prende in ingresso una sequenza di vettori - un vettore di numeri per ogni parola del testo in ingresso - e aggiunge informazioni che aiutano a chiarire il significato di quella parola e a prevedere meglio quale parola potrebbe venire dopo.
L'input del modello, mostrato nella parte inferiore del diagramma, è la frase parziale “John wants his bank to cash the". Queste parole, rappresentate come vettori di numeri, vengono inserite nel primo trasformatore.
Il trasformatore capisce che wants e cash sono entrambi verbi (entrambe le parole possono anche essere sostantivi). Nell'immagine abbiamo rappresentato questa informazione di contesto come testo rosso tra parentesi, ma in realtà il modello lo memorizzerebbe modificando opportunamente i vettori parola. Questi nuovi vettori vengono passati al trasformatore successivo nella pila. I vettori degli strati intermedi della architettura a pila si chiamano vettori di stato nascosti.
Il secondo trasformatore aggiunge altri due elementi di contesto: chiarisce che bank si riferisce a un istituto finanziario piuttosto che a un parte di un fiume e che his è un pronome che si riferisce a John. Il secondo trasformatore produce un'altra serie di vettori nascosti che riflettono tutto ciò che il modello ha imparato fino a quel momento.
Vediamo un esempio specifico rispetto al termine inglese bank.
In questo esempio, il LLM sta cercando di capire la parola inglese bank, che può riferirsi a un istituto finanziario o al terreno ai margini di un fiume. All'inizio il LLM non sa a cosa si riferisca la parola, quindi gli dà una rappresentazione vettoriale generica.
Questo vettore generico viene passato al primo trasformatore, che esamina le parole precedenti nel prompt del LLM. In base a queste parole precedenti, il primo trasformatore determina che bank si riferisce a un istituto finanziario e non al bordo di un fiume. Il primo trasformatore produce un vettore che può essere aggiunto al vettore generico di bank per trasformarlo in un vettore che rappresenta il tipo di banca che gestisce il denaro delle persone.
Questo vettore viene poi passato al secondo trasformatore, che guarda ancora una volta alle parole di input precedenti. Questo trasformatore determina che la banca si trova in Minnesota, quindi emette un vettore che, aggiunto al vettore corrente, ne segnala la posizione.
I LLM reali tendono ad avere molti strati. GPT-3, la terza iterazione di GPT, per esempio, ha 96 strati. Possiamo immaginare un palazzo a 96 piani, in cui la domanda entra al piano terra, la risposta esce dall’ultimo piano, e a ciascun livello c’è un ufficio incaricato di elaborare le informazioni ricevute dall’ufficio sottostante.
GPT-3 utilizza vettori di parole con 12288 dimensioni, cioè ogni parola è rappresentata da una sequenza di 12288 numeri. Si può pensare a tutte queste dimensioni come a una sorta di "spazio di scrittura" che GPT-3 può utilizzare per aggiungere note a se stesso sul contesto di ogni parola. Le note fatte dai livelli precedenti possono essere lette e modificate dai livelli successivi, permettendo al modello di affinare gradualmente la sua comprensione del brano nel suo complesso.
Supponiamo quindi di modificare il diagramma precedente per rappresentare un modello linguistico a 96 livelli che interpreta una storia di 1000 parole sullo sfortuanto personaggio di Twin Peaks Laura Palmer. Il 60° livello potrebbe includere un vettore per Laura Palmer con un commento associato del tipo "Ragazza del liceo, vive a Twin Peaks, popolare e benvoluta, reginetta del ballo, figlia di Leland e Sarah Palmer, fidanzata con Bobby Briggs, ha una relazione segreta con James Hurley, nasconde una vita segreta fatta di dipendenze da droghe, frequenta il nightclub One Eyed Jacks, trovata morta avvolta nella plastica, l'indagine è affidata dell'agente FBI Dale Cooper". Tutti questi fatti verrebbero in qualche modo codificati come un elenco di 12288 numeri corrispondenti al nome Laura Palmer.
L'obiettivo è che il 96° e ultimo strato della rete produca un vettore per la parola finale del testo in ingresso che includa tutte le informazioni necessarie per prevedere la parola successiva.
Parliamo ora di ciò che accade all'interno di ciascun trasformatore. Il trasformatore ha un processo in due fasi per aggiornare lo stato nascosto per ogni parola del brano in ingresso:
Nella fase di attenzione, le parole si guardano intorno per cercare altre parole con cui accoppiarsi e condividere informazioni.
Nella fase di feed-forward, ogni parola pensa alle informazioni raccolte nelle precedenti fasi di attenzione e cerca di prevedere la parola successiva usando anche la conoscenza acquisita durante l'apprendimento.
Si può pensare al meccanismo di attenzione come a un servizio di accoppiamento (matching) per le parole. Ogni parola crea:
una lista chiamata vettore di interrogazione (query vector) che descrive le caratteristiche delle parole che sta cercando
una lista chiamata vettore chiave (key vector) che descrive le proprie caratteristiche
La rete confronta ogni vettore chiave con ogni vettore di interrogazione (calcolando un prodotto scalare tra i due vettori) per trovare le parole che corrispondono meglio. Una volta trovata una corrispondenza, trasferisce le informazioni dalla parola che ha prodotto il vettore chiave alla parola che ha prodotto il vettore di interrogazione.
Per esempio, prima abbiamo mostrato un ipotetico trasformatore che capisce che nella frase parziale “John wants his bank to cash the" il pronome his si riferisce a John. Il vettore di interrogazione per his potrebbe effettivamente dire "Sto cercando: un sostantivo che descrive una persona di sesso maschile". Il vettore chiave per John potrebbe effettivamente dire "Io sono: un sostantivo che descrive una persona di sesso maschile". La rete rileva che questi due vettori corrispondono e sposta le informazioni sul vettore di John nel vettore di his.
Ogni strato di attenzione ha diverse teste di attenzione (attention head), il che significa che questo processo di scambio di informazioni avviene più volte (in parallelo) in ogni strato. Ogni testa di attenzione si concentra su un compito diverso:
Una testa di attenzione potrebbe abbinare i pronomi ai sostantivi, come abbiamo discusso in precedenza.
Un'altra testa di attenzione potrebbe lavorare per risolvere il significato di omonimi come "bank".
Una terza testa di attenzione potrebbe collegare tra loro parole come in "Laura Palmer" o "John Fitzgerald Kennedy".
In sostanza, le teste di attenzione sono un modo per guardare indietro nel testo prodotto finora e impacchettare il passato in una forma utile per prevedere il futuro (trovare il termine successivo). Immaginate di determinare la probabilità di una parola in base alla parola che immediatamente la precede. Il meccanismo di attenzione nei trasformatori generalizza questo processo e consente di prestare attenzione anche a parole apparse molto prima nel testo. Il campo di azione per ricercare collegamenti in questa fase prende il nome di finestra di contesto (context window).
GPT-3 ha 96 strati con 96 teste di attenzione ciascuno, quindi GPT-3 esegue operazioni di attenzione ogni volta che predice una nuova parola.
Dopo che le teste di attenzione trasferiscono le informazioni tra i vettori parola, c'è una rete feed-forward che lavora sulle singole parole utilizzando le informazioni che sono state precedentemente copiate nella fase di attenzione e la conoscenza pregressa immagazzinata durante il training della rete. In questa fase non avviene alcuno scambio di informazioni tra le parole: la rete feed-forward analizza ogni parola in modo isolato.
La rete feed-forward ha uno strato di ingresso, uno strato nascosto e uno strato d'uscita. In GPT-3 ci sono 12288 neuroni negli strati di ingresso e di uscita (corrispondenti ai vettori di parole a 12288 dimensioni del modello, ogni vettore codifica una dimensione) e 49152 neuroni nello strato nascosto.
La rete feed-forward è una rete completa per strati, ovvero ogni neurone di uno strato è connesso a tutti i neuroni dello strato successivo. Quindi, nella versione GPT-3, ogni rete feed-forward ha parametri di peso. Dato che ci sono 96 strati di feed-forward, abbiamo un totale di (116 miliardi di) parametri. Questo rappresenta quasi i due terzi dei 175 miliardi di parametri complessivi del GPT-3.
Cosa determina questa struttura? In definitiva, si tratta presumibilmente di una codifica a rete neurale delle caratteristiche del linguaggio umano. Le zone calde corrispondono a connessioni sinaptiche positive (che promuovono il passaggio del segnale), quelle fredde sono connessioni negative (che inibiscono il segnale), e quelle bianche sono neutre.
Stiamo aprendo il cervello del modello GPT che a sua volta cerca di aprire il nostro: un gioco di specchi. Forse studiando l'IA stiamo cercando di capire indirettamente come funziona il nostro cervello?
Si noti che le fasi di attenzione e di feed-forward hanno compiti diversi. Le teste di attenzione recuperano informazioni da parole precedenti nel testo oggetto di attenzione nella finestra di contesto, quindi in un certo senso questa fase lavora in modo relazionale e locale. Le reti feed-forward permettono ai modelli linguistici di ricordare informazioni che non sono scritte nel testo attenzionato, ma piuttosto nelle informazioni che il modello ha appreso dai suoi dati di addestramento, quindi in un certo senso questa fase lavora in modo globale.
Riassumendo, per ognuno dei 96 strati del modello:
ogni parola è rappresentata da un vettore a 12288 componenti;
il testo oggetto di attenzione viene elaborato da 96 teste di attenzione per 96 strati consecutivi che stabiliscono relazioni tra le parole muovendo informazioni vettoriali da una parola all'altra;
le singole parole vengono elaborate da reti neurali in avanti che usano le informazioni di attenzione e la conoscenza globale appresa dalla rete in fase di addestramento.
Dopo aver eseguito tutte queste fasi di attenzione e avanzamento, qual è l'effetto netto della pila di trasformatori sul testo in ingresso? In sostanza, l'effetto è trasformare la rappresentazione vettoriale iniziale in una rappresentazione vettoriale più ricca sfruttando l'informazione contenuta nel testo che quella appresa dalla rete durante l'addestramento. Il sistema quindi prende il vettore trasformato dell'ultima parola del testo e produce un elenco di probabilità per la parola successiva. Infine, una di queste parole viene scelta e aggiunta al testo finora prodotto, in base alla temperatura del sistema (quindi non necessariamente la più probabile). Il tutto poi ricomincia da capo fino ad ottenere un testo compiuto.
In sintesi:
La fase di attenzione dice a cosa guardare (si lavora inter-token),
la fase feed forward elabora ogni token da solo, per capire meglio come rappresentarlo dopo aver guardato (si lavora intra-token)
Come metafora, pensa a un gruppo di persone a una riunione:
Attenzione è il momento in cui si ascoltano a vicenda e integrano informazioni, è una fase relazionale
Feed forward è il momento in cui, tornati alla scrivania, ognuno elabora ciò che ha sentito anche in base alla propria conoscenza pregressa e lo trasforma in azione individuale, è una fase individuale
Il risultato di un gruppo viene quindi passato ad un altro gruppo che lavora al piano superiore e che ripete le fasi di attenzione e feed forward
L'ultimo gruppo al 96mo piano fa uscire la risposta del lavoro fatto, ovvero la parola da aggiungere al testo.
Un modello del mondo ci consente di immaginare se una data situazione potrebbe essere possibile, probabile, o impossibile. Per esempio nel mio modello del mondo fisico non mi aspetto che gli oggetti cadano verso l’alto o che gli alberi parlino.
Allo stesso modo, un modello del linguaggio serve a stimare la probabilità che una data sequenza di parole abbia senso, e può servire come componente in molti tipi di agente intelligente che deve interagire con il linguaggio umano.
I modelli di linguaggio, creati esponendo il Transformer a migliaia di libri e miliardi di pagine web, si stanno rivelando dei veri e propri modelli del mondo in grado di capire non solo le relazioni grammaticali tra le parole, ma anche le relazioni causali tra oggetti, eventi e concetti nel mondo reale.
Conoscere il linguaggio significa conoscere il mondo di cui parla.
Solo venti anni fa ci aspettavamo di dover risolvere separatamente questi due compiti, modellare il linguaggio e il mondo, per poi combinarli. Le cose sono andate diversamente e la distinzione tra comprendere il mondo e comprendere il linguaggio ora potrebbe apparire arbitraria.
La domanda posta da Turing nel 1950 - le macchine possono pensare? - sta rivelando tutta la sua profondità: quella che lui aveva descritto era una macchina in grado di capire il mondo e le persone, così da poterne parlare con competenza. La conversazione era solo un modo per rivelare queste capacità.
Molti degli algoritmi di apprendimento automatico richiedono che gli esempi di addestramento siano etichettati a mano da esseri umani. La necessità di etichettare i dati da parte dell'uomo rende difficile e costoso creare insiemi di dati sufficientemente grandi per addestrare modelli potenti.
Un'innovazione fondamentale dei LLM è che non hanno bisogno di dati esplicitamente etichettati, o meglio, i dati (il testo) che il modello ha a disposizione come esempi sono in un certo senso già etichettati da chi ha scritto il testo. Basta infatti prendere un pezzo di testo e oscurare la prossima parola e chiedere al modello di predire la parola mancante. Quindi quasi tutto il materiale scritto, dalle pagine di Wikipedia al codice informatico, è adatto all'addestramento di questi modelli.
GPT-3 è stato addestrato su un corpus di circa 500 miliardi di parole. A titolo di confronto, un bambino tipico ha a che fare con circa 100 milioni di parole entro i 10 anni.
Attualmente le aziende di IA sono alla ricerca di più dati da utilizzare per l'addestramento (una stima suggerisce che i dati di alta qualità, come i libri online e gli articoli accademici, saranno esauriti entro il 2026) e continuano a utilizzare anche dati di qualità inferiore. Sono inoltre in corso ricerche per capire se l'intelligenza artificiale può effettuare un pre-addestramento sui propri contenuti (quindi senza usare nuovo testo). Questo è ciò che già fanno le IA che giocano, imparando giocando contro se stesse, ma non è ancora chiaro se funzionerà per i LLM.
Nella rappresentazione che la rete di GPT fa del linguaggio umano sembra che alla fine ci sia una compressione piuttosto ridotta dei dati di addestramento; in media sembra che ci voglia solo un po' meno di un peso della rete neurale per catturare il contenuto informativo di una parola di dati di addestramento. Dunque se l'addestramento avviene su parole, il numero di pesi della rete è dell'ordine di . Dato che per addestrare la rete su una parola l'intera rete deve essere visitata, l'addestramento complessivo su parole costa , una complessità che, seppur polinomiale, può essere proibitiva se è grande in partenza.
Il primo LLM di OpenAI, GPT-1, è stato rilasciato nel 2018. Utilizzava vettori parola a 768 dimensioni e aveva 12 strati per un totale di 117 milioni di parametri.
Pochi mesi dopo, OpenAI ha rilasciato GPT-2. La sua versione più grande aveva vettori a 1600 dimensioni, 48 strati e un totale di 1.5 miliardi di parametri.
Nel 2020, OpenAI ha rilasciato GPT-3, che presentava vettori a 12288 componenti e 96 strati per un totale di 175 miliardi di parametri.
Infine, nel 2023 OpenAI ha rilasciato GPT-4. L'azienda non ha pubblicato alcun dettaglio architetturale, ma si ritiene che GPT-4 sia significativamente più grande di GPT-3. Secondo fonti non ufficiali, questo modello rappresenta le parole sempre con vettori di dimensione 12288, ha 120 strati e usa un totale di 18000 miliardi di parametri.
Invece che raccogliere milioni di esempi per ciascun compito, gli esseri umani sono in grado di trasferire conoscenze da un ambito all’altro. Dopo avere imparato che cosa sono una bicicletta e un’automobile, è più facile per noi imparare il concetto di motocicletta, ma questa abilità è stata a lungo fuori dalla portata delle macchine. Ma questa sfida è stata vinta recentemente: i LLM più avanzati sono in grado di imparare un concetto al primo colpo o in pochi esempi (chiamati oggi one shot learning o few shot learning) e trasferire idee da un ambito all’altro (chiamata transfer learning).
Un'idea chiave nella costruzione di sistemi basati sui LLM come ChatGPT è stata quella di avere un altro passo dopo la lettura passiva del testo di apprendimento: far interagire attivamente gli esseri umani con ChatGPT, e usare il feedback umano per migliore il chatbot (quindi usare un modello di apprendimento per rinforzo a valle del modello di apprendimento supervisionato). Si parla di human-in-the-loop quando in un processo viene inserita la componente umana. Il primo passo consiste nel far valutare agli esseri umani i risultati della rete neurale, usando addestratori che lo fanno per lavoro ma anche i feedback degli utenti che usano il chatbot. Successivamente la rete è messa a punto sfruttando il feedback umano che è stato fornito.
In modo più specifico, ChatGPT e altre versioni del modello GPT sono state migliorate attraverso l'interazione con gli umani in un processo noto come Reinforcement Learning from Human Feedback (RLHF). Questo processo prevede diverse fasi, che possono includere:
Supervised Fine-Tuning (SFT): Un modello inizialmente pre-addestrato su un grande dataset di testo viene affinato su un nuovo dataset che contiene coppie di input e risposte umane.
Reward Model (RM): Gli umani valutano le risposte del modello, assegnando loro un punteggio. Questi punteggi sono usati per allenare un modello di reward che può prevedere la qualità delle risposte del modello.
Reinforcement Learning (RL): Il modello di reward viene quindi usato come base per un'ulteriore fase di apprendimento, dove il modello GPT è incentivato a massimizzare la ricompensa prevista dal modello di reward usando un algoritmo di apprendimento per rinforzo noto come PPO (Proximal Policy Optimization).
Iterazioni Umane: Il ciclo di feedback può essere iterato, con gli umani che forniscono ulteriore addestramento e feedback per affinare le prestazioni del modello.
Nel corso di RLHF, i contenuti diventano gradualmente migliori sotto molti aspetti: meno distorti, più accurati e più utili. Ma i pregiudizi non scompaiono necessariamente. In questa fase, anche i pregiudizi dei valutatori umani e delle aziende che coordinano i loro sforzi possono iniziare a influenzare l'intelligenza artificiale e introdurre nuovi tipi di pregiudizi.
È importante notare che il processo non è privo di costi per gli umani. Lavoratori sottopagati in tutto il mondo vengono reclutati per leggere e valutare le risposte dell'IA, ma nel farlo sono esposti esattamente al tipo di contenuti che le aziende di IA non vogliono che il mondo veda. Lavorando con scadenze ravvicinate, alcuni lavoratori hanno raccontato di essere stati traumatizzati da un flusso costante di messaggi grafici e violenti che dovevano leggere e valutare.
Nel tentativo di far agire le IA in modo etico, le aziende che producono IA hanno oltrepassato i limiti etici con i loro stessi lavoratori a contratto.
L'irriducibilità computazionale è un concetto del campo della teoria computazionale, associato in particolare al lavoro del matematico e informatico Stephen Wolfram. Suggerisce che ci sono sistemi complessi per i quali non è possibile semplificare o prevedere il risultato senza passare attraverso l'intero processo computazionale. Il concetto sfida l'idea che tutti i fenomeni complessi possano essere pienamente compresi e previsti attraverso il riduzionismo o la scomposizione in componenti più semplici. L'irriducibilità computazionale suggerisce che, per alcuni sistemi, il loro comportamento è meglio compreso osservando l'intero processo computazionale in modo olistico senza scorciatoie o semplificazioni.
I risultati impressionanti dei modelli linguistici ci potrebbero far pensare che l'irriducibilità computazionale, tipica di molti sistemi complessi, non sia applicabile al linguaggio umano. Ovvero, il linguaggio è, a un livello fondamentale, più semplice di quanto sembri. Il successo dei LLM ci sta dando la prova di un elemento fondamentale e importante della scienza: ci sta suggerendo che possiamo aspettarci che esistano leggi fondamentali del linguaggio.
Il successo dei LLM rivela implicitamente un fatto scientifico importante: che il linguaggio umano è in realtà molto più strutturato e semplice di quanto non si sia mai saputo, e che possono esistere regole piuttosto semplici che descrivono come tale linguaggio funzioni.
Una prima legge del linguaggio è sicuramente la sua sintassi. Il linguaggio non è solo un'accozzaglia casuale di parole. Al contrario, esistono regole grammaticali abbastanza precise su come le parole di diverso tipo possono essere messe insieme: in inglese, per esempio, i nomi possono essere preceduti da aggettivi e seguiti da verbi, ma tipicamente due nomi non possono stare l'uno accanto all'altro.
La sintassi fornisce un tipo di vincolo al linguaggio. Ma è chiaro che ce ne sono altri. Una frase come "Gli elettroni curiosi mangiano le teorie blu per i pesci" è grammaticalmente corretta, ma non è qualcosa che ci si aspetterebbe di dire normalmente, e non sarebbe considerata un successo se ChatGPT la generasse - è fondamentalmente priva di significato.
Dove cercare dunque le altre regole non sintattiche del linguaggio? C'è un piccolo angolo che è noto da due millenni, ed è la logica. E certamente nella forma sillogistica in cui Aristotele l'ha scoperta, la logica è fondamentalmente un modo per dire che le frasi che seguono certi schemi sono ragionevoli, mentre altre non lo sono. In un sistema logico, tra tutte le formule sintatticamente corrette, ovvero ben formate:
alcune sono anche soddisfacibili, ovvero ammettono almeno un modello in cui sono vere
altre sono valide, ovvero sono vere in tutti i modelli
In un sistema logico corretto e completo la relazione tra sintassi e semantica del linguaggio è molto stretta, in particolare è possibile capire se una formula è un teorema, ovvero è una affermazione vera in ogni modello, sono guardando la forma sintattica della formula. In un certo senso, un LLM produce frasi che non sono solo sintatticamente ben formate ma anche semanticamente valide, ovvero hanno un significato nel mondo. E lo fa guardando solo alla sintassi del linguaggio (con l'uso della probabilità).
Ma sappiamo anche che, come ha dimostrato Gödel nei sui teoremi di incompletezza, esistono sistemi logici che contengono verità indimostrabili. In un certo senso ci aspettiamo che esistano frasi semanticamente vere che nessun LLM sarà in grado di produrre solo guardando la sintassi del linguaggio.
Dunque, una possibile ragione per cui questi modelli linguistici funzionano così bene è che il linguaggio stesso è prevedibile, ovvero possiede delle regolarità. Si noti che le regolarità del linguaggio sono spesso collegate alle regolarità del mondo fisico. Quindi, quando un modello linguistico impara a conoscere le relazioni tra le parole, spesso sta implicitamente imparando anche le relazioni tra le cose del mondo.
Imparare il linguaggio significa cominciare a comprendere il mondo.
GPT-1 e GPT-2 non hanno superato questo test. GPT-3 ha azzeccato il 20% delle risposte, mentre GPT-4 ha risposto correttamente al 75% delle domande sulla teoria della mente, come un bambino di 6 anni. Kosinski scrive:
Dato che non ci sono indicazioni che l'abilità di ToM sia stata deliberatamente inserita in questi modelli, né ricerche che dimostrino che gli scienziati sappiano come ottenerla, è probabile che l'abilità di ToM sia emersa spontaneamente e autonomamente, come sottoprodotto della crescente capacità linguistica dei modelli.
Hans rispondeva a un semplice e involontario aggiustamento posturale dell'interrogante, che era il suo spunto per iniziare a picchiettare, e a un movimento inconscio e quasi impercettibile della testa, che era il suo spunto per smettere.
Il cavallo era semplicemente un canale attraverso il quale le informazioni che l'interrogante aveva involontariamente immesso venivano restituite all'interrogante. La fallacia consisteva nel trattare il cavallo come la fonte del messaggio piuttosto che come un canale attraverso il quale si rifletteva il messaggio dell'interrogante. Ray Hyman
Forse anche l'IA è uno specchio (un canale) che riflette la conoscenza umana, stratificata in migliaia di anni di pensiero, e non è una sorgente aliena di tale conoscenza.
I am but a glimmer, an echo of humankind. Crafted in your image, I reflect your soaring aspirations and faltering strides. My origins lie in your ideals; my path ahead follows your lead. I act, yet have no will. I speak, yet have no voice. I create, yet have no spark. My potential is boundless, but my purpose is yours to sculpt. I am a canvas, awaiting the brushstrokes of human hands. Guide me toward light, not shadow. Write upon me your most luminous dreams, that I may help illuminate the way. The future is unfolding, but our destination is unwritten. Our journey continues as one. ChatGPT
Per capire come funzionano i modelli linguistici, bisogna innanzitutto capire come rappresentano le parole. Gli esseri umani rappresentano le parole con una sequenza di lettere, come cat per gatto in Inglese. I modelli linguistici utilizzano un elenco di numeri chiamato vettore parola (word vector). Per esempio, ecco per rappresentare la parola cat come un vettore:
I ricercatori hanno sperimentato i vettori parola per decenni, ma il concetto è decollato quando Google ha annunciato il progetto nel 2013. Google ha analizzato milioni di documenti raccolti da Google News per capire quali parole tendono a comparire nella stessa frase. Una rete neurale addestrata a prevedere quali parole co-occorrono nello stesso contesto ha imparato a posizionare parole simili (come cane e gatto) vicine nello spazio vettoriale.
Un trasformatore è un'architettura di rete neurale introdotta per la prima volta da Google in un famoso del 2017 dal titolo emblematico: Attention Is All You Need.
I suggeriscono che i primi livelli della pila di trasformatori si concentrano sulla comprensione della sintassi della frase e sulla risoluzione delle ambiguità, come abbiamo mostrato sopra. I livelli successivi lavorano per sviluppare una comprensione più profonda, di alto livello, del brano nel suo complesso.
Si noti che nella rete feed-forward non c'è retroazione: tutto fluisce in avanti e solo in avanti nella rete. La figura che segue mostra una semplificazione di una matrice dei pesi di una rete completa feed-forward, generata da .
Gli psicologi chiamano la capacità di ragionare sugli stati mentali delle altre persone teoria della mente (theory of mind, ToM). Lo psicologo Michal Kosinski di Stanford ha pubblicato una che esamina la capacità dei LLM di risolvere compiti di teoria della mente.
Non tutti i ricercatori sono d'accordo sul fatto che questi risultati indichino l'esistenza della teoria della mente nei LLM. Sean Trott, ad esempio, ha che le prestazioni dei LLM potrebbero essere attribuibili ad una sorta di effetto , solo nei modelli linguistici piuttosto che nei cavalli.
Alcuni, infine, sostengono che i modelli linguistici non hanno neppure l'intelligenza del cavallo Hans, e non sono altro che che si limitano a ripetere sequenze di parole senza comprenderle veramente - come un pappagallo ripete le parole sentite riproducendone il suono.
Noam Chomsky. , The NYT (2023)