Как обучаются диффузионные модели
В основе работы Stable Diffusion лежит диффузионная модель машинного обучения. Процесс обучения этой модели начинается с того, что исследователи берут реальные изображения из интернета и искусственно добавляют к ним случайный шум, похожий на помехи на старом телевизоре. Затем нейросеть обучают убирать этот шум и восстанавливать исходное изображение.
На ранних этапах обучения шум добавляется в небольших количествах. Постепенно его уровень повышается, пока в конечном итоге изображение не будет полностью замаскировано случайными помехами. Несмотря на это, нейросеть учится находить в этом хаотичном шуме визуальные образы: людей, предметы, растения и другие объекты.
Наступает момент, когда нейросети показывают картинку, состоящую исключительно из случайного шума, и просят сгенерировать изображение цветка, кота или шаурмы. И удивительным образом нейросеть способна увидеть в этом беспорядочном наборе пикселей искомые объекты, какими бы они ни были. Этот процесс и называется «диффузионной моделью» машинного обучения.
Но на этом возможности нейросети не заканчиваются. Она не только находит образы в шуме, но и постепенно добавляет детали к изображению, шаг за шагом преобразуя хаотичные пиксели в привлекательную и реалистичную картинку.
Чем больше шагов удаления шума — тем лучше становится картинка, но только до некоторого предела, после которого картинка перестаёт улучшаться. Этот процесс занимает от 1 секунды до нескольких минут в зависимости от количества шагов удаления шума, размера картинки, мощности компьютера и других параметров.
В рамках этого курса мы сосредоточимся на практическом применении диффузионных моделей, таких как Stable Diffusion. Однако для тех, кто захочет углубиться в технические детали и узнать больше о том, как устроены эти модели, я предоставлю дополнительные материалы и ресурсы.