🔥 Gate.io #EIGEN# Лимитированная акция по листингу в полном разгаре, делимся $20,000 наградами!
депозит #EIGEN# на Split $13,000
Торговля #EIGEN# на Split Extra $4,000
Эксклюзивное предложение для новых пользователей: разделите призовой фонд в размере $3,000
🚀 Присоединяйтесь сейчас: https://www.gate.io/questionnaire/5209
Деталь: https://www.gate.io/announcements/article/39599
SignalPlus: введение в генеративный ИИ
Первоначальный автор: Стивен Ван
Предисловие
Вы используете Stable Diffusion и MidJourney для создания потрясающих изображений.
Вы умеете использовать ChatGPT и LLaMa для создания элегантных слов.
Вы переключаетесь между MuseNet и MuseGAN, чтобы создавать горную музыку.
Несомненно, самая уникальная способность человека — творить, но в сегодняшних постоянно меняющихся технологиях мы творим, создавая машины! Машина может рисовать оригинальные иллюстрации (рисовать), сочинять длинную связную статью (писать), сочинять мелодичную музыку (сочинять) и формулировать выигрышные стратегии для сложных игр (играть) в зависимости от стиля. Эта технология называется Генеративный искусственный интеллект (Generative Artificial Intelligence, GenAI), сейчас это только начало революции GenAI, сейчас лучшее время для изучения GenAI.
1. Генерация и различение моделей
GenAI — это модное словечко, суть которого заключается в генеративной модели (generative model), которая является ветвью машинного обучения, цель — научить модель генерировать новые данные, подобные заданному набору данных.
Предположим, у нас есть набор данных о лошадях. Во-первых, мы можем обучить генеративную модель на этом наборе данных, чтобы зафиксировать правила, управляющие сложными отношениями между пикселями на изображениях лошадей. Затем эта модель используется для создания реалистичных изображений лошадей, которых не было в исходном наборе данных, как показано на рисунке ниже.
Чтобы по-настоящему понять цели и важность генеративной модели, необходимо сравнить ее с дискриминационной моделью. На самом деле большинство проблем в машинном обучении решаются с помощью дискриминационных моделей, см. следующие примеры.
Предположим, у нас есть набор картин, некоторые из которых написаны Ван Гогом, а некоторые — другими художниками. Имея достаточно данных, мы можем обучить дискриминационную модель, чтобы предсказать, принадлежит ли данная картина Ван Гогу, как показано на рисунке ниже.
При использовании дискриминативной модели каждый пример в обучающем наборе имеет метку (метку).Для приведенной выше задачи двух категорий метка картины Ван Гога обычно равна 1, а метка картины, не принадлежащей Ван Гогу, равна 0. На рисунке выше окончательная предсказанная вероятность модели равна 0,83, поэтому весьма вероятно, что она была сделана Ван Гогом. В отличие от дискриминативной модели, генеративная модель не требует, чтобы примеры содержали метки, поскольку ее цель — генерировать новые данные, а не предсказывать метки для данных.
После прочтения примера давайте воспользуемся математическими обозначениями, чтобы точно определить генеративную модель и дискриминационную модель:
Обратите внимание, что даже если бы мы смогли построить совершенную дискриминационную модель для идентификации картин Ван Гога, она все равно не знала бы, как создать картину, похожую на Ван Гога, она вывела бы только вероятность того, что изображение принадлежит Ван Гогу. рука возможность. Видно, что генеративные модели намного сложнее дискриминационных моделей.
2. Генерация каркаса модели
Прежде чем углубиться в структуру генеративной модели, давайте сыграем в игру. Предполагая, что точки на рисунке ниже генерируются каким-то правилом, мы называем это правило Pdata, теперь позвольте вам сгенерировать другое x = (x 1, x 2), чтобы эта точка выглядит как Сгенерированные по тем же правилам Pdata.
Как бы вы сгенерировали эту точку? Вы можете использовать заданные точки для создания модели P в уме, и точки, которые вы хотите, могут быть сгенерированы в позициях, занимаемых этой моделью. Можно видеть, что модель Pmodel является оценкой данных P. Тогда простейшая модель Pmodel — это оранжевая рамка на рисунке ниже Точки могут генерироваться только внутри рамки, но не вне ее.
Чтобы сгенерировать новую точку, мы можем случайным образом выбрать точку из коробки или, что более строго, взять выборку из модели Pмодели распределения. Это минималистская генеративная модель. Вы создаете модель (оранжевый прямоугольник) из обучающих данных (черные точки), а затем делаете выборку из модели, надеясь, что сгенерированные точки будут похожи на точки в обучающем наборе.
Теперь мы можем официально предложить основу для генеративного обучения.
Давайте теперь представим реальные данные, генерирующие распределение Pdata, и посмотрим, как вышеуказанная структура может быть применена к этому примеру. На рисунке ниже видно, что правило генерации данных Pdata заключается в том, что точки равномерно распределяются только на суше и не появляются в океане.
Очевидно, что наша модель Pmodel представляет собой упрощение правила Pdata. Изучение точек A, B и C на приведенном выше рисунке может помочь нам понять, успешно ли модель Pmodel имитирует правило Pdata.
В этом примере показаны основные концепции генеративного моделирования.Хотя в реальности использовать генеративные модели намного сложнее, базовая структура остается той же.
3. Первая генеративная модель
Предположим, вы директор по моде (CFO) компании, и ваша работа заключается в создании новой модной одежды. В этом году вы получили 50 наборов данных о модных словосочетаниях (как показано ниже), и вам нужно создать 10 новых модных словосочетаний.
Хотя вы директор по моде, вы также являетесь специалистом по данным, поэтому решили использовать генеративные модели для решения этой проблемы. Прочитав приведенные выше 50 картинок, вы решаете использовать пять функций: тип аксессуаров (тип аксессуаров), цвет одежды (цвет одежды), тип одежды (тип одежды), волосы. Цвет (цвет волос) и тип волос (тип волос) для описания модных словосочетаний.
Ниже перечислены 10 основных функций данных изображения.
Каждая функция также имеет разное количество собственных значений:
Пустой, Круглый, Солнцезащитные очки
Черный, Синий 01, Серый 01, Пастельно-Зеленый, Пастельно-Оранжевый, Розовый, Красный, Белый
Толстовка с капюшоном, Комбинезон, Рубашка с круглым вырезом, Рубашка с v-образным вырезом
Черный, Блондинка, Коричневый, Пастельно-розовый, Красный, Серебристо-серый
Без волос, Длинные волосы, Пучок, Длинные волосы, Длинные волосы, Прямые, Короткие волосы, Короткие волнистые, Короткие волосы, Короткие, Плоские, Короткие волосы, Вьющиеся
Таким образом, имеется 3 * 8 * 4 * 6 * 7 = 4032 комбинации признаков, поэтому можно представить, что выборочное пространство содержит 4032 точки. Из приведенных 50 точек данных видно, что Pdata предпочитает определенные значения признаков для разных признаков. Из вышеприведенной таблицы видно, что в образе больше белого цвета одежды и серебристо-серого цвета волос. Поскольку мы не знаем реальных данных P, мы можем использовать только эти 50 данных для построения модели P, чтобы она была похожа на данные P.
3.1 Минималистская модель
Один из самых простых способов — назначить параметр вероятности каждой точке из 4032 комбинаций признаков, тогда модель содержит 4031 параметр, потому что сумма всех параметров вероятности равна 1. Теперь проверим 50 данных один за другим, а затем обновим параметры модели **(**θ 1 , θ 2 ,...,θ 4031 ), выражение каждого параметр:
Среди них N — количество наблюдаемых данных, а именно 50, а nj — это номер j-й комбинации признаков, появляющейся в 50 данных.
Например, комбинация функций (называемая комбинацией 1) (LongHairStraight, Red, Round, ShirtScoopNeck, White) появляется дважды, затем
Например, если комбинация функций (называемая комбинацией 2) из (LongHairStraight, Red, Round, ShirtScoopNeck, Blue 01) не отображается, то
В соответствии с приведенными выше правилами мы вычисляем значение θ для всех комбинаций 4031. Нетрудно заметить, что существует множество значений θ, равных 0. Что еще хуже заключается в том, что мы не можем генерировать новые невидимые изображения ( θ = 0 означает, что ни одно изображение с такой комбинацией признаков никогда не наблюдалось). Чтобы исправить это, просто добавьте общее количество функций d к знаменателю и 1 к числителю, метод, называемый сглаживанием Лапласа.
Теперь каждая комбинация (включая те, которых нет в исходном наборе данных) имеет ненулевую вероятность выборки, однако это все еще не является удовлетворительной генеративной моделью, поскольку вероятность точки, не входящей в исходный набор данных, является постоянной. Если мы попытаемся использовать такую модель для создания картины Ван Гога, она с равной вероятностью будет работать со следующими двумя картинами:
Это явно не та генеративная модель, которую мы хотим, мы надеемся, что она сможет изучить некоторую внутреннюю структуру данных, чтобы она могла увеличить вес вероятности областей в выборочном пространстве, которые она считает более вероятными, вместо того, чтобы помещать все веса вероятности в заданной точке существования данных.
3.2 Упрощенная модель
Наивная байесовская модель (Naive Bayes) позволяет значительно сократить количество комбинаций вышеперечисленных признаков, и согласно ее модели предполагается, что каждый признак независим друг от друга. Возвращаясь к приведенным выше данным, цвет волос человека (признак xj ) не связан с цветом его одежды (признак xk ), выраженный в математическом выражении:
p(xj | xk) = p(xk)
При таком предположении мы можем вычислить
Наивная байесовская модель упрощает исходную задачу "оценка вероятности для каждой комбинации признаков" до "оценка вероятности для каждого признака". Получается, что нам нужно использовать 4031 ( 3 * 8 \ * 4 \ * 6 \ * 7) параметров , теперь требуется только 23 (3 + 8 + 4 + 6 + 7) параметров, и выражение каждого параметра:
Среди них N — количество наблюдаемых данных, то есть 50, n*kl — номер k-го признака и ****l ***-е собственное значение под этим номером.
Через статистику 50 данных в следующей таблице приведены значения параметров наивной байесовской модели.
Чтобы рассчитать вероятность того, что модель сгенерирует функцию данных, просто умножьте вероятности в таблице выше, например:
Вышеупомянутая комбинация не появлялась в исходном наборе данных, но модель по-прежнему присваивала ей ненулевую вероятность, поэтому она все еще могла быть сгенерирована моделью. Таким образом, наивные байесовские модели могут изучать некоторую структуру данных и использовать ее для создания новых примеров, которых нет в исходном наборе данных. На картинке ниже представлены 10 новых модных словосочетаний, сгенерированных моделью.
В этой задаче только 5 признаков относятся к низкоразмерным данным.Разумно для наивной байесовской модели предположить, что они независимы друг от друга, поэтому результаты, генерируемые моделью, неплохие.Давайте рассмотрим пример модели крах.
4. Сложности генерации моделей
4.1 Многомерные данные
Как директор по моде, вы успешно сгенерировали 10 новых модных словосочетаний с помощью наивного байесовского подхода.Вы настолько уверены, что ваша модель непобедима, пока не столкнетесь со следующим набором данных.
Набор данных больше не представлен пятью функциями, а 32* 32 = 1024 пикселя, каждое значение пикселя может быть от 0 до 255, 0 означает белый, 255 означает черный. В следующей таблице перечислены значения пикселей от 1 до 5 для первых 10 изображений.
Используйте одну и ту же модель для создания 10 наборов совершенно новых модных словосочетаний. Ниже приведен результат создания модели. Все они уродливы и похожи, и их нельзя различить по разным признакам. Почему это так?
Прежде всего, поскольку наивная байесовская модель выбирает пиксели независимо друг от друга, соседние пиксели на самом деле очень похожи. На самом деле для одежды пиксели должны быть примерно одинаковыми, но модель выбрана случайным образом, поэтому вся одежда на картинке выше цветная. Во-вторых, в многомерном выборочном пространстве слишком много возможностей, и только часть из них поддается идентификации. Если наивная байесовская модель имеет дело непосредственно с такими сильно коррелированными значениями пикселей, шансы найти удовлетворительную комбинацию значений очень малы.
Подводя итог, можно сказать, что для выборочных пространств с низкими размерами и низкой корреляцией признаков наивный байесовский эффект очень хорош благодаря независимой выборке; но для выборочных пространств с большими размерами и высокой корреляцией признаков пиксели независимой выборки используются для поиска эффективных человеческих лиц. почти невозможно.
Этот пример подчеркивает две трудности, которые генеративные модели должны преодолеть, чтобы быть успешными:
Чтобы генеративные модели были успешными в многомерных и сильно коррелированных выборочных пространствах, необходимо использовать модели глубокого обучения. Нам нужна модель, которая может вывести соответствующие структуры из данных, а не говорить, какие предположения делать заранее. Глубокое обучение может формировать свои особенности в низкоразмерном пространстве, и это форма репрезентативного обучения (representation learning).
4.2 Обучение представлению
Обучение представлению заключается в изучении смысла представления многомерных данных.
Предположим, вы идете на встречу с пользователем сети, с которым никогда не встречались, и есть много людей, которые не могут найти ее на месте встречи, поэтому вы звоните ей, чтобы описать свой внешний вид. Я думаю, вы не скажете, что цвет пикселя 1 на вашем изображении черный, цвет пикселя 2 светло-черный, цвет пикселя 3 серый и так далее. Наоборот, вы подумаете, что пользователи сети будут иметь общее представление о внешности обычных людей, а затем дайте это понимание, чтобы описать характеристики группы пикселей, например, у вас короткие черные и красивые волосы, вы носите пару золотые очки и так далее. Обычно имея не более 10 таких описаний, пользователь сети может сгенерировать ваш образ в своем воображении.Образ может быть грубым, но это не мешает пользователю сети найти вас среди сотен людей, даже если она никогда вас не видела.
Это основная идея обучения представлениям, вместо того, чтобы пытаться напрямую моделировать многомерное пространство выборки (многомерное пространство выборки), а используя некоторое низкоразмерное латентное пространство (малоразмерное латентное пространство). space ) для описания каждого наблюдения в обучающем наборе, а затем изучите функцию сопоставления (функцию сопоставления), которая может взять точку в скрытом пространстве и сопоставить ее с исходным пространством выборки. Другими словами, каждая точка в скрытом пространстве представляет собой особенность многомерных данных.
Если приведенные выше слова непросты для понимания, см. приведенный ниже обучающий набор, состоящий из нескольких изображений банки в градациях серого.
Нетрудно заметить, что эти банки можно описать только двумя характеристиками: высотой и шириной. Следовательно, мы можем преобразовать многомерное пространство пикселей изображения в двумерное скрытое пространство, как показано на рисунке ниже. Таким образом, мы можем сэмплировать (синие точки) из скрытого пространства, а затем преобразовывать его в изображение с помощью функции отображения f.
Машине нелегко понять, что исходный набор данных может быть представлен более простым скрытым пространством.Сначала машине нужно определить, что высота и ширина — это два измерения скрытого пространства, которые лучше всего описывают набор данных, а затем научиться функция отображения f может взять точку в этом пространстве и сопоставить ее с отображением в градациях серого. Глубокое обучение позволяет нам обучать машины находить эти сложные взаимосвязи без участия человека.
5. Классификация сгенерированных моделей
Все типы генеративных моделей в конечном итоге нацелены на решение одной и той же задачи, но все они функционируют с плотностью моделей немного по-разному и обычно делятся на две категории:
Но каким-то образом ограничьте модель, чтобы вычислить функцию плотности, например нормализующую модель ПОТОКА (нормализующую модель ПОТОКА)
Но для аппроксимации функции плотности, такой как вариационный автоэнкодер (iational autoencoder, VAE) и диффузионная модель (диффузионная модель)
Подведем итог
Генеративный искусственный интеллект (GenAI) — это тип искусственного интеллекта, который можно использовать для создания нового контента и идей, включая текст, изображения, видео и музыку. Как и весь искусственный интеллект, GenAI представляет собой сверхбольшую модель, предварительно обученную с помощью модели глубокого обучения, основанной на большом объеме данных, часто называемой базовой моделью (FM). С GenAI мы можем рисовать больше крутых изображений, писать более красивый текст и сочинять более трогательную музыку, но первый шаг требует от нас понимания того, как GenAI создает новые вещи, как сказал глава статьи Ричард Фейнман: «Я не пойму то, что я не могу создать».