Preparazione pre-avanzata di visual-language potenziata dal recupero

Advanced preparation of enhanced visual-language through recovery.

Pubblicato da Ziniu Hu, Ricercatore Studente, e Alireza Fathi, Ricercatore Scientifico, Google Research, Perception Team

I modelli su larga scala, come T5, GPT-3, PaLM, Flamingo e PaLI, hanno dimostrato la capacità di conservare quantità sostanziali di conoscenza quando scalati a decine di miliardi di parametri e addestrati su grandi dataset di testo e immagini. Questi modelli raggiungono risultati all’avanguardia su compiti successivi, come la descrizione dell’immagine, la risposta alla domanda visuale e il riconoscimento del vocabolario aperto. Nonostante tali risultati, questi modelli richiedono una massa enorme di dati per l’addestramento e finiscono con un enorme numero di parametri (miliardi in molti casi), risultando in importanti requisiti computazionali. Inoltre, i dati utilizzati per addestrare questi modelli possono diventare obsoleti, richiedendo un nuovo addestramento ogni volta che la conoscenza del mondo viene aggiornata. Ad esempio, un modello addestrato solo due anni fa potrebbe fornire informazioni obsolete sul presidente attuale degli Stati Uniti.

Nel campo dell’elaborazione del linguaggio naturale (RETRO, REALM) e della visione artificiale (KAT), i ricercatori hanno cercato di affrontare queste sfide utilizzando modelli di recupero potenziati. Tipicamente, questi modelli utilizzano un backbone in grado di elaborare una singola modalità alla volta, ad esempio solo testo o solo immagini, per codificare e recuperare informazioni da un corpus di conoscenza. Tuttavia, questi modelli di recupero potenziati non sono in grado di sfruttare tutte le modalità disponibili in una query e nei corpora di conoscenza e potrebbero non trovare le informazioni più utili per generare l’output del modello.

Per affrontare queste problematiche, in “REVEAL: Retrieval-Augmented Visual-Language Pre-Training with Multi-Source Multimodal Knowledge Memory”, che apparirà in CVPR 2023, introduciamo un modello visual-language che impara a utilizzare una “memoria” multi-source multi-modale per rispondere a query intensive di conoscenza. REVEAL impiega l’apprendimento di rappresentazioni neurali per codificare e convertire diverse fonti di conoscenza in una struttura di memoria composta da coppie chiave-valore. Le chiavi fungono da indici per gli elementi di memoria, mentre i valori corrispondenti conservano informazioni pertinenti su tali elementi. Durante l’addestramento, REVEAL apprende le incapsulature chiave, i token di valore e la capacità di recuperare informazioni da questa memoria per gestire query intensive di conoscenza. Questo approccio consente ai parametri del modello di concentrarsi sulla ragionamento della query, piuttosto che sulla memorizzazione.

Potenziamo un modello visual-language con la capacità di recuperare più voci di conoscenza da un insieme diversificato di fonti di conoscenza, il che aiuta la generazione.

Costruzione di memoria da corpora di conoscenza multimodali

Il nostro approccio è simile a REALM in quanto precomputiamo le incapsulature chiave e di valore degli elementi di conoscenza da diverse fonti e li indichiamo in una memoria di conoscenza unificata, in cui ogni elemento di conoscenza è codificato in una coppia chiave-valore. Ogni chiave è un vettore di incapsulatura d-dimensionale, mentre ogni valore è una sequenza di token di incapsulatura che rappresentano l’elemento di conoscenza in modo più dettagliato. A differenza del lavoro precedente, REVEAL utilizza un insieme diversificato di corpora di conoscenza multimodali, tra cui il grafico di conoscenza WikiData, i passaggi e le immagini di Wikipedia, le coppie di immagini e testo web e i dati di risposta alle domande visive. Ogni elemento di conoscenza potrebbe essere testo, un’immagine, una combinazione di entrambi (ad esempio pagine in Wikipedia) o una relazione o attributo da un grafico di conoscenza (ad esempio, Barack Obama è alto 6’2 “). Durante l’addestramento, ricalcoliamo continuamente le incapsulature chiave e di valore della memoria man mano che i parametri del modello vengono aggiornati. Aggiorniamo la memoria in modo asincrono ogni mille passaggi di addestramento.

