Clustering als Mittel zur Aufteilung von Daten für die logistische Regression

10

Ich versuche, den Erfolg oder Misserfolg von Schülern anhand einiger Funktionen mit einem logistischen Regressionsmodell vorherzusagen. Um die Leistung des Modells zu verbessern, habe ich bereits darüber nachgedacht, die Schüler anhand offensichtlicher Unterschiede in verschiedene Gruppen aufzuteilen und für jede Gruppe separate Modelle zu erstellen. Aber ich denke, es könnte schwierig sein, diese Gruppen durch Prüfung zu identifizieren, deshalb dachte ich daran, die Schüler aufzuteilen, indem ich ihre Merkmale zusammenfasse. Ist dies eine gängige Praxis beim Aufbau solcher Modelle? Würden Sie vorschlagen, dass ich es in offensichtliche Gruppen aufteile (z. B. Erstsemester vs. zurückkehrende Studenten) und dann Clustering für diese Gruppen oder Cluster von Anfang an durchführe?

Um zu versuchen zu klären:

Was ich damit meine ist, dass ich erwäge, einen Clustering-Algorithmus zu verwenden, um meinen Trainingssatz für die logistische Regression in Gruppen aufzuteilen. Ich würde dann separate logistische Regressionen für jede dieser Gruppen durchführen. Wenn ich dann die logistische Regression verwende, um das Ergebnis für einen Schüler vorherzusagen, würde ich anhand der Gruppe, in die er am besten passt, auswählen, welches Modell verwendet werden soll.

Vielleicht könnte ich das Gleiche tun, indem ich eine Gruppenkennung einfüge, zum Beispiel eine 1, wenn der Schüler zurückkehrt, und eine 0, wenn nicht.

Jetzt habe ich darüber nachgedacht, ob es vorteilhaft sein könnte, den Trainingsdatensatz zu gruppieren und die Clusterbezeichnung als Merkmal in der logistischen Regression zu verwenden, anstatt separate logistische Regressionsmodelle für jede Population zu erstellen.

Wenn es nützlich ist, eine Gruppen-ID für diejenigen anzugeben, die Schüler gegen neue Schüler zurückgeben, kann es auch nützlich sein, die Liste der Gruppen zu erweitern? Clustering scheint ein natürlicher Weg zu sein, dies zu tun.

Ich hoffe das ist klar ...

Dave
quelle
Ich glaube nicht, wie "Clustering" und das logistische Regressionsmodell miteinander interagieren oder sich gegenseitig beeinflussen würden. Könnten Sie den Unterschied zwischen "Clustering" in diesem Zusammenhang und der Einbeziehung einer Gruppenkennung als erklärende Variable in die Regression erklären?
whuber

Antworten:

4

Ich glaube, wenn Sie einen signifikanten Unterschied in Ihrer abhängigen Variablen zwischen Ihren Clustern haben, ist der Ansatz des Clustering zuerst definitiv hilfreich. Unabhängig von Ihrem gewählten Lernalgorithmus.

Ich bin der Meinung, dass das Ausführen eines Lernalgorithmus auf einer ganzen Basis bedeutsame Unterschiede auf einer niedrigeren Aggregationsebene überdecken kann.

Jeder, der von Simpsons Paradoxon gehört hat, ist ein schwieriger Fall eines tieferen Problems, bei dem Sie unterschiedliche Korrelationen in verschiedenen Gruppen haben, die durch größeres Probenrauschen und / oder schwächere Korrelationen einer größeren Gruppe verdeckt werden.

Clancy
quelle
Sie mögen Recht haben, aber ich folge Ihrem Argument nicht. Befürworten Sie, dass das OP separate LRs für die gefundenen Cluster ausführt, den Clusterindex zusätzlich zu den Kovariaten oder anstelle der Kovariaten hinzufügt ? Es ist sicher richtig, dass Kovariaten mit ausgelassenen Variablen in der Beobachtungsforschung verwechselt werden können, aber sagen Sie, dass CA Informationen generieren kann, die nicht in den Variablen enthalten sind, auf denen sie ausgeführt werden? Das Simpson-Paradoxon wird hier im Lebenslauf besprochen , wenn Sie interessiert sind.
Gung - Reinstate Monica
Ich schlage vor, dass die unbeaufsichtigte Analyse homogene Gruppen mit einem beliebigen Satz von IVs (unabhängigen Variablen) herauszieht. Anschließend können Sie selbst entscheiden, ob Sie mit demselben Satz von Varbs oder einem neuen Satz oder einem kombinierten Satz für die nächste Stufe Ihrer Modellierung mit dem LR fortfahren. Der Zweck besteht darin, 1 LR pro Cluster zu erstellen und abzustimmen (vorausgesetzt, die Cluster haben signifikant unterschiedliche DV-Werte oder Frequenzen).
Clancy
Ich habe dies tatsächlich selbst im Rahmen eines Aufnahmemodells für Cross-Selling-Lebensversicherungsprodukte durchgeführt und bei 2 der Cluster, die durch einen dritten Cluster verwässert wurden, eine verbesserte Vorhersage gefunden.
Clancy
Ich frage mich, ob das Modell möglicherweise einen Spline-Begriff benötigt hat. Könnten Sie eine Simulation einiger Daten, eine Grundanpassung, eine Zertifizierungsstelle und eine endgültige (verbesserte) Anpassung mit Cluster-Indikator einschließen? Ich wäre daran interessiert, das zu sehen und ein wenig damit zu spielen, um zu verstehen, was los ist.
Gung - Reinstate Monica
Hallo Gung, ich würde gerne, aber ich kann die Zeit nicht finden. Ich bin stark in Familie, Arbeit und die Verbesserung meiner Modellierungsfähigkeiten investiert. Ich beginne gerade mit der MARS-Modellierung und bin mir nicht sicher, ob dies das gleiche gewünschte Ergebnis wie das beschriebene Cluster + LR-Ensemble erzielen wird.
Clancy
8

