ИИ 101

Генеративные против дискриминативных моделей машинного обучения

mm

Некоторые модели машинного обучения принадлежат либо к категории “генеративных”, либо к категории “дискриминативных” моделей. Однако, в чем заключается разница между этими двумя категориями моделей? Что означает для модели быть дискриминативной или генеративной?

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

Генеративные против дискриминативных моделей

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

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

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

Генеративные модели – это те, которые фокусируются на распределении классов внутри набора данных. Алгоритмы машинного обучения обычно моделируют распределение данных. Генеративные модели полагаются на поиск совместной вероятности. Создание точек, где данная входная особенность и желаемый выход/метка существуют одновременно.

Генеративные модели обычно используются для оценки вероятностей и правдоподобия, моделирования данных и различия между классами на основе этих вероятностей. Поскольку модель учит распределение вероятностей для набора данных, она может ссылаться на это распределение для генерации новых экземпляров данных. Генеративные модели часто полагаются на теорему Байеса, чтобы найти совместную вероятность, находя p(x,y). По сути, генеративные модели моделируют, как были сгенерированы данные, отвечая на вопрос:

“Какова вероятность того, что этот класс или другой класс сгенерировал эту точку данных/экземпляр?”

Примерами генеративных моделей машинного обучения являются линейный дискриминантный анализ (LDA), скрытые марковские модели и байесовские сети, такие как наивный байес.

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

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

Дискриминативные модели стремятся ответить на вопрос:

“На какой стороне границы решений находится этот экземпляр?”

Примерами дискриминативных моделей в машинном обучении являются машины опорных векторов, логистическая регрессия, деревья решений и случайные леса.

Различия между генеративными и дискриминативными

Вот быстрый обзор основных различий между генеративными и дискриминативными моделями.

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

  • Генеративные модели стремятся захватить фактическое распределение классов в наборе данных.
  • Генеративные модели прогнозируют совместное распределение вероятностей – p(x,y) – с использованием теоремы Байеса.
  • Генеративные модели являются вычислительно дорогими по сравнению с дискриминативными моделями.
  • Генеративные модели полезны для задач машинного обучения без учителя.
  • Генеративные модели более подвержены влиянию наличия выбросов, чем дискриминативные модели.

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

  • Дискриминативные модели моделируют границу решений для классов набора данных.
  • Дискриминативные модели учат условную вероятность – p(y|x).
  • Дискриминативные модели являются вычислительно дешевыми по сравнению с генеративными моделями.
  • Дискриминативные модели полезны для задач машинного обучения с учителем.
  • Дискриминативные модели имеют преимущество в том, что они более устойчивы к выбросам, в отличие от генеративных моделей.
  • Дискриминативные модели более устойчивы к выбросам по сравнению с генеративными моделями.

Теперь мы кратко рассмотрим некоторые примеры генеративных и дискриминативных моделей машинного обучения.

Примеры генеративных моделей

Линейный дискриминантный анализ (LDA)

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

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

Марковские цепи можно рассматривать как графы с вероятностями, указывающими на то, насколько вероятно, что мы перейдем из одной точки в цепи, “состояния”, в другое состояние. Марковские цепи используются для определения вероятности перехода из состояния j в состояние i, которое можно обозначить как p(i,j). Это просто совместная вероятность, упомянутая выше. Скрытая марковская модель – это где невидимая, не наблюдаемая марковская цепь используется. Входные данные предоставляются модели, и вероятности для текущего состояния и состояния, непосредственно предшествующего ему, используются для расчета наиболее вероятного результата.

Байесовские сети

Байесовские сети – это тип вероятностной графической модели. Они представляют условные зависимости между переменными, как представлено в направленном ациклическом графе. В байесовской сети каждый ребро графа представляет условную зависимость, а каждый узел соответствует уникальной переменной. Условная независимость для уникальных отношений в графе может быть использована для определения совместного распределения переменных и расчета совместной вероятности. Другими словами, байесовская сеть захватывает подмножество независимых отношений в определенном совместном распределении вероятностей.

Как только байесовская сеть была создана и правильно определена, с случайными переменными, условными отношениями и распределениями вероятностей, она может быть использована для оценки вероятности событий или результатов.

Одним из наиболее часто используемых типов байесовских сетей является наивный байесовская модель. Наивный байесовская модель решает задачу расчета вероятности для наборов данных с многими параметрами/переменными, рассматривая все особенности как независимые друг от друга.

Примеры дискриминативных моделей

Машины опорных векторов

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

Логистическая регрессия

Логистическая регрессия – это алгоритм, который использует логит-функцию (лог-шансы) для определения вероятности того, что входная величина принадлежит одному из двух состояний. Сигмоидальная функция используется для “сжатия” вероятности к 0 или 1, истинному или ложному. Вероятности выше 0,50 предполагаются как класс 1, в то время как вероятности 0,49 или ниже предполагаются как 0. По этой причине логистическая регрессия обычно используется в бинарных задачах классификации. Однако логистическая регрессия может быть применена к многоклассовым задачам, используя подход “один против всех”, создавая бинарную модель классификации для каждого класса и определяя вероятность того, что пример является целевым классом или другим классом в наборе данных.

Дерево решений

Дерево решений функционирует, разделяя набор данных на все меньшие и меньшие части, и как только подмножества не могут быть разделены дальше, результатом является дерево с узлами и листьями. Узлы в дереве решений – это где принимаются решения о данных, используя различные критерии фильтрации. Листья в дереве решений – это данные, которые были классифицированы. Алгоритмы дерева решений могут обрабатывать как числовые, так и категориальные данные, и разделы в дереве основаны на конкретных переменных/особенностях.

Случайные леса

Случайный лес – это по сути просто коллекция деревьев решений, где прогнозы отдельных деревьев усредняются, чтобы прийти к окончательному решению. Алгоритм случайного леса выбирает наблюдения и особенности случайным образом, строя отдельные деревья на основе этих выборов.

Эта учебная статья будет исследовать, как создать график коробки в Matplotlib. Графики коробки используются для визуализации сводных статистик набора данных, отображая атрибуты распределения, такие как диапазон и распределение данных.

Блогер и программист с специализацией в Machine Learning и Deep Learning темах. Daniel надеется помочь другим использовать силу ИИ для социального блага.