Come funziona l’Intelligenza Artificiale; tre elementi fondamentali. Una panoramica sui LLM (Large Language Model), su Database Vettoriali e sui Vettori di Parole.

L’Intelligenza Artificiale (AI) è l’argomento del momento, sia riguardo agli utilizzi nella vita delle aziende, sia per gli utilizzi che le persone, nel loro, privato, ne fanno. Contemporaneamente solleva moltissimi interrogativi formali, ed etici che richiedono risposte capaci di interpretare la realtà umana in cui, diciamo anche con una certa prepotenza, le AI si sono inserite.
Prima di ogni altra cosa, è importante capire come funzionano le AI, soffermandoci su tre elementi fondamentali (anche per non complicare troppo le cose), che sono alla base delle AI: i Large Language Models (LLM), i Database Vettoriali e i Vettori di Parole.

L'intelligenza artificiale e i modelli di linguaggio di grande dimensione: una panoramica sui LLM, su Database Vettoriali e i vettori di parole.

Cosa sono i Large Language Models (LLM)?

Nel mondo dell’AI, un modello di linguaggio è un tipo di software che permette alle macchine di comprendere e generare linguaggio umano. I Large Language Models o LLM sono modelli di linguaggio di grande dimensione, che si basano su tecniche di machine learning e apprendimento profondo. Sfruttando grandi quantità di dati testuali, i LLM imparano a predire la parola successiva in una frase, fornendo così risposte coerenti a una serie di richieste. Senza i LLM possiamo non avremmo GPT-3 o 4, Google Bard, o Llama2 di Meta.

Come funzionano i LLM?

I LLM si basano su principi di machine learning e apprendimento profondo. Vengono addestrati su vasti corpus di testo in vari linguaggi, e imparano a riconoscere e generare modelli linguistici complessi. Il cuore di questo processo è una rete neurale, un modello computazionale vagamente ispirato al funzionamento del cervello umano, che “impara” a riconoscere e riprodurre modelli complessi a partire da grandi quantità di informazioni. Grazie a questa capacità di “apprendimento“, i LLM sono in grado di generare risposte che tengono conto del contesto in cui sono inseriti. Gli LLM, come si intuisce, sono alimentati una grandissima quantità di dati; questi dati sono conservati gestiti in maniera diversa da quella a cui, probabilmente, siamo abituati, all’interno di database chiamati vettoriali.

Cosa sono i database vettoriali

I database vettoriali, noti anche come spazi vettoriali o embeddings, sono un elemento cruciale nel campo dell’apprendimento automatico e dell’IA. Questi database funzionano mappando entità complesse, come parole, immagini o suoni, in vettori di numeri reali in uno spazio multidimensionale. Questo mappatura, o embedding, cattura le relazioni semantiche e di somiglianza tra le diverse entità.
Ad esempio, in un database vettoriale di parole, elementi semanticamente simili come “gatto” e “cane” sarebbero posizionate vicine l’una all’altra nello spazio vettoriale, mentre parole non correlate, come “gatto” e “frigorifero”, sarebbero lontane.

I database vettoriali stanno avendo un fortissimo sviluppo perché permetteranno alla IA di essere strumenti multimodali, ovvero di avere la capacità di correlare informazioni da più modalità di input (ad esempio, testo, immagini, suoni) e di restituire risposte o nella stessa modalità di input o con modalità differenti (esempio: testo che restituisce testo, o immagine che restituisce testo, o viceversa) tutto in uno stesso sistema. L’embedding vettoriale, in sostanza, permette di rappresentare sia le parole del testo sia le caratteristiche dell’immagine in uno spazio condiviso, facilitando così la comprensione combinata di entrambi i tipi di dati. Ad esempio, l’IA può essere in grado di capire che una frase come “il gatto è sul divano” e un’immagine di un gatto su un divano sono correlate perché le rappresentazioni vettoriali del testo e dell’immagine si sovrappongono nello spazio vettoriale.

Come un LLM impara

