Meta’s Data2vec 2.0 La seconda volta è più veloce

Meta's Data2vec 2.0 Second time is faster

Meta’s Data2vec è un esempio di una rete neurale generalista che può utilizzare lo stesso codice esatto per elaborare esempi di dati in diverse modalità, in questo caso, discorso, testo e immagini, e fare previsioni su tali dati.

Cosa fai quando hai dimostrato il tuo punto nelle reti neurali?

Una risposta è farlo più velocemente.

Il martedì, Meta, proprietaria di Facebook, Instagram e WhatsApp, ha presentato Data2vec 2.0, una versione rinnovata di una rete neurale introdotta all’inizio di quest’anno che si comporta come una sorta di generalista, svolgendo compiti che coinvolgono dati di testo, immagini e discorsi con lo stesso approccio di base a tutti e tre.

La seconda volta, gli scienziati di Meta hanno reso il programma più veloce e, in alcuni casi, più accurato nei test di benchmark dei compiti di apprendimento automatico.

“Data2vec 2.0 mostra che la velocità di addestramento dell’apprendimento autosupervisionato può essere notevolmente migliorata senza perdita di accuratezza del compito successivo”, scrivono gli autori Alexei Baevski, Arun Babu, Wei-Ning Hsu e Michael Auli, quattro degli autori del documento originale di Data2vec, in questo nuovo lavoro, Efficient Self-supervised Learning with Contextualized Target Representations for Vision, Speech and Language, pubblicato su arXiv.

Inoltre: Cosa è ChatGPT e perché è importante?

Il risultato eccezionale di questo secondo Data2vec è ridurre il tempo necessario per addestrare Data2vec. L’addestramento di una rete neurale è tipicamente misurato in termini di “epoche”, che significa il numero di volte in cui la rete neurale riceve gli esempi di addestramento. Può anche essere misurato in base al tempo effettivo, alle ore, ai minuti e ai giorni trascorsi dall’inizio alla fine.

“Gli esperimenti mostrano che Data2vec 2.0 può raggiungere la stessa accuratezza di molti algoritmi esistenti popolari in 2-16 volte la velocità di addestramento”, scrivono.

Il nome Data2vec è un gioco sul nome di un programma per l'”embedding” del linguaggio sviluppato da Google nel 2013 chiamato Word2vec. Quel programma prevedeva come si raggruppavano le parole, quindi Word2vec rappresenta una rete neurale progettata per un tipo specifico di dati, nel caso specifico il testo.

Nel caso di Data2vec, tuttavia, Baevski e colleghi stanno prendendo una rete neurale chiamata Transformer, sviluppata da Ashish Vaswani e colleghi di Google nel 2017, e la stanno estendendo per essere utilizzata per tipi di dati multipli. La stessa struttura della rete neurale può servire per addestrare tutti e tre – immagine, discorso e testo – senza essere modificata per adattarsi alle particolarità di ognuno di essi, rendendola un programma generalista.

Baevski e colleghi estendono il Transformer a ciò che viene chiamato apprendimento “autosupervisionato”. In un contesto autosupervisionato, una rete neurale viene addestrata attraverso più fasi i cui risultati vengono confrontati tra loro.

Innanzitutto, la rete comprime un campione di dati, ciò che è noto come costruzione di una rappresentazione dei dati in ingresso. Quindi, una seconda versione della rete ha alcuni di quei dati in ingresso “mascherati”, lasciati non rivelati. Deve ricostruire la rappresentazione che la prima versione della rete aveva costruito, obbligando la seconda rete a costruire un modello migliore di come i dati si adattano insieme riempiendo essenzialmente gli spazi vuoti.

Inoltre: L’obiettivo vero dell’IA potrebbe non essere più l’intelligenza