Ihr vorgeschlagener allgemeiner Ansatz - die Verwendung latenter Partitionen, um verschiedenen Basisklassifizierern unterschiedliche Datenpunkte zuzuweisen - ist ein gut erforschter Ansatz zur Klassifizierung.

Der Grund, warum diese Methoden nicht weit verbreitet sind, liegt wahrscheinlich darin, dass sie relativ kompliziert sind und längere Laufzeiten haben als logistische Regressionen oder SVMs. In vielen Fällen scheint es, dass sie zu einer besseren Klassifizierungsleistung führen können.

Hier einige Referenzen:

  • Shahbaba, B. und Neal, R. "Nichtlineare Modelle unter Verwendung von Dirichlet-Prozessmischungen"

  • Zhu, J. und Chen, N. und Xing, EP "Infinite Latent SVM für Klassifikation und Multi-Task-Lernen"

  • Rasmussen, CE und Ghahramani, Z. "Unendliche Gemische von Gaußschen Prozessexperten"

  • Meeds, E. und Osindero, S. "Eine alternative unendliche Mischung von Gaußschen Prozessexperten"

user1149913
quelle
1

Ich möchte von Anfang an anerkennen, dass ich relativ wenig über Clustering weiß. Ich verstehe jedoch nicht den Sinn des von Ihnen beschriebenen Verfahrens. Wenn Sie beispielsweise der Meinung sind, dass das erste Semester im Vergleich zu zurückkehrenden Studenten unterschiedlich sein könnte, warum nicht eine Kovariate einschließen, die dies indiziert? Wenn Sie der Meinung sind, dass eine andere Funktion der Schüler relevant ist, können Sie dies ebenfalls einbeziehen. Wenn Sie befürchten, dass die Beziehung zwischen Ihrem primären interessierenden Prädiktor und der Erfolgsrate unterschiedlich sein könnte, können Sie auch die Interaktion zwischen diesem Prädiktor und dem ersten Term im Vergleich zur Rückkehr usw. einbeziehen. Die logistische Regression ist gut gerüstet, um diese Fragen durch Einbeziehung solcher zu beantworten Begriffe im Modell.

Auf der anderen Seite sehe ich keine Probleme, solange Sie sich nur auf diese Funktionen konzentrieren und dies zuerst tun (ohne auf die Antwort zu achten). Ich vermute, dass dieser Ansatz ineffizient wäre, da jedes Modell eine geringere Leistung hat, da es nur auf eine Teilmenge der Daten passt, aber ich denke nicht, dass es die Parameter verzerren oder die Tests ungültig machen würde. Ich nehme an, Sie könnten es versuchen, wenn Sie es wirklich wollen.

Aktualisieren:

Ich vermute, dass es am besten (dh am effizientesten) wäre, ein Modell mit allen Daten anzupassen. Sie können einige zusätzliche Kovariaten (z. B. Rückkehr vs. Nicht-Kovariaten), die über Ihr primäres Interesse hinausgehen, und einen Gruppierungsindikator einschließen, den Sie durch vorherige Clusteranalyse ermittelt haben. Wenn jedoch die Kovariaten, die in die Clusteranalyse einbezogen wurden, auch dem logistischen Regressionsmodell zur Verfügung gestellt werden, bin ich mir nicht sicher, ob ich sehen kann, was durch die Einbeziehung aller Kovariaten in das LR-Modell ohne gewonnen werden würdedie Cluster-Anzeige. Dies kann durchaus einen Vorteil haben, mit dem ich nicht vertraut bin, da ich kein Experte für Clusteranalyse bin, aber nicht weiß, was es sein würde. Es scheint mir, dass die Zertifizierungsstelle keine zusätzlichen Informationen generieren würde, die noch nicht in den Kovariaten vorhanden waren, und daher dem LR-Modell nichts hinzufügen würde. Sie könnten es versuchen; vielleicht bin ich falsch. Aber ich vermute, dass Sie nur ein paar zusätzliche Freiheitsgrade verbrennen würden.

