Как ChatGPT появился из систем перевода, когда стало понятно, что чтобы хорошо переводить, надо примерно понимать, каким может быть следующее слово, так и диффузионные модели родились из очистки шума. Это чтобы понимать, какое именно изображение было попорчено. Потом кто-то хитрый попросил переводчик просто продолжить фразу, а кто-то другой хитрый дал диффузионной модели очищать просто шум, без картинки.
И ЗАРАБОТАЛО!
Альтернативный подход — GAN-сети (Generative Adversarial networks), которые умеют идеально создавать понятные вещи. Например, поворачивать голову человека, если один раз разобрались, что такое голова и какого именно человека надо крутить.
Диффузионные сети такими мелочами не заморачивают и генерят то, что им померещилось в шуме. Главное дать им какой-нибудь шум и сказать, что там где-то спрятан лебедь. Тогда они найдут все картинки лебедей из своей обучающей выборки и попробуют понять, как именно вы спрятали от них птицу и где. Поэтому им так полезен текст для ввода. Поэтому, кстати, GAN-сети знают, сколько пальцев у обычного человека, а диффузионные часто считают, что вот тут-то в шуме точно спрятан ещё один. Их не проведёшь!
Ну и пара слов про хранение. Хранится база в вектором виде, то есть не в виде картинок, а в виде абстракций. Поэтому если вы будете смешивать изображение Моны Лизы и запрос "кот", то буквально абстрактная идея Моны Лизы смешается с абстрактной идеей кота, и получится нечто абстрактно-общее. Плюс случайность.
В целом, это всё, что надо знать про диффузионные нейросети, если не углубляться в математику.
_______
Источник | #ru126
@F_S_C_P
Комментариев нет:
Отправить комментарий