Scalabilità della memoria utilizzando la compressione

Una soluzione ingenua per codificare un valore di memoria consiste nel mantenere l’intera sequenza di token per ogni elemento di conoscenza. Quindi, il modello potrebbe fondere la query di input e i valori di memoria recuperati top-k concatenando tutti i loro token insieme e alimentandoli in una pipeline di codificatore-decodificatore del trasformatore. Questo approccio ha due problemi: (1) memorizzare centinaia di milioni di elementi di conoscenza in memoria è impraticabile se ogni valore di memoria consiste di centinaia di token e (2) il codificatore del trasformatore ha una complessità quadratica rispetto al numero totale di token per k per l’autoattenzione. Pertanto, proponiamo di utilizzare l’architettura Perceiver per codificare e comprimere gli elementi di conoscenza. Il modello Perceiver utilizza un decodificatore del trasformatore per comprimere la sequenza completa di token in una lunghezza arbitraria. Questo ci consente di recuperare le prime k voci di memoria per k fino a cento.

La figura seguente illustra la procedura di costruzione delle coppie di chiave-valore della memoria. Ogni elemento di conoscenza viene elaborato attraverso un codificatore multimodale visivo-linguistico, risultante in una sequenza di token di immagini e testo. La testa della chiave trasforma quindi questi token in un vettore di incapsulamento compatto. La testa del valore (perceiver) condensa questi token in meno di essi, mantenendo le informazioni pertinenti sull’elemento di conoscenza all’interno di essi.

Codifichiamo le voci di conoscenza da diverse corpora in coppie di incapsulamento di chiave e valore unificate, dove le chiavi sono utilizzate per indicizzare la memoria e i valori contengono informazioni sulle voci.

Preformazione su larga scala su coppie di immagini e testo

Per addestrare il modello REVEAL, iniziamo con il corpus su larga scala, raccolto dal Web pubblico con tre miliardi di coppie di didascalia di testo alternativo per immagini, introdotto in LiT. Poiché il dataset è rumoroso, aggiungiamo un filtro per rimuovere i punti dati con didascalie più brevi di 50 caratteri, che produce circa 1,3 miliardi di coppie di didascalie di immagini. Poi prendiamo queste coppie, combinate con l’obiettivo di generazione di testo utilizzato in SimVLM, per addestrare REVEAL. Dato un esempio di immagine-testo, campioniamo casualmente un prefisso contenente i primi pochi token del testo. Alimentiamo il prefisso di testo e l’immagine al modello come input con l’obiettivo di generare il resto del testo come output. L’obiettivo di addestramento è di condizionare il prefisso e generare autoregressivamente la sequenza di testo rimanente.

Per addestrare tutti i componenti del modello REVEAL end-to-end, dobbiamo avviare il modello con un buono stato (impostazione dei valori iniziali dei parametri del modello). Altrimenti, se dovessimo partire con pesi casuali (cold-start), il recuperatore spesso restituirebbe elementi di memoria non pertinenti che non genererebbero mai segnali di addestramento utili. Per evitare questo problema di cold-start, costruiamo un dataset iniziale di recupero con conoscenze pseudo-ground-truth per dare al pre-training un buon punto di partenza.

Creiamo una versione modificata del dataset WIT a questo scopo. Ogni coppia di immagini-didascalia in WIT è corredata anche da un passaggio corrispondente di Wikipedia (parole che circondano il testo). Mettiamo insieme il passaggio circostante con l’immagine di query e lo usiamo come conoscenza pseudo ground-truth che corrisponde alla query di input. Il passaggio fornisce informazioni ricche sull’immagine e sulla didascalia, che sono utili per l’inizializzazione del modello.

Per evitare che il modello si basi su caratteristiche di immagine di basso livello per il recupero, applichiamo un’elaborazione dati casuale all’immagine di query di input. Dato questo dataset modificato che contiene pseudo-retrieval ground-truth, addestriamo le chiavi di query e di memoria per avviare il modello.

Flusso di lavoro REVEAL

