Диффузионные модели — это вероятностные генеративные модели, которые определяют стохастический процесс диффузии для моделирования распределений данных.
Прямой процесс \( q \) — это марковский процесс, который последовательно добавляет гауссовский шум к данным:
\[ 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}) \]
где \( eta_t \) — небольшие параметры дисперсии, управляющие степенью шума.
Обратный процесс аппроксимируется нейронной сетью \( p_ heta \), которая обучается удалять шум и таким образом генерировать распределение данных:
\[ 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)) \]
Обучение минимизирует вариацию нижней оценки правдоподобия (ELBO) с помощью функции потерь, похожей на Denoising-Score-Matching.
Диффузионные модели характеризуются стабильностью при обучении и высоким качеством сгенерированных данных, однако они вычислительно затратны.
Определение:
«Диффузионные модели — это вероятностные генеративные модели, которые моделируют данные через стохастический прямой процесс с последовательным добавлением шума и обученный обратный процесс для удаления шума.»
Источник:
Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. Advances in Neural Information Processing Systems (NeurIPS).