SignalPlus: Вступ до Generative AI

Автор оригіналу: Стівен Ван

«Те, чого я не можу створити, я не розумію».

-Річард Фейнман

Передмова

Ви використовуєте Stable Diffusion і MidJourney для створення приголомшливих зображень.

Ви вправно використовуєте ChatGPT і LLaMa для створення елегантних слів.

Ви перемикаєтеся між MuseNet і MuseGAN, щоб створювати гірську музику.

Безсумнівно, найунікальнішою здатністю людини є творчість, але в сучасних технологіях, які постійно змінюються, ми творимо, створюючи машини! Машина може малювати оригінальний твір мистецтва (малювати), писати довгу зв’язну статтю (писати), складати мелодійну музику (компонувати) і формулювати виграшні стратегії для складних ігор (грати) залежно від стилю. Ця технологія називається Генеративний штучний інтелект (Generative Artificial Intelligence, GenAI), зараз це лише початок революції GenAI, зараз найкращий час для вивчення GenAI.

1. Створення та розрізнення моделей

GenAI — модне слово, його суть — генеративна модель (generative model), яка є гілкою машинного навчання, мета — навчити модель генерувати нові дані, подібні до заданого набору даних.

Припустимо, у нас є набір даних коней. По-перше, ми можемо навчити генеративну модель на цьому наборі даних, щоб охопити правила, що регулюють складні зв’язки між пікселями в зображеннях коней. Потім ця модель відбирається для створення реалістичних зображень коней, яких не було в оригінальному наборі даних, як показано на малюнку нижче.

SignalPlus: Вступ до Generative AI

Щоб справді зрозуміти цілі та важливість генеративної моделі, необхідно порівняти її з дискримінаційною моделлю. Насправді більшість проблем у машинному навчанні вирішуються за допомогою дискримінаційних моделей, дивіться наступні приклади.

Припустімо, що ми маємо набір даних картин, деякі Ван Гога, інші художники. Маючи достатньо даних, ми можемо навчити дискримінаційну модель, щоб передбачити, чи належить дана картина Ван Гогу, як показано на малюнку нижче.

SignalPlus: Вступ до Generative AI

При використанні дискримінаційної моделі кожен приклад у навчальному наборі має мітку (мітку).Для наведеної вище задачі з двома категоріями мітка картини Ван Гога зазвичай дорівнює 1, а мітка картини, що не належить Ван Гогу, дорівнює 0. На малюнку вище кінцева прогнозована ймовірність моделі становить 0,83, тому дуже ймовірно, що її створив Ван Гог. На відміну від дискримінаційної моделі, генеративна модель не вимагає, щоб приклади містили мітки, оскільки її метою є створення нових даних, а не передбачення міток для даних.

Прочитавши приклад, скористаємося математичною нотацією, щоб точно визначити генеративну та дискримінаційну моделі:

  • Моделі дискримінаційної моделі P(y|x) із заданими ознаками x для оцінки умовної ймовірності мітки y.
  • Модель генерації моделює P(x), безпосередньо оцінює ймовірність функції x і бере вибірки з цього розподілу ймовірностей для створення нових функцій.

Зауважте, що навіть якби ми змогли побудувати ідеальну дискримінаційну модель для ідентифікації картин Ван Гога, вона все одно не знала б, як створити картину, схожу на Ван Гога, а виводила б лише ймовірність того, чи це зображення належить Ван Гогу. ручна можливість. Можна побачити, що генеративні моделі набагато складніші, ніж дискримінаційні моделі.

2. Створіть структуру моделі

Перш ніж перейти до структури генеративної моделі, давайте пограємо в гру. Припускаючи, що точки на малюнку нижче генеруються за якимось правилом, ми називаємо це правило Pданими, тепер дозволимо вам створити інший x = (x 1, x 2), щоб ця точка виглядає як Generated by the same rules Pdata.

SignalPlus: Вступ до Generative AI

