Le clustering comme moyen de fractionner les données pour la régression logistique


11

J'essaie de prédire le succès ou l'échec des étudiants en fonction de certaines fonctionnalités avec un modèle de régression logistique. Pour améliorer les performances du modèle, j'ai déjà pensé à diviser les élèves en différents groupes en fonction de différences évidentes et à construire des modèles distincts pour chaque groupe. Mais je pense qu'il pourrait être difficile d'identifier ces groupes par examen, alors j'ai pensé à diviser les étudiants en regroupant leurs caractéristiques. Est-ce une pratique courante dans la construction de tels modèles? Pourriez-vous suggérer que je le décompose en groupes évidents (par exemple, les étudiants du premier trimestre par rapport aux étudiants qui reviennent) et que j'effectue ensuite le clustering sur ces groupes, ou le cluster depuis le début?

Pour essayer de clarifier:

Ce que je veux dire, c'est que j'envisage d'utiliser un algorithme de clustering pour diviser mon ensemble d'entraînement pour la régression logistique en groupes. Je ferais ensuite des régressions logistiques distinctes pour chacun de ces groupes. Ensuite, lorsque j'utilisais la régression logistique pour prédire le résultat pour un élève, je choisirais le modèle à utiliser en fonction du groupe auquel il s'intègre le mieux.

Je pourrais peut-être faire la même chose en incluant un identifiant de groupe, par exemple, un 1 si l'élève revient et un 0 sinon.

Maintenant, vous me demandez s'il pourrait être avantageux de regrouper l'ensemble de données de formation et d'utiliser leur étiquette de cluster comme caractéristique de la régression logistique, plutôt que de créer des modèles de régression logistique distincts pour chaque population.

S'il est utile d'inclure un identifiant de groupe pour ceux qui reviennent des étudiants par rapport aux nouveaux étudiants, serait-il également utile d'élargir la liste des groupes? Le regroupement semble être un moyen naturel de procéder.

J'espère que c'est clair ...


Je pense que je ne sais pas comment le «clustering» et le modèle de régression logistique interagiraient ou s’affecteraient mutuellement. Pourriez-vous expliquer la différence entre le "clustering" dans ce contexte et l'inclusion d'un identifiant de groupe comme variable explicative dans la régression?
whuber

Réponses:


4

Je crois que si vous avez une différence significative dans votre variable dépendante entre vos clusters, l'approche du clustering en premier sera définitivement utile. Quel que soit l'algorithme d'apprentissage que vous avez choisi.

À mon avis, l'exécution d'un algorithme learnign sur une base entière peut masquer des différences significatives à un niveau d'agrégation inférieur.

Quiconque a entendu parler du paradoxe de simpson, c'est un cas difficile d'un problème plus profond où vous avez différentes corrélations dans différents groupes qui sont couvertes par un plus grand bruit d'échantillon et / ou des corrélations plus faibles d'un plus grand groupe.


Vous avez peut-être raison, mais je ne suis pas d'accord avec votre argument. Recommandez-vous que l'OP exécute des LR distincts sur les clusters trouvés, ajoute l'index de cluster en plus des covariables, ou au lieu des covariables? Il est certainement vrai que les covariables peuvent être confondues avec des variables omises dans la recherche observationnelle, mais dites-vous que l'AC peut générer des informations qui ne sont pas dans les variables sur lesquelles il est exécuté? Quant au paradoxe de Simpson, il est discuté sur CV ici si vous êtes intéressé.
gung - Rétablir Monica

Je suggère que l'analyse non supervisée tire des groupes homogènes avec un ensemble arbitraire de IV (variables indépendantes). Après cela, vous pouvez décider vous-même si vous progressez avec le même ensemble de varbs ou un nouvel ensemble ou un ensemble combiné pour la prochaine étape de votre modélisation avec le LR. Le but est de construire et de régler 1 LR par cluster (étant donné que les clusters ont des valeurs ou des fréquences DV significativement différentes).
clancy

J'ai en fait réalisé cela moi-même dans le contexte d'un modèle d'adoption pour les produits d'assurance-vie de vente croisée et j'ai trouvé une meilleure prédiction sur 2 des clusters qui était diluée par un 3ème cluster.
clancy le

Je me demande si le modèle peut avoir eu besoin d'un terme spline. Pourriez-vous inclure une simulation de certaines données, un ajustement de base, une CA et un ajustement final (amélioré) avec indicateur de cluster? Je serais intéressé à voir cela et à jouer avec un peu pour comprendre ce qui se passe.
gung - Rétablir Monica

Salut Gung, j'adorerais mais je ne trouve pas le temps. Je suis fortement investi dans la famille, le travail et l'amélioration de mes compétences en modélisation.Je commence tout juste à travailler avec la modélisation MARS et je ne sais pas si cela satisfera le même résultat souhaité que l'ensemble cluster + LR décrit.
clancy le

8

L'approche générale que vous proposez - utiliser des partitions latentes pour attribuer différents points de données à différents classificateurs de base - est une approche bien documentée de la classification.

La raison pour laquelle ces méthodes ne sont pas largement utilisées est probablement parce qu'elles sont relativement compliquées et ont des temps d'exécution plus longs que la régression logistique ou les SVM. Dans de nombreux cas, il semble qu'ils peuvent conduire à de meilleures performances de classification.

Voici quelques références:

  • Shahbaba, B. et Neal, R. "Modèles non linéaires utilisant des mélanges de processus de Dirichlet"

  • Zhu, J. et Chen, N. et Xing, EP "Infinite Latent SVM for Classification and Multi-task Learning"

  • Rasmussen, CE et Ghahramani, Z. "Mélanges infinis d'experts des processus gaussiens"

  • Meeds, E. et Osindero, S. "Un mélange infini alternatif d'experts des processus gaussiens"


