Foundation Models: cosa sono e come funzionano

  • Di
  • 2024-04-04 - 4 minuti
banner

Partiamo dalle basi, e partiamo dai foundation models: cosa sono, e perché vengono ampiamente utilizzati?

Definizione

Modelli di base, o foundation models: nell’ambito dell’intelligenza artificiale, questo concetto si riferisce ad un modello pre-addestrato che può essere adattato, attraverso dei parametri, a diversi compiti.

Si tratta quindi di un modello generico o generalista che permette, tramite fine-tuning, di compiere diversi tipi di operazioni: ad esempio, un modello che sia in grado di eseguire attività di natural language processing e di computer vision, è un modello di base con skill multimodali.

Il vantaggio nell’utilizzo di questi modelli sta nel fatto che questi sono stati già addestrati su una vasta mole di dati non etichettati e che hanno grandi capacità in termini di parametrizzazione: questo vuol dire che possono essere utilizzati per più compiti e adattati al caso d’uso specifico.

Infatti, creare e addestrare nuovi sistemi richiede una mole di tempo e risorse incredibile: per ogni modello, è necessario assicurarsi che sia disponibile un dataset adeguato, di qualità e che sia specifico per il task che dovrà svolgere. Se questo dataset non esiste, magari ci sarà bisogno di avere un team dedicato che sia in grado di costruirlo e di renderlo fruibile per l’addestramento.

Per questa ragione, nell’ultimo periodo molte big del settore hanno lavorato su modelli che utilizzano dati non etichettati per poter rendere il più generico possibile il modello e utilizzarlo su diversi task, seguendo delle tecniche che lo rendano adattabile.

Come funziona

Esistono moltissimi modelli di base disponibili, dove il processo con cui sono stati costruiti è sempre lo stesso: c’è una prima fase di addestramento, che avviene su un dataset molto grande per cercare di estrarre pattern generali e features a partire dai dati a disposizione. Questo tipo di attività può richiedere settimane o anche mesi, oltre a risorse computazionali ingenti.

Una volta che il modello di base è stato pre-addestrato, può essere customizzato per un task specifico, attraverso un lavoro di fine-tuning, così che il modello possa apprendere a partire da un dataset più piccolo di informazioni che si concentra su un dominio di interesse.

Si parla infatti di fine-tuning quando si utilizza un modello a cui viene aggiunto un ulteriore dataset che consiste in una serie di esempi di prompt e risposte, così da poter addestrare nuovamente il modello su questi dati. In questo modo, il modello si base sarà in grado di fornire delle risposte specifiche al dominio di interesse.

A questo punto, è possibile utilizzare il modello di base per eseguire delle attività specifiche al caso d’uso: Questo avviene immettendo nuovi dati nel modello, che poi andrà a generare una previsione o genericamente un output basato su quanto appreso durante le fasi precedenti.

Esempi

Oggi sono disponibili diversi modelli di base popolari, tra cui:

  • GPT-3 (Generative Pre-trained Transformer 3) di OpenAI, un modello linguistico che utilizza tecniche di deep learning per generare testi in linguaggio naturale, con una capacità che comprende fino a 175 miliardi di parametri.
  • BERT (Bidirectional Encoder Representations from Transformers) di Google: un modello linguistico pre-addestrato che utilizza un’architettura basata su trasformatori bidirezionali per comprendere il contesto delle parole in una frase, con una capacità fino a 340 milioni di parametri.
  • RoBERTa (Robustly Optimized BERT Pretraining Approach) di Facebook: una versione raffinata di BERT che utilizza tecniche di pre-addestramento migliorate e set di dati più grandi, con una capacità fino a 355 milioni di parametri.
  • XLNet di Google e Carnegie Mellon University, ossia un modello linguistico che utilizza un approccio basato sulle permutazioni per catturare le dipendenze complessive e locali in una frase, con una capacità fino a 340 milioni di parametri.
  • T5 (Text-to-Text Transfer Transformer) di Google, un modello linguistico che utilizza un formato particolare per eseguire una serie di compiti che riguardano il linguaggio naturale, con una capacità fino a 11 miliardi di parametri.

Se hai dubbi su come funzioni un transformer, dai un’occhiata a questo post.

Questi modelli sono stati ampiamente utilizzati in varie attività di elaborazione del linguaggio naturale, come la traduzione linguistica, l’analisi del sentiment, la risposta alle domande e la sintesi del testo.

Risorse utili

Post correlati

Partners

Community, aziende e persone che supportano attivamente il blog

Logo di Codemotion
Logo di GrUSP
Logo di Python Milano
Logo di Schrodinger Hat
Logo di Python Biella Group
Logo di Fuzzy Brains
Logo di Django Girls
Logo di Improove
Logo del libro open source
Logo di NgRome
Logo de La Locanda del Tech
Logo di Tomorrow Devs
Logo di Coderful

Non perderti gli ultimi aggiornamenti, iscriviti a TheRedCode Digest!

La tecnologia corre, e tu devi correre più veloce per rimanere sempre sul pezzo! 🚀

Riceverai una volta al mese (o anche meno) con codici sconto per partecipare agli eventi del settore, quiz per vincere dei gadget e i recap degli articoli più interessanti pubblicati sul blog

Ci sto!

#TheRedComics

Edizione di Ottobre

A cura di Sophie Aiello, copy di Chiara Romano

Fumetto di agosto di Sophie Aiello

Vuoi diventare #tech content creator? 🖊️

Se vuoi raccontare la tua sul mondo #tech con dei post a tema o vuoi condividere la tua esperienza con la community, sei nel posto giusto! 😉

Manda una mail a collaborazioni[at]theredcode.it con la tua proposta e diventa la prossima penna del blog!

Ma sì, facciamolo!