Come abbiamo visto, il processo di apprendimento dei LLM si basa su una combinazione di algoritmi di machine learning e grandi quantità di dati. Questo processo può essere suddiviso in due fasi principali: l’addestramento e l’inferenza.
Nella fase di addestramento, il modello di linguaggio viene alimentato con enormi quantità di testo provenienti da una molteplicità di fonti – si può pensare a libri, pagine web, articoli di giornali, e molti altri tipi di testi. Il fine ultimo è “insegnare” al modello le intricate regole e strutture che costituiscono il linguaggio umano. Ciò avviene esplorando e apprendendo le relazioni tra le parole e i contesti in cui appaiono.

Per “relazione tra le parole” ci si riferisce a come le parole interagiscono tra di loro all’interno di una frase o di un discorso. Ad esempio, il modello deve capire che in “Il gatto è sul tetto”, “gatto” e “tetto” hanno una relazione spaziale indicata dalla preposizione “sul”. Questa relazione è diversa in “Il gatto ha paura del tetto”, dove “paura” e “tetto” indicano una relazione emotiva. Questo tipo di apprendimento contestuale è fondamentale per la comprensione e la generazione di linguaggio coerente da parte del modello.

Tuttavia, è importante chiarire che questa analisi delle relazioni tra le parole è diversa dal memorizzare l’informazione come un fatto specifico. Ad esempio, il modello potrebbe imparare che la parola “gatto” appare spesso vicino alla parola “micio”, e quindi dedurre che sono semanticamente simili. Ma questo non significa che il modello “sappia” che “gatto” e “micio” sono entrambi termini per un tipo di animale domestico. La sua “comprensione” si basa sull’analisi dei pattern nei dati di addestramento, non su una conoscenza del mondo reale nel senso umano del termine.

L’addestramento di un LLM avviene attraverso un processo di ottimizzazione in cui il modello tenta di minimizzare la differenza tra le sue previsioni e i dati reali. Ad esempio, il modello potrebbe ricevere un frammento di testo e il suo obiettivo sarebbe quello di prevedere la prossima parola in base alle parole precedenti. Attraverso ripetuti cicli di addestramento e correzione, il modello “impara” a generare previsioni sempre più precise.

Nella seconda fase, detta di inferenza, il modello utilizza ciò che ha appreso durante l’addestramento per generare nuovi testi. Ad esempio, se viene fornito l’inizio di una frase, il modello può completarla in base a ciò che ha appreso durante la fase di addestramento.

È importante sottolineare che, nonostante il termine “apprendimento“, i LLM non acquisiscono una comprensione concettuale o semantica del testo nel modo in cui lo farebbe un essere umano. Piuttosto, “apprendono” riconoscendo e riproducendo i pattern nel testo con cui sono stati addestrati.

Differenze tra l’apprendimento umano e l’apprendimento dei LLM

E a proposito di apprendimento, sebbene i LLM siano capaci di imitare aspetti del linguaggio umano con un grado di precisione sorprendente, è importante sottolineare che il loro processo di apprendimento è fondamentalmente diverso da quello degli esseri umani. E di conseguenza il loro modo di elaborare le informazioni per fornire risposte.

Gli esseri umani apprendono attraverso l’esperienza diretta, l’interazione con il mondo e altri esseri umani, e utilizzano un mix di apprendimento implicito e esplicito. L’addestramento dei LLM, al contrario, si basa unicamente su grandi quantità di testo. Non hanno accesso a un’esperienza del mondo diretta o a una comprensione innata del mondo. Questo significa che, anche se possono generare risposte coerenti e realistiche, non “comprendono” le informazioni nel senso in cui gli esseri umani lo fanno.

Questa differenza fondamentale tra l’apprendimento umano e l’apprendimento dei LLM è uno dei motivi per cui, nonostante i loro notevoli progressi, i modelli di linguaggio rimangono strumenti con limiti significativi, soprattutto quando si tratta di comprendere il mondo e i suoi contesti nel modo in cui gli esseri umani lo fanno. I LLM sono progettati per affrontare questa sfida, attraverso l’uso dei cosiddetti vettori di parole.

Cosa sono i vettori di parole?

