- Definizione di allucinazione:
- PerchΓ© accadono:
Introduzione
Si parla di βallucinazioniβ nei modelli di linguaggio (come GPT) quando lβIA genera risposte o informazioni che sembrano plausibili ma non sono vere o corrette. Ad esempio, se chiedi una ricetta inventata, lβIA puΓ² produrre una risposta come se fosse reale, anche se non ha basi nei dati su cui Γ¨ stata addestrata. Queste accadono in quanto i Language Model sono addestrati a completare il testo basandosi su probabilitΓ statistiche, senza un legame diretto con veritΓ oggettive o morali. In altre parole, il loro scopo principale Γ¨ proseguire il testo in modo coerente, non fornire risposte vere.
CosβΓ¨ un Language Model?
- Γ un sistema addestrato su grandi quantitΓ di testo per prevedere la sequenza piΓΉ probabile di parole. Funziona come una sorta di simulazione di tessuto nervoso, continuando il testo token per token (parola per parola o frammento per frammento).
- Non interagisce davvero con te: Quando parli con un modello come ChatGPT, in realtΓ non βconversaβ, ma crea una simulazione probabilistica di una conversazione. Ad esempio, se gli dai un testo con un bot che risponde e poi scrivi βUtente dice: β¦β, il modello proseguirΓ anche la parte dellβutente. Capire questo concetto Γ¨ fondamentale per capire cosa Γ¨ veramente un Language Model. Ad esempio se chiedi una ricetta inventata (es. della βdammi la ricetta della carbonara della signora Pinaβ), il modello cerca di proseguire il testo come se quella ricetta esistesse.
Gli LLM possano generare informazioni plausibili ma errate, il cosiddetto βnonsense plausibileβ. Queste non sono bug, ma una caratteristica intrinseca del modo in cui funzionano gli LLM.
Le allucinazioni come elemento naturale del modello
- Le allucinazioni non sono un βbugβ ma una caratteristica naturale del modello. Il sistema non Γ¨ progettato per βdire la veritΓ β ma per proseguire il testo in modo statisticamente plausibile.
- Pensare a GPT un modello di linguaggio come una sorta di βcompressione dellβInternetβ (un enorme file zip): contiene informazioni statistiche su unβenorme quantitΓ di testo, ma non garantisce precisione o veritΓ .
- Le "allucinazioni" sono una conseguenza naturale del modo in cui funzionano i modelli di linguaggio, sono connaturate ad essi. Anzi, sono il motivo per cui sono così potenti. Esse permettono al sistema di essere creativo, ad esempio scrivere un sonetto originale o produrre contenuti in uno stile specifico: senza le allucinazioni sarebbe impossibile fare ciò.
- Limiti e contesto: Le allucinazioni diventano un problema solo quando si cerca di ottenere risposte affidabili o accurate in contesti critici.
Come si affrontano
Esistono vari approcci per ridurre o gestire le allucinazioni: a monte con il fine tuning, durante il prompt con il RAG o a valle con i guardrails o post-processing
1. Fine-tuning e Annotazione
- Il modello viene addestrato ulteriormente su set di dati annotati manualmente con risposte corrette o eticamente appropriate invece che essere addestrato solo su tutto internet senza filtri.
- Esempio: I GPT 3 iniziali potevano rispondere a domande su temi eticamente discutibili senza filtri. Oggi, grazie allβaddestramento con testi scritti da annotatori umani, evitano queste risposte.
2. Retrieval-Augmented Generation (RAG) (o Grounding)
- Arricchire il prompt con informazioni reali di contesto.
- Ad esempio, prima di rispondere a una domanda, il sistema esegue una ricerca in archivi o database specifici per ottenere il contesto. Questo contesto viene poi incluso nel prompt per aiutare il modello a rispondere basandosi su informazioni reali.
- Fornendo quindi sia la domanda che la risposta nel prompt il Language Model non deve inventarseli ma deve solo recuperare informazioni che ha giΓ .
3. Guardrails (Barriere di sicurezza)
- Si costruiscono barriere intorno al modello, imponendo limiti su certi tipi di risposte, quindi Γ¨ sempre un arricchimento del prompt come sopra ma non con informazioni di contesto ma con dei limiti che devono essere rispettati.
- Esempio: Prompt che includono regole del tipo βRispondi solo sulla base di questi contenutiβ.
4. Controllo a valle (Post-processing)
- Una volta generata la risposta, viene controllata per verificarne la coerenza con i dati di partenza.
- Esempio: Si verifica se la risposta Γ¨ deducibile da un documento specifico o se tocca argomenti sensibili, per bloccarla o correggerla.
Approfondimento geometrico
Cosa Γ¨ un modello
Un modello Γ¨ una funzione che approssima un andamento estratto dai dati, ovvero una rappresentazione statistica della realtΓ . Quando parliamo di un modello, ci riferiamo a un sistema che prende in ingresso dei dati e restituisce una stima di un valore dβuscita.
Nellβimmagine sotto i punti neri sono i dati presi dal mondo reale mentre la curva blu Γ¨ lβapprossimazione del modello.
Un modello Γ¨ quindi:
- Unβapprossimazione: il modello cerca di adattarsi ai dati, ma non Γ¨ una rappresentazione perfetta della realtΓ .
- Γ definito su tutto lo spazio: mentre i dati di addestramento sono punti discreti raccolti dal mondo reale, il modello generalizza e definisce una funzione continua anche dove non ho informazione. Questa seconda caratteristica Γ¨ fondamentale per comprendere le allucinazioni: il modello esiste e opera anche in regioni dello spazio in cui non ci sono dati di addestramento diretti, portandolo a produrre output βinventatiβ.
Come si crea un modello
Un modo per costruire questi modelli Γ¨ utilizzare reti neurali, che sono simulazioni del tessuto nervoso biologico. Spesso si parla di black box perchΓ© la loro complessitΓ rende difficile interpretare esattamente come arrivano alle loro previsioni. Le reti neurali sono strutturate in strati di neuroni, che si scambiano segnali attraverso connessioni ponderate da parametri numerici chiamati pesi. Lβapprendimento avviene aggiustando questi pesi per migliorare la capacitΓ del modello di approssimare i dati.
Stratificazione delle informazioni
Le reti neurali hanno unβorganizzazione gerarchica in cui i neuroni piΓΉ superficiali hanno a che fare con quanto inserito dallβutente mentre piΓΉ si va a fondo piΓΉ si perde la relazione con lβinput dellβutente e i pesi diventano piΓΉ βastrattiβ.
Si chiama deep learning proprio perchΓ© Γ¨ deep, quindi gli strati della rete sono molto profondi.
- Strati iniziali: interagiscono direttamente con lβinput
- Immagine: i pixel di una immagine, i bordiβ¦
- Testo: accostamento tra sillabe
- Strati intermedi: elaborano rappresentazioni piΓΉ astratte
- Immagine: pattern di colore, orientamentiβ¦
- Testo: strutture grammaticali
- Strati finali: catturano concetti di livello piΓΉ alto
- Immagine: oggetti astratti
- Testo: strutture semantiche
Come funziona un LLM
I Language Model, sono come dei classificatori il cui compito Γ¨:
- Ogni sequenza di testo (prompt) viene rappresentata in uno spazio multi-dimensionale.
- Il modello cerca di prevedere il token successivo, suddividendo lo spazio in zone corrispondenti alle possibili continuazioni.
Quando si interagisce con un modello di linguaggio, ogni input viene trasformato in un punto nello spazio dei dati. Il modello, in base alla sua struttura interna e allβaddestramento ricevuto, determina quale sia il token piΓΉ probabile per proseguire la sequenza.
Nellβesempio sotto si vede uno spazio tridimensionale (nella realtΓ Γ¨ uno spazio a quasi infinite dimensioni) dove ogni punti rappresenta un prompt (che Γ¨ formato da una serie di token) e il classificatore deve raggruppare tutti i prompt in base al token successivo.
Per esempio tutti i prompt del primo insieme forniranno come token successivo βilβ, tutti i prompt nel secondo insieme β!-β e cosΓ¬ via.
Questo processo avviene iterativamente: il token generato viene reimmesso nel modello, che cerca di trovare il token successivo più probabile e coaì via.
- Ogni parola viene scelta tra circa 880.000 token possibili.
- I testi con significati simili vengono collocati in regioni vicine dello spazio del modello.
Allucinazione
Abbiamo detto che il modello divide lo spazio in regioni e assegna a ogni punto una previsione, che Γ¨ il token successivo che dovrΓ fornire. Tuttavia, ci sono aree dello spazio in cui il modello non ha esempi diretti dai dati di addestramento, eppure il modello ha diviso comunque tutto lo spazio in zone, indipendentemente che ci siano dati o meno, semplicemente la divisione non sarΓ cosΓ¬ accurata. Quando il modello genera una risposta in una di queste zone, non ha un riferimento reale, e quindi si βinventaβ un output coerente con la sua struttura interna, ma non necessariamente corretto rispetto alla realtΓ .
Se chiediamo:
βScrivi un sonetto in stile Eminem su un cucchiaio di legnoβ
Γ improbabile che il modello abbia visto un esempio simile nei dati di addestramento. Tuttavia, Γ¨ in grado di generalizzare e creare un testo coerente, basandosi sulle sue rappresentazioni interne di βsonettoβ, βstile Eminemβ e βcucchiaio di legnoβ.
Da un punto di vista geometrico, il modello sta lavorando in una zona dello spazio senza dati diretti, ma continua a produrre output basandosi sulle informazioni che ha a disposizione.
A questo punto, Γ¨ chiaro che lβallucinazione non Γ¨ un errore, ma una proprietΓ fondamentale del modello. Γ proprio questa capacitΓ di interpolare e generare testo in zone di spazio non mappate direttamente che rende i Language Model cosΓ¬ potenti. Da un lato, ciΓ² permette loro di essere creativi. Dallβaltro, significa che le loro risposte non devono essere interpretate come veritΓ assolute. Allucinazione e creativitΓ in un LLM sono la stessa identica cosa.