Prompt engineering

Addestramento di Embedding di Testo Migliorati con Modelli di Linguaggio Grande

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Gli embedding di testo sono rappresentazioni vettoriali di parole, frasi, paragrafi o documenti che catturano il loro significato semantico. Sono un blocco fondamentale in molte applicazioni di elaborazione del linguaggio naturale (NLP) oggi, tra cui il recupero delle informazioni, la risposta alle domande, la ricerca semantica e altro.

vector embedding

vector embedding

I recenti progressi nei modelli di linguaggio grande (LLM) come GPT-3 hanno mostrato capacità impressionanti nell’apprendimento a pochi esempi e nella generazione del linguaggio naturale. Possiamo sfruttare gli LLM per avanzare anche lo stato degli embedding di testo? Nel loro articolo “Miglioramento degli embedding di testo con modelli di linguaggio grande“, i ricercatori di Microsoft (MSFT ) propongono un nuovo metodo che ottiene risultati superiori generando dati di addestramento sintetici con LLM e adattandoli.

Sfide con i metodi esistenti

Le tecniche di embedding di testo tradizionali come le medie pesate dei vettori di parole o TF-IDF non riescono a catturare adeguatamente le informazioni contestuali ricche nel testo. Metodi più recenti basati su modelli di linguaggio pre-addestrati come BERT ottengono embedding più consapevoli del contesto.

Tuttavia, richiedono pipeline di addestramento complesse e multistadio:

  • Pre-addestramento su miliardi di coppie di testo debolmente etichettate o artificiali
  • Adattamento su set di dati limitati e curati manualmente

Ciò richiede enormi risorse di calcolo e sforzo umano per la raccolta dei dati. I dati di addestramento sono anche limitati nella diversità e nella copertura linguistica. Ad esempio, il benchmark BEIR comprende set di dati per solo 15 compiti di recupero in inglese.

I metodi esistenti utilizzano principalmente architetture di tipo BERT più piccole come modello di base. Non sono in grado di sfruttare LLM più avanzati e relative tecniche.

Metodologia: Generazione di dati sintetici con LLM

Per superare queste limitazioni, i ricercatori propongono un nuovo approccio di addestramento a singolo stadio che sfrutta LLM come GPT-3 e GPT-4 per generare dati di addestramento sintetici diversi.

I passaggi chiave sono:

  1. Tassonomia dei compiti: Definire una tassonomia che categorizza i compiti di embedding di testo in:
    • Compiti asimmetrici (query e documento non sono parafrasi, ad esempio ricerca)
    • Compiti simmetrici (query e documento sono parafrasi, ad esempio similarità semantica)
  2. Progettazione dei prompt: Creare modelli di prompt personalizzati per ogni tipo di compito che guidano l’LLM a generare esempi di addestramento rilevanti.
  3. Generazione di dati sintetici: Utilizzare l’LLM con i prompt progettati per generare centinaia di migliaia di coppie (query, documento) che coprono una vasta gamma di compiti semantici in 93 lingue.
  4. Addestramento del modello: Adattare un potente modello LLM open-source come Mistral sui dati sintetici utilizzando la perdita contrastiva.

Questa metodologia consente la creazione di abbondanti dati di addestramento per compiti diversi in più lingue senza alcuno sforzo di etichettatura umana. Sfruttando le conoscenze già incorporate negli LLM attraverso il pre-addestramento su corpora di grandi dimensioni, possiamo sintetizzare dati di alta qualità precisamente adattati per gli embedding di testo.

I ricercatori dimostrano ciò con una strategia di prompt a 2 passaggi:

  • Promptare GPT-4 per suggerire potenziali compiti di recupero

Prompt for generating high-level retrieval tasks

    Prompt for generating high-level retrieval tasks
  • Promptarlo di nuovo per generare (query, documento) campioni in base ai compiti suggeriti

n generate (query, positive, hard negative) triplets

    n generate (query, positive, hard negative) triplets

