Gemma 2: il Nuovo Modello Google
Oggi esploreremo Gemma 2: il Nuovo Modello Google. In questo articolo, analizzeremo in dettaglio tutti gli aspetti tecnici e le innovazioni introdotte con questo modello. Se sei un neofita del mondo del Machine Learning e dei modelli di linguaggio, non preoccuparti: spiegheremo tutto dalle basi.
Introduzione a Gemma 2: il Nuovo Modello Google
Google ha recentemente rilasciato Gemma 2, la seconda generazione dei loro modelli “open weight”. Questa famiglia di modelli include tre versioni con 2, 9 e 27 miliardi di parametri, ma al momento Google ha rilasciato solo i modelli con 9 e 27 miliardi di parametri.
Benchmark e Prestazioni
Gemma 2 ha ottenuto risultati sorprendenti nei benchmark. La versione da 9 miliardi di parametri è in grado di superare Lama 3 da 8 miliardi, mentre la versione da 27 miliardi si avvicina molto alla versione da 70 miliardi di Lama 3. Nonostante questi risultati siano notevoli, è importante ricordare che i benchmark accademici non sempre riflettono le prestazioni reali dei modelli in applicazioni pratiche.
Test nel Chatbot Arena di LMSYS
Google ha testato Gemma 2 nell’arena chatbot di LMSYS sotto uno pseudonimo per un certo periodo, ottenendo buoni risultati. La versione da 27 miliardi di parametri si trova attualmente al dodicesimo posto nella classifica generale, appena sotto Gemini 1.5 flash. Questo è impressionante per un modello di queste dimensioni.
Il Rapporto Tecnico di Gemma 2: il Nuovo Modello Google
Google ha pubblicato un rapporto tecnico dettagliato intitolato “Gemma 2: Improving Open Language Models at a Practical Size”. Questo rapporto è più dettagliato rispetto a molti altri rapporti tecnici e include una sezione interessante sulla distillazione della conoscenza per l’addestramento dei modelli più piccoli.
Architettura del Modello
Gemma 2 utilizza un’architettura transformer solo decoder con alcune innovazioni. In particolare, l’architettura è stata ottimizzata per migliorare l’efficienza e le prestazioni del modello.
Dati di Addestramento
Per l’addestramento di Gemma 2 sono stati utilizzati tre diversi set di dati di dimensioni variabili. Una delle tecniche chiave impiegate è la knowledge distillation (KD), che potrebbe diventare un metodo efficace per addestrare modelli più piccoli utilizzando modelli più grandi come “insegnanti”.
Processi di Addestramento: NTP Training vs Knowledge Distillation
Per comprendere appieno come viene addestrato Gemma 2, è fondamentale esplorare i due principali processi di addestramento utilizzati: il processo di NTP (Next Token Prediction) e la knowledge distillation.
NTP Training (Next Token Prediction)
Il processo di addestramento NTP è il metodo tradizionale utilizzato per addestrare i modelli di linguaggio. Vediamo come funziona:
- Previsione del Prossimo Token:
Il modello riceve una sequenza di testo, ad esempio “The quick brown fox”.
Il compito del modello è prevedere il prossimo token (parola) nella sequenza. In questo caso, potrebbe prevedere “jumps”. - Distribuzione di Probabilità:
Basandosi sui dati di addestramento, il modello genera una distribuzione di probabilità per i possibili token successivi. Ad esempio, potrebbe assegnare una probabilità del 70% al token “jumps” e una probabilità del 20% a “runs”. - Calcolo della Perdita:
Il modello seleziona il token con la probabilità più alta e lo confronta con il token reale (ground truth). La differenza tra la previsione del modello e il token reale viene utilizzata per calcolare la perdita. - Aggiornamento dei Pesi:
La perdita viene utilizzata per aggiornare i pesi del modello, migliorando le sue previsioni future.
Knowledge Distillation
La knowledge distillation è un metodo avanzato che permette di trasferire le capacità di un modello grande (insegnante) a un modello più piccolo (studente). Ecco come funziona:
- Modello Insegnante e Studente:
Si utilizzano due modelli: un modello insegnante più grande e un modello studente più piccolo. - Distribuzione di Probabilità dell’Insegnante:
Il modello insegnante genera una distribuzione di probabilità per il prossimo token basandosi su una sequenza di testo. - Comparazione delle Distribuzioni:
Il modello studente genera anche lui una distribuzione di probabilità per il prossimo token. Tuttavia, invece di confrontare direttamente la previsione con il token reale, si confronta la distribuzione del modello studente con quella del modello insegnante utilizzando la divergenza Kullback-Leibler (KL). - Aggiornamento dei Pesi del Modello Studente:
La divergenza KL misura quanto le due distribuzioni di probabilità differiscono. Il modello studente aggiorna i suoi pesi per avvicinarsi alla distribuzione del modello insegnante, riducendo la divergenza KL.
Esempio di Divergenza KL
Per comprendere la divergenza KL, consideriamo un esempio. Supponiamo che il modello insegnante preveda che la parola successiva in una sequenza sia “salta” con una probabilità del 70%. Il modello studente, inizialmente, potrebbe prevedere “corre” con una probabilità del 50%. La divergenza KL misurerà quanto le due distribuzioni di probabilità differiscono e aggiornerà i pesi del modello studente per avvicinarsi alla previsione del modello insegnante.
Confronto tra NTP Training e Knowledge Distillation
NTP Training
- Vantaggi:
- Metodo semplice e diretto per addestrare modelli di linguaggio.
- Efficace per modelli di grandi dimensioni con accesso a grandi quantità di dati.
- Svantaggi:
- Richiede enormi quantità di dati per ottenere buone prestazioni.
- Può essere inefficiente per modelli più piccoli.
Knowledge Distillation
- Vantaggi:
- Permette di addestrare modelli più piccoli utilizzando le capacità di modelli più grandi.
- Riduce la necessità di grandi quantità di dati.
- Migliora le prestazioni dei modelli più piccoli rispetto all’addestramento da zero.
- Svantaggi:
- Richiede un modello insegnante ben addestrato.
- Il processo di distillazione può essere complesso da implementare.
Applicazione in Gemma 2: il Nuovo Modello Google
Google ha utilizzato entrambi i metodi per addestrare i modelli Gemma 2. La versione da 27 miliardi di parametri è stata addestrata utilizzando il processo di NTP tradizionale, mentre le versioni più piccole da 2 e 9 miliardi di parametri hanno beneficiato della distillazione della conoscenza.
Impatto sui Risultati
Gli studi di ablation condotti da Google mostrano che i modelli più piccoli addestrati con la distillazione della conoscenza ottengono risultati migliori rispetto a quelli addestrati da zero. Ad esempio, un modello da 2,6 miliardi di parametri addestrato da zero ottiene un punteggio medio di 60 nei benchmark, mentre con la distillazione della conoscenza raggiunge 67,8.
Tokenizzazione e Vocabolario
Gemma 2 utilizza lo stesso tokenizer della prima serie di modelli Gemma e Gemini, con un vocabolario molto ampio di 256.000 token. Questo permette al modello di gestire compiti multilingue con una certa efficacia, anche se è stato specificamente addestrato sulla lingua inglese.
Processo di Addestramento
Il processo di addestramento di Gemma 2 include una fase di pre-addestramento seguita da una fine-tuning supervisionata utilizzando il cloning comportamentale. Inoltre, viene utilizzata una politica di reinforcement learning da feedback umano (RLHF) e vengono fusi più iterazioni dei modelli per migliorare le prestazioni.
Prompt e Template
Per utilizzare Gemma 2, è importante seguire un template di prompt specifico. Ad esempio, per una conversazione a turno singolo, si utilizzano token speciali per indicare l’inizio e la fine del turno dell’utente e del modello, rispettivamente. Questo template aiuta il modello a comprendere la struttura della conversazione.
Prestazioni su LMSIS Chatbot Arena
Gemma 2 sembra ottenere buoni risultati su LMSIS Chatbot Arena grazie ai dati di addestramento utilizzati. Google ha esteso i dati di post-addestramento di Gemini 1.5 con un mix di dati interni ed esterni pubblici, utilizzando i prompt di LMSIS Chat senza le risposte. Questo approccio evita i bias delle risposte predefinite e incoraggia la creatività e la flessibilità del modello.
Studi di Ablazione
Gli studi di ablation condotti da Google mostrano che i modelli più piccoli addestrati con la distillazione della conoscenza ottengono risultati migliori rispetto a quelli addestrati da zero. Ad esempio, un modello da 2,6 miliardi di parametri addestrato da zero ottiene un punteggio medio di 60 nei benchmark, mentre con la distillazione della conoscenza raggiunge 67,8.
Finestra Scorrevole
Un’altra scoperta interessante riguarda l’effetto della dimensione della finestra scorrevole sulla “perplexity” del modello. Anche cambiando la dimensione della finestra, l’effetto sulla perplexity è minimo, il che significa che è possibile ottenere una velocità di inferenza migliore con una riduzione minima delle prestazioni.
Come Utilizzare Gemma 2: il Nuovo Modello Google
Il modo più semplice per utilizzare Gemma 2 è tramite Google AI Studio. Il modello è disponibile anche su Hugging Face, con i pesi delle versioni da 9 e 27 miliardi di parametri. Sono disponibili anche versioni quantizzate del modello.
Se sei interessato a saperne di più su Gemma 2 e altri modelli di linguaggio, scrivici nel form di contatto!
ablation gemma2 knowledge distillation LMSYS Modello Google Next Token Prediction NTP Training perplexity token