Clustering come mezzo per suddividere i dati per la regressione logistica


11

Sto cercando di prevedere il successo o il fallimento degli studenti sulla base di alcune funzionalità con un modello di regressione logistica. Per migliorare le prestazioni del modello, ho già pensato di suddividere gli studenti in diversi gruppi sulla base di ovvie differenze e di costruire modelli separati per ciascun gruppo. Ma penso che potrebbe essere difficile identificare questi gruppi tramite esame, quindi ho pensato di dividere gli studenti raggruppandoli sulle loro caratteristiche. È una pratica comune nella costruzione di tali modelli? Mi suggeriresti di suddividerlo in gruppi evidenti (ad esempio, studenti del primo trimestre rispetto agli studenti di ritorno) e quindi eseguire il raggruppamento su tali gruppi o raggruppare dall'inizio?

Per provare a chiarire:

Quello che voglio dire è che sto prendendo in considerazione l'uso di un algoritmo di clustering per spezzare il mio set di allenamento per la regressione logistica in gruppi. Farei quindi regressioni logistiche separate per ciascuno di quei gruppi. Quindi, quando si utilizza la regressione logistica per prevedere il risultato per uno studente, sceglierei quale modello utilizzare in base al gruppo in cui si adattano meglio.

Forse potrei fare la stessa cosa includendo un identificatore di gruppo, ad esempio un 1 se lo studente sta tornando e uno 0 in caso contrario.

Ora mi viene da pensare se potrebbe essere vantaggioso raggruppare il set di dati di training e utilizzare l'etichetta del cluster come funzionalità nella regressione logistica, piuttosto che creare modelli di regressione logistica separati per ogni popolazione.

Se è utile includere un identificatore di gruppo per coloro che stanno tornando studenti rispetto a nuovi studenti, potrebbe anche essere utile espandere l'elenco dei gruppi? Il clustering sembra un modo naturale per farlo.

Spero sia chiaro ...


Penso di non capire come il "clustering" e il modello di regressione logistica si interagirebbero o si influenzerebbero a vicenda. Potresti spiegare la differenza tra "clustering" in questo contesto e includere un identificatore di gruppo come variabile esplicativa nella regressione?
whuber

Risposte:


4

Credo che se si riscontra una differenza significativa nella variabile dipendente tra i cluster, l'approccio del cluster prima sarà sicuramente utile. Indipendentemente dall'algoritmo di apprendimento scelto.

Ritengo che l'esecuzione di un algoritmo di apprendimento su un'intera base possa coprire differenze significative a un livello inferiore di aggregazione.

Chiunque abbia sentito parlare del paradosso di Simpson, è un caso difficile di un problema più profondo in cui si hanno correlazioni diverse in gruppi diversi che sono coperti da un più ampio rumore di campionamento o da correlazioni più deboli di un gruppo più ampio.


Potresti avere ragione, ma io non seguo il tuo argomento. Stai sostenendo che l'OP esegua LR separati sui cluster trovati, aggiunga l'indice del cluster oltre alle covariate o invece delle covariate? È certamente vero che le covariate possono essere confuse con le variabili omesse nella ricerca osservazionale, ma stai dicendo che CA può generare informazioni che non sono nelle variabili su cui vengono eseguite? Per quanto riguarda il paradosso di Simpson, è discusso qui sul CV se sei interessato.
gung - Ripristina Monica

Sto suggerendo che l'analisi senza supervisione tira fuori gruppi omogenei con un insieme arbitrario di IV (variabili indipendenti). In seguito puoi decidere tu stesso se progredisci con lo stesso set di varbs o un nuovo set o un set combinato per la fase successiva della modellazione con LR. Lo scopo è quello di costruire e ottimizzare 1 LR per cluster (dato che i cluster hanno valori DV o frequenze significativamente diversi).
clancy

In realtà, l'ho realizzato da solo nel contesto di un modello di acquisizione per i prodotti di assicurazione sulla vita di vendita incrociata e ho trovato una previsione migliorata su 2 dei cluster diluiti da un terzo cluster.
clancy

Mi chiedo se il modello potrebbe aver bisogno di un termine spline. Potresti includere una simulazione di alcuni dati, un adattamento di base, CA e indicatore di adattamento finale (migliorato) con cluster? Sarei interessato a vederlo e giocarci un po 'per capire cosa sta succedendo.
gung - Ripristina Monica

Ciao Gung, mi piacerebbe ma non riesco a trovare il tempo. Sono fortemente investito con la famiglia, il lavoro e il miglioramento delle mie capacità di modellazione. Sto solo cominciando a lavorare con la modellazione MARS e non sono sicuro che questo soddisferà lo stesso risultato desiderato del gruppo descritto + ensemble LR.
clancy

8

L'approccio generale proposto, che utilizza partizioni latenti per assegnare diversi punti dati a diversi classificatori di base, è un approccio ben studiato alla classificazione.

La ragione per cui questi metodi non sono ampiamente utilizzati è probabilmente perché sono relativamente complicati e hanno tempi di esecuzione più lunghi rispetto alla regressione logistica o alle SVM. In molti casi, sembra che possano portare a migliori prestazioni di classificazione.

Ecco alcuni riferimenti:

  • Shahbaba, B. e Neal, R. "Modelli non lineari che utilizzano miscele di processo di Dirichlet"

  • Zhu, J. e Chen, N. e Xing, EP "Infinite SVM latente per la classificazione e l'apprendimento multi-task"

  • Rasmussen, CE e Ghahramani, Z. "Infinite miscele di esperti di processo gaussiani"

  • Meeds, E. e Osindero, S. "Una miscela infinita alternativa di esperti di processo gaussiani"


