Possiamo fermare gli LLM dal delirare?

Possiamo fermare gli LLM dal delirare?' -> 'Possiamo fermare gli LLM?

Opinione

Uno dei più grandi ostacoli all’adozione diffusa di LLM potrebbe essere intrinsecamente insolubile.

Foto di Google DeepMind su Unsplash

Anche se i Large Language Models (LLM) hanno catturato l’attenzione di quasi tutti, la distribuzione su larga scala di tale tecnologia è leggermente limitata a causa di un aspetto piuttosto fastidioso: questi modelli tendono ad allucinare. In parole semplici, a volte inventano cose e, cosa peggiore, sembra molto convincente.

Le allucinazioni, frequenti o meno, comportano due problemi principali. Non possono essere implementate direttamente in molti campi sensibili o fragili in cui un singolo errore può costare molto. Inoltre, generano una diffidenza generale poiché si richiede agli utenti di verificare tutto ciò che proviene da un LLM, il che, almeno in parte, vanifica lo scopo di tale tecnologia.

Anche l’accademia sembra ritenere che le allucinazioni siano un problema importante, visto che nel 2023 ci sono decine di articoli di ricerca che ne discutono e cercano di risolvere il problema. Tuttavia, concordo con Yann LeCun, Chief AI Scientist di Meta, nel ritenere che le allucinazioni non siano affatto risolvibili. Ci sarebbe bisogno di una revisione completa della tecnologia per eliminare il problema.

Allucinazione di affermazioni false

Ci sono due aspetti importanti per qualsiasi LLM che, secondo me, rendono le allucinazioni insolubili. Partendo dalla base tecnologica piuttosto ovvia, i LLM, come qualsiasi altro modello di apprendimento automatico, sono di natura stocastica. In parole semplici, fanno previsioni.

Pur essendo sicuramente molto più avanzati di un semplice “autocomplete” migliorato, la tecnologia sottostante utilizza ancora previsioni statistiche sui token. Questo è sia uno dei punti di forza che di debolezza dei LLM.

Da un lato, abbiamo visto quanto siano incredibilmente bravi a prevedere ciò che dovrebbe seguire un input (a meno di tentativi intenzionali di rovinare l’output). Gli utenti possono commettere vari tipi di errori, come lasciare un errore di battitura, fraintendere il significato di una parola, ecc., e i LLM sono comunque in grado di fornire l’output corretto.

Un tempo, quando sono stati creati i primi giochi basati su testo, agli utenti veniva chiesto di inserire comandi senza errori o possibilità di interpretazione. Un comando come “muoviti a nord” avrebbe generato un errore se l’utente avesse inserito “muoviti a morth”. Un LLM, tuttavia, potrebbe essere in grado di comprendere il significato in entrambi i casi. In questo senso, la tecnologia è veramente affascinante.

Tuttavia, ciò mostra anche una debolezza. Ogni input ha un’ampia gamma potenziale di scelte di token. In parole semplici, c’è sempre una vasta gamma di modi in cui un modello può creare un output. Di questa vasta gamma, una parte relativamente piccola rappresenta la decisione “corretta”.

Anche se ci sono numerose opzioni di ottimizzazione disponibili, il problema stesso non è risolvibile. Ad esempio, se aumentiamo la probabilità di fornire una risposta specifica, il LLM diventa una tabella di ricerca, quindi è necessario mantenere un equilibrio. La tecnologia sottostante si basa semplicemente su previsioni stocastiche e deve essere previsto uno spazio per una gamma più ampia di token di output.

Ma c’è un altro problema che i LLM non possono risolvere, almeno nel loro stato attuale. È un po’ più effimero e astratto in quanto riguarda l’epistemologia, il campo della filosofia che studia la natura della conoscenza. In sostanza, il problema è semplice: come sappiamo quali affermazioni sono vere e come acquisiamo tale conoscenza? Dopotutto, un’allucinazione è semplicemente un insieme di affermazioni false fatte successivamente, quindi se potessimo creare un modo per il modello di verificare che ha fatto un’affermazione falsa e rimuoverla, risolveremmo il problema.

Separare le allucinazioni dalle affermazioni veritiere

