Дифузійна модельУ машинному навчанні дифузійні моделі, також відомі як ймовірнісні моделі дифузії, є класом моделей прихованих змінних. Це ланцюги Маркова, навчені за допомогою варіаційного висновку[1]. Метою дифузійних моделей є вивчення латентної структури набору даних шляхом моделювання того, як точки даних розсіюються в латентному просторі. У комп'ютерному зорі це означає, що нейронна мережа навчається зашумлювати зображення, розмиті гаусовим шумом, шляхом навчання зворотному процесу дифузії[2][3]. Три приклади загальних структур моделювання дифузії, що використовуються в комп'ютерному зорі, це імовірнісні моделі дифузії з усуненням шуму, мережі балів з умовою шуму та стохастичні диференціальні рівняння[4]. Дифузійні моделі були представлені у 2015 році мотивуючись нелінійною термодинамікою[5]. Дифузійні моделі можуть бути застосовані до різноманітних завдань, зокрема для усунення шумів зображення, розфарбовування, суперроздільності та генерації зображень. Наприклад, модель генерації зображення починається з зображення випадкового шуму, а потім, після навчання реверсу процесу дифузії на природних зображеннях, модель зможе генерувати нові природні зображення. Анонсована 13 квітня 2022 року модель DALL-E 2 OpenAI для перетворення тексту в зображення є недавнім прикладом. Він використовує дифузійні моделі як для попередньої моделі (яка створює вбудовування зображення з текстовим підписом), так і для декодера, який генерує остаточне зображення[6]. Математичні принципиСтворення зображення в просторі всіх зображеньРозглянемо задачу генерації зображень. Нехай 𝑥 — зображення, а 𝑝(𝑥) — розподіл ймовірності над усіма можливими зображеннями. Якщо у нас є саме 𝑝(𝑥), то ми можемо точно сказати, наскільки ймовірним є певне зображення. Однак, в загальному випадку це нерозв'язна задача. Найчастіше ми не зацікавлені в тому, щоб знати абсолютну ймовірність того, що певне зображення є — коли, якщо взагалі, нас цікавить, наскільки ймовірним є зображення в просторі всіх можливих зображень? Замість цього ми зазвичай лише зацікавлені в тому, наскільки вірогідним є певне зображення порівняно з його безпосередніми сусідами — наскільки імовірніший це зображення кота порівняно з деякими його невеликими варіантами? Чи більш імовірно, якщо зображення містить два вуса, або три, або з додаванням шуму Гауса? Отже, нас насправді зовсім не цікавить сам , а радше, . Це забезпечує два ефекти
Нехай функція оцінки є , розглянемо, що ми можемо зробити з . Як виявляється, дозволяє нам брати зразки з використовуючи стохастичну градієнтну динаміку Ланжевена, яка, по суті, є нескінченно малою версією ланцюга Маркова Монте-Карло[2]. Вивчення функції оцінкиФункцію оцінки можна дізнатися за допомогою шумозаглушення[1]. Основні варіантиКерівництво класифікатораПрипустимо, ми хочемо взяти вибірку не з усього розподілу зображень, а залежно від опису зображення. Ми не хочемо взяти зразок загального зображення, а зображення, яке відповідає опису «чорний кіт з червоними очима». Як правило, ми хочемо взяти вибірку з розподілу , де діапазони зображень , і діапазони по класах зображень (опис «чорний кіт з червоними очима» — це лише дуже детальний клас, а клас «кіт» — це лише дуже розпливчастий опис). Розглянувши модель шумового каналу, ми можемо зрозуміти процес таким чином: створити зображення умовний за описом , ми припускаємо, що запитувач дійсно мав на увазі зображення , але зображення проходить через шумовий канал і виходить спотвореним, як . Таким чином, генерація зображення є нічим іншим, як висновком про те, що є що запитувач мав на увазі. Іншими словами, генерація умовного зображення — це просто «переклад з мови тексту на мову зображення». Потім, як і в моделі шумового каналу, ми використовуємо теорему Баєса, щоб отриматиІншими словами, якщо у нас є хороша модель простору всіх зображень і хороший перекладач зображення-класу, ми отримуємо перекладач класу-зображення «безкоштовно». SGLD використовуєде це функція оцінки, навчена, як описано раніше, і знайдено за допомогою класифікатора диференційованого зображення. З температуроюЗразки моделі дифузії, керованої класифікатором , яка зосереджена навколо максимальної апостеріорної оцінки . Якщо ми хочемо змусити модель рухатися до оцінки максимальної ймовірності , ми можемо використовуватиде інтерпретується як зворотна температура. У контексті дифузійних моделей її зазвичай називають керівною шкалою. Високий змусить модель брати вибірку з розподілу, зосередженого навколо . Це часто покращує якість створених зображень[7]. Це можна зробити просто за допомогою SGLD Керівництво без класифікатораЯкщо у нас немає класифікатора , ми все одно можемо витягти один із самої моделі зображення[8]:Таку модель зазвичай тренують, пред'являючи її обома і , що дає змогу моделювати обидва і . Це невід'ємна частина таких систем, як GLIDE[9], DALL-E[10] і Google Imagen[11]. Див. також
Список літератури
|