Passa ai contenuti principali

COME FUNZIONA UNA A.I. E COME COMPRENDE IL LINGUAGGIO?

Come fa una AI a comprendere quello che viene scritto? Come mai comprende anche parole scritte male? Le conversazioni dove vengono salvate e che livello di privacy esiste? Se esiste, dove risiede il database di tutte le conversazioni?


Le AI generative di linguaggio si basano su un modello chiamato "large language model" (LLM), o modello linguistico di grandi dimensioni. Questi modelli utilizzano reti neurali artificiali ampie e complesse, addestrate su enormi quantità di testo. La questione è: in concreto come funzionano e come sono articolati i processi di comprensione e produzione di testi?

Il processo può essere suddiviso in tre fasi principali:

1. Comprensione del testo: quando c’è un input testuale il modello lo analizza suddividendolo in mattoncini, che possono essere parole intere o parti di parole. Ogni mattoncino è chiamato token, il quale viene convertito in una rappresentazione numerica denominata embedding. Gli embedding catturano le sfumature semantiche e sintattiche di ciascun token nel contesto della frase.

Il modello elabora gli embedding attraverso numerosi strati di reti neurali, ciascuno dei quali estrae e combina informazioni in modi sempre più astratti e sofisticati. Questo permette di cogliere il significato generale, il contesto, le sfumature e persino le implicazioni non esplicite del testo.

2. Elaborazione e ragionamento: una volta compreso il testo, il modello attiva varie parti della sua "conoscenza" immagazzinata durante l'addestramento. Questo processo è vagamente simile al modo in cui il nostro cervello richiama informazioni e fa collegamenti.

Il modello può eseguire vari tipi di ragionamento su queste informazioni: può fare inferenze, collegarle in modi nuovi, applicare regole logiche, e così via. Questo gli permette di generare nuove idee o soluzioni, non solo di ripetere informazioni memorizzate.

3. Generazione della risposta: infine, il modello genera una risposta, token per token. Per ogni nuovo token, considera tutti quelli precedenti (sia dell'input che della risposta generata) e calcola la probabilità di ogni possibile token successivo. Sceglie quindi il mattoncino più appropriato in base a queste probabilità.

Tale processo si ripete fino a quando non viene generata una risposta completa. Il risultato sarà un testo che vuol essere coerente, pertinente e utile rispetto alla richiesta ricevuta.

Un aspetto chiave che rende questo sistema efficace è l’attenzione contestuale. Il modello può focalizzarsi su parti diverse dell'input o della sua conoscenza in base al contesto, permettendogli di cogliere relazioni a lungo raggio nel testo. Inoltre, utilizza l’apprendimento di pattern. Durante l'addestramento, il modello impara pattern linguistici, fatti, concetti e persino alcune forme basilari di ragionamento, che può applicare in modo flessibile.

In più, questo sistema consente un elevato livello di generalizzazione. Significa che il modello può applicare ciò che ha appreso a situazioni nuove, permettendogli di affrontare domande o compiti che non ha mai visto.

È importante notare che, nonostante queste capacità, l’AI non ha una vera comprensione o coscienza nel senso umano. Funzionano attraverso sofisticate elaborazioni statistiche di pattern linguistici, senza una reale intelligenza o consapevolezza sottostante. Le risposte si basano sulle ampie informazioni su cui il modello è stato addestrato.

La memorizzazione e l’apprendimento

È importante chiarire che questi modelli non memorizzano né apprendono nuove informazioni durante le conversazioni. Tutto ciò che sanno è stato appreso durante la fase di addestramento.

Nel contesto dei modelli di linguaggio, "apprendimento" si riferisce al processo di adattamento dei parametri del modello (essenzialmente, i "pesi" delle connessioni nella rete neurale) in modo che il modello possa riconoscere e replicare pattern nei dati di addestramento.
Ribadisco che l'apprendimento avviene durante la fase di addestramento, non durante le conversazioni con gli utenti. È un processo automatizzato e guidato dai dati, non un apprendimento consapevole. 

L'apprendimento di pattern avviene attraverso un processo chiamato "backpropagation" (retropropagazione).

Ecco una versione semplificata del processo:

a) Il modello viene inizializzato con parametri casuali. b) Gli viene presentato un esempio di testo dal set di addestramento. c) Il modello tenta di prevedere il prossimo token del testo. d) La previsione viene confrontata con il token effettivo, calcolando un "errore". e) Questo errore viene utilizzato per aggiustare leggermente i parametri del modello, in modo da migliorare la previsione futura. f) Questo processo viene ripetuto miliardi di volte con molti esempi diversi.