Le due reti – quella con la rappresentazione compressa dei dati di input completi e non mascherati e quella con la versione incompleta che sta cercando di completare – vengono chiamate, in modo sensato, Insegnante e Studente, rispettivamente. La rete Studente cerca di sviluppare il suo senso dei dati, per così dire, ricostruendo ciò che l’Insegnante ha già raggiunto nonostante la mascheratura.

In primo piano

  • Apple Mac Studio M2 Ultra: questa è la nuova workstation desktop di punta
  • 4 cose che Claude AI può fare e ChatGPT no
  • Testo centinaia di smartwatch, ma questo è stato al mio polso per tutto l’anno
  • I migliori avvitatori elettrici: svolgi compiti di fai da te e riparazione in metà del tempo

Gli autori questa volta hanno apportato due importanti modifiche a Data2vec per renderlo più veloce: l’utilizzo di “convoluzioni” e l'”ammortamento” delle rappresentazioni compresse della rete di insegnamento.

Sul primo punto, la rete studente che deve prevedere le rappresentazioni della rete di insegnamento non utilizza più la parte del Transformer chiamata decoder per farlo.

Questo è l’approccio standard, per decomprimere, in un certo senso, le rappresentazioni compresse della rete di insegnamento. Invece, gli autori utilizzano ciò che viene chiamato reti neurali convoluzionali, uno strumento fondamentale nelle reti neurali per rappresentare campioni di dati in forma compressa, e uno strumento che è molto più vecchio del Transformer. È un buon esempio di come una tecnologia più vecchia possa sopravvivere nella programmazione.

“Invece di utilizzare un decoder basato su Transformer, utilizziamo un decoder convoluzionale più piccolo, che abbiamo trovato più facile e veloce da addestrare”, scrivono.

Per il secondo cambiamento, anziché creare ripetutamente una rappresentazione compressa nella rete di insegnamento, il nuovo Data2vec crea la rappresentazione solo una volta. La riutilizza poi come obiettivo, la cosa da indovinare, per ciascuno dei punti dati mascherati.

Come affermano gli autori, “Per ammortizzare il costo del calcolo del modello di insegnamento, riutilizziamo la rappresentazione dell’insegnante per molteplici versioni mascherate del campione di addestramento.

“Concretamente, consideriamo M diverse versioni mascherate del campione di addestramento e calcoliamo la perdita rispetto alla stessa rappresentazione obiettivo.”

L’architettura di Data2vec 2.0. Meta questa volta ha sostituito la seconda parte del programma, che era un decoder basato su Transformer, con un decoder basato su reti neurali convoluzionali, una tecnologia più vecchia. Hanno anche riutilizzato le rappresentazioni compresse della rete “insegnante” come un unico obiettivo per molte istanze mascherate dei dati della rete “studente”.

Nella sezione dei risultati del paper, Baevski e il suo team descrivono come abbiano ridotto il tempo di addestramento e migliorato la precisione in tutti e tre i settori del riconoscimento delle immagini, del riconoscimento del parlato e dell’elaborazione del linguaggio naturale.

Per l’elaborazione delle immagini, gli autori hanno utilizzato Data2vec come base per il fine-tuning di quello che viene chiamato “ViT”, il “vision Transformer”, una rete neurale appositamente progettata per compiti di visione introdotta l’anno scorso da Alexey Dosovitskiy e colleghi di Google. Il programma Data2vec è una base pre-addestrata, su cui ViT viene messo a punto, in termini di letteratura.

Rispetto ai risultati di gennaio, il ViT supportato da Data2vec ha nuovamente superato le altre reti neurali utilizzate come base per ViT in termini di precisione su ImageNet, il classico test di assegnazione delle etichette alle immagini, e ha superato anche la versione precedente di Data2vec.