Як би ви згенерували цю точку? Ви можете використати надані бали для генерації моделі P у вашому розумі, і бали, які ви хочете, можуть бути згенеровані на позиціях, зайнятих цією моделлю. Можна побачити, що модель Pmodel є оцінкою даних P. Тоді найпростішою моделлю P є помаранчевий прямокутник на малюнку нижче. Очки можна генерувати лише всередині поля, але не за його межами.

SignalPlus: Вступ до Generative AI

Щоб згенерувати нову точку, ми можемо випадковим чином вибрати точку з коробки або, точніше, вибірку з моделі Pmodel distribution. Це мінімалістична генеративна модель. Ви створюєте модель (помаранчевий прямокутник) із навчальних даних (чорні крапки), а потім виконуєте вибірку з моделі, сподіваючись, що згенеровані точки виглядають подібно до точок у навчальному наборі.

Тепер ми можемо офіційно запропонувати основу для генеративного навчання.

SignalPlus: Вступ до Generative AI

Давайте тепер розкриємо реальні дані, що генерують дані розподілу P, і подивимося, як наведену вище структуру можна застосувати до цього прикладу. На малюнку нижче ми бачимо, що правило генерації даних Pdata полягає в тому, що точки рівномірно розподіляються лише на суші та не з’являються в океані.

SignalPlus: Вступ до Generative AI

Очевидно, що наша модель Pmodel є спрощенням правила Pdata. Вивчення точок A, B і C на малюнку вище може допомогти нам зрозуміти, чи модель Pmodel успішно імітує правило Pdata.

  • Точка A не відповідає даним правила P, оскільки вона з’являється в морі, але може бути згенерована моделлю Pmodel, оскільки вона відображається в помаранчевій рамці.
  • Точка B не може бути згенерована моделлю Pmodel, оскільки вона відображається за межами помаранчевої рамки, але відповідає правилу Pdata, оскільки вона відображається на землі.
  • Точка C генерується моделлю Pmodel і відповідає правилу Pdata.

У цьому прикладі показано основні концепції генеративного моделювання. Хоча насправді використовувати генеративні моделі набагато складніше, базова основа залишається тією самою.

3. Перша генеративна модель

Припустімо, що ви головний спеціаліст з моди (CFO) компанії, і ваша робота полягає в створенні нового модного одягу. Цього року ви отримали 50 наборів даних про модні колакації (як показано нижче), і вам потрібно створити 10 нових модних колокацій.

SignalPlus: Вступ до Generative AI

Хоча ви головний модний офіцер, ви також дослідник даних, тому ви вирішили використовувати генеративні моделі для вирішення цієї проблеми. Прочитавши наведені вище 50 зображень, ви вирішили використовувати п’ять функцій, тип аксесуарів (тип аксесуарів), колір одягу (колір одягу), тип одягу (тип одягу), волосся Колір (колір волосся) і тип волосся (тип волосся), щоб описати модне поєднання.

Нижче наведено 10 найпопулярніших функцій даних зображень.

SignalPlus: Вступ до Generative AI

Кожна функція також має різну кількість власних значень:

  • 3 типи аксесуарів (тип аксесуарів):

Пустий, круглий, сонцезахисні окуляри

  • 8 кольорів одягу:

Чорний, Синій 01, Сірий 01, Пастельно-зелений, Пастельно-помаранчевий, Рожевий, Червоний, Білий

  • 4 типи одягу:

Толстовка, комбінезон, сорочковий виріз, сорочковий виріз

  • 6 кольорів волосся:

Чорний, Блондин, Коричневий, Пастельно-рожевий, Червоний, Сріблясто-сірий

  • 7 типів волосся:

NoHair, LongHairBun, LongHair, LongHairStraight, ShortHairShortWaved, ShortHairShortFlat, ShortHairFrizzle

