Standardisierung von Funktionen bei Verwendung von LDA als Vorverarbeitungsschritt

9

Wenn eine lineare Diskriminanzanalyse mit mehreren Klassen (oder ich lese manchmal auch eine Mehrfachdiskriminanzanalyse) zur Dimensionsreduktion (oder Transformation nach Dimensionsreduktion über PCA) verwendet wird, verstehe ich im Allgemeinen eine "Z-Score-Normalisierung" (oder Standardisierung) von Funktionen werden nicht benötigt, auch wenn sie in völlig unterschiedlichen Maßstäben gemessen werden, richtig? Da LDA einen ähnlichen Begriff wie der Mahalanobis-Abstand enthält, der bereits normalisierte euklidische Abstände impliziert?

Es wäre also nicht nur nicht notwendig, sondern die Ergebnisse nach einer LDA für standardisierte und nicht standardisierte Funktionen sollten genau gleich sein!?

Amöbe
quelle
1
in general a "Z-score normalization" (or standardization) of features won't be necessary, even if they are measured on completely different scalesNein, diese Aussage ist falsch. Das Problem der Standardisierung mit LDA ist das gleiche wie bei jeder multivariaten Methode. Zum Beispiel PCA. Mahalanobis Distanz hat nichts mit diesem Thema zu tun.
ttnphns
Vielen Dank, es wäre großartig, wenn Sie beispielsweise dieses "Standardisierungsproblem" in PCA kommentieren könnten. Wenn Features nicht für PCA standardisiert sind, tragen einige Features dann nicht mehr dazu bei (gewichtet), wenn sie auf einer anderen Skala gemessen werden und mir völlig andere Komponentenachsen geben? Und warum wird es für die LDA nicht notwendig sein? Ist das Ergebnis (die linearen Diskriminanten) unterschiedlich, wenn nicht, warum?
2
Wenn Sie standardisieren (dh zentrieren, dann skalieren), analysieren Sie tatsächlich Korrelationen. Wenn Sie nicht standardisieren, sondern nur zentrieren, analysieren Sie tatsächlich Kovarianzen. Die Ergebnisse unterscheiden sich, was normal ist, da Sie mit unterschiedlichen Daten umgehen. Diese Tatsache sollte Sie nicht beunruhigen. Sie können gerne Thread stats.stackexchange.com/q/62677/3277 lesen .
ttnphns
2
@SebastianRaschka, Amöbe: Ich muss meinen Kommentar überdenken The issue of standardization with LDA is the same as in any multivariate method. Tatsächlich sollten sich die Ergebnisse bei LDA (im Gegensatz zu PCA zum Beispiel) nicht unterscheiden, unabhängig davon, ob Sie die Daten nur zentriert (LDA zentriert immer intern Variablen, um Diskriminanten zu extrahieren) oder z-standardisiert haben.
ttnphns
2
(Forts.) Eigenwerte, standardisierte Koeffizienten, Strukturkorrelationen, Diskriminanzwerte - alles wird gleich sein. Nur Eigenvektoren unterscheiden sich. Der Grund, warum die Standardisierung keinen Einfluss auf die Hauptergebnisse bei LDA hat, besteht darin, dass LDA das Verhältnis von Kovarianzen zwischen und innerhalb zerlegt und nicht die Kovarianz selbst ihre Größe hat (wie PCA).
ttnphns

Antworten:

13

Der Kredit für diese Antwort geht an @ttnphns, der alles in den obigen Kommentaren erklärt hat. Trotzdem möchte ich eine erweiterte Antwort geben.

Zu Ihrer Frage: Werden die LDA-Ergebnisse für standardisierte und nicht standardisierte Funktionen genau gleich sein? --- Die Antwort lautet Ja . Ich werde zuerst ein informelles Argument vorbringen und dann mit etwas Mathematik fortfahren.

Stellen Sie sich einen 2D-Datensatz vor, der als Streudiagramm auf einer Seite eines Ballons dargestellt ist (Original-Ballonbild von hier ): LDA auf einem Ballon

Hier sind rote Punkte eine Klasse, grüne Punkte eine andere Klasse und die schwarze Linie die LDA-Klassengrenze. Das erneute Skalieren der oder Achse entspricht nun dem horizontalen oder vertikalen Strecken des Ballons. Es ist intuitiv klar, dass, obwohl sich die Steigung der schwarzen Linie nach einer solchen Dehnung ändert, die Klassen genau so trennbar sind wie zuvor und sich die relative Position der schwarzen Linie nicht ändert. Jede Testbeobachtung wird derselben Klasse wie vor dem Strecken zugeordnet. Man kann also sagen, dass Dehnen die Ergebnisse der LDA nicht beeinflusst.xy


Mathematisch findet LDA nun einen Satz von Diskriminanzachsen, indem Eigenvektoren von berechnet werden , wobei und innerhalb und zwischen Klassen liegen Streumatrizen. Entsprechend sind dies verallgemeinerte Eigenvektoren des verallgemeinerten Eigenwertproblems .W1BWBBv=λWv

Stellen Sie sich eine zentrierte Datenmatrix mit Variablen in Spalten und Datenpunkten in Zeilen vor, sodass die gesamte Streumatrix durch . Das Standardisieren der Daten läuft darauf hinaus, jede Spalte von um eine bestimmte Zahl zu skalieren , dh durch ersetzen , wobei ist eine Diagonalmatrix mit Skalierungskoeffizienten (Inversen der Standardabweichungen jeder Spalte) auf der Diagonale. Nach einer solchen Neuskalierung ändert sich die Streumatrix wie folgt: , und dieselbe Transformation wird mit durchgeführtXT=XXXXnew=XΛΛTnew=ΛTΛWnew und .Bnew

Sei ein Eigenvektor des ursprünglichen Problems, dhWenn wir diese Gleichung links mit multiplizieren und vor auf beiden Seiten einfügen , erhalten wir dh was bedeutet, dassv

Bv=λWv.
ΛΛΛ1v
ΛBΛΛ1v=λΛWΛΛ1v,
BnewΛ1v=λWnewΛ1v,
Λ1vist ein Eigenvektor nach Neuskalierung mit genau dem gleichen Eigenwert wie zuvor.λ

Die Diskriminanzachse (gegeben durch den Eigenvektor) ändert sich also, aber ihr Eigenwert, der zeigt, wie stark die Klassen getrennt sind, bleibt genau gleich. Darüber hinaus wird die Projektion auf dieser Achse, die ursprünglich von , jetzt von , dh es bleibt auch genau gleich (möglicherweise bis zu einem Skalierungsfaktor).XvXΛ(Λ1v)=Xv

Amöbe
quelle
2
+1. Die "Moral" der ganzen Geschichte ist, dass der Unterschied zwischen den einzigen zentrierten Daten und den standardisierten Daten vollständig in den Eigenvektoren absorbiert wird. Wenn also die Daten mit den entsprechenden Eigenvektoren multipliziert werden, um Diskriminanzwerte zu erzeugen, wird der Effekt der Standardisierung aufgehoben. XXΛΛ
ttnphns