N. 169 -
gennaio 2024
Approfondimenti
IA. GLOSSARIO ESSENZIALE
Glossario essenziale di Intelligenza Artificiale Generativa: dal Machine Learning all’LLM
Artificial Intelligence (AI)
L’intelligenza artificiale (IA o AI in inglese) è la capacità del software di eseguire compiti che richiedono tradizionalmente l’intelligenza umana. Se ne parla dalla metà del Novecento n chatbot?
Chatbot
Fondamentalmente, un chatbot è un software che simula ed elabora le conversazioni umane (scritte o parlate), consentendo agli utenti di interagire con i dispositivi digitali come se stessero comunicando con una persona reale. I chatbot possono essere semplici come programmi rudimentali che rispondono a una semplice query con una singola riga oppure sofisticati come gli assistenti digitali che apprendono e si evolvono per fornire livelli crescenti di personalizzazione quando raccolgono ed elaborano le informazioni.
ChatGPT
è un’applicazione di chat costruita su un LLM chiamato «GPT» con alcune caratteristiche uniche. Una di queste è l’apprendimento per rinforzo da feedback umano (RLHF), una tecnica utilizzata da OpenAI per affinare i modelli GPT per preferire una risposta rispetto a un’altra.
Un’altra è l’interfaccia di chat di OpenAI, che ricorda gli scambi precedenti con l’utente nella sessione e li aggiunge al prompt (la domanda proposta dall’utente), generando una sorta di conversazione che ha «memoria» di quanto è stato detto prima.
Deep Learning
Il deep learning è un sottoinsieme del machine learning (che a sua volta è un sottoinsieme dell’intelligenza artificiale) che utilizza reti neurali profonde, strati di “neuroni” connessi i cui collegamenti hanno parametri o pesi che possono essere addestrati. È particolarmente efficace nell’apprendimento da dati non strutturati come immagini, testi e audio. Facciamo un esempio: Netflix che propone show che potrebbero piacerti è machine learning. ChatGPT che inventa testi originali è deep learning.
Fine-Tuning
Letteralmente la “messa a punto fine” è il processo di adattamento di un modello di base pre-addestrato per eseguire meglio un compito specifico. Questo comporta un periodo relativamente breve di addestramento su un set di dati etichettati, che è molto più piccolo del set di dati su cui il modello è stato inizialmente addestrato. Questo ulteriore addestramento permette al modello di apprendere e adattarsi alle sfumature, alla terminologia e ai modelli specifici trovati nel set di dati più piccolo.
Foundation Model (FM)
I modelli di base (FM) sono modelli di deep learning addestrati su enormi quantità di dati non strutturati e non etichettati che possono essere utilizzati per una vasta gamma di compiti direttamente o adattati a compiti specifici attraverso il fine-tuning. Esempi di questi modelli sono GPT-4, PaLM, DALL·E 2 e Stable Diffusion.
Generative AI
L’IA generativa è un’intelligenza artificiale che è tipicamente costruita utilizzando FM e ha capacità che l’IA precedente non aveva, come il generare contenuti: testi, post, audio, video, ecc. Ma non solo. I modelli di base possono anche essere utilizzati per scopi non generativi (per esempio, classificare il “sentiment” dell’utente come negativo o positivo sulla base delle trascrizioni delle chiamate) offrendo un miglioramento significativo rispetto ai modelli precedenti. Un esempio concreto: un’azienda di e-commerce, mettiamo Amazon, potrebbe utilizzare l’AI per generare raccomandazioni personalizzate di prodotti in base al comportamento passato del cliente, alle preferenze e ad altri dati pertinenti. Questo può migliorare l’engagement del cliente, aumentare le vendite e creare un’esperienza più soddisfacente per l’utente.
Graphics Processing Units (GPUs)
Le unità di elaborazione grafica (GPU) sono chip originariamente sviluppati per produrre grafica per computer (per esempio per i videogiochi) e sono anche utili per le applicazioni di deep learning. In contrasto, il machine learning tradizionale di solito viene eseguito su unità di elaborazione centrale (CPU), normalmente indicate come il “processore” di un computer.
Negli ultimi tempi si parla molto dell’esplosione del valore dell’azienda Nvidia, proprio per la continua crescita della domanda di processori per gestire le piattaforme di machine learning.
Large Language Model (LLM)
I modelli di linguaggio di grandi dimensioni (LLM) costituiscono una classe di modelli di base che possono elaborare enormi quantità di testo non strutturato e apprendere le relazioni tra parole o parti di parole, noti come token. Questo permette agli LLM di generare testo in linguaggio naturale, eseguendo compiti come la sintesi o l’estrazione di conoscenze. GPT-4 (che sottende ChatGPT) e LaMDA (il modello dietro Bard di Google) sono esempi di LLM.
Una LLM molto interessante è Alpaca, progetto dell’università di Stanford. Con 7 miliardi di parametri, Alpaca offre performance paragonabili a text-davinci-003 di OpenAI, ma con costi di gestione notevolmente ridotti. Sorprendentemente, il modello può funzionare su un comune PC con 16 GB di RAM e una CPU da 6-8 core, rendendo l’IA avanzata più accessibile. Mentre i modelli più grandi richiedono più RAM, le esigenze di Alpaca rimangono al di sotto di un supercomputer.
Machine Learning (ML)
Il machine learning (ML) è un sottoinsieme dell’IA in cui un modello acquisisce capacità dopo essere stato addestrato su molti punti dati di esempio. Gli algoritmi di machine learning rilevano i modelli e apprendono come fare previsioni e raccomandazioni elaborando dati ed esperienze, oppure ricevendo istruzioni di programmazione esplicite. Gli algoritmi si adattano in risposta a nuovi dati ed esperienze.
Le banche e le società di carte di credito usano il machine learning per identificare modelli di comportamento sospetti che potrebbero indicare frodi.
Prompt Engineering
L’ingegneria del prompt si riferisce al processo di progettazione, affinamento e ottimizzazione dei prompt di input per guidare un modello di IA generativo verso la produzione di output desiderati (cioè accurati). Ho creato il metodo G.O.L. per dare uno schema nella creazione di buoni prompt:
Structured Data
I dati strutturati sono dati tabulari (per esempio, organizzati in tabelle, database o fogli di calcolo) che possono essere utilizzati per addestrare efficacemente alcuni modelli di machine learning. Lavorando su diversi progetti di AI personalizzata, mi sono reso conto che quello che fa davvero la differenza è la qualità del dato usato per addestrare la macchina: ideale sarebbe avere file di testo e PDF “puliti”.
Transformer
Transformer è un tipo di modello di apprendimento automatico, spesso utilizzato nell’elaborazione del linguaggio naturale (NLP), la tecnologia che consente alle macchine di capire, rispondere e interagire con il linguaggio umano. Questi modelli sono chiamati “transformer” perché “trasformano” le informazioni di input (ad esempio, un testo scritto) in output (ad esempio, una traduzione di quel testo, una risposta a una domanda, ecc.) attraverso una serie di calcoli matematici. All’interno di un Transformer, ci sono due parti principali: l’encoder, che legge e interpreta l’input, e il decoder, che genera l’output. Ad esempio, se stai traducendo dall’italiano all’inglese, l’encoder leggerà e interpreterà l’italiano, e il decoder genererà l’equivalente inglese.
Un aspetto chiave dei modelli Transformer è l’attenzione, o “self-attention”, che permette al modello di dare più importanza a certe parole o frasi durante la traduzione o risposta. Ad esempio, se stai traducendo una frase come “Il gatto ha mangiato il suo cibo”, il modello potrebbe dare più importanza alla parola “gatto” perché è il soggetto della frase.
Inoltre, i modelli Transformer possono gestire input di lunghezze diverse e mantenere informazioni da tutte le parti dell’input, il che li rende molto utili per compiti come la traduzione, la generazione di testo e altre attività di NLP. Un esempio famoso di un modello Transformer è GPT (Generative Pretrained Transformer).
Use Case
I casi d’uso sono applicazioni mirate a una specifica sfida aziendale che producono uno o più risultati misurabili. Ad esempio, nel marketing, l’IA generativa potrebbe essere utilizzata per generare contenuti creativi come email personalizzate.
Unstructured Data
I dati non strutturati mancano di un formato o di una struttura coerente (per esempio: testo, immagini e file audio) e richiedono di solito tecniche più avanzate per estrarre intuizioni. Ma anche da questo punto di vista i passi avanti sono notevoli.
