Angolo di Anderson
Il modello di diffusione eDiffi di NVIDIA consente di “dipingere con le parole” e altro

Provare a creare composizioni precise con modelli di immagini generative di diffusione latente come Stable Diffusion può essere come cercare di radunare gatti; le stesse poteri immaginativi e interpretativi che consentono al sistema di creare dettagli straordinari e di evocare immagini straordinarie da prompt di testo relativamente semplici sono anche difficili da disattivare quando si cerca un controllo di livello Photoshop sull’immagine generata.
Ora, un nuovo approccio della ricerca NVIDIA, intitolato ensemble diffusion for images (eDiffi), utilizza una miscela di metodi di incorporamento e interpretazione multipli (anziché lo stesso metodo in tutta la pipeline) per consentire un livello di controllo molto maggiore sul contenuto generato. Nell’esempio seguente, vediamo un utente che dipinge elementi dove ogni colore rappresenta una singola parola da un prompt di testo:

‘Dipingere con le parole’ è una delle due nuove capacità del modello di diffusione eDiffi di NVIDIA. Ogni colore rappresenta una parola dal prompt (vedi apparire a sinistra durante la generazione), e il colore dell’area applicata consisterà solo di quell’elemento. Vedi il video ufficiale per altri esempi e una risoluzione migliore all’indirizzo https://www.youtube.com/watch?v=k6cOx9YjHJc
Questo è essenzialmente “dipingere con maschere”, e capovolge il paradigma di inpainting in Stable Diffusion, che si basa sulla correzione di immagini rotte o insoddisfacenti, o sull’estensione di immagini che potrebbero essere state della dimensione desiderata fin dall’inizio.
Qui, invece, i margini del colore dipinto rappresentano i limiti approssimativi di un unico elemento da un singolo concetto, consentendo all’utente di impostare la dimensione finale del canvas fin dall’inizio e quindi aggiungere elementi in modo discreto.

Esempi dal nuovo articolo. Fonte: https://arxiv.org/pdf/2211.01324.pdf
I metodi variegati impiegati in eDiffi significano anche che il sistema fa un lavoro molto migliore nell’includere ogni elemento in prompt lunghi e dettagliati, mentre Stable Diffusion e OpenAI’s DALL-E 2 tendono a dare priorità a certe parti del prompt, a seconda di come appaiono precocemente le parole bersaglio nel prompt, o di altri fattori, come la potenziale difficoltà nel distinguere gli elementi necessari per una composizione completa ma esaustiva (rispetto al testo-prompt):

Dall’articolo: eDiffi è in grado di iterare più a fondo attraverso il prompt fino al massimo numero possibile di elementi resi. Sebbene i risultati migliorati per eDiffi (colonna più a destra) siano stati selezionati, anche le immagini di confronto da Stable Diffusion e DALL-E 2 sono state selezionate.
Inoltre, l’uso di un dedicato T5 text-to-text encoder significa che eDiffi è in grado di rendere testo inglese comprensibile, sia richiesto in modo astratto da un prompt (ad esempio, l’immagine contiene del testo di [x]) o richiesto esplicitamente (ad esempio, la maglietta dice ‘Nvidia Rocks’):

Un dedicato text-to-text processing in eDiffi significa che il testo può essere reso verbatim nelle immagini, invece di essere eseguito solo attraverso un text-to-image interpretive layer che danneggia l’output.
Un ulteriore vantaggio del nuovo framework è che è possibile fornire anche un’immagine singola come prompt di stile, anziché dover addestrare un modello DreamBooth o un embedding testuale su più esempi di un genere o stile.

Il trasferimento di stile può essere applicato da un’immagine di riferimento a un prompt di testo-immagine, o anche a un prompt di immagine-immagine.
Il nuovo articolo è intitolato eDiffi: modelli di diffusione testo-immagine con un ensemble di denoisers esperti, e
Il codificatore di testo T5
L’uso del T5 text-to-text Transfer Transformer di Google è l’elemento fondamentale nei risultati migliorati dimostrati in eDiffi. La pipeline di diffusione latente media si concentra sull’associazione tra immagini addestrate e le didascalie che le accompagnavano quando sono state estratte da Internet (o altrimenti regolate manualmente in seguito, sebbene questo sia un intervento costoso e quindi raro).

