Ich habe eine Matrix, wobei die Anzahl der Gene und die Anzahl der Patienten ist. Jeder, der mit solchen Daten gearbeitet hat, weiß, dass immer größer als . Bei Verwendung der Merkmalsauswahl habe ich auf eine vernünftigere Zahl gebracht, jedoch ist immer noch größer als .p n p n p p n
Ich möchte die Ähnlichkeit der Patienten anhand ihrer genetischen Profile berechnen. Ich könnte den euklidischen Abstand verwenden, jedoch scheint Mahalanobis angemessener zu sein, da er die Korrelation zwischen den Variablen erklärt. Das Problem (wie in diesem Beitrag erwähnt ) ist, dass der Mahalanobis-Abstand, insbesondere die Kovarianzmatrix, nicht funktioniert, wenn . Wenn ich Mahalanobis Distanz in R laufe, erhalte ich folgenden Fehler:
Error in solve.default(cov, ...) : system is computationally
singular: reciprocal condition number = 2.81408e-21
Bisher habe ich PCA verwendet, um dieses Problem zu lösen. Statt Gene zu verwenden, verwende ich Komponenten. Dies scheint es mir zu ermöglichen, die Mahalanobis-Entfernung zu berechnen. 5 Komponenten machen etwa 80% der Varianz aus, also ist jetzt .
Meine Fragen sind: Kann ich PCA verwenden, um den Mahalanobis-Abstand zwischen Patienten sinnvoll zu ermitteln, oder ist dies unangemessen? Gibt es alternative Abstandsmetriken, die funktionieren, wenn und es gibt auch eine große Korrelation zwischen den Variablen?n
quelle
PCA
könnte die variablen Korrelationen aufbrechen, es sei denn, Sie verwenden so etwas wie eine schräge Drehung. Ich bin mir auch nicht sicher, wie sich die VarianzverteilungPCA
auf den Mahalanobis-Abstand zwischen ähnlichen Patienten auswirkt.PCA
funktionieren, bin ich gespannt, ob für die Ausgänge eine Abstandsmetrik verwendet werden kann.Antworten:
Wenn Sie alle Komponenten von einer PCA fernhalten, entsprechen die euklidischen Abstände zwischen Patienten im neuen PCA-Raum ihren Mahalanobis-Abständen im beobachteten variablen Raum. Wenn Sie einige Komponenten überspringen, ändert sich dies ein wenig, aber trotzdem. Hier beziehe ich mich auf PCA-Komponenten mit Einheitsvarianz, nicht auf die Art, deren Varianz gleich dem Eigenwert ist (ich bin mir über Ihre PCA-Implementierung nicht sicher).
Ich meine nur, wenn Sie den Mahalanobis-Abstand zwischen den Patienten bewerten möchten, können Sie PCA anwenden und den euklidischen Abstand bewerten. Die Bewertung der Mahalanobis-Distanz nach der Anwendung von PCA erscheint mir bedeutungslos.
quelle
Schauen Sie sich das folgende Papier an:
Zuber, V., Silva, APD & Strimmer, K. (2012). Ein neuartiger Algorithmus zur gleichzeitigen SNP-Selektion in hochdimensionalen genomweiten Assoziationsstudien . BMC Bioinformatics , 13 (1), 284.
Es geht genau um Ihr Problem. Die Autoren gehen davon aus, dass neue Messungen mit variabler Wichtigkeit verwendet werden. Außerdem haben sie zuvor eine bestrafte Schätzmethode für die Korrelationsmatrix erklärender Variablen eingeführt, die zu Ihrem Problem passt. Sie verwenden auch die Mahalanobis-Distanz zur Dekorrelation!
Die Methoden sind im R-Paket 'care' enthalten, das auf CRAN verfügbar ist
quelle
PCA-Scores (oder PCA-Ergebnisse) werden in der Literatur verwendet, um den Mahalanobis-Abstand zwischen der Probe und einer Verteilung der Proben zu berechnen. Ein Beispiel finden Sie in diesem Artikel . Im Abschnitt "Analysemethoden" geben die Autoren an:
Ich habe andere Beispiele für PCA / Mahalanobis-Entfernungs-basierte Diskriminanzanalysen in der Literatur und im Hilfemenü der GRAMS IQ-Chemometrie-Software gesehen. Diese Kombination ist sinnvoll, da der Mahalanobis-Abstand nicht gut funktioniert, wenn die Anzahl der Variablen größer als die Anzahl der verfügbaren Stichproben ist und PCA die Anzahl der Variablen reduziert.
Algorithmen für maschinelles Lernen zur Klassifizierung einer Klasse (dh Isolation Forest, One-ClassSVM usw.) sind mögliche Alternativen zur entfernungsbasierten Diskriminanzanalyse nach PCA / Mahalanobis. In unserem Labor hat Isolation Forest in Kombination mit der Datenvorverarbeitung gute Ergebnisse bei der Klassifizierung von Nahinfrarotspektren erzielt.
Auf einem leicht Beachtet, Ausreißer oder Neuheitsdetektion mit PCA / Mahalanobisabstand, für hohe dimentional Daten, erfordert oft Berechnung des Abstands Mahalanobis Cutoff . Dieser Artikel schlägt vor, dass der Cutoff als Quadratwurzel des kritischen Werts der Chi-Quadrat-Verteilung berechnet werden kann , vorausgesetzt, die Daten sind normal verteilt. Dieser kritische Wert erfordert die Anzahl der Freiheitsgrade und den mit den Daten verbundenen Wahrscheinlichkeitswert. Der Artikel scheint darauf hinzudeuten, dass die Anzahl der beibehaltenen Hauptkomponenten der Anzahl der Freiheitsgrade entspricht, die zur Berechnung des kritischen Werts erforderlich sind, da die Autoren die Anzahl der Merkmale im Datensatz für ihre Berechnung verwendet haben.
quelle