📖

Cos'è Modello di diffusione?

Una guida in linguaggio semplice ai modelli di diffusione, la tecnica di IA generativa alla base della generazione di immagini di Stable Diffusion, Imagen e DALL·E 3.

Un modello di diffusione è un tipo di IA generativa che impara a creare nuovi dati — in genere immagini, audio o video — invertendo un processo di aggiunta di rumore graduale. Durante l'addestramento, il modello osserva esempi reali progressivamente corrotti con rumore gaussiano attraverso molti piccoli passi, e una rete neurale viene addestrata a prevedere il rumore aggiunto a ogni passo. Una volta addestrato, il modello può partire da puro rumore casuale e "denoiserlo" in modo iterativo fino a ottenere un nuovo campione coerente, come un'immagine fotorealistica guidata da un prompt testuale.

Come funziona un modello di diffusione

L'addestramento avviene in due fasi accoppiate. Nel processo forward, un'immagine di addestramento pulita viene presa e piccole quantità di rumore casuale vengono aggiunte per un numero fisso di passi temporali (spesso 1.000) finché l'immagine diventa indistinguibile dal disturbo statico. Nel processo reverse, una rete neurale — di solito una U-Net — impara a stimare il rumore aggiunto a ciascun passo temporale, così da poter sottrarre quel rumore e tornare verso un'immagine pulita.

In fase di inferenza, la generazione parte da un campione di puro rumore gaussiano. Il modello lo denoisa iterativamente, passo dopo passo, finché emerge un'immagine pulita. Per rendere la generazione condizionata — ad esempio, trasformare il prompt "un corgi su uno skateboard" in un'immagine — un encoder testuale (come un modello CLIP o T5) incorpora il prompt e la rete di diffusione viene addestrata a denoiserare tenendo conto di quella rappresentazione. La classifier-free guidance, introdotta nel 2022, consente allo stesso modello di denoiserare anche incondizionatamente e poi estrapola tra le due predizioni, accentuando quanto l'output segue fedelmente il prompt.

Perché è importante

I modelli di diffusione sono la spina dorsale dei principali sistemi attuali di text-to-image, tra cui Stable Diffusion, DALL·E 3, Midjourney e Imagen di Google. Tendono a produrre campioni più fedeli e più diversificati rispetto ad approcci generativi precedenti come le GAN, e il loro campionamento iterativo li rende facili da condizionare su segnali come testo, mappe di profondità o schizzi. Oltre alle immagini, la stessa ricetta alimenta modelli per audio (ad es. DiffSinger), video, struttura delle proteine (ad es. RoseTTAFold All-Atom) e generazione di forme 3D, rendendo la diffusione uno dei framework generativi più versatili dell'IA moderna.

Tipi principali di modelli di diffusione

  • Denoising Diffusion Probabilistic Models (DDPM) — la formulazione fondativa di Ho et al. (2020) che inquadra la generazione come denoising iterativo di rumore gaussiano.
  • Denoising Diffusion Implicit Models (DDIM) — un campionatore più veloce che usa passi non markoviani per ridurre il tempo di inferenza senza riaddestramento.
  • Latent Diffusion Models (LDM) — resi popolari da Stable Diffusion; eseguono il processo di diffusione in uno spazio latente compresso anziché nello spazio dei pixel, riducendo drasticamente il calcolo.
  • Modelli score-based (SDE) — una visione a tempo continuo che collega la diffusione allo score matching e alle equazioni differenziali stocastiche, consentendo campionatori flessibili.
  • Rectified Flow / Flow Matching — varianti più recenti che apprendono percorsi più diretti dal rumore ai dati, permettendo la generazione in molti meno passi.

Per un approfondimento tecnico, l'articolo originale sui DDPM di Ho, Jain e Abbeel e l'articolo sulla diffusione latente di Rombach et al. sono i punti di partenza canonici. In sintesi, i modelli di diffusione trasformano la generazione in molti piccoli passi di denoising apprendibili — un'idea semplice che ha rivoluzionato l'IA creativa.

Domande frequenti

How is a diffusion model different from a GAN?
GANs train a generator and discriminator in opposition and produce a sample in a single forward pass, which can be fast but often unstable. Diffusion models instead train a single network to iteratively denoise, which tends to yield more diverse and higher-quality samples at the cost of slower generation. Most modern image generators have moved from GANs to diffusion for this reason.
Why do diffusion models need so many steps to generate an image?
Each step only removes a small amount of noise, so the network can stay accurate across all noise levels. Modern samplers like DDIM, DPM-Solver, and rectified-flow variants can produce good images in 4 to 20 steps, but very few-step sampling can reduce fine detail. Step count is a trade-off between speed, quality, and prompt fidelity.
What does "guidance scale" mean in diffusion models?
Guidance scale controls how strongly the output is pushed toward the text prompt. The model runs both a conditional prediction (with the prompt) and an unconditional one, then extrapolates between them; a higher scale means the prompt has more influence, producing sharper but sometimes less natural images, while a lower scale gives more creative but looser results.
Are diffusion models only used for images?
No. The same denoising framework has been applied to audio and music generation, video synthesis, 3D shape and texture generation, molecular and protein design, and even planning in reinforcement learning. Anywhere data can be progressively noised and learned, diffusion tends to be a viable generative approach.