Dall’articolo di luglio 2020 per T5 – trasformazioni basate sul testo, che possono aiutare il flusso di lavoro generativo di immagini in eDiffi (e, potenzialmente, altri modelli di diffusione latente). Source: https://arxiv.org/pdf/1910.10683.pdf
Riformulando il testo di origine e eseguendo il modulo T5, si possono ottenere associazioni e rappresentazioni più esatte di quelle addestrate originariamente nel modello, quasi come un post facto etichettatura manuale, con maggiore specificità e applicabilità alle specifiche del prompt di testo richiesto.
Gli autori spiegano:
‘Nella maggior parte dei lavori esistenti sui modelli di diffusione, il modello di denoising è condiviso tra tutti i livelli di rumore, e la dinamica temporale è rappresentata utilizzando un semplice embedding temporale che viene alimentato al modello di denoising tramite una rete MLP. Sosteniamo che la complessa dinamica temporale della diffusione di denoising potrebbe non essere appresa dai dati in modo efficace utilizzando un modello condiviso con una capacità limitata.
‘Invece, proponiamo di aumentare la capacità del modello di denoising introducendo un ensemble di denoisers esperti; ogni denoiser esperto è un modello di denoising specializzato per un particolare intervallo di livelli di rumore. In questo modo, possiamo aumentare la capacità del modello senza rallentare il campionamento, poiché la complessità computazionale della valutazione di [l’elemento elaborato] a ogni livello di rumore rimane la stessa.’

Flusso di lavoro concettuale per eDiffi.
I moduli di encoding CLIP esistenti inclusi in DALL-E 2 e Stable Diffusion sono anche in grado di trovare interpretazioni alternative di immagini per testo relativo all’input dell’utente. Tuttavia, sono addestrati su informazioni simili a quelle del modello originale e non vengono utilizzati come un layer interpretativo separato nel modo in cui T5 è utilizzato in eDiffi.
Gli autori affermano che eDiffi è la prima volta che sia un T5 che un encoder CLIP sono stati incorporati in una singola pipeline:
’Poiché questi due encoder sono addestrati con obiettivi diversi, le loro embedding favoriscono la formazione di immagini diverse con lo stesso input di testo. Mentre le embedding di testo CLIP aiutano a determinare l’aspetto globale delle immagini generate, tendono a perdere i dettagli fini nel testo.
‘In contrasto, le immagini generate con le embedding di testo T5 riflettono meglio gli oggetti individuali descritti nel testo, ma il loro aspetto globale è meno preciso. Utilizzandoli congiuntamente si ottengono i migliori risultati di generazione di immagini nel nostro modello.’
Interruzione e potenziamento del processo di diffusione
L’articolo nota che un modello di diffusione latente tipico inizia il viaggio dalla pura rumorosità a un’immagine affidandosi esclusivamente al testo nelle prime fasi della generazione.
Quando il rumore si risolve in una sorta di layout grezzo che rappresenta la descrizione nel prompt di testo, la faccia guidata dal testo del processo essenzialmente scompare, e il resto del processo si sposta verso il potenziamento delle caratteristiche visive.
Ciò significa che qualsiasi elemento che non è stato risolto nella fase iniziale di interpretazione del rumore guidato dal testo è difficile da iniettare nell’immagine in seguito, perché i due processi (testo-layout e layout-immagine) hanno una sovrapposizione relativamente scarsa, e il layout di base è abbastanza intrecciato quando arriva al processo di potenziamento dell’immagine.

Dall’articolo: le mappe di attenzione di varie parti della pipeline mentre il processo di rumore-immagine matura. Possiamo vedere il netto calo dell’influenza di CLIP sull’immagine nella riga inferiore, mentre T5 continua a influenzare l’immagine molto più avanti nel processo di rendering.
Potenziale professionale
Gli esempi nella pagina del progetto e nel video di YouTube si concentrano sulla generazione di immagini carine e divertenti. Come al solito, la ricerca NVIDIA sta giocando down il potenziale della sua ultima innovazione per migliorare i flussi di lavoro fotorealistici o VFX, nonché il suo potenziale per il miglioramento delle immagini deepfake e video.
Negli esempi, un utente principiante o amatoriale traccia approssimativamente i contorni di posizionamento per l’elemento specifico, mentre in un flusso di lavoro VFX più sistematico, potrebbe essere possibile utilizzare eDiffi per interpretare più frame di un elemento video utilizzando testo-immagine, in cui i contorni sono molto precisi e basati, ad esempio, su figure in cui lo sfondo è stato rimosso tramite schermo verde o metodi algoritmici.