Таким чином, є 3 * 8 * 4 * 6 * 7 = 4032 комбінації ознак, тому можна уявити, що вибірковий простір містить 4032 точки. З наведених 50 точок даних можна побачити, що дані P віддають перевагу певним значенням для різних функцій. З таблиці вище видно, що на зображенні більше білих кольорів одягу та сріблясто-сивого кольору волосся. Оскільки ми не знаємо справжні Pдані, ми можемо використовувати лише ці 50 даних для побудови Pмоделі, щоб вона була схожа на Pдані.

3.1 Мінімалістична модель

Одним із найпростіших методів є призначення параметра ймовірності кожній точці в 4032 комбінаціях ознак, тоді модель містить 4031 параметр, оскільки сума всіх параметрів ймовірності дорівнює 1. Тепер давайте перевіримо 50 даних один за одним, а потім оновимо параметри моделі **(**θ 1 , θ 2 ,...,θ 4031 ), вираз кожного параметр:

SignalPlus: Вступ до Generative AI

Серед них N – це кількість спостережуваних даних, а саме 50, а nj – це номер j-ої комбінації ознак, яка з’являється в 50 даних.

Наприклад, комбінація функцій (називається комбінацією 1) (LongHairStraight, Red, Round, ShirtScoopNeck, White) з’являється двічі, а потім

SignalPlus: Вступ до Generative AI

Наприклад, якщо комбінація функцій (називається комбінацією 2) із (LongHairStraight, Red, Round, ShirtScoopNeck, Blue 01) не відображається, тоді

SignalPlus: Вступ до Generative AI

Згідно з наведеними вище правилами, ми обчислюємо значення θ для всіх 4031 комбінацій. Не важко побачити, що є багато значень θ, які дорівнюють 0. Що ще гірше полягає в тому, що ми не можемо генерувати нові невидимі зображення (θ = 0 означає, що зображення з такою комбінацією ознак ніколи не спостерігалося). Щоб виправити це, просто додайте загальну кількість ознак, d, до знаменника та 1 до чисельника, метод називається згладжуванням Лапласа.

SignalPlus: Вступ до Generative AI

Тепер кожна комбінація (включно з тими, яких немає у вихідному наборі даних) має відмінну від нуля ймовірність вибірки, однак це все ще не є задовільною генеративною моделлю, оскільки ймовірність точки, яка не входить до вихідного набору даних, є константою. Якщо ми спробуємо використати таку модель для створення картини Ван Гога, вона з однаковою ймовірністю працюватиме на наступних двох картинах:

  1. Репродукції оригінальних картин Ван Гога (немає в оригінальному наборі даних)
  2. Картини з випадкових пікселів (не в оригінальному наборі даних)

Це, очевидно, не та генеративна модель, яку ми хочемо, ми сподіваємося, що вона зможе вивчити певну притаманну структуру з даних, щоб вона могла збільшити вагу ймовірності регіонів у просторі вибірки, які, на її думку, є більш імовірними, замість того, щоб помістити всі ваги ймовірності в точці існування набору даних.

3.2 Спрощена модель

Модель Наївного Байєса (Naive Bayes) може значно скоротити кількість комбінацій вищезазначених ознак, і згідно з її моделлю кожна ознака вважається незалежною одна від одної. Повертаючись до наведених вище даних, колір волосся людини (ознака xj ) не пов’язаний з кольором її одягу (ознака xk ), виражений математичним виразом:

p(xj | xk) = p(xk)

З цим припущенням ми можемо порахувати

SignalPlus: Вступ до Generative AI

Наївна байєсовська модель спрощує вихідну задачу «оцінка ймовірності для кожної комбінації ознак» до «оцінки ймовірності для кожної функції». Виявляється, нам потрібно використовувати 4031 ( 3 * 8 * 4 * 6 * 7) параметрів , тепер потрібно лише 23 ( 3 + 8 + 4 + 6 + 7) параметрів, і вираз кожного параметра:

SignalPlus: Вступ до Generative AI

Серед них N — кількість спостережуваних даних, тобто 50, n*kl — номер k-ої ознаки та ****l ***-е власне значення під його номером.

