• 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:

  1. Un’approssimazione: il modello cerca di adattarsi ai dati, ma non Γ¨ una rappresentazione perfetta della realtΓ .
  2. È 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.

Video