Runway ML già fornisce un rotoscoping basato sull’intelligenza artificiale. In questo esempio, lo ‘schermo verde’ intorno al soggetto rappresenta il livello alfa, mentre l’estrazione è stata effettuata tramite apprendimento automatico anziché rimozione algoritmica di uno sfondo di schermo verde reale. Fonte: https://twitter.com/runwayml/status/1330978385028374529
Utilizzando un modello DreamBooth addestrato e una pipeline di immagine-immagine con eDiffi, potrebbe essere possibile iniziare a risolvere uno degli ostacoli più grandi di qualsiasi modello di diffusione latente: la stabilità temporale. In tal caso, sia i margini dell’immagine imposta che il contenuto dell’immagine sarebbero ‘prefloatati’ contro il canvas dell’utente, con continuità temporale del contenuto reso (ad esempio, trasformando un praticante di Tai Chi reale in un robot) fornita dall’uso di un modello DreamBooth bloccato che ha ‘memorizzato’ i suoi dati di addestramento – cattivo per l’interpretazione, grande per la riproducibilità, la fedeltà e la continuità.
Metodo, dati e test
L’articolo afferma che il modello eDiffi è stato addestrato su ‘una raccolta di set di dati pubblici e proprietari’, pesantemente filtrati da un modello CLIP pre-addestrato, al fine di rimuovere le immagini che potrebbero abbassare il punteggio estetico generale dell’output. L’insieme di immagini finale filtrato comprende ‘circa un miliardo’ di coppie testo-immagine. La dimensione delle immagini addestrate è descritta come con ‘il lato più corto maggiore di 64 pixel’.
Una serie di modelli sono stati addestrati per il processo, con sia il modello di base che i modelli di super-risoluzione addestrati sull’ottimizzatore AdamW con un tasso di apprendimento di 0,0001, con un decadimento del peso di 0,01 e a una dimensione di batch formidabile di 2048.
Il modello di base è stato addestrato su 256 GPU A100 NVIDIA, e i due modelli di super-risoluzione su 128 GPU A100 NVIDIA per ogni modello.
Il sistema si basava sulla libreria PyTorch Imaginaire di NVIDIA. I set di dati COCO e Visual Genome sono stati utilizzati per la valutazione, sebbene non siano stati inclusi nei modelli finali, con MS-COCO il variante specifico utilizzato per i test. I sistemi rivali testati sono stati GLIDE, Make-A-Scene, DALL-E 2, Stable Diffusion e i due sistemi di sintesi di immagini di Google, Imagen e Parti.
Secondo quanto affermato nell’articolo precedente, è stato utilizzato il FID-30K zero-shot come metrica di valutazione. Sotto FID-30K, 30.000 didascalie sono state estratte casualmente dal set di convalida COCO (ad esempio, non le immagini o il testo utilizzato nell’addestramento), che sono state utilizzate come prompt di testo per la sintesi di immagini.
La distanza di Frechet Inception (FID) tra le immagini generate e le immagini di verità di base è stata quindi calcolata, oltre a registrare il punteggio CLIP per le immagini generate.

Risultati dei test FID zero-shot contro approcci attuali di stato dell’arte nel set di convalida COCO 2014, con risultati più bassi migliori.
Nei risultati, eDiffi è stato in grado di ottenere il punteggio più basso (migliore) su FID zero-shot anche contro sistemi con un numero di parametri molto più alto, come i 20 miliardi di parametri di Parti, rispetto ai 9,1 miliardi di parametri nel modello eDiffi con le specifiche più elevate addestrato per i test.
Conclusione
Il modello di diffusione eDiffi di NVIDIA rappresenta un’alternativa benvenuta all’aggiunta di sempre più dati e complessità ai sistemi esistenti, utilizzando invece un approccio più intelligente e stratificato ad alcuni degli ostacoli più spinosi relativi all’intreccio e alla non-editabilità nei sistemi di immagini generative di diffusione latente.
C’è già una discussione nei subreddit e nei Discord di Stable Diffusion di incorporare direttamente qualsiasi codice che potrebbe essere reso disponibile per eDiffi, o di ri-stadiare i principi alla base di esso in una implementazione separata. La nuova pipeline, tuttavia, è così radicalmente diversa, che costituirebbe un intero numero di versione di modifica per SD, abbandonando alcune retrocompatibilità, sebbene offra la possibilità di livelli di controllo molto migliorati sulle immagini sintetizzate finali, senza sacrificare i poteri immaginativi affascinanti della diffusione latente.
Pubblicato per la prima volta il 3 novembre 2022.












