Генеративная модель

Генеративная модель (англ. generative model) — это тип статистической модели, используемой в вероятностной классификации и других задачах машинного обучения, который описывает способ формирования наблюдаемых данных. Генеративная модель задаёт совместное распределение вероятностей между наблюдаемыми переменными и целевыми переменными, позволяя генерировать новые примеры данных, имитирующие структуру исходных данных[1].

В контексте статистической классификации противопоставляются два подхода: генеративный и дискриминативный (англ. discriminative). Генеративные модели строят вероятностные описания взаимодействий между признаками (набором данных X) и классами (Y), а дискриминативные — оценивают напрямую вероятность принадлежности к классу по наблюдению[2][3].

Терминология в этой области неоднородна[1], однако условно выделяют три основных типа моделей:[1]

  1. Генеративная модель — статистическая модель совместного распределения вероятности для заданных наблюдаемых переменных X и целевых переменных Y. Такая модель может использоваться для «генерации» случайных примеров наблюдений x[2][3].
  2. Дискриминативная модель — модель, описывающая условное распределение вероятности целевой переменной Y при заданном наблюдении x. Предназначена для «дискриминации» (выбора) соответствующей метки Y по данным x[3].
  3. Классификаторы, построенные без явной вероятностной модели, также зачастую называют «дискриминативными».

Границы между этими двумя последними типами не всегда чётко определены[4]; например, Jebara, Tony. Machine Learning: Discriminative and Generative. — 2004. вводит понятия "генеративного", "условного" и "дискриминативного" обучения, тогда как Ng, Andrew Y.; Jordan, Michael I. (2002). “On discriminative vs. generative classifiers”. выделяет только генеративные (совместное распределение) и дискриминативные (условное распределение или отсутствие вероятностной модели).

Типичные примеры линейных классификаторов:

  • Генеративные:
* Наивный байесовский классификатор
* Линейный дискриминантный анализ
  • Дискриминативные:
* Логистическая регрессия

В задачах классификации важно получить по наблюдению x правильную метку y (или распределение вероятностей по меткам). Это можно делать напрямую — без построения вероятностной модели (распределительно-свободный классификатор), либо оценивать через дискриминативную модель, либо строить генеративную модель , по которой затем вычислять и основывать на этом классификацию. Чем косвенно способ, тем больше информации о вероятностях он использует, что позволяет учитывать предметные знания. На практике выбор подхода определяется особенностями задачи, а также возможностью комбинировать разные методы.

Определение

Альтернативный вариант формулировки:

  • Генеративная модель — это модель условной вероятности наблюдаемых данных X при заданной целевой метке y, то есть [3].
  • Дискриминативная модель — модель условной вероятности метки Y по наблюдению x: [3].

Независимо от точной формулировки, генеративная модель может использоваться для генерации новых исходов (примеров), либо для источника , либо для при фиксированном значении y[3]. Дискриминативная модель, напротив, применяется для однозначного определения вероятного значения Y по x[3]. Различие между «дискриминацией» (различением) и «классификацией» весьма тонкое и не всегда чётко проводится; в частности, термин «дискриминативный классификатор» может быть тавтологичным, если дискриминация по смыслу эквивалентна классификации.

Термин «генеративная модель» также может означать модели, генерирующие экземпляры выходных переменных без явной связи с вероятностным распределением по исходным данным (например, генеративно-состязательные сети); подобные модели оцениваются по близости выходных данных к реальным, а не по вероятностной интерпретации, и не всегда являются классификаторами.

Связь между подходами

Обычно в задачах классификации наблюдаемая переменная X является непрерывной, а целевая Yдискретной (конечное множество меток). Условная вероятность в этом случае может рассматриваться и как стохастическая целевая функция , а не только как распределение вероятностей.

Если метки принимают конечное число значений, то оба определения генеративной модели тесно связаны. Модель условного распределения сопоставляет распределение каждой метке, а модель совместного распределения эквивалентна одновременному моделированию распределения меток и распределения наблюдений по меткам , то есть . Таким образом, модель совместного распределения информативнее, однако переход между этими определениями не слишком сложен, и граница зачастую размыта.

Имея модель совместного распределения , можно получить маргинальное распределение отдельных переменных: и (принимая X за непрерывную, а Y за дискретную); кроме того, оба условные распределения могут быть найдены из определения условной вероятности: , .

Зная модель одного условного распределения и априорные вероятности X и Y, можно получить обратное условное распределение по формуле Байеса:

Например, имея генеративную модель , можно оценить:

Если же имеется дискриминативная модель , то:

Важно отметить, что иногда формула Байеса и определение условной вероятности смешиваются.

Сравнение с дискриминативными классификаторами

Генеративный алгоритм моделирует механизм появления данных для классификации сигнала. Он отвечает на вопрос: какая категория с наибольшей вероятностью могла сгенерировать этот сигнал? Дискриминативный алгоритм не моделирует процесс генерации данных, а просто классифицирует по имеющимся признакам. Дискриминативные алгоритмы непосредственно обучаются по данным для оценки и затем проводят классификацию; генеративные — строят модель и выводят из неё для классификации. Преимущество метода генеративного подхода в том, что модель позволяет порождать новые примеры, схожие с исходными данными. С другой стороны, доказано, что в классификационных задачах некоторые дискриминативные алгоритмы могут превосходить некоторые генеративные по качеству[2].

Хотя дискриминативные модели не требуют моделирования распределения наблюдаемых параметров, они обычно не способны отражать сложные зависимости между наблюдением и целевой меткой. Тем не менее, зачастую генеративные и дискриминативные методы дополняют друг друга, а также могут рассматриваться как разные стороны одного процесса.

Глубокие генеративные модели

С ростом популярности глубокого обучения появилась новая семья методов — глубокие генеративные модели (англ. deep generative models, DGMs)[5][6], которые сочетают генеративное моделирование и глубокие нейронные сети. С ростом масштабов нейросетей обычно возрастает и объём обучающих данных, что необходимо для достижения высокой производительности[7].

К известным глубоким генеративным моделям относятся вариационные автокодировщики (VAE), генеративно-состязательные сети (GAN), авторегрессивные языковые модели. В последнее время ведётся разработка очень крупных DGMs[5]: например, GPT-3 и предшествующая GPT-2 — авторегрессионные языковые модели с миллиардами параметров; BigGAN[8] и VQ-VAE[9], применяемые для генерации изображений (сотни миллионов параметров), а Jukebox — большая генеративная модель музыкального аудио (миллиарды параметров)[10].

Типы

Генеративные модели

К базовым типам генеративных моделей относятся:

Если наблюдаемые данные действительно получены из генеративной модели, то оценка максимального правдоподобия параметров — естественный способ обучения модели. Однако так как большинство статистических моделей только приближённо описывают «истинное» распределение, при решении конкретных задач зачастую предпочтительно напрямую моделировать условное распределение с помощью дискриминативной модели, чтобы избежать излишних предположений. Окончательный выбор подхода диктуется спецификой приложения.

Дискриминативные модели

Примеры

Простой пример

Пусть на входе рассматриваются данные , а множество меток — ; всего есть следующие 4 возможных наблюдения:

Оценка совместного распределения вероятностей по эмпирической мере:

Распределение в этом случае:

Примечания

Литература