All’interno di XGen-Image-1 come Salesforce Research ha costruito, addestrato e valutato un modello massiccio di testo-immagine

In XGen-Image-1, Salesforce Research built, trained, and evaluated a massive text-image model.

Uno dei processi di addestramento più efficienti mai implementati per i modelli di testo-immagine.

Credito immagine: Ricerca Salesforce

Recentemente ho avviato una newsletter educativa incentrata sull’Intelligenza Artificiale, che conta già più di 160.000 iscritti. TheSequence è una newsletter orientata all’apprendimento automatico (ML) che richiede solo 5 minuti di lettura, senza fronzoli (senza hype, senza notizie, ecc.). L’obiettivo è tenerti aggiornato sui progetti di apprendimento automatico, i paper di ricerca e i concetti. Prova a iscriverti qui di seguito:

TheSequence | Jesus Rodriguez | Substack

La migliore fonte per rimanere aggiornato sugli sviluppi nell’apprendimento automatico, nell’intelligenza artificiale e nei dati…

thesequence.substack.com

Salesforce è stato uno dei laboratori di ricerca più attivi nella nuova ondata di modelli fondamentali. Negli ultimi mesi, Salesforce Research ha rilasciato una varietà di modelli in diversi ambiti come il linguaggio, la programmazione e la computer vision. Recentemente, hanno presentato XGen-Image-1, un enorme modello di testo-immagine che mostra prestazioni all’avanguardia in diverse attività di computer vision. Insieme al rilascio, Salesforce Research ha fornito molti dettagli sulla metodologia di addestramento e sulle migliori pratiche utilizzate in XGen-Image-1. Oggi vorrei approfondire alcuni di quei dettagli. Il processo di creazione di XGen-Image-1 ha coinvolto una serie di decisioni molto delicate che spaziano dalle scelte strategiche di design e dalle metodologie di addestramento alle metriche di performance riguardanti i loro modelli di generazione di immagini inaugurali.

  • Addestramento del modello: Dal punto di vista dell’architettura, XGen-Image-1 è un modello di diffusione latente con 860 milioni di parametri. Per l’addestramento, Salesforce Research ha sfruttato il dataset LAION di testo-immagine disponibile pubblicamente, che conta 1,1 miliardi di coppie.• Gestione della risoluzione: XGen-Image-1 utilizza un Autoencoder a Variabili Latenti (VAE) con upsampler di pixel prontamente disponibili che facilita l’addestramento a risoluzioni notevolmente basse, riducendo efficacemente i costi computazionali.• Efficienza dei costi: Il costo è sempre una variabile critica quando si tratta di addestrare modelli di testo-immagine. Nel caso di XGen-Image-1, Salesforce Research ha stabilito che era possibile sviluppare un modello competitivo di generazione di immagini utilizzando il TPU stack di Google con un modesto investimento di circa $75k.• Parità di performance: È importante notare che XGen-Image-1 ha mostrato prestazioni allineate a Stable Diffusion 1.5 e 2.1, modelli che si collocano tra i vertici dell’abilità di generazione di immagini.• Perfezionamento automatico: È emerso un aspetto notevole sotto forma di miglioramenti automatici su regioni specifiche mediante ritocchi. Ad esempio, regioni come “viso” sono state migliorate, aumentando efficacemente la qualità delle immagini generate.• Miglioramento dell’inferenza: Integrando il campionamento di rifiuto durante l’inferenza, la qualità dei risultati ha subito un significativo miglioramento, attestando la potenza di un’attenta integrazione metodologica.
Credito immagine: Ricerca Salesforce

Addestramento

La maggior parte dei modelli di testo-immagine ha sviluppato la propria metodologia di addestramento. XGen-Image-1, invece, ha seguito un percorso diverso, concentrandosi non sulle sfide dirette della condizionamento, codifica e upsampling, ma piuttosto sulla misura della loro riutilizzabilità. Questa prospettiva distintiva li ha portati a sperimentare le soglie dell’addestramento efficiente, sondando i limiti dell’addestramento a bassa risoluzione attraverso l’amalgama di modelli di autoencoding preaddestrati e di upsampling basati su pixel.

Come illustra il flusso di lavoro, un autoencoder preaddestrato combinato con upsampler basato su pixel opzionali consente la generazione a bassa risoluzione producendo immagini di grandezza (1024×1024). La loro visione si estende all’esplorazione dei limiti inferiori pratici della risoluzione. La valutazione quantitativa avviene al giunto 256×256, immediatamente dopo la fase VAE priva di upsampling. La valutazione qualitativa sfrutta un percorso di “ri-upsampling” che passa da 256 a 64 a 256, riproducendo il “Refiner” di SDXL, insieme a un upsampler da 256 a 1024.

Credito immagine: Salesforce Research

Infrastruttura di addestramento

