Три версии дискриминантного анализа: различия и как их использовать

26

Кто-нибудь может объяснить различия и привести конкретные примеры, как использовать эти три анализа?

  • LDA - линейный дискриминантный анализ
  • FDA - дискриминантный анализ Фишера
  • QDA - Квадратичный дискриминантный анализ

Я искал везде, но не смог найти реальных примеров с реальными значениями, чтобы увидеть, как используются эти анализы и как рассчитываются данные, только множество формул, которые трудно понять без реальных примеров. Как я пытался понять, было трудно определить, какие уравнения / формулы принадлежат LDA, а какие - FDA.

Например, допустим, есть такие данные:

x1 x2 class
1  2  a
1  3  a
2  3  a
3  3  a
1  0  b
2  1  b
2  2  b

И скажем некоторые данные тестирования:

x1 x2
2  4
3  5
3  6

Итак, как использовать такие данные со всеми этими тремя подходами? Было бы лучше увидеть, как все вычислить вручную, не используя какой-то математический пакет, который вычисляет все за кадром.

PS Я нашел только этот учебник: http://people.revoledu.com/kardi/tutorial/LDA/LDA.html#LDA . Это показывает, как использовать LDA.

Андрюс
источник

Ответы:

23

«Дискриминантный анализ Фишера» - это просто LDA в ситуации 2 классов. Когда есть только 2 класса вычислений вручную, выполнимо, и анализ напрямую связан с множественной регрессией. LDA является прямым расширением идеи Фишера о ситуации любого числа классов и использует устройства матричной алгебры (такие как собственное разложение) для ее вычисления. Таким образом, термин «дискриминантный анализ Фишера» сегодня можно считать устаревшим. Вместо этого следует использовать «линейный дискриминантный анализ». Смотрите также . Дискриминантный анализ с классами 2+ (мультикласс) каноничен по своему алгоритму (извлекает дикриминанты как канонические вариации); редкий термин "канонический дискриминантный анализ"

Фишер использовал так называемые «функции классификации Фишера» для классификации объектов после вычисления дискриминантной функции. В настоящее время для классификации объектов используется более общий байесовский подход в рамках процедуры LDA.

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

Так же, как ANOVA требует допущения о равных дисперсиях, LDA требует допущения о равных дисперсионно-ковариационных матрицах (между входными переменными) классов. Это предположение важно для классификационной стадии анализа. Если матрицы существенно различаются, наблюдения будут относиться к классу, где изменчивость больше. Чтобы преодолеть проблему, был изобретен QDA . QDA - это модификация LDA, которая учитывает вышеуказанную неоднородность ковариационных матриц классов.

Если у вас есть неоднородность (как выявлено, например, с помощью теста Бокса М), и у вас нет QDA под рукой, вы все равно можете использовать LDA в режиме использования отдельных ковариационных матриц (а не объединенной матрицы) дискриминантов при классификации , Это частично решает проблему, хотя и менее эффективно, чем в QDA, потому что - как только что указывалось - это матрицы между дискриминантами, а не между исходными переменными (матрицы которых различались).

Позвольте мне оставить анализ данных вашего примера для себя.


Ответить на ответ и комментарии @ zyxue

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

SвесSвесs одинаковы, все упомянутые внутриклассовые ковариации идентичны; это право использовать их становится абсолютным.)

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

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

ttnphns
источник
Мне кажется, я помню, как изучал в своем курсе по машинному обучению, что LDA для гауссовского 2-го класса предполагало гауссовские плотности и использует правило байесовского MPE, тогда как LDA Фишера не делает гауссовское допущение и изменяет критерий оптимальности для максимизации SNR. Соответствует ли это вашему ответу?
Остин
1
@ Джейк Заинтересован также и в этом ответе: stats.stackexchange.com/questions/87975/… , заявлено, что результат тот же. Комментарии?
Dole
Вы уверены, что «Дискриминантный анализ Фишера - это просто LDA в ситуации 2 классов»?
Zyxue
@zyxue, 95% уверены, но в любом случае я нахожу термин устаревшим. Пожалуйста, смотрите мою сноску в stats.stackexchange.com/q/190806/3277 .
ttnphns
@ ttnphns, fyi, согласно youtu.be/hGKt0yy9q_E?t=3010 , FDA и LDA часто смешиваются в литературе. Одним из способов различить два, FDA является метод извлечения признаков, в то время как LDA и QDA являются техникой классификации.
Zyxue
1