Alcuni aspetti chiave della progettazione dei prompt:

  • Prompt in linguaggio naturale per istruzioni intuitive e simili all’uomo
  • Placeholder per incoraggiare la diversità (ad esempio lunghezza della query, chiarezza, lunghezza del documento)
  • Combinazione di dati da più modelli per lo stesso tipo di compito
  • Ponderazione delle lingue in base alla disponibilità di risorse

In totale, sono stati in grado di generare 500k esempi di embedding di testo al costo computazionale di 180M token. La lingua dominante è stata l’inglese (43%) seguita da polacco, giapponese, italiano e altre.

Per l’addestramento del modello, hanno scelto di adattare il modello open-source Mistral da 7B parametri invece di architetture di tipo BERT più piccole. Poiché Mistral era già stato pre-addestrato su corpora testuali di grandi dimensioni, non era necessario ulteriore pre-addestramento contrastivo. L’aggiunta di questo ha fornito miglioramenti trascurabili.

L’intero addestramento è durato meno di 1k passi, utilizzando una miscela di dati sintetici e umanamente etichettati. Ciò dimostra l’efficienza del campione del metodo proposto.

Risultati

I ricercatori hanno valutato il loro modello sul benchmark MTEB, che copre compiti diversi tra classificazione, clustering, similarità semantica, riassunto e recupero delle informazioni.

Il loro modello ha superato lo stato dell’arte precedente di 2,4 punti nel punteggio medio, stabilendo nuovi record per quasi ogni categoria:

Modello Precedente SOTA Modello proposto
Classificazione 76.0 78.5
Clustering 46.1 50.3
Classificazione a coppie 87.1 88.3
Riordinamento 60.0 60.2
Recupero 54.3 56.9
STS 83.1 84.6
Riassunto 31.6 31.4
Medio 64.2 66.6

In modo notevole, anche senza utilizzare dati etichettati e addestrando solo su dati sintetici, ha raggiunto un’accuratezza competitiva – solo 3,5 punti dietro il modello completamente supervisionato. Ciò dimostra la fattibilità di generare embedding di testo utilizzando solo LLM, senza sforzo di etichettatura umana.

I ricercatori hanno anche valutato sul benchmark multilingue MIRACL che copre 18 lingue. Il loro modello ha superato il precedente miglior risultato sulle lingue ad alta risorsa, ma è stato più debole su quelle a bassa risorsa. Ipotizzano che ciò potrebbe essere mitigato pre-addestrando LLM più estensivamente su lingue a bassa risorsa.

In sintesi, gli embedding di testo addestrati su dati sintetici generati da LLM stabiliscono nuovi risultati di stato dell’arte, utilizzando un addestramento più semplice e efficiente rispetto agli approcci multistadio precedenti. Con ulteriori ricerche sull’ingegneria dei prompt e sulla qualità dei dati sintetici, questa metodologia potrebbe avanzare notevolmente gli embedding di testo multilingue.

Analisi

Questo lavoro offre diversi spunti di riflessione:

  • Gli LLM come GPT-3 e GPT-4 hanno una capacità impressionante di generare dati di addestramento sintetici di alta qualità per diversi compiti NLP quando opportunamente promptati. Ciò può ridurre la dipendenza dai dati etichettati umanamente.
  • Per gli embedding di testo, il pre-addestramento contrastivo fornisce miglioramenti trascurabili rispetto alla semplice adattazione di modelli come Mistral che hanno già un pre-addestramento su larga scala. Ciò è un’importante intuizione sull’efficienza dell’addestramento.
  • I metodi di generazione assistita dal recupero stanno abilitando gli LLM a recuperare dinamicamente conoscenze esterne. Pertanto, migliorare gli embedding di testo è prezioso per migliorare questi LLM.
  • C’è ancora molto spazio per il miglioramento nelle lingue a bassa risorsa. Gli LLM multilingui pre-addestrati su dati più rappresentativi potrebbero aiutare a colmare questo divario.
  • Concettualmente, la modellazione del linguaggio e gli embedding di testo sono due facce della stessa medaglia – la comprensione della semantica del linguaggio. Con la generazione di dati sintetici, gli LLM possono essere organicamente adattati come embedder senza pipeline complesse.