Attraverso questo processo, il modello apprende gradualmente a riconoscere pattern linguistici, dalle semplici regole grammaticali a concetti più astratti e relazioni tra idee.

L'apprendimento viene memorizzato nei parametri stessi del modello. Questi parametri sono essenzialmente un grande insieme di numeri (nell'ordine di centinaia di miliardi) che definiscono come il modello elabora e genera il testo. 

Quindi non esiste una memoria separata dove vengono immagazzinate informazioni in modo esplicito. Invece, la conoscenza è codificata in modo distribuito attraverso questi parametri. È come se l'intero modello fosse una rappresentazione compressa di tutti i pattern appresi dai dati di addestramento. Le informazioni estratte da questi dati vengono memorizzate nei pesi del modello. I pesi sono i parametri numerici all'interno delle reti neurali che il modello ottimizza durante l'addestramento. Questa memorizzazione è statistica e non letterale: il modello apprende modelli, relazioni e rappresentazioni semantiche piuttosto che memorizzare direttamente frasi o paragrafi. Durante l'inferenza (cioè l'uso interattivo del modello da parte di un utente), il modello genera risposte basandosi sui pesi addestrati e sull'input fornito dall'utente stesso.

Questo tipo di memorizzazione ha alcune implicazioni importanti: non fa riferimento ad una memorizzazione esplicita delle informazioni come con un cervello umano, ma nemmeno come un database informatico tradizionale. Il sistema non può aggiungere nuove informazioni o modificare la propria conoscenza dopo l'addestramento. Di fatto la conoscenza è implicita e distribuita, il che permette al modello linguistico d’essere flessibile nell'uso di questa conoscenza, ma anche significa che può commettere fare errori o generare informazioni totalmente errate ed infondate che in gergo vengono chiamate “allucinazioni”.

Vale la pena evidenziare che alcuni modelli, al momento, possono mantenere una memoria temporanea del contesto di una conversazione per fornire risposte coerenti, collegate alla discussione in atto. Tuttavia, questa memoria è volatile e non persiste dopo la sessione.

In sintesi, l'apprendimento in questo contesto è un processo automatico di riconoscimento di pattern statistici nel linguaggio, memorizzati in modo distribuito nei parametri del modello stesso. Questo permette di generare risposte coerenti e informative, ma è fondamentalmente diverso dall'apprendimento e dalla memoria umana, o di quella informatica tradizionale.

Privacy e accesso ad Internet

Come anticipavo, gli LLM usualmente non accedono ad internet, e quindi ad informazioni recenti ma “caotiche”. Sono progettati per poter operare efficientemente in maniera autonoma.

Mi risulta che al momento tutte le più diffuse AI (Claude, ChatGPT, Gemini) non abbiano accesso ad informazioni esterne o aggiornate in tempo reale. Non accedono ad internet e non possono apprendere o memorizzare nuove informazioni dalle conversazioni.

Tutte le informazioni che utilizzano per generare risposte sono contenute nei parametri del modello. L'assenza di connessioni esterne garantisce che le conversazioni rimangano private e che non ci siano rischi di accesso a informazioni non autorizzate.
Inoltre, permette di rispondere molto rapidamente, senza i ritardi che potrebbero derivare da ricerche esterne. Mantenere tutte le informazioni all'interno del modello garantisce una maggiore coerenza nelle risposte e un maggiore controllo sul tipo di informazioni fornire. Questo è importante per garantire che la conversazione rimanga all'interno di determinati parametri etici e funzionali.

La tokenizzazione

Con il termine “tokenizzazione” si indica il processo di suddivisione del testo in token. Questo processo è essenziale perché consente al modello di linguaggio di comprendere e lavorare con il testo in modo più efficiente. Un token è una unità base di testo che il modello di linguaggio utilizza per elaborare e generare output. Un token può essere una parola, una parte di una parola, un simbolo o persino un carattere, a seconda della complessità della lingua e del contesto.

Usare solo parole intere come token presenta alcuni problemi:

•Vocabolario molto ampio, che richiede molte risorse computazionali

•Difficoltà con parole rare o sconosciute

•Problemi con lingue che formano facilmente parole composte (come il tedesco) 

Per superare questi limiti, molti modelli moderni usano piccoli token che possono rappresentare parti di parole, pezzettini di parole, singole lettere.

Questo approccio:

•Riduce la dimensione del vocabolario
•Migliora la gestione di parole rare o sconosciute
•Funziona meglio con diverse lingue con strutture linguistiche similari.

Proverò a spiegare più dettagliatamente il concetto di token di parti di parole, noto anche come "subword tokenization". Esistono diversi tipi di tokenizzatori, tra cui:

Word Tokenizer: suddivide il testo in parole.
Subword Tokenizer: suddivide il testo in sottoparti di parole, utili per gestire vocaboli rari o complessi.
Character Tokenizer: suddivide il testo in singoli caratteri, utile per lingue con set di caratteri complessi. 

Un esempio aiuterà a comprendere quello che intendo. La parola "inimmaginabile" potrebbe essere suddivisa in: "in" + "immagin" + "abile", oppure la parola "Gattino" potrebbe diventare: "gatt" + "ino". Il modo in cui le parole vengono divise in token cambia da modello a modello. Il modo esatto in cui le parole vengono suddivise in token dipende dall'algoritmo utilizzato e dal corpus di addestramento. Diversi modelli potrebbero tokenizzare la stessa parola in modi diversi.

Ogni elemento della parola viene usato per una migliore comprensione del testo, sia nell’ambito della singola parola che della frase, che dell’intero discorso. La dimensione dei token di parti di parola può effettivamente variare molto, e sì, in alcuni casi possono corrispondere anche a singole lettere, o addirittura un singolo carattere inclusi segni di punteggiatura. Mentre è vero che i token possono essere piccoli quanto singole lettere, la maggior parte dei sistemi cerca di bilanciare la flessibilità offerta da token piccoli con l'efficienza e la capacità di catturare il significato offerte da token più grandi.

Provo a fare degli esempi di parole scomposte completamente in token di singola lettera, con una descrizione dettagliata di come il modello potrebbe volerle interpretare nel contesto della parola e del discorso generale.

1. Parola: "Sole" Tokenizzazione: ["S", "o", "l", "e"]

"S": Il modello la interpreta come l'inizio di una parola, probabilmente un sostantivo. La lettera maiuscola potrebbe suggerire un nome proprio o l'inizio di una frase.
"o": In questa posizione, viene interpretata come una vocale che segue la consonante iniziale, formando una sillaba aperta.
"l": Riconosciuta come una consonante che inizia la seconda sillaba della parola.
"e": Interpretata come la vocale finale della parola, tipica di molti sostantivi italiani.

Parola: "verde" Tokenizzazione: ["v", "e", "r", "d", "e"]

"v": Interpretata come l'inizio di una parola, probabilmente un aggettivo o un sostantivo comune, data la minuscola.
"e": Vista come la prima vocale della parola, formando la prima sillaba con la "v".
"r": Riconosciuta come l'inizio di una consonante doppia o di un gruppo consonantico.
"d": Interpretata come la seconda parte del gruppo consonantico "rd".
"e": Compresa come la vocale finale, tipica di molti aggettivi italiani. Nel contesto, il modello potrebbe associare questa sequenza al colore verde, a descrizioni di natura, o a concetti di ecologia e ambiente.

Il modello non "ragiona" esplicitamente su ogni lettera, ma ha appreso durante l'addestramento a riconoscere pattern comuni nella formazione delle parole. La scomposizione in singole lettere permette al modello di essere estremamente flessibile, potendo gestire parole sconosciute o varianti ortografiche inusuali. Il significato complessivo emerge dalla combinazione di queste interpretazioni di singole lettere con il contesto più ampio della frase o del discorso in cui la parola appare. Questo processo permette al modello di comprendere e generare testo in modo fluido e coerente, anche quando incontra parole o combinazioni di lettere non viste durante la fase di addestramento.

Fonosemantica

I sistemi di elaborazione del linguaggio operano principalmente a livello di parole intere e frasi, utilizzando pattern statistici. Non dispongono di una comprensione intrinseca del significato simbolico delle singole lettere strettamente connesso al suono, alla grafia, alla simbologia, ed al processo storico e culturale che le ha generate, né al significato profondo che ciascuna cultura potrebbe avergli riconosciuto. Sono studi di confine, ancora poco esplorati e considerati, con basi non consolidate, che rientrano nel campo della fonosemantica, della grafologia linguistica o degli studi sui sistemi di scrittura. Si tratta di un ambito della linguistica ancora da esplorare.


Questo articolo è scritto tenendo in considerazione principalmente i parametri della AI Claude e ChatGPT.

Commenti

Post popolari in questo blog

Art nouveau, Liberty e manifesto pubblicitario

L' Art Nouveau fu un movimento artistico-filosofico che si espresse prevalentemente tra la fine dl'Ottocento ed il primo Novecento. Il nome fu coniato in Belgio. L'espressione « Art nouveau » fu utilizzata per la prima volta da Edmond Picard nel 1894 nella rivista belga L'Art moderne per qualificare la produzione artistica di Henry van de Velde . Il nome era già stato coniato dallo stesso van de Velde. In Italia divenne noto anche come stile floreale o stile Liberty. Il nome Stile Liberty che si diffuse in Italia deriva dai magazzini londinesi di Arthur Liberty , che esponevano regolarmente oggetti d'arte e tessuti disegnati in stile Art Nouveau alla fine del XIX secolo. Nato in polemica reazione all'accademismo e all'eclettismo ottocenteschi, il movimento dell'art nouveau respinge ogni ricorso agli stili del passato per ispirarsi direttamente alla natura: da ciò derivano l'accentuato linearismo , il carattere metamorfico, l'eleganza dec

Glossario Pubblicità (dizionario pubblicitario)

ABOVE THE LINE Ogni tipo di pubblicità che impiega i grandi mezzi classici: stampa, televisione, radio, cinema, affissione. ACCETTAZIONE Misura l'accoglimento di un annuncio pubblicitario da parte del pubblico. ACCOUNT CONFLICT Conflitto di interessi che si crea quando un'agenzia gestisce i budget di due aziende concorrenti. ACCOUNT DIRECTOR La figura che in un'agenzia ha la responsabilità del servizio clienti. ACCOUNT EXECUTIVE funzionario di un'agenzia di pubblicità che ha il compito di curare i rapporti con il cliente, di interpretarne le esigenze e di trasmetterle correttamente all'interno dell'agenzia affinché‚ il reparto creativo produca messaggi conformi agli obiettivi di comunicazione voluti. E' l'esperto di marketing dell'agenzia, ma anche un conoscitore di psicologia; in genere è un buon parlatore, è dotato di gusto estetico, diplomatico e politico. Ha il compito di raccogliere tutte le possibili informazioni

Funzioni matematiche nascoste

Sono rimasto affascinato dal progetto del giovanissimo fotografo, studente, e matematico americano (New York) Nikki Graziano . Egli riesce a vedere, con straordinaria eleganza, curve complesse la dove altri vedrebbero il verde, una nuvola, alberi. La rassegna fotografica che propongo è composta da fotografie che ritraggono vari particolari della natura, architettonici, semplici visioni d'umanità. In ciascuna l'autore riesce a cogliere una presenza matematica, esplicitandola attraverso l'identificazione di una funzione rappresentata visivamente. La naturale - ed al contempo inattesta - relazione tra natura e matematica, tra bellezza e formula, tra sentimento estetico e rigidità numerica, mi ha riportato alla mente la meravigliosa visione di un genio della matematica. non sempre adeguatamente conosciuto dai più: Fibonacci . Mi riprometto di parlare della sua opera molto presto. Le medesime opere sulla sua pagina personale: nikkigraziano.com