Salesforce Research ha effettuato l’addestramento del modello su TPU v4. Durante il processo di addestramento, il team ha utilizzato Google Cloud Storage (GCS) per conservare i checkpoint del modello. Inoltre, sono stati utilizzati drive montati su Gloud per archiviare dataset estesi. Un robusto regime di addestramento è stato svolto su una macchina TPU v4-512, coprendo 1,1 milioni di passaggi nel corso di circa 9 giorni, con costi hardware approssimativi di $73k, che sono molto economici rispetto alle alternative!

Il processo non è stato privo di sfide. La perdita del modello mostrava fluttuazioni erratiche da passaggio a passaggio, nonostante le generose dimensioni dei batch. La causa principale era legata al seeding uniforme tra tutti i workers, che portava a questa volatilità. La risoluzione è avvenuta attraverso un seeding casuale, allineato al rank di ogni worker, favorendo una dispersione bilanciata dei passaggi di rumore e garantendo curve di perdita più regolari.

Credito immagine: Salesforce Research

Valutazione

Per valutare XGen-Image-1, Salesforce Research ha utilizzato una metodologia che comprende una rappresentazione a doppio asse, con l’asse x che rappresenta il punteggio CLIP – una rappresentazione dell’allineamento alle indicazioni – mentre l’asse y rappresenta FID (Fréchet Inception Distance), un indicatore della similarità dell’aspetto nell’insieme di dati. Questa valutazione si estende su 15 scale di guidanza, coinvolgendo 30.000 coppie di immagini-indicazioni nella figura iniziale. Per il confronto tra checkpoint, questo ambito si riduce a 1.000 coppie. Le coppie di dati sono state selezionate attentamente dal dataset COCO Captions, in cui le didascalie sono arricchite con “Una fotografia di” per mitigare le penalità di FID legate a stili grafici diversi.

Credito immagine: Salesforce Research

Salesforce Research ha anche utilizzato una valutazione umana per confrontare XGen-Image-1. Questa valutazione, condotta tramite Amazon Mechanical Turk, coinvolge partecipanti che valutano l’allineamento tra immagine e indicazione. Con una dedicazione risoluta alla precisione, i partecipanti si impegnano con tutte le 1.632 indicazioni in sei diverse prove, portando a un ampio repository di circa 10k risposte per confronto.

Credito immagine: Salesforce Research

Generazione di immagini di alta qualità

Una parte importante della creazione di XGen-Image-1 è stata garantire la generazione di immagini di alta qualità. Questo processo si basava su due trucchi ben noti. La strategia iniziale consisteva nella generazione di un’ampia gamma di immagini e successivamente nella selezione delle migliori. Mantenendo il principio saldo di mantenere una struttura di un’indicazione per un’immagine di output, Salesforce Research si è dedicato all’automazione di questa metodologia. L’esplorazione di questo approccio li ha portati ad approfondire il campionamento di rigetto, una tecnica che comprende la generazione di più immagini, seguita dalla selezione automatica del candidato più adatto. Inizialmente sono state prese in considerazione diverse metriche, tra cui il punteggio estetico e il punteggio CLIP. Alla fine, il team ha scoperto che PickScore è una metrica complessiva robusta. Questa metrica, come documentato nella letteratura, ha mostrato un notevole allineamento con le preferenze umane – una caratteristica fondamentale. Seguendo questa metodologia, XGen-Image-1 genera 32 immagini (in una griglia 4×8) in circa 5 secondi su una GPU A100 e seleziona quella con il punteggio più alto.

Credito immagine: Salesforce Research

La seconda tecnica, che si manifesta come un esempio di miglioramento delle immagini, si materializza attraverso l’inpainting delle regioni che presentano un’estetica subottimale.

  1. I maschere di segmentazione, estrapolate dalle indicazioni, racchiudevano l’oggetto target. 2. Gli oggetti sono stati adeguatamente ritagliati in base a queste maschere di segmentazione. 3. Il ritaglio è stato espanso. 4. Utilizzando operazioni img2img sul ritaglio, abbinando la prompt di segmentazione con didascalie corrispondenti (ad esempio, “una fotografia di un volto”), è stata facilitata una raffinazione regionale. 5. La maschera di segmentazione ha svolto un ruolo fondamentale nell’integrare senza soluzione di continuità il ritaglio aumentato nell’immagine originale. La combinazione di entrambi i metodi ha portato alla creazione di immagini di alta qualità in XGen-Image-1.
Credito immagine: Salesforce Research

XGen-Image-1 non è una svolta nel modello di testo-immagine, ma fornisce comunque alcuni contributi molto utili. Il più grande è dimostrare che è possibile riutilizzare molti componenti preaddestrati per ottenere prestazioni all’avanguardia in questo tipo di modello. X-Gen-Image-1 ha raggiunto prestazioni simili a StableDiffusion utilizzando solo una frazione delle risorse di calcolo durante l’addestramento. Davvero impressionante.