Negli ultimi anni, i Transformer autoregressivi hanno portato un flusso costante di scoperte nella modellazione generativa. Questi modelli generano ogni elemento di un campione – i pixel di un’immagine, i caratteri di un testo (tipicamente in blocchi “token”), i campioni di una forma d’onda audio e così via – prevedendo un elemento dopo l’altro. Quando si prevede l’elemento successivo, il modello può guardare indietro a quelli creati in precedenza.

Tuttavia, ciascuno degli strati di un Transformer diventa più costoso man mano che vengono utilizzati più elementi come input e i professionisti possono permettersi di addestrare Transformers profondi solo su sequenze di lunghezza non superiore a circa 2.048 elementi. Pertanto, la maggior parte dei modelli basati su Transformer ignorano tutti gli elementi oltre il passato più recente (circa 1.500 parole o 1/6 di una piccola immagine) quando fanno una previsione.

Al contrario, il nostro sviluppato di recente Modelli di percettori dare risultati eccellenti su una varietà di attività del mondo reale con un massimo di circa 100.000 elementi. I percettori utilizzano l’attenzione incrociata per codificare gli input in uno spazio latente, disaccoppiandoli i requisiti di calcolo dell’input dalla profondità del modello. I percettori spendono inoltre un costo fisso, indipendentemente dalla dimensione dell’input, a quasi ogni livello.

Mentre la codifica dello spazio latente gestisce tutti gli elementi in un unico passaggio, la generazione autoregressiva presuppone che l’elaborazione avvenga un elemento alla volta. Per affrontare questo problema, Perceiver AR propone una soluzione semplice: allineare i latenti uno per uno con gli elementi finali dell’input e mascherare attentamente l’input in modo che i latenti vedano solo gli elementi precedenti.

Il percettore AR mappa una sequenza di input (percettore AR) in un piccolo spazio latente mediante attenzione incrociata per produrre un latente per ciascun gettone bersaglio (3 latenti mostrati, uno per i bersagli AR per End OF Ssequenza). Questi latenti vengono poi elaborati da una pila profonda di strati di auto-attenzione. Il Perceiver AR può essere addestrato per la generazione autoregressiva end-to-end, il tutto facendo uso di sequenze di input molto lunghe.

Il risultato è un’architettura (mostrata sopra) che gestisce ingressi fino a 50 volte più lunghi rispetto ai Transformer standard, distribuendosi al tempo stesso ampiamente (e sostanzialmente con la stessa facilità) dei Transformer solo decoder standard.

All’aumentare della lunghezza del contesto o delle dimensioni del modello, aumenta la quantità di calcolo necessaria per addestrare un modello. Possiamo quantificare il budget di calcolo per diversi modelli misurandone la velocità sull’hardware reale (passi al secondo su TPUv3), all’aumentare della lunghezza del contesto di input e delle dimensioni del modello. A differenza di altri modelli generativi come Transformer o Transformer-XL, Perceiver AR disaccoppia la lunghezza del contesto di input dalla profondità del modello, consentendoci di implementare facilmente i modelli profondi necessari per modellare lunghe sequenze su TPU o GPU di generazione attuale.

Perceiver AR si adatta notevolmente meglio alle dimensioni rispetto ai modelli Transformers e Transformer-XL standard in una gamma di lunghezze di sequenza in termini reali. Questa proprietà ci consente di costruire modelli a lungo contesto molto efficaci. Ad esempio, abbiamo scoperto che un Perceiver AR a 60 strati con lunghezza di contesto 8192 supera un Transformer-XL a 42 strati in un’attività di generazione della lunghezza di un libro, mentre funziona più velocemente in termini di orologio da parete reale.

Sui benchmark standard di generazione di immagini a contesto lungo (ImageNet 64×64), linguaggio (PG-19) e musica (MAESTRO), Perceiver AR produce risultati all’avanguardia. Aumentare il contesto di input disaccoppiando la dimensione dell’input dal budget di calcolo porta a diversi risultati interessanti:

  • Il budget di calcolo può essere adattato al momento della valutazione, consentendoci di spendere meno e ridurre gradualmente la qualità o di spendere di più per una migliore generazione.
  • Un contesto più ampio consente a Perceiver AR di superare Transformer-XL, anche spendendo la stessa cifra in termini di elaborazione. Troviamo che un contesto più ampio porta a prestazioni del modello migliorate anche su scala accessibile (parametri ~ 1B).
  • La qualità del campione di Perceiver AR mostra molta meno sensibilità all’ordine in cui genera gli elementi. Ciò rende Perceiver AR facile da applicare a impostazioni che non hanno un ordinamento naturale da sinistra a destra, come dati come immagini, con una struttura che si estende su più di una dimensione.

Utilizzando un set di dati di musica per pianoforte, abbiamo addestrato Perceiver AR a generare nuovi brani musicali da zero. Poiché ogni nuova nota viene prevista in base alla sequenza completa delle note precedenti, Perceiver AR è in grado di produrre brani con un elevato livello di coerenza melodica, armonica e ritmica:

Ulteriori informazioni sull’utilizzo di Perceiver AR:

  • Scarica il codice JAX per addestrare Perceiver AR su Github
  • Continua a leggere il nostro articolo arXiv
  • Dai un’occhiata alla nostra presentazione in evidenza su ICML 2022

Vedi Google Magenta post sul blog con più musica!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *