Основы ИИ

Генеративные и Дискриминативные Модели Обучения с Помощью Машин

mm

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

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

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

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

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

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

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

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

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

Примерами генеративных моделей машинного обучения являются Линейный Дискриминантный Анализ (ЛДА), Скрытые Марковские Модели и Байесовские Сети, такие как Наивный Байес.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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