Стандартизация функций при использовании LDA в качестве этапа предварительной обработки

9

Если для уменьшения размерности (или преобразования после уменьшения размерности с помощью PCA) используется мультиклассовый линейный дискриминантный анализ (или я иногда также читаю множественный дискриминантный анализ), я понимаю, что в целом «нормализация по Z-шкале» (или стандартизация) Функции не будут необходимы, даже если они измерены в совершенно разных масштабах, правильно? Поскольку LDA содержит термин, подобный расстоянию Махаланобиса, которое уже подразумевает нормированные евклидовы расстояния?

Таким образом, это не только не является необходимым, но результаты после LDA для стандартизированных и нестандартизированных функций должны быть точно такими же !?

амеба
источник
1
in general a "Z-score normalization" (or standardization) of features won't be necessary, even if they are measured on completely different scalesНет, это утверждение неверно. Проблема стандартизации с LDA такая же, как и в любом многомерном методе. Например, спс. Расстояние Махаланобиса не имеет ничего общего с этой темой.
ttnphns
Спасибо, было бы здорово, если бы вы могли прокомментировать, например, эту «проблему стандартизации» в PCA. Если функции не стандартизированы для PCA, разве некоторые функции не вносят (взвешивают) больше, если они измеряются в другом масштабе и дают мне совершенно разные оси компонентов? И для LDA, почему это не будет необходимо? Отличается ли результат (линейные дискриминанты), если нет, то почему?
2
Когда вы стандартизируете (то есть центр, затем масштаб), вы фактически будете анализировать корреляции. Если вы не стандартизируете, только центр, вы на самом деле будете анализировать ковариации. Результаты будут отличаться, что является нормальным, потому что это как если бы вы имели дело с разными данными. Этот факт не должен беспокоить вас. Вам может понравиться чтение темы stats.stackexchange.com/q/62677/3277 .
ttnphns
2
@SebastianRaschka, амеба: я должен пересмотреть мой комментарий The issue of standardization with LDA is the same as in any multivariate method. На самом деле, с LDA (в отличие от PCA, например) результаты не должны отличаться, независимо от того, центрированы ли вы (LDA внутренне всегда центрирует переменные, чтобы извлечь дискриминанты) или z-стандартизировали данные.
ttnphns
2
(Продолжение) Собственные значения, стандартизированные коэффициенты, структурные корреляции, дискриминантные оценки - все будет одинаково. Только собственные векторы будут отличаться. Причина, по которой стандартизация не оказывает влияния на основные результаты в LDA, заключается в том, что LDA разлагает отношение ковариаций между внутренними элементами, а не саму ковариацию, имеющую ее величину (как PCA).
ttnphns

Ответы:

13

Благодарность за этот ответ принадлежит @ttnphns, который объяснил все в комментариях выше. Тем не менее, я хотел бы предоставить расширенный ответ.

На ваш вопрос: результаты LDA для стандартизированных и нестандартизированных функций будут одинаковыми? --- ответ да . Сначала я приведу неформальный аргумент, а затем приступлю к математике.

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

Здесь красные точки - один класс, зеленые точки - другой класс, а черная линия - граница класса LDA. Теперь масштабирование осей или соответствует растяжению воздушного шара по горизонтали или вертикали. Интуитивно понятно, что даже после того, как наклон черной линии изменится после такого растяжения, классы будут точно такими же отделимыми, как и раньше, и относительное положение черной линии не изменится. Каждое тестовое наблюдение будет относиться к тому же классу, что и до растяжения. Таким образом, можно сказать, что растяжение не влияет на результаты LDA.xy


Теперь математически LDA находит набор дискриминантных осей, вычисляя собственные векторы , где и находятся внутри и между классами. матрицы рассеяния. Эквивалентно, это обобщенные собственные векторы обобщенной задачи на собственные значения .W1BWBBv=λWv

Рассмотрим центрированную матрицу данных с переменными в столбцах и точками данных в строках, так что общая матрица рассеяния определяется как . Стандартизация данных сводится к масштабированию каждого столбца на определенное число, т.е. замену его на , где является диагональной матрицей с масштабными коэффициентами (обратными значениями стандартных отклонений каждого столбца) на диагонали. После такого масштабирования матрица рассеяния изменится следующим образом: , и то же преобразование произойдет сXT=XXXXnew=XΛΛTnew=ΛTΛWnew и .Bnew

Пусть - собственный вектор исходной задачи, т.е.Если мы умножим это уравнение на слева и вставим с обеих сторон перед , мы получим т.е. что означает, чтоv

Bv=λWv.
ΛΛΛ1v
ΛBΛΛ1v=λΛWΛΛ1v,
BnewΛ1v=λWnewΛ1v,
Λ1vявляется собственным вектором после пересчета с тем же самым собственным значением что и раньше.λ

Таким образом, дискриминантная ось (заданная собственным вектором) изменится, но ее собственное значение, которое показывает, насколько разделены классы, останется точно таким же. Более того, проекция на эту ось, которая изначально была задана , теперь будет определяться как , т. е. также останутся такими же (возможно, до коэффициента масштабирования).XvXΛ(Λ1v)=Xv

амеба
источник
2
+1. «Мораль» всей истории состоит в том, что разница между единственными центрированными данными и стандартизированными данными полностью абсорбируется в собственных векторах. Поэтому, когда данные умножаются на соответствующие собственные векторы для получения дискриминантных оценок, эффект стандартизации отменяется. XXΛΛ
ttnphns