Через статистику 50 даних у наступній таблиці наведено значення параметрів наївної байєсівської моделі.

SignalPlus: Вступ до Generative AI

Щоб обчислити ймовірність того, що модель генерує функцію даних, просто помножте ймовірності в таблиці вище, наприклад:

SignalPlus: Вступ до Generative AI

Наведена вище комбінація не з’явилася в оригінальному наборі даних, але модель все одно призначила їй відмінну від нуля ймовірність, тому вона все ще могла бути згенерована моделлю. Таким чином, наивні байєсовські моделі здатні вивчати певну структуру з даних і використовувати її для створення нових прикладів, яких немає в оригінальному наборі даних. На зображенні нижче зображено 10 нових модних колокацій, створених моделлю.

SignalPlus: Вступ до Generative AI

У цій задачі лише 5 ознак належать до низьковимірних даних. Розумно для наївної байєсівської моделі припустити, що вони незалежні одна від одної, тому результати, отримані моделлю, непогані. Давайте подивимося на приклад моделі колапс.

4. Труднощі у створенні моделей

4.1 Багатовимірні дані

Як керівник відділу моди, ви успішно створили 10 нових наборів колокацій моди за допомогою наивного Байєса. Ви настільки впевнені, що ваша модель непереможна, доки не зустрінете наведений нижче набір даних.

SignalPlus: Вступ до Generative AI

Набір даних більше не представлено п’ятьма ознаками, а представлено 32* 32 = 1024 пікселями, значення кожного пікселя може переходити до одного з 0 до 255, 0 означає білий, 255 означає чорний. У наступній таблиці наведено значення пікселів від 1 до 5 для перших 10 зображень.

SignalPlus: Вступ до Generative AI

Скористайтеся тією самою моделлю, щоб створити 10 комплектів абсолютно нових модних колокацій. Нижче наведено результат створення моделі. Кожна потворна та схожа, а різні риси неможливо розрізнити. Чому це так?

SignalPlus: Вступ до Generative AI

Перш за все, оскільки наївна байєсовська модель вибірку пікселів здійснює незалежно, сусідні пікселі насправді дуже схожі. Насправді для одягу пікселі мають бути приблизно однаковими, але модель вибирається випадковим чином, тому весь одяг на зображенні вище кольоровий. По-друге, існує занадто багато можливостей у просторі вибірки високої розмірності, лише частина з яких ідентифікована. Якщо наївна байєсовська модель має справу безпосередньо з такими сильно корельованими значеннями пікселів, шанси знайти задовільну комбінацію значень дуже малі.

Підсумовуючи, для просторів вибірки з низькими розмірами та низькою кореляцією ознак наївний байєсівський ефект дуже хороший через незалежну вибірку; але для просторів вибірки з високими розмірами та високою кореляцією ознак незалежні пікселі вибірки використовуються для визначення ефективних людських облич. майже неможливо.

Цей приклад висвітлює дві труднощі, які мають подолати генеративні моделі, щоб бути успішними:

  1. Як модель обробляє умовні залежності між об’єктами великої розмірності?
  2. Як модель знаходить дуже малу частку спостережень, які задовольняють умову, з простору вибірки великої розмірності?

Щоб генеративні моделі були успішними у багатовимірних і висококорельованих просторах вибірки, необхідно використовувати моделі глибокого навчання. Нам потрібна модель, яка може вивести релевантні структури з даних, замість того, щоб нам заздалегідь повідомляти, які припущення робити. Глибоке навчання може формувати власні особливості в низьковимірному просторі, і це форма навчання представленням (навчання представленням).

4.2 Вивчення репрезентації

Навчання представленням полягає в тому, щоб дізнатися значення представлення даних великої розмірності.

