Zephyr-7B l’LLM super ottimizzato di HuggingFace costruito su Mistral 7B

Zephyr-7B, l'LLM super ottimizzato di HuggingFace basato su Mistral 7B

Introduzione

L’evoluzione dei grandi modelli di linguaggio aperto (LLM) ha avuto un impatto significativo sulla comunità di ricerca sull’IA, in particolare nello sviluppo di chatbot e applicazioni simili. Dopo il rilascio di modelli come LLaMA, si è verificato un aumento della ricerca su un efficiente messa a punto, una gestione estesa del prompt, una generazione potenziata dalla ricerca (RAG) e una quantizzazione.

Il modello LLaMA, ad esempio, ha segnato una nuova era nella messa a punto e nella contestualizzazione del prompt, aprendo la strada a modelli successivi come MPT di MosaicML, RedPajama-INCITE di Together AI, Falcon di TII e Llama 2 di Meta. Ognuno di questi modelli contribuisce con capacità uniche, migliorando la funzionalità complessiva e l’ambito dei LLM.

Mistral AI, una startup di Parigi fondata da ex dipendenti di Google DeepMind e Meta, si è fatta un nome con la sua prima offerta: Mistral 7B.

Il vantaggio di Mistral 7B risiede nella sua efficienza, offrendo capacità simili o superiori rispetto a modelli simili come Llama 2, ma con minori richieste computazionali.

Specificamente ottimizzato per compiti didattici, Mistral 7B Instruct brilla su piattaforme come Hugging Face, dove supera altri modelli delle stesse dimensioni e compete a stretto contatto con quelli che hanno quasi il doppio dei suoi parametri.

Basandosi su questo, Hugging Face ha introdotto Zephyr 7B Alpha, dimostrando che un Mistral 7B messo a punto può effettivamente superare le capacità di modelli di chat significativamente più grandi e, in alcuni compiti, persino competere con GPT-4. L'”Alpha” era solo l’inizio, poiché a breve è stato seguito da Zephyr 7B Beta.

Questo articolo esplorerà come Zephyr 7B sfrutti la potenza di modelli più grandi per perfezionare la sua capacità di rispondere e allinearsi con l’istruzione umana, un processo reso possibile attraverso la tecnica di distillazione della conoscenza. Questo metodo prevede la formazione di modelli più piccoli sui complessi schemi appresi dai modelli più grandi, riducendo le richieste di formazione senza sacrificare le capacità di modellazione del linguaggio. Approfondiremo i dettagli dell’approccio di distillazione della conoscenza di Hugging Face.

Distillazione della conoscenza

Un’innovazione chiave nello sviluppo di modelli come Zephyr-7B è la messa a punto supervisionata distillata (dSFT). Questo metodo prevede l’utilizzo dell’output di un modello “docente” più grande e più capace per addestrare un modello “studente” più piccolo, migliorandone l’accuratezza. Sebbene la distillazione migliori i modelli aperti in vari compiti, persiste un divario nelle prestazioni rispetto ai modelli docenti.

La distillazione della conoscenza è un metodo nell’apprendimento automatico in cui un modello compatto, chiamato “studente”, viene insegnato a replicare le prestazioni di un modello “docente” più grande e complesso. Questa tecnica consente allo studente di svolgere compiti che erano precedentemente al di là delle sue capacità, trasferendo gli schemi complessi appresi dal docente.

Distillazione della conoscenza,| Modello Docente-Studente

Distillazione della conoscenza | Modello Docente-Studente

Il modello studente si allena sull’output delle probabilità o delle caratteristiche generate dal modello docente, concentrandosi sul far corrispondere questi output anziché solo le previsioni finali. Ciò consente allo studente di imparare i processi decisionali sfumati del docente, spesso portando a un miglioramento delle prestazioni rispetto all’addestramento con solo i dati veri e propri.