Il flusso di lavoro complessivo di REVEAL consiste in quattro fasi principali. In primo luogo, REVEAL codifica un input multimodale in una sequenza di incapsulamento di token insieme a un incapsulamento di query condensato. Quindi, il modello traduce ogni voce di conoscenza multi-sorgente in coppie di incapsulamento di chiave e valore unificate, con la chiave utilizzata per l’indicizzazione della memoria e il valore che racchiude l’intera informazione sulla voce. Successivamente, REVEAL recupera i primi k pezzi di conoscenza più correlati da diverse fonti di conoscenza, restituisce gli incapsulamenti di valore pre-elaborati memorizzati nella memoria e ri-codifica i valori. Infine, REVEAL fonde i primi k pezzi di conoscenza attraverso uno strato di fusione di conoscenza attenta, iniettando il punteggio di recupero (prodotto scalare tra l’incapsulamento di query e chiave) come priorità durante il calcolo dell’attenzione. Questa struttura è strumentale per consentire alla memoria, al codificatore, al recuperatore e al generatore di essere addestrati in modo concorrente in modo end-to-end.

Flusso di lavoro complessivo di REVEAL.

Risultati

Valutiamo REVEAL su compiti di domande e risposte visive basati sulla conoscenza utilizzando i dataset OK-VQA e A-OKVQA. Affiniamo il nostro modello pre-addestrato sui compiti VQA utilizzando lo stesso obiettivo generativo in cui il modello prende in input una coppia immagine-domanda e genera la risposta testuale in output. Dimostriamo che REVEAL ottiene risultati migliori sul dataset A-OKVQA rispetto ai tentativi precedenti che incorporano una conoscenza fissa o i lavori che utilizzano grandi modelli di linguaggio (ad esempio, GPT-3) come fonte implicita di conoscenza.

Risultati di risposta alla domanda visiva su A-OKVQA. REVEAL ottiene una maggiore accuratezza rispetto ai lavori precedenti, compresi ViLBERT, LXMERT, ClipCap, KRISP e GPV-2.

Valutiamo anche REVEAL sui benchmark di sottotitolazione delle immagini utilizzando i dataset MSCOCO e NoCaps. Affiniamo direttamente REVEAL sulla suddivisione di addestramento di MSCOCO tramite l’obiettivo generativo di entropia incrociata. Misuriamo le nostre prestazioni sulla suddivisione di test di MSCOCO e sull’insieme di valutazione di NoCaps utilizzando la metrica CIDEr, che si basa sull’idea che le buone didascalie dovrebbero essere simili alle didascalie di riferimento in termini di scelta delle parole, grammatica, significato e contenuto. I nostri risultati sui dataset di sottotitolazione delle immagini MSCOCO e NoCaps sono mostrati di seguito.

Risultati di sottotitolazione delle immagini su MSCOCO e NoCaps utilizzando la metrica CIDEr. REVEAL ottiene un punteggio più alto in confronto a Flamingo, VinVL, SimVLM e CoCa.

Di seguito mostriamo un paio di esempi qualitativi di come REVEAL recupera documenti pertinenti per rispondere alle domande visive.

REVEAL può utilizzare conoscenze provenienti da diverse fonti per rispondere correttamente alla domanda.

Conclusione

Presentiamo un modello di linguaggio visivo arricchito da recupero end-to-end della conoscenza (REVEAL), che contiene un recuperatore di conoscenza che impara a utilizzare un insieme diverso di fonti di conoscenza con diverse modalità. Addestriamo REVEAL su un corpus immagine-testo massivo con quattro corpora di conoscenza diverse e otteniamo risultati di stato dell’arte su compiti di risposta alla domanda visiva intensiva di conoscenza e di sottotitolazione delle immagini. In futuro vorremmo esplorare la capacità di questo modello per l’attribuzione e applicarlo a una classe più ampia di compiti multimodali.

Ringraziamenti

Questa ricerca è stata condotta da Ziniu Hu, Ahmet Iscen, Chen Sun, Zirui Wang, Kai-Wei Chang, Yizhou Sun, Cordelia Schmid, David A. Ross e Alireza Fathi.