Припустімо, ви збираєтеся зустрітися з користувачем мережі, який ніколи не зустрічався, і багато людей не можуть знайти її на місці зустрічі, тому ви телефонуєте їй, щоб описати свою зовнішність. Думаю, ви не скажете, що колір пікселя 1 на вашому зображенні чорний, колір пікселя 2 — світло-чорний, колір пікселя 3 — сірий тощо. Навпаки, ви подумаєте, що користувачі мережі матимуть загальне розуміння зовнішнього вигляду звичайних людей, а потім дадуть це розуміння, щоб описати характеристики групи пікселів, наприклад, у вас коротке чорне гарне волосся, ви носите пару золоті окуляри і так далі. Зазвичай, маючи не більше 10 таких описів, користувач мережі може створити ваш образ у своїй свідомості.Зображення може бути грубим, але це не завадить користувачу мережі знайти вас серед сотень людей, навіть якщо вона ніколи вас не бачила.

Це основна ідея, що лежить в основі навчання репрезентації, замість того, щоб намагатися безпосередньо змоделювати високовимірний простір зразка (високовимірний простір зразка), а використовувати деякий низькомамірний латентний простір (низькомамірний латентний простір ), щоб описати кожне спостереження в навчальному наборі, а потім вивчати функцію відображення (функцію відображення), яка може брати точку в прихованому просторі та відображати її в оригінальному просторі зразка. Іншими словами, кожна точка в прихованому просторі представляє особливість багатовимірних даних.

Якщо наведені вище слова нелегко зрозуміти, будь ласка, перегляньте навчальний набір нижче, який складається з кількох зображень банки у відтінках сірого.

SignalPlus: Вступ до Generative AI

Не важко помітити, що ці банки можна описати лише двома характеристиками: висотою і шириною. Таким чином, ми можемо перетворити багатовимірний піксельний простір зображення у двовимірний латентний простір, як показано на малюнку нижче. Таким чином ми можемо взяти (блакитні точки) з латентного простору, а потім перетворити його на зображення за допомогою функції відображення f.

SignalPlus: Вступ до Generative AI

Машині нелегко зрозуміти, що вихідний набір даних може бути представлений більш простим латентним простором.Спочатку машині потрібно визначити, що висота та ширина є двома латентними розмірами простору, які найкраще описують набір даних, а потім навчитися функція відображення f може взяти точку в цьому просторі та відобразити її на відтінках сірого. Глибоке навчання дозволяє нам навчити машини знаходити ці складні зв’язки без керівництва людини.

5. Класифікація генерованих моделей

Усі типи генеративних моделей, зрештою, спрямовані на вирішення одного й того самого завдання, але всі вони моделюють функцію щільності дещо по-різному, загалом поділяючись на такі дві категорії:

  • явне моделювання (явне моделювання) функції щільності,

Але якось обмежте модель, щоб обчислити функцію щільності, наприклад нормалізуюча модель FLOW(нормалізуюча модель FLOW)

Але для наближення функції щільності, наприклад варіаційний автокодер (iational autoencoder, VAE) і дифузійна модель (дифузійна модель)

  • Неявне моделювання (неявне моделювання) функції щільності через стохастичний процес, який безпосередньо генерує дані. Наприклад, Генеративна змагальна мережа (generative adversarial network, GAN)

SignalPlus: Вступ до Generative AI

Підведіть підсумки

Генеративний штучний інтелект (GenAI) — це тип штучного інтелекту, який можна використовувати для створення нового вмісту та ідей, зокрема тексту, зображень, відео та музики. Як і будь-який штучний інтелект, GenAI — це надвелика модель, попередньо навчена моделлю глибокого навчання на основі великої кількості даних, яку часто називають основною моделлю (FM). За допомогою GenAI ми можемо малювати більше крутих зображень, писати красивіший текст і складати більш зворушливу музику, але перший крок вимагає від нас розуміння того, як GenAI створює нові речі, як голова статті Річард Фейнман сказав: «Я не зрозумію чого я не можу створити».

Переглянути оригінал
  • Нагородити
  • Прокоментувати
  • Поділіться
Прокоментувати
Немає коментарів