Ma oltre alla precisione, il nuovo Data2vec ha richiesto molto meno epoche di addestramento. La versione precedente di Data2vec richiedeva 800 epoche; questa volta, è stata ridotta a 150 epoche. E rispetto a una rete auto-encoder mascherata, chiamata MAE, un’altra creazione di Meta, l’addestramento è stato ridotto da 1.600 a 100 epoche, anche se la precisione del nuovo Data2vec ha superato quella di MAE. Il regime di addestramento più veloce comporta una grande riduzione del tempo assoluto di addestramento, solo 66 ore per Data2vec 2.0 rispetto a 113,6 ore per MAE.

Inoltre: Intelligenza artificiale: 5 applicazioni innovative che potrebbero cambiare tutto

Nel riconoscimento del parlato, il compito consiste nel completare le parti mancanti di un frammento di un file audio di una frase pronunciata. Il nuovo Data2vec è stato confrontato con molteplici reti neurali concorrenti per il riconoscimento del parlato, tra cui il Data2vec originale e i programmi chiamati Wav2vec, HuBERT e WavLM. In nessun caso Data2vec 2.0 ha battuto quelle reti, ma “ottiene una precisione più elevata rispetto ad altri modelli in meno tempo di addestramento”. Ad esempio, 43 ore di addestramento per Data2vec 2.0 raggiungono la precisione che richiede 57 ore per il Data2vec originale.

Nel terzo ambito, l’elaborazione del linguaggio naturale, Data2vec 2.0 è stato testato su una serie di sfide che comprendono il framework di valutazione della comprensione del linguaggio generale, noto come GLUE, sviluppato nel 2019 dall’Istituto di Scienze Matematiche della Courant dell’Università di NYU.

In un test, la rete deve prevedere se una frase deriva da un’altra – implicazione logica -, mentre un altro compito rappresentativo sfida la rete a etichettare una fase corretta dal punto di vista grammaticale o meno.

Confrontando il Data2vec originale con due programmi basati su Transformer, il BERT di Google e una versione rivista chiamata RoBERTa, introdotta nel 2019 dalla Scuola di Informatica Paul Allen dell’Università di Washington e Meta, la versione 2.0 di Data2vec ottiene ottimi risultati nei risultati di GLUE e richiede meno tempo di addestramento.

Il punteggio medio totale di accuratezza per tutte le attività GLUE di questa nuova versione è 82,6, appena sotto l’82,7 del Data2vec originale, ma superiore all’81,2 di BERT e all’82,5 di RoBERTa. Tuttavia, Data2vec 2.0 impiega solo 28,2 ore per raggiungere quel livello, meno della metà delle 69 ore impiegate per il Data2vec originale, e molto meno delle 50,5 ore necessarie per RoBERTa.

Inoltre: Le persone che costruiscono l’intelligenza artificiale sono quelle che ne hanno più bisogno

Baevski e il suo team scrivono che in futuro estenderanno Data2vec ad altre forme di dati oltre al parlato, alle immagini e al testo, aprendo la possibilità che possa essere ancora più generalista.

Una limitazione sembra probabile che rimanga in vigore. Come nel Data2vec originale, la versione 2.0 tratta ancora in modo diverso ciascun tipo di dato quando viene inserito per la prima volta nella rete durante l’addestramento. Ciò significa che Data2vec non ha ancora sviluppato un modo completamente generico per gestire i tipi di dati.

Le immagini, il parlato e il testo vengono tutti preparati tramite pre-elaborazione dei dati. In questo modo, l’aspetto multimodale della rete si basa ancora su indizi sui dati, ciò a cui il team si riferisce come “piccoli encoder di input specifici della modalità”.

Inoltre, ciascuna delle codifiche compressa dalla rete docente viene creata separatamente per i tre tipi di dati. Non esiste ancora la capacità di creare una sorta di “super-codifica” che combini contemporaneamente tutti i tipi di dati in una rappresentazione unica.

E così, come per il Data2vec 1.0, una rete neurale che potrebbe veramente essere Una Rete per Dominarle Tutte rimane la tecnologia del futuro.

Come per il Data2vec originale, Meta ha pubblicato il codice su GitHub.