1

Je tiens à reconnaître dès le début que je connais relativement peu de clustering. Cependant, je ne vois pas l'intérêt de la procédure que vous décrivez. Si vous pensez, par exemple, que le premier trimestre par rapport aux étudiants qui reviennent pourrait être différent, pourquoi ne pas inclure une covariable qui indexe cela? De même, si vous pensez qu'une autre caractéristique des étudiants est pertinente, vous pouvez également l'inclure. Si vous craignez que la relation entre votre prédicteur principal d'intérêt et le taux de réussite puisse différer, vous pouvez également inclure l'interaction entre ce prédicteur et le premier trimestre par rapport au retour, etc. La régression logistique est bien équipée pour répondre à ces questions via l'inclusion de tels termes dans le modèle.

D'un autre côté, tant que vous ne regroupez que ces fonctionnalités, et que vous le faites d'abord (sans regarder la réponse), je ne vois aucun problème se poser. Je soupçonne que cette approche serait inefficace, chaque modèle ayant une puissance inférieure, car il ne correspond qu'à un sous-ensemble des données, mais je ne pense pas que cela biaiserait les paramètres ou invaliderait les tests. Je suppose donc que vous pouvez essayer ceci si vous le voulez vraiment.

Mettre à jour:

Je suppose qu'il serait préférable (c'est-à-dire le plus efficace) d'adapter un modèle à toutes les données. Vous pouvez inclure des covariables supplémentaires (telles que le retour ou non) au-delà de votre intérêt principal, et un indicateur de regroupement que vous avez découvert en exécutant au préalable une analyse de cluster. Cependant, si les covariables qui sont entrées dans l'analyse en grappes sont également mises à la disposition du modèle de régression logistique, je ne sais pas si je peux voir ce qui serait gagné en incluant simplement toutes les covariables dans le modèle LR sansl'indicateur de cluster. Il y a peut-être un avantage à cela que je ne connais pas, car je ne suis pas expert en analyse de cluster, mais je ne sais pas ce que ce serait. Il me semble que l'AC ne générerait pas d'informations supplémentaires qui n'étaient pas déjà présentes dans les covariables et n'ajouterait donc rien au modèle LR. Vous pouvez l'essayer; j'ai peut-être tort. Mais je suppose que vous ne feriez que graver quelques degrés de liberté supplémentaires.

Une approche différente consisterait à entrer l'indicateur de grappe dans le modèle LR au lieu des covariables sur lesquelles il est basé. Je doute que ce soit bénéfique. L'autorité de certification ne sera pas parfaite, pas plus que toute autre analyse, et donc le passage des covariables d'origine à l'indicateur de cluster dérivé est susceptible d'entraîner une certaine perte d' informations . (Encore une fois, je ne le sais pas, mais je soupçonne fortement que c'est vrai.) Encore une fois, vous pouvez l'essayer dans les deux sens et comparer en tant qu'exercice académique, bien que simplement essayer beaucoup de choses et régler le résultat qui semble le mieux soit mal vu si vous voulez prendre vos résultats au sérieux.

Je ne veux pas me contenter d'analyser les grappes. Il peut y avoir de nombreux avantages en général, et leur utilisation peut être utile ici. Cependant, si je comprends bien votre situation, je pense qu'il suffit de construire un modèle LR avec les covariables que vous pensez être pertinentes.


1

Si vous n'êtes pas lié à la régression logistique, je vous suggère d'utiliser un classificateur de forêt aléatoire car il a une sorte de cluster intégré. L'idée serait d'utiliser la matrice de proximité pour se regrouper. La matrice de proximité est la matrice N_Obs par N_Obs pour la fraction d'arbres hors sac où les observations se trouvaient dans le même nœud terminal. Vous pouvez ensuite l'agréger en une matrice de niveau d'entité par niveau d'entité où les éléments sont la moyenne de la fraction dans la matrice de proximité. Vous regrouperiez alors tous les niveaux ensemble lorsqu'ils franchiraient un seuil et voir si cela améliore votre prédiction. Il est probablement préférable d'adopter une approche itérative par étapes pour trouver le clustering optimal, mais vous pouvez choisir un seuil d'autres manières. Lorsque cette mise en cluster est terminée, vous pouvez remplacer la fonction par les étiquettes de cluster ou ajouter les étiquettes de cluster en tant que nouvelle fonctionnalité. Je suppose qu'à ce stade, vous pourriez revenir à la régression logistique si vous le vouliez vraiment.


0

Lors de la création de modèles multi-segmentés, je pense que la meilleure approche est de créer des segments qui parlent de réelles différences dans les distributions sous-jacentes. Les étudiants du premier trimestre par rapport aux étudiants qui reviennent sont un excellent exemple, car les distributions des prédicteurs seront probablement très différentes pour ces deux populations. Plus important encore, ces différences ont une explication intuitive.


J'obtiens la valeur d'une explication intuitive - cela vous aide à interpréter votre modèle. Mais n'y a-t-il aucune raison de penser que si vous regroupez les gens en groupes en fonction de leur similitude, en termes de fonctionnalités dont vous disposez, vous obtiendrez un avantage similaire, mais pas avec la même interprétabilité? Je suppose que l'idée derrière l'utilisation du clustering est que lorsqu'il s'agit d'identifier des groupes qui ne correspondent pas parfaitement aux catégories que nous utilisons dans la vie quotidienne, les machines sont meilleures que les humains ...
dave

De plus, si vous entraînez un modèle de régression sur un ensemble d'élèves similaires, ce modèle sera plus précis dans ses prévisions de réussite de ces élèves qu'un modèle qui a été formé en utilisant un ensemble plus large d'élèves.
dave
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.