Seguendo le orme della filosofia, possiamo separare due tipi di affermazioni possibili: analitiche e sintetiche. Le prime sono affermazioni che sono vere in virtù della definizione stessa (uno degli esempi più comuni è “un celibe è un uomo non sposato”). In parole semplici, possiamo trovare affermazioni che sono vere analizzando il linguaggio stesso, senza richiedere alcuna esperienza esterna.

Le affermazioni sintetiche sono tutte quelle affermazioni che sono vere in virtù di una forma di esperienza, come ad esempio “c’è una mela sul tavolo davanti a me”. Non c’è modo di sapere se tale affermazione è vera senza fare riferimento a un’esperienza diretta. L’analisi linguistica pura non serve a determinare se è vera o falsa.

Dovrei notare che la distinzione tra queste affermazioni è stata oggetto di accesi dibattiti per centinaia di anni, ma la discussione è in gran parte irrilevante per gli LLM. Come suggerisce il loro nome, sono una macchina di analisi e previsione linguistica altamente avanzata.

Seguendo la distinzione tra i due tipi, possiamo vedere che gli LLM avrebbero pochissimi problemi con le affermazioni analitiche (o almeno quanto gli esseri umani). Tuttavia, non hanno accesso all’esperienza o al mondo in generale. Non c’è modo per loro di sapere che alcune affermazioni sono vere in virtù di un evento.

Il problema principale è che il numero di affermazioni analitiche è significativamente inferiore all’insieme di tutte le affermazioni sintetiche. Poiché un LLM non ha modo di verificare se queste affermazioni sono vere, noi, come esseri umani, dobbiamo fornire loro tali informazioni.

Di conseguenza, gli LLM si trovano di fronte a una sfida. L’insieme di tutte le possibili uscite avrà sempre un certo numero di affermazioni sintetiche, ma per il modello tutte sono prive di valore di verità. In termini semplici, “l’assassino di Giulio Cesare era Bruto” (ce ne erano molti, ma per questo caso non importa) e “l’assassino di Giulio Cesare era Abraham Lincoln” sono equivalenti per un modello.

Un controargomento potrebbe essere che nemmeno noi abbiamo avuto esperienze dirette di quegli eventi. Li abbiamo solo letti nei libri. Ma la scoperta della veridicità dell’affermazione si basa sulla ricostruzione di resoconti sopravvissuti e su una vasta gamma di altre prove archeologiche.

Un esempio più semplice di un’affermazione (sebbene meno rilevante) sarebbe “oggi sta piovendo”. Tali affermazioni sono impossibili da determinare come vere per un LLM in quanto ha bisogno di accesso all’esperienza del mondo reale al momento della richiesta.

In un certo senso, il problema epistemologico si risolve da solo. Il nostro corpus letterario renderebbe l’output “l’assassino di Giulio Cesare era Bruto” significativamente più probabile perché presente più frequentemente. Tuttavia, ancora una volta, il problema è che una soluzione di questo tipo si basa sull’addestramento di un LLM su tutte le informazioni testuali disponibili, il che ovviamente è impossibile. Inoltre, ciò farebbe sì che altre uscite meno veritiere non siano del tutto assenti dall’insieme di tutte le possibili uscite.

Di conseguenza, la qualità dei dati diventa un fattore importante, ma tale qualità può essere valutata solo dagli osservatori umani. Anche nei casi in cui i modelli sono addestrati su enormi quantità di dati, si verifica un certo processo di selezione, il che significa che il tasso di errore per le affermazioni sintetiche non può essere eliminato.

Conclusioni

Credo che il problema di impedire ai modelli di fare allucinazioni sia insolubile. In primo luogo, la tecnologia stessa si basa su un processo stocastico, che inevitabilmente, su un gran numero di uscite, porterà a previsioni errate.

Oltre all’ostacolo tecnologico, c’è la questione se gli LLM possano fare giudizi di valore di verità sulle affermazioni, che, ancora una volta, ritengo impossibile poiché non hanno accesso al mondo reale. La questione è leggermente attenuata da varie funzioni di motore di ricerca che sono ora disponibili per molti LLM, secondo le quali possono verificare determinate affermazioni.

Potrebbe essere possibile, tuttavia, raccogliere un database con cui le affermazioni possono essere testate, ma ciò richiederebbe qualcosa al di là della tecnologia stessa, il che ci riporta al problema iniziale.