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 ...
Antworten:
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.
quelle
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"
quelle
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.
quelle
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.
quelle
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.
quelle