Storicamente, la distillazione della conoscenza è stata utilizzata in modelli come le reti di distillazione originali di Hinton e più recentemente nell’elaborazione del linguaggio naturale con modelli come DistilBERT, che ha distillato il modello BERT in una versione più piccola e più veloce che conserva gran parte delle capacità di comprensione del linguaggio originale. Un altro esempio è TinyBERT, che va oltre nell’ottimizzazione delle dimensioni e della velocità per dispositivi mobili o edge.

Nel caso di Zephyr-7B, la distillazione della conoscenza viene utilizzata per imbottire un modello più piccolo con 7B di parametri con le capacità dei suoi corrispettivi più grandi. In questo modo, Zephyr-7B raggiunge un equilibrio tra prestazioni ed efficienza, rendendolo adatto a ambienti in cui le risorse computazionali sono limitate, senza sacrificare la qualità dell’interazione e della comprensione.

Nello sviluppo di Zephyr-7B, i ricercatori hanno affrontato la sfida di allineare completamente un piccolo LLM aperto attraverso la distillazione. Hanno introdotto un approccio chiamato ottimizzazione diretta delle preferenze distillate (dDPO), che utilizza il feedback dell’IA da un insieme di modelli di insegnanti come dati di preferenza. Questo metodo, che non richiede annotazioni umane, riduce significativamente il tempo e le risorse necessarie per l’addestramento del modello.

Costruzione di ZEPHYR-7B

Per convalidare dDPO, i ricercatori hanno costruito ZEPHYR-7B, una versione allineata del modello Mistral-7B. Il processo ha coinvolto tre fasi:

  1. dSFT utilizzando il dataset UltraChat: il Fine-Tuning Sovrarinsegnato Distillato (dSFT) è un metodo avanzato per addestrare modelli di linguaggio LLM di grandi dimensioni sfruttando l’output di modelli di “insegnanti” più grandi e capaci. Inizia con un LLM grezzo che viene addestrato per rispondere alle richieste degli utenti. A differenza del tradizionale Fine-Tuning Sovrarinsegnato (SFT) che utilizza un dataset fisso, dSFT utilizza un approccio dinamico in cui il modello stesso genera istruzioni e risposte. Questo metodo, noto come self-instruct, implica l’utilizzo del modello di insegnante sia per rispondere che per perfezionare le istruzioni in base alle risposte. Il processo inizia con un insieme di prompt di partenza (x₀₁, x₀₂, …, x₀_J) che rappresentano argomenti diversi. Ogni prompt viene perfezionato in modo iterativo: per un determinato prompt x₀, viene generata una risposta y₀ da parte del modello di insegnante, e quindi viene campionata una nuova istruzione x₁ basata su x₀ e y₀. Il dataset finale C = {(x₁, y₁), …, (x_J, y_J)} viene utilizzato per il fine-tuning del modello.
  2. Incorporazione dei dati di feedback dell’IA da UltraFeedback: questi dati sono fondamentali per perfezionare le risposte del modello. In questa fase, il modello genera risposte a vari prompt (come descrivere come fare i brownies al cioccolato) che vengono quindi classificati da un modello più avanzato come GPT-4. La risposta con il punteggio più alto (yw) e una risposta scelta casualmente con un punteggio più basso (yl) formano un dataset di feedback D.
  3. Applicazione di dDPO: l’ultima fase, Distilled Direct Preference Optimization (dDPO), consiste nel perfezionare il modello dSFT massimizzando la probabilità di classificare le risposte preferite più in alto. Ciò viene ottenuto utilizzando una funzione di ricompensa rθ(x, y) nel modello di preferenza, basata sulla politica LLM ottimale π* e la politica originale πdSFT. L’obiettivo dell’ottimizzazione è formulato come πθ = max πE(x, yw, yl) ∼ D log σ (β log π(yw|x)/πdSFT(yw|x) − β log π(yl|x)/πdSFT(yl|x)), semplificando il processo di addestramento partendo dalla versione dSFT del modello e iterando tramite ciascuna tripla di AIF.