Ein anderer Ansatz wäre, den Cluster-Indikator anstelle der zugrunde liegenden Kovariaten in das LR-Modell einzugeben . Ich bezweifle, dass dies von Vorteil wäre. Die CA wird nicht perfekt sein, mehr als jede andere beliebige Analyse je ist, und so von den ursprünglichen Kovariaten auf die abgeleitete Cluster - Indikator bewegt , ist wahrscheinlich eine gewisse Menge an Informationen mit sich bringen Verlust . (Auch das weiß ich nicht, aber ich vermute sehr, dass es wahr ist.) Auch hier könnte man es in beide Richtungen versuchen und als akademische Übung vergleichen, obwohl es verpönt ist, nur eine Menge Dinge auszuprobieren und sich auf das Ergebnis zu einigen, das am besten aussieht auf, wenn Sie Ihre Ergebnisse ernst nehmen wollen.

Ich möchte nicht nur Clusteranalysen durchführen. Es kann im Allgemeinen viele Vorteile von ihnen geben, und es kann hier eine gute Verwendung für sie geben. Nach meinem Verständnis Ihrer Situation ist es jedoch der richtige Weg, nur ein LR-Modell mit den Kovariaten zu erstellen, die Sie für relevant halten.

gung - Monica wieder einsetzen
quelle
1

Wenn Sie nicht an eine logistische Regression gebunden sind, würde ich empfehlen, einen zufälligen Gesamtstrukturklassifizierer zu verwenden, da dieser über eine Art integriertes Clustering verfügt. Die Idee wäre, die Proximity-Matrix zum Clustering zu verwenden. Die Proximity-Matrix ist die N_Obs-by-N_Obs-Matrix für den Bruchteil der Out-of-Bag-Bäume, bei denen sich die Beobachtungen im selben Endknoten befanden. Sie können dies dann zu einer Feature-Level-by-Feature-Level-Matrix zusammenfassen, wobei die Elemente der Durchschnitt des Bruchs in der Proximity-Matrix sind. Sie würden dann alle Ebenen zusammenfassen, wenn sie einen Schwellenwert überschreiten, und prüfen, ob dies Ihre Vorhersage verbessert. Es ist wahrscheinlich am besten, einen schrittweisen iterativen Ansatz zu wählen, um das optimale Clustering zu finden. Sie können jedoch einen Schwellenwert auf andere Weise auswählen. Wenn dieses Clustering abgeschlossen ist, können Sie das Feature durch die Cluster-Labels ersetzen oder die Cluster-Labels als neues Feature hinzufügen. Ich nehme an, an diesem Punkt könnten Sie zur logistischen Regression zurückkehren, wenn Sie es wirklich wollten.

Keith
quelle
0

Ich denke, bei der Erstellung von Modellen mit mehreren Segmenten besteht der beste Ansatz darin, Segmente zu erstellen, die auf echte Unterschiede in den zugrunde liegenden Verteilungen hinweisen. Erstsemester im Vergleich zu zurückkehrenden Studenten sind ein gutes Beispiel, da die Prädiktorverteilungen für diese beiden Populationen wahrscheinlich sehr unterschiedlich sein werden. Noch wichtiger ist, dass diese Unterschiede eine intuitive Erklärung haben.

Zelazny7
quelle
Ich bekomme den Wert einer intuitiven Erklärung - sie hilft Ihnen bei der Interpretation Ihres Modells. Aber gibt es nicht Grund zu der Annahme, dass Sie einen ähnlichen Vorteil erzielen, wenn Sie Personen aufgrund ihrer Ähnlichkeit in Gruppen zusammenfassen, was die verfügbaren Funktionen betrifft, wenn auch nicht mit derselben Interpretierbarkeit? Ich denke, die Idee hinter der Verwendung von Clustering ist, dass Maschinen besser sind als Menschen, wenn es darum geht, Gruppen zu identifizieren, die nicht genau den Kategorien entsprechen, die wir im täglichen Leben verwenden ...
Dave,
Wenn Sie ein Regressionsmodell für eine Gruppe ähnlicher Schüler trainieren, ist dieses Modell außerdem genauer in seinen Vorhersagen über den Erfolg dieser Schüler als ein Modell, das mit einer breiteren Gruppe von Schülern trainiert wurde.
Dave