Diffusion models step-by-step:
В продолжение к предыдущему посту.
Обучение:
1. Берём картинку и добавляем гауссовый шум.
2. Учим модель по зашумлённой картинке восстанавливать ШУМ. Да, именно шум. То есть наша модель - это экстрактор шума из зашумлённой картинки. Здесь надо обратить внимание, что, если вычитать аутпут из инпута, то это будет работать как денойзинг.
3. Иногда добавляем мало шума, иногда много. Иногда так много, что картинка полностью теряется.
Генерация:
1. Берём рандомный шум.
2. Пропускаем его через модель и вычитаем из него же, то есть немного денойзим чистый шум.
3. Добавляем чуть-чуть нового шума.
4. Продолжаем денойзить и чуть-чуть зашумлять, пока не появится картинка.
P.S. Для того, чтобы убедиться, что это работает, пришлось самому на коленке запрогать эту штуку.
В продолжение к предыдущему посту.
Обучение:
1. Берём картинку и добавляем гауссовый шум.
2. Учим модель по зашумлённой картинке восстанавливать ШУМ. Да, именно шум. То есть наша модель - это экстрактор шума из зашумлённой картинки. Здесь надо обратить внимание, что, если вычитать аутпут из инпута, то это будет работать как денойзинг.
3. Иногда добавляем мало шума, иногда много. Иногда так много, что картинка полностью теряется.
Генерация:
1. Берём рандомный шум.
2. Пропускаем его через модель и вычитаем из него же, то есть немного денойзим чистый шум.
3. Добавляем чуть-чуть нового шума.
4. Продолжаем денойзить и чуть-чуть зашумлять, пока не появится картинка.
P.S. Для того, чтобы убедиться, что это работает, пришлось самому на коленке запрогать эту штуку.