Мне трудно согласиться с тем, что FDA - это LDA для двух классов, как предложил @ttnphns.

Я рекомендую две очень информативные и красивые лекции на эту тему профессора Али Годси:

  1. LDA & QDA . Кроме того, на странице 108 книги «Элементы статистического обучения» ( pdf ) есть описание LDA в соответствии с лекцией.
  2. FDA

Для меня LDA и QDA похожи, так как они оба являются методами классификации с гауссовыми допущениями. Основное различие между ними заключается в том, что LDA предполагает, что ковариационные матрицы признаков обоих классов одинаковы, что приводит к линейной границе решения. В отличие от этого, QDA менее строгий и допускает разные ковариационные матрицы признаков для разных классов, что приводит к квадратичной границе решения. Посмотрите на следующий рисунок из scikit-learn для идеи, как выглядит граница квадратичного решения.

Некоторые комментарии к участкам :

  • Верхний ряд: когда ковариационные матрицы действительно совпадают в данных, LDA и QDA приводят к одним и тем же границам принятия решений.
  • Нижний ряд: когда ковариационные матрицы различны, LDA приводит к плохой производительности, так как его допущение становится недействительным, в то время как QDA выполняет классификацию намного лучше.

С другой стороны, FDA - это совсем другой вид, не имеющий ничего общего с предположением Гаусса. FDA пытается найти линейное преобразование, чтобы максимизировать среднее расстояние между классами при минимальной дисперсии внутри класса . Вторая лекция прекрасно объясняет эту идею. В отличие от LDA / QDA, FDA не выполняет классификацию, хотя функции, полученные после преобразования, обнаруженного FDA, могут использоваться для классификации, например, с использованием LDA / QDA, SVM или других.

zyxue
источник
2
Пожалуйста, смотрите мой ответ на ваш ответ в моем ответе. Я не смотрел видео урок, на который вы ссылаетесь, поэтому не могу сказать, могу ли я согласиться с этим. Я не согласен с интерпретацией / определением (LDA против FDA), которое вы даете в ответе. Но это - определение двух терминов - не очень важная тема для меня. Более важно понять, как все это работает.
ttnphns
2
Если в вашем понимании, FDA doesn't do classification, although the features obtained after transformation found by FDA could be used for classificationто я бы сказал, что это то, что я называю «фазой извлечения LDA». Разумеется, эти извлеченные функции (дискриминантные функции) - вы можете использовать их по своему усмотрению. В стандартной классификации LDA они используются в качестве гауссовых классификаторов.
ttnphns
Мне любопытно, где вы прочитали, что " LDA сначала извлекает линейные конструкции (называемые дискриминантами)" ? Я думал, что это называется линейным дискриминантом, потому что граница принятия решения является линейной, что является результатом предположения, что ковариационная матрица признаков одинакова для разных классов. Точно так же QDA имеет квадратичную границу решения. Они также показаны на вложенных рисунках. Помимо вышеупомянутых видео, я
ссылаюсь
В конце концов, я думаю, что мы говорим об одном и том же, но это просто способ называть вещи. Вы думаете, что LDA = feature_extraction + классификация, но, основываясь на моих ссылках, LDA - это просто классификация. Часть feature_extraction здесь называется FDA. Важно отметить , что здесь нет ничего общего с количеством участвующих классов. Оба из LDA и FDA могут иметь дело с более чем двумя классами.
Zyxue
Мы можем придерживаться используемых нами определений. В любом случае, следует отметить, что «линейные конструкции» и «границы линейных решений» взаимосвязаны, в контексте DA они примерно одно и то же. Посмотрите на свою фотографию с границей решения в виде прямой линии. Когда вы трансформируете слишком классы, эллипсы в сферическую, дискриминантная функция будет точно перпендикулярна границе. На самом деле, «первичной» вещью здесь является дискриминантная функция, переменная, измерение, в то время как граница решения - это граница в пространстве, зависящая от ее направления. Граница декабря является «вторичной».
ttnphns