Diffusionsmodelle sind probabilistische generative Modelle, die einen stochastischen Diffusionsprozess definieren, um Datenverteilungen zu modellieren.
Der Vorwärtsprozess \( q \) ist ein Markov-Prozess, der sukzessiv Gaussian Noise zu den Daten hinzufügt:
\[ q(\mathbf{x}_t|\mathbf{x}_{t-1}) = \mathcal{N}(\mathbf{x}_t; \sqrt{1-eta_t}\mathbf{x}_{t-1}, eta_t \mathbf{I}) \]
wobei \( eta_t \) kleine Varianzparameter sind, die den Grad des Rauschens steuern.
Der Rückwärtsprozess wird durch ein neuronales Netz \( p_ heta \) approximiert, das lernt, das Rauschen zu entfernen und somit die Datenverteilung zu generieren:
\[ p_ heta(\mathbf{x}_{t-1}|\mathbf{x}_t) = \mathcal{N}(\mathbf{x}_{t-1}; oldsymbol{\mu}_ heta(\mathbf{x}_t, t), \Sigma_ heta(\mathbf{x}_t, t)) \]
Das Training minimiert eine Variation der Evidence Lower Bound (ELBO) mittels eines Denoising-Score-Matching-ähnlichen Verlustes.
Diffusionsmodelle zeichnen sich durch Stabilität beim Training und hohe Qualität der generierten Daten aus, sind jedoch rechnerisch aufwändig.
Definition:
„Diffusionsmodelle sind probabilistische generative Modelle, die Daten durch einen stochastischen Vorwärtsprozess mit sukzessiver Noisefunktion und einen trainierten rückwärts gerichteten Prozess zur Rauschentfernung modellieren.“
Quelle:
Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. Advances in Neural Information Processing Systems (NeurIPS).