1

Voglio riconoscere fin dall'inizio che so relativamente poco sul clustering. Tuttavia, non vedo il punto della procedura che descrivi. Se pensi, ad esempio, che il primo trimestre rispetto agli studenti di ritorno potrebbe essere diverso, perché non includere una covariata che lo indicizza? Allo stesso modo, se ritieni che un'altra caratteristica degli studenti sia pertinente, puoi includerla anche tu. Se sei preoccupato che la relazione tra il tuo principale predittore di interesse e il tasso di successo potrebbe differire, potresti anche includere l'interazione tra quel predittore e il primo termine rispetto al ritorno, ecc. La regressione logistica è ben equipaggiata per rispondere a queste domande includendo tali termini nel modello.

D'altra parte, fintanto che ti concentri solo su queste funzionalità e lo fai prima (senza guardare la risposta), non vedo sorgere alcun problema. Sospetto che questo approccio sarebbe inefficiente, con ogni modello con una potenza inferiore perché si adatta solo a un sottoinsieme dei dati, ma non credo che pregiudicherebbe i parametri o invaliderebbe i test. Quindi suppongo che potresti provarlo se lo desideri davvero.

Aggiornare:

La mia ipotesi è che sarebbe meglio (vale a dire, più efficiente) adattare un modello con tutti i dati. Potresti includere alcune covariate aggiuntive (come il ritorno contro il non) oltre il tuo interesse primario e un indicatore di raggruppamento che hai scoperto dopo aver eseguito un'analisi del cluster in anticipo. Tuttavia, se le covariate che sono entrate nell'analisi del cluster sono rese disponibili anche per il modello di regressione logistica, non sono sicuro di poter vedere cosa si otterrebbe semplicemente includendo tutte le covariate nel modello LR senzal'indicatore del cluster. Potrebbe esserci un vantaggio a questo che non ho familiarità, dal momento che non sono esperto nell'analisi dei cluster, ma non so quale sarebbe. Mi sembra che la CA non genererebbe ulteriori informazioni che non erano già presenti nelle covariate, e quindi non aggiungerebbe nulla al modello LR. Potresti provarlo; forse sto sbagliando. Ma la mia ipotesi è che bruceresti solo qualche grado in più di libertà.

Un approccio diverso sarebbe quello di inserire l'indicatore del cluster nel modello LR invece delle covariate su cui si basa. Dubito che questo sarebbe utile. Il CA non sarà perfetto, non più di quanto qualsiasi altra analisi sempre è, e così lo spostamento dalle covariate originali per l'indicatore di cluster derivato è probabile che implica una certa quantità di informazioni di perdita . (Ancora una volta, non lo so, ma sospetto fortemente che sia vero.) Ancora una volta, potresti provarlo in entrambi i modi e confrontarlo come un esercizio accademico, anche se solo provare un sacco di cose e accontentarsi del risultato che sembra migliore è accigliato se vuoi prendere sul serio i tuoi risultati.

Non voglio solo carpire le analisi dei cluster. Potrebbero esserci molti vantaggi in generale, e qui potrebbe esserci un buon uso. Tuttavia, poiché capisco la tua situazione, penso che solo la costruzione di un modello LR con le covariate che ritieni possa essere rilevante.


1

Se non sei legato alla regressione logistica, ti suggerirei di utilizzare un classificatore di foreste casuale perché ha una sorta di cluster incorporato. L'idea sarebbe quella di utilizzare la matrice di prossimità per raggruppare. La matrice di prossimità è la matrice N_Obs di N_Obs per la frazione di alberi fuori borsa dove le osservazioni si trovavano nello stesso nodo terminale. È quindi possibile aggregare questo in un livello di funzionalità per matrice di livello di funzionalità in cui gli elementi sono la media della frazione nella matrice di prossimità. Dovresti quindi raggruppare tutti i livelli insieme quando superano una soglia e vedere se questo migliora la tua previsione. È probabilmente meglio adottare un approccio iterativo graduale per trovare il clustering ottimale, ma è possibile scegliere una soglia in altri modi. Al termine di questo cluster, è possibile sostituire la funzione con le etichette del cluster o aggiungere le etichette del cluster come nuova funzionalità. Suppongo che a questo punto potresti tornare alla regressione logistica se lo desideri davvero.


0

Quando creo modelli multi-segmentati, penso che l'approccio migliore sia quello di creare segmenti che parlino di differenze reali nelle distribuzioni sottostanti. Gli studenti del primo trimestre rispetto agli studenti di ritorno sono un ottimo esempio, poiché le distribuzioni dei predittori saranno probabilmente molto diverse per queste due popolazioni. Ancora più importante, queste differenze hanno una spiegazione intuitiva.


Ottengo il valore di una spiegazione intuitiva: ti aiuta a interpretare il tuo modello. Ma non c'è motivo di pensare che se raggruppi le persone in gruppi in base alla loro somiglianza, in termini di funzionalità che hai a disposizione, otterrai un vantaggio simile, anche se non con la stessa interpretabilità? Credo che l'idea alla base dell'uso del clustering sia che quando si tratta di identificare gruppi che non corrispondono perfettamente alle categorie che usiamo nella vita di tutti i giorni, le macchine sono migliori degli umani ...
Dave,

Inoltre, se si allena un modello di regressione su un insieme di studenti simili, quel modello sarà più accurato nelle sue previsioni del successo di quegli studenti rispetto a un modello che è stato addestrato utilizzando un insieme più ampio di studenti.
dave,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.