Il problema che stai descrivendo può essere risolto dalla regressione di classe latente , o regressione a livello di cluster , o dalla sua miscela di estensione di modelli lineari generalizzati che sono tutti membri di una più ampia famiglia di modelli di miscela finita o modelli di classe latente .
Non è una combinazione di classificazione (apprendimento supervisionato) e regressione in sé , ma piuttosto di raggruppamento (apprendimento non supervisionato) e regressione. L'approccio di base può essere esteso in modo da prevedere l'appartenenza alla classe utilizzando variabili concomitanti, ciò che lo rende ancora più vicino a ciò che stai cercando. In effetti, l'utilizzo di modelli di classe latenti per la classificazione è stato descritto da Vermunt e Magidson (2003) che lo raccomandano per tale scopo.
Regressione della classe latente
Questo approccio è sostanzialmente un modello di miscela finita (o analisi di classe latente ) nella forma
f(y∣x,ψ)=∑k=1Kπkfk(y∣x,ϑk)
dove è un vettore di tutti i parametri e sono componenti della miscela parametrizzati da e ogni componente appare con proporzioni latenti . Quindi l'idea è che la distribuzione dei tuoi dati sia una miscela di componenti , ognuno dei quali può essere descritto da un modello di regressione appare con probabilità . I modelli di miscele finite sono molto flessibili nella scelta dei componenti di e possono essere estesi ad altre forme e miscele di diverse classi di modelli (ad es. Miscele di analizzatori di fattori).f k ϑ k π k K f k π k f kψ=(π,ϑ)fkϑkπkKfkπkfk
Previsione della probabilità di appartenenza alla classe in base a variabili concomitanti
Il semplice modello di regressione della classe latente può essere esteso per includere variabili concomitanti che predicono l'appartenenza alla classe (Dayton e Macready, 1998; vedi anche: Linzer e Lewis, 2011; Grun e Leisch, 2008; McCutcheon, 1987; Hagenaars e McCutcheon, 2009) , in tal caso il modello diventa
f(y∣x,w,ψ)=∑k=1Kπk(w,α)fk(y∣x,ϑk)
dove di nuovo è un vettore di tutti i parametri, ma includiamo anche variabili concomitanti e una funzione (ad es. logistica) che viene utilizzata per prevedere le proporzioni latenti in base alle variabili concomitanti. Quindi puoi prima prevedere la probabilità di appartenenza alla classe e stimare la regressione del cluster all'interno di un singolo modello.w π k ( w , α )ψwπk(w,α)
Pro e contro
La cosa interessante è che si tratta di una tecnica di clustering basata su modello , il che significa che si adattano i modelli ai dati e tali modelli possono essere confrontati utilizzando metodi diversi per il confronto dei modelli (test del rapporto di verosimiglianza, BIC, AIC ecc. ), quindi la scelta del modello finale non è così soggettiva come con l'analisi dei cluster in generale. Frenare il problema in due problemi indipendenti del clustering e quindi applicare la regressione può portare a risultati distorti e la stima di tutto in un singolo modello consente di utilizzare i dati in modo più efficiente.
Il rovescio della medaglia è che devi fare una serie di ipotesi sul tuo modello e pensarci su, quindi non è un metodo black-box che prenderà semplicemente i dati e restituirà alcuni risultati senza disturbarti. Con dati rumorosi e modelli complicati puoi anche avere problemi di identificabilità del modello. Inoltre, poiché tali modelli non sono così popolari, non sono ampiamente implementati (è possibile controllare grandi pacchetti R flexmix
e poLCA
, per quanto ne so, è anche implementato in SAS e Mplus in una certa misura), ciò che ti rende dipendente dal software.
Esempio
Di seguito è possibile vedere un esempio di tale modello dalla flexmix
libreria (Leisch, 2004; Grun e Leisch, 2008) che adatta la combinazione di due modelli di regressione ai dati inventati.
library("flexmix")
data("NPreg")
m1 <- flexmix(yn ~ x + I(x^2), data = NPreg, k = 2)
summary(m1)
##
## Call:
## flexmix(formula = yn ~ x + I(x^2), data = NPreg, k = 2)
##
## prior size post>0 ratio
## Comp.1 0.506 100 141 0.709
## Comp.2 0.494 100 145 0.690
##
## 'log Lik.' -642.5452 (df=9)
## AIC: 1303.09 BIC: 1332.775
parameters(m1, component = 1)
## Comp.1
## coef.(Intercept) 14.7171662
## coef.x 9.8458171
## coef.I(x^2) -0.9682602
## sigma 3.4808332
parameters(m1, component = 2)
## Comp.2
## coef.(Intercept) -0.20910955
## coef.x 4.81646040
## coef.I(x^2) 0.03629501
## sigma 3.47505076
È visualizzato sui seguenti grafici (le forme dei punti sono le vere classi, i colori sono le classificazioni).
Riferimenti e risorse aggiuntive
Per ulteriori dettagli è possibile consultare i seguenti libri e documenti:
Wedel, M. e DeSarbo, WS (1995). Un approccio di verosimiglianza della miscela per modelli lineari generalizzati. Journal of Classification, 12 , 21–55.
Wedel, M. e Kamakura, WA (2001). Segmentazione del mercato - Fondamenti concettuali e metodologici. Editori accademici di Kluwer.
Leisch, F. (2004). Flexmix: un quadro generale per modelli di miscele finite e regressione del vetro latente in R. Journal of Statistical Software, 11 (8) , 1-18.
Grun, B. e Leisch, F. (2008). FlexMix versione 2: miscele finite con variabili concomitanti e parametri variabili e costanti.
Journal of Statistical Software, 28 (1) , 1-35.
McLachlan, G. e Peel, D. (2000). Modelli a miscela finita. John Wiley & Sons.
Dayton, CM e Macready, GB (1988). Modelli con classe latente concomitanti variabili. Journal of American Statistical Association, 83 (401), 173-178.
Linzer, DA e Lewis, JB (2011). poLCA: un pacchetto R per l'analisi delle classi latenti variabili politomiche. Journal of Statistical Software, 42 (10), 1-29.
McCutcheon, AL (1987). Analisi della classe latente. Saggio.
Hagenaars JA e McCutcheon, AL (2009). Analisi di classe latente applicata. Cambridge University Press.
Vermunt, JK e Magidson, J. (2003). Modelli di classe latenti per la classificazione. Statistiche computazionali e analisi dei dati, 41 (3), 531-537.
Grün, B. e Leisch, F. (2007). Applicazioni di miscele finite di modelli di regressione. vignetta del pacchetto flexmix.
Grün, B., & Leisch, F. (2007). Adattamento di miscele finite di regressioni lineari generalizzate in R. Statistiche computazionali e analisi dei dati, 51 (11), 5247-5252.