I vettori di parole, noti anche come word embeddings, rappresentano un’altra componente essenziale nel funzionamento dei LLM. Nell’ambito del Natural Language Processing (NLP), ovvero l’elaborazione del linguaggio naturale, i vettori di parole sono usati per dare una rappresentazione numerica al linguaggio umano.
Durante l’addestramento, i modelli imparano a riconoscere i pattern di utilizzo delle parole e a comprendere come il contesto può influenzare il loro significato. In questo modo, sono in grado di generare risposte che tengono conto non solo delle parole stesse, ma anche del contesto in cui vengono utilizzate.

Questo è fondamentale perché il significato delle parole cambia a seconda del contesto in cui sono utilizzate. Ad esempio, la parola “penna” può riferirsi ad uno strumento di scrittura o ad un uccello; oppure la parola “corda” che può riferirsi a un oggetto per legare un pacco o alla corda di uno strumento. Per l’intelletto umano questa comprensione avviene in maniera naturale e spontanea (e la cosa è collegata ai naturali processi di apprendimento del cervello); ma per le IA questa è la vera sfida da affrontare per riuscire a fornire risposte alle domande che gli vengono poste. La capacità dei DB vettoriali (che abbiamo visto in precedenza) è quella di rappresentare ogni parola secondo il suo vettore, in uno spazio multidimensionale. Parole con significati simili o correlati tendono ad essere posizionate vicine nello spazio vettoriale, mentre parole con significati differenti sono più lontane. Questa rappresentazione consente ai modelli di linguaggio di “capire” le relazioni semantiche tra le parole e di generare testo che rispecchia le complessità del linguaggio umano.

Questa rappresentazione vettoriale delle parole è una delle ragioni principali per cui i LLM possono generare risposte così coerenti e fluide. È solo questa rappresentazione delle parole che consente ai modelli di capire non solo le singole parole, ma anche il contesto in cui sono utilizzate. Ma attenzione: gli LLM comprendono le relazioni tra le parole, non i significati.

Cosa vuol dire che gli LLM prevedono la relazione tra le parole

Quando parliamo di LLM che “prevedono la relazione tra le parole“, ci riferiamo alla loro capacità di anticipare quale parola potrebbe seguire logicamente in una sequenza di parole, sulla base di ciò che hanno appreso durante la fase di addestramento. Questa è una caratteristica fondamentale di questi modelli ed è quella che permette loro di generare testo coerente e comprensibile.
Supponiamo, per esempio, che al modello venga data la sequenza “Il gatto sta dormendo sul…”. Basandosi sui dati con cui è stato addestrato, il modello potrebbe prevedere che una parola logica per completare questa frase potrebbe essere “divano” o “tappeto”, perché ha visto queste parole usate in contesti simili durante l’addestramento.
In pratica, questo meccanismo di previsione consente agli LLM di rispondere alle domande, tradurre il linguaggio, riassumere i testi e svolgere molte altre attività legate al linguaggio. Ad esempio, se stiamo utilizzando un LLM per generare risposte a domande in un sistema di assistenza virtuale, il modello utilizzerà la sua capacità predittiva per generare una risposta che “sia in linea” con la domanda posta.

I limiti dei LLM

Nonostante le loro notevoli capacità, i LLM presentano anche importanti limiti. Essi possono mostrare bias impliciti nei dati di addestramento, mancare di comprensione del mondo reale e sollevare problemi etici. Ad esempio, se addestrati su dati di testo con pregiudizi razziali o di genere, i modelli possono riprodurre tali pregiudizi nelle loro risposte. Inoltre, i LLM non “capiscono” il mondo nel senso in cui lo facciamo noi umani, ma si limitano a riconoscere e riprodurre modelli nei dati.

Cosa dobbiamo aspettarci in futuro

Il campo dell’AI è in continua evoluzione, e possiamo aspettarci che sia i LLM che i Database Vettoriali, come i Vettori di Parole giocheranno un ruolo sempre più importante. Probabilmente vedremo modelli di linguaggio sempre più sofisticati e precisi, così come database vettoriali in grado di gestire volumi di dati sempre più grandi. Soprattutto vedremo AI capaci di interpretare sempre più dati di diversa natura e elaborare diversi tipi di risposte.