Alcune direzioni promettenti per future ricerche includono:

  • Sfruttare LLM open-source come GPT-NeoX per generare dati sintetici
  • Esplorare tecniche di post-addestramento leggero per adattare gli embedder a contesti più lunghi
  • Sviluppo di tecniche di ingegneria dei prompt per controllare la qualità e la copertura dei compiti
  • Metodi per migliorare la latenza dell’inferenza e i costi di archiviazione per l’uso industriale

Oltre a battere i benchmark, l’impiego di grandi modelli di linguaggio per migliorare gli embedding di testo apre possibilità intriganti per il futuro. Mentre gli LLM continuano ad avanzare nella loro padronanza del linguaggio naturale, la loro capacità di generare dati sintetici di alta fedeltà è probabile che migliori anch’essa.

Tuttavia, restano direzioni di ricerca critiche per tradurre questo potenziale in impatto reale.

Personalizzazione e controllo

Un vantaggio chiave dei dati sintetici è la capacità di generare esempi personalizzati in base a esigenze specifiche. Come dimostrato nell’articolo, l’ingegneria dei prompt consente la creazione di dati di addestramento per centinaia di migliaia di compiti di embedding.

Tuttavia, le pratiche attuali di progettazione dei prompt rimangono più un’arte che una scienza. Sviluppare metodi sistematici e riproducibili per controllare precisamente le proprietà dei dati generati amplierebbe l’applicabilità di questa tecnica.

Ad esempio, tecniche per modulare fattori come la complessità, l’ambiguità e la novità degli esempi potrebbero aiutare ad affrontare problemi di robustezza nei compiti a valle. La generazione dinamica di prompt per adattarsi alle distribuzioni del mondo reale in evoluzione è un’altra sfida aperta.

Addestramento su larga scala

Mentre i modelli di linguaggio pre-addestrati già incorporano conoscenze linguistiche sostanziali, le loro capacità di generazione di dati sono probabilmente destinate a migliorare ulteriormente con l’aumento della scala. Modelli come GPT-4 addestrati su trilioni di token di testo internet mostrano un forte apprendimento a pochi esempi, ma non sono stati ottimizzati specificamente per la sintesi di dati di addestramento.

Architetture e obiettivi progettati per avviare la generazione di dati autonoma su larga scala potrebbero avanzare notevolmente la qualità e l’efficienza di questa metodologia. L’integrazione efficiente della conoscenza recuperata per complementare la conoscenza appresa è un’altra direzione promettente.

Multitask e multilingue

Come notato nell’articolo, migliorare le prestazioni sulle lingue a bassa risorsa rimane un problema. Invece di pre-addestrare un singolo grande LLM, un’alternativa è addestrare una flotta di modelli più piccoli che si specializzano in particolari modalità di dati o domini linguistici.

Un tale approccio ensemble potrebbe aiutare a migliorare la copertura su compiti e lingue rari condividendo rappresentazioni apprese tra gli esperti. L’apprendimento continuo per espandere la conoscenza linguistica e dei compiti nel tempo è anche una prospettiva emozionante.

In conclusione, questo articolo introduce un concetto innovativo di sintesi di dati di addestramento da LLM per creare embedding di testo performanti. I risultati dimostrano l’efficacia di questa metodologia, superando i precedenti benchmark. Mentre gli LLM e le tecniche di dati sintetici progrediscono, attingere alle loro conoscenze per addestrare gli embedder potrebbe diventare una direzione molto promettente.

Ho trascorso gli ultimi cinque anni immergendomi nel mondo affascinante del Machine Learning e del Deep Learning. La mia passione e la mia esperienza mi hanno portato a contribuire a oltre 50 progetti di ingegneria del software diversi, con un focus particolare su AI/ML. La mia curiosità in corso mi ha anche portato verso l'elaborazione del linguaggio naturale, un campo che sono ansioso di esplorare ulteriormente.