Il metodo usato in Zephyr-7B riflette i processi utilizzati in InstructGPT.

Il metodo utilizzato in Zephyr-7B riflette i processi utilizzati in InstructGPT.

È notevole che Zephyr-7B raggiunga prestazioni paragonabili a modelli molto più grandi a 70B di parametri allineati con il feedback umano. Eccelle sia nei benchmark accademici che nelle capacità di conversazione, mettendo in evidenza l’efficacia dell’apprendimento delle preferenze nello sviluppo del modello. Per ulteriori esplorazioni, modelli, codice ed istruzioni sono disponibili su Hugging Face’s GitHub Repository.

Affrontare la sfida dell’allineamento dell’intento

Una preoccupazione nota con i modelli LLM è stato il loro allineamento con l’intento umano. I modelli precedenti spesso non riuscivano a produrre risposte che corrispondevano alle preferenze degli utenti, portando a risposte inesatte o irrilevanti. Tuttavia, i recenti benchmark come MT-Bench e AlpacaEval hanno fornito strumenti per quantificare e migliorare questo aspetto, mettendo in evidenza le prestazioni superiori dei modelli proprietari addestrati con il feedback umano rispetto a quelli addestrati esclusivamente tramite distillazione.

Metodi di valutazione

La valutazione di Zephyr 7B ha coinvolto test rigorosi su benchmark che valutano le capacità di conversazione di un modello sia in contesti singoli che multi-turn:

  • MT-Bench: questo benchmark multi-turn richiede a un modello di affrontare 160 domande su otto domini. Ogni risposta è valutata da GPT-4 e il punteggio finale del modello riflette la media su due round di domande.
  • AlpacaEval: in questo benchmark a singolo turno, al modello vengono presentate 805 domande su vari argomenti. L’attenzione qui è sulla disponibilità del modello, con GPT-4 che valuta le risposte per determinare un tasso di vittoria comparativo.

Inoltre, Zephyr 7B è stato testato sul punteggio di classifica Open LLM, che, sebbene non sia una valutazione diretta delle capacità di conversazione, offre spunti sul ragionamento e sulla veridicità del modello dopo il fine-tuning.

Zephyr 7B è stato confrontato con una varietà di modelli aperti e proprietari, inclusi quelli di diverse dimensioni e metodi di allineamento. Ha stabilito nuovi punti di riferimento per i modelli 7B su MT-Bench e AlpacaEval e ha mostrato prestazioni competitive rispetto a modelli più grandi, convalidando l’efficacia dell’ottimizzazione diretta delle preferenze (dDPO) nell’addestramento.

Le fasi di addestramento SFT e DPO sono state configurate meticolosamente, spaziando su più epoche e regolando i tassi di apprendimento e le dimensioni dei batch per prestazioni ottimali. Il modello finale di Zephyr è emerso non solo resistente all’overfitting, ma anche potenziato nel trattamento di compiti pratici e benchmark accademici.

Dataset e risultati

Dataset utilizzati

Nello sviluppo di Zephyr-7B, sono stati utilizzati due dataset chiave per addestrare e perfezionare il modello, ognuno che affronta diversi aspetti della generazione del dialogo:

Dataset UltraChat

  • Origine: Sviluppato da dialoghi generati da GPT-3.5-TURBO.
  • Contenuti: Contiene 1,47 milioni di dialoghi a più turni su 30 argomenti e 20 tipi di materiale testuale.
  • Perfezionamento: Il dataset è stato sottoposto a un’euristica di truecasing per correggere problemi grammaticali e sono stati applicati filtri per aumentare l’utilità delle risposte ed eliminare frasi di apertura non utili.

Dataset UltraFeedback

  • Origine: Comprende prompt valutati da GPT-4, che ha assegnato un punteggio alle risposte in base alla capacità di seguire le istruzioni, all’onestà e all’utilità.
  • Contenuti: Include 64.000 prompt con quattro risposte ciascuno, valutate da GPT-4.
  • Preferenze binarie: Generate scegliendo la risposta con il punteggio medio più alto come “scelta” e una risposta casuale tra le rimanenti come “scartata” per aumentare la diversità e sfidare il processo di ottimizzazione delle preferenze dirette (DPO).

