Automatisiertes Verfahren zur Auswahl einer Teilmenge von Datenpunkten mit der stärksten Korrelation?


15

Gibt es ein Standardverfahren (so dass man es als Referenz anführen könnte), um die Teilmenge der Datenpunkte aus einem größeren Pool mit der stärksten Korrelation (entlang nur zwei Dimensionen) auszuwählen?

Angenommen, Sie haben 100 Datenpunkte. Sie möchten eine Teilmenge von 40 Punkten mit der größtmöglichen Korrelation entlang der X- und Y-Dimensionen.

Mir ist klar, dass das Schreiben von Code dafür relativ einfach ist, aber ich frage mich, ob es eine Quelle gibt, die ich dafür zitieren kann.


3
"Mir ist klar, dass das Schreiben von Code dafür relativ einfach ist". Ah? Und wie würdest du das machen?
user603

3
Ich nehme an, sie meinte so etwas wie "beste Teilmengenkorrelation"; Wählen Sie Teilmengen von ( in ihrem Beispiel k = 40 ) Datenpunkten aus Ihrem N ( in ihrem Beispiel N = 100 ) und berechnen Sie die Schätzung der Korrelation ρ ( X , Y ) (unter der Annahme, dass sie eine Teilmenge von Punkten kennen wollte mit der besten linearen Korrelation). Dieser Prozess scheint jedoch für große N rechenintensiv zu sein , da Sie ( Nkk=40NN=100ρ(X,Y)N mal den Koeffizienten. (Nk)
Néstor

1
Wenn Sie sich Linearkombinationen der Variablen ansehen möchten, suchen Sie nach kanonischen Korrelationen . Andernfalls könnte die Auswahl von Korrelationsmerkmalen von Interesse sein. X
MånsT

Ich denke, einige missverstehen mich vielleicht. @ Néstor scheint es richtig zu haben. Es gibt 100 Elemente mit jeweils einem X-Wert und einem Y-Wert. Ich möchte die Teilmenge von 40 finden, die die größtmögliche Korrelation (mit linearer Regression) zwischen den X- und Y-Werten aufweist. Ich kann Code schreiben, um den gesamten Suchraum zu durchsuchen, aber was würde ich zur Unterstützung einer solchen Methode anführen? Wie heißt es, um die optimale Korrelation zwischen allen möglichen Teilmengen zu finden?
Julie

1
Möchten Sie die Korrelation maximieren oder die am besten passende Regressionslinie ermitteln, die beispielsweise durch die minimale Restvarianz gemessen wird? Die beiden sind nicht gleich, wenn Sie Ihre Datenpunkte auswählen müssen.
Jbowman

Antworten:


17

Ich würde sagen, dass Ihre Methode in die allgemeine Kategorie passt, die in diesem Wikipedia-Artikel beschrieben wird, der auch andere Referenzen enthält, wenn Sie mehr als nur Wikipedia benötigen. Einige der Links in diesem Artikel würden ebenfalls zutreffen.

Andere Begriffe, die zutreffen könnten (wenn Sie etwas mehr suchen möchten), sind "Daten ausgraben" und "Daten quälen, bis sie gestehen".

Beachten Sie, dass Sie immer eine Korrelation von 1 erhalten können, wenn Sie nur 2 Punkte auswählen, die keine identischen x- oder y-Werte haben. Vor ein paar Jahren gab es einen Artikel in der Zeitschrift Chance, der zeigte, dass man bei einer x- und y-Variablen mit im Wesentlichen keiner Korrelation die x-Werte einteilen und die y-Werte in den Behältern mitteln kann, um entweder einen ansteigenden oder abfallenden Trend anzuzeigen ( Chance 2006, Visual Revelations: Finden, was nicht da ist, durch unglückliche Zusammenfassung der Ergebnisse: Der Mendel-Effekt, S. 49-52). Auch mit einem vollständigen Datensatz, der eine mäßig positive Korrelation aufweist, kann eine Teilmenge ausgewählt werden, die eine negative Korrelation aufweist. Selbst wenn Sie einen legitimen Grund haben, das zu tun, was Sie vorschlagen, geben Sie Skeptikern eine Menge Argumente, die Sie gegen Ihre Schlussfolgerungen verwenden können.


Wie heißt der Artikel von The American Statistician?
Angenommen, normal

1
Ich habe mich falsch daran erinnert, wo ich den Artikel gesehen habe. Er war eigentlich im Chance Magazine und nicht im American Statistician. Ich habe das oben korrigiert und das Jahr, den Titel und die Seitenzahlen eingefügt, damit Interessenten leicht Kopien finden können.
Greg Snow

4

Der RANSAC-Algorithmus klingt wie das, was Sie wollen. Grundsätzlich wird davon ausgegangen, dass Ihre Daten aus einer Mischung von In-Lieferanten und Out-Lieferanten bestehen, und es wird versucht, die In-Lieferanten zu identifizieren, indem Teilmengen der Daten wiederholt abgetastet werden, ein Modell daran angepasst wird und dann versucht wird, jeden anderen Datenpunkt an das Modell anzupassen. Hier ist der Wikipedia-Artikel darüber .

In Ihrem Fall können Sie den Algorithmus einfach wiederholen, während Sie das aktuell beste Modell mit mindestens 40 Punkten speichern. Es garantiert Ihnen also nicht die absolut beste Korrelation, es sollte sich jedoch annähern.


1

Es fällt mir schwer, mir einen Kontext vorzustellen, in dem dies eine gute Praxis wäre, aber nehmen wir für einen Moment an, dass Sie in der Tat einen guten Grund dafür haben.

Ein Brute-Force-Algorithmus könnte etwa so aussehen:

  1. Sie berechnen alle möglichen Teilstichproben von n aus Ihrer Gesamtstichprobe von N. Die meisten Statistikpakete verfügen über Funktionen zur Berechnung von Kombinationen ohne Ersetzungen, die dies für Sie erledigen.

  2. Sie schätzen die Korrelation zwischen x und y für jede der Teilstichproben und wählen das Maximum aus dieser Menge aus.

Ich habe gerade den Kommentar des ursprünglichen Posters zu einer Referenz für dieses Verfahren gesehen. Ich bin mir nicht sicher, ob jemand einen bestimmten Namen für dieses Verfahren hat. Schließlich erstellen Sie einfach eine empirische Verteilung aller möglichen Korrelationen in Ihrem Datensatz und wählen das Maximum aus. Ähnliche Ansätze werden beim Bootstraping verwendet, aber in diesem Fall, wenn Sie an der empirischen Variabilität interessiert sind, verwenden Sie diese NICHT, um eine bestimmte Teilstichprobe auszuwählen, die mit der max.


2
1032N=100n=40

Keine Notwendigkeit, scharfsinnig zu sein :-p. Gutes Argument.
David

Tut mir leid, aber ich mag diese Zahlen, weil sie uns viel Raum für einen verbesserten Algorithmus geben :-).
whuber
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.