Entrambi i dataset sono cruciali per addestrare Zephyr-7B a comprendere e generare un dialogo simile a quello umano, che sia capace di seguire le istruzioni, sia onesto e utile. Questi dataset sono stati resi disponibili su Hugging Face Hub, a cui puoi accedere qui.

Prestazioni e risultati

Il grafico qui sotto illustra le prestazioni di Zephyr 7B in varie categorie di compiti rispetto ad altri modelli come GPT-3.5-turbo, Claude 1, GPT-4 e Llama-2-70b-chat. Le categorie potrebbero includere scrittura, materie umanistiche, gioco di ruolo, ragionamento, STEM, estrazione, coding e matematica.

Dal grafico, possiamo dedurre in quali domini Zephyr 7B eccelle e in quali domini potrebbe essere necessario un ulteriore miglioramento. Ad esempio, se la linea di Zephyr si estende più lontano sull’asse della scrittura rispetto agli altri, ciò suggerisce che Zephyr è particolarmente bravo nella generazione di contenuti scritti. Al contrario, se la linea è più vicina al centro sull’asse della matematica, potrebbe indicare una relativa debolezza nella risoluzione di problemi matematici.

Il grafico radar aiuta a identificare i punti di forza e le debolezze di Zephyr 7B, fornendo una rappresentazione visiva di come si posiziona rispetto a modelli più grandi come GPT-4 e modelli specializzati come Llama-2-70b-chat.

 

Model Performance Radar Chart

Grafico radar delle prestazioni del modello

Confrontando vari modelli linguistici su due benchmarks: MT-Bench e AlpacaEval. I modelli vengono valutati in base alla loro dimensione, al metodo di allineamento (come dSFT per la sottoposizione a supervisione distillata o dDPO per l’ottimizzazione delle preferenze dirette distillate) e ai punteggi di prestazione. Zephyr si distingue con punteggi elevati su entrambi i benchmarks, indicando la sua efficacia nella generazione di risposte allineate.

MT-Bench and AlpacaEval

MT-Bench e AlpacaEval

Conclusioni

In conclusione, lo sviluppo di Zephyr-7B dimostra che l’allineamento e la distillazione delle capacità di conversazione da un grande modello linguistico (LLM) a un modello più piccolo possono essere raggiunti senza fare affidamento su metodi basati su campionamento. Utilizzando l’ottimizzazione diretta delle preferenze (DPO) con il feedback dell’IA, Zephyr-7B sfrutta la solida base di Mistral-7B per fissare un nuovo punto di riferimento per i modelli di chat con parametri 7B, dimostrando la capacità dei modelli più piccoli open-source di comprendere e rispondere in modo efficace all’intento dell’utente.

Tuttavia, questo studio non è privo di limitazioni. La dipendenza da GPT-4 come valutatore dei benchmark introduce un pregiudizio verso i modelli che ne derivano, potenzialmente favorendo risposte di maggiore precisione. Inoltre, la scalabilità di questo metodo verso modelli più grandi, come LLAMA2-70B, e il suo impatto sui guadagni in termini di prestazioni sono ancora aree di ricerca ulteriori. Queste limitazioni evidenziano la necessità di continui progressi e lo sviluppo di metodi di valutazione imparziali nella comunità dell’IA.

Oltre allo studio, è evidente che il potenziale dei modelli più piccoli di eseguire all’altezza dei loro omologhi più grandi può democratizzare l’IA, consentendo un uso più accessibile ed efficiente in diverse applicazioni. Il successo di Zephyr-7B incoraggia ulteriori esplorazioni sui modelli open-source, che possono accelerare gli avanzamenti nell’IA promuovendo la ricerca e lo sviluppo collaborativi.