La metodologia della foresta casuale può essere applicata alle regressioni lineari?


14

Le foreste casuali funzionano creando un insieme di alberi decisionali in cui ogni albero viene creato utilizzando un campione bootstrap dei dati di addestramento originali (campione di variabili di input e osservazioni).

È possibile applicare un processo simile per la regressione lineare? Crea k modelli di regressione lineare usando un campione casuale di bootstrap per ciascuna delle k regressioni

Quali sono i motivi per NON creare un modello di "regressione casuale"?

Grazie. Se c'è qualcosa che sto fondamentalmente fraintendendo, per favore fatemi sapere.


Quando bootstrap aggrega alberi, la funzione di regressione complessiva diventa sempre più complessa con ogni albero aggiunto. D'altra parte, quando bootstrap aggrega le funzioni lineari del modulo a_0 + a_1 * x_1 + ... + a_d * x_d, la funzione lineare media risultante (dopo l'aggregazione bootstrap) ha ancora la stessa forma funzionale lineare di quella con cui si inizia (cioè lo "studente di base").
Andre Holzner,

1
@Andre Holzner - quello che dici vero, ma, ma ... ma ... fare questo forrest casuale è in realtà una forma di regolarizzazione, in una classe simile a quella del ridging. Ti dirò un segreto, un albero di regressione è in realtà un modello lineare - classe simile alle spline. indossando il mio cappello bayesiano, il regolarizzatore forrest casuale corrisponderebbe probabilmente approssimativamente ai priori "punta e lastra" usati nel contesto bayesiano.
probabilityislogic

@probabilityislogic, puoi spiegare?
Simon Kuang,

Puoi pensare agli alberi come al modello lineare . Z t è una matrice di progettazione che indica a quale nodo terminale appartiene ciascuna osservazione per l'albero t , e θ t è il vettore corrispondente delle previsioni del nodo terminale. Qualsiasi albero può essere descritto in questo modo - la scelta di un albero equivale alla selezione di un modello lineare standard nello spazio di Z t - di cui penso che ci siano 2 n possibili configurazioni "nodo terminale" (dove n è la dimensione del campione di addestramento). y=Ztθt+eZttθtZt2nn
probabilistica

Risposte:


5

In parte non sono d'accordo con le risposte attuali perché la foresta casuale metodologica è costruita su introduce varianza (CART costruiti su campioni bootstrap + metodo subspazio casuale) per renderli indipendenti. Una volta che hai alberi ortogonali, la media delle loro previsioni tende (in molti casi) ad essere migliore della previsione dell'albero medio (a causa della disuguaglianza di Jensen). Sebbene i CART presentino vantaggi evidenti quando soggetti a questo trattamento, questa metodologia si applica sicuramente a qualsiasi modello e i modelli lineari non fanno eccezione. Ecco un pacchetto R che è esattamente quello che stai cercando. Presenta un simpatico tutorial su come sintonizzarli e interpretarli e bibliografia sull'argomento: Modelli lineari generalizzati casuali .


14

Per mettere la risposta di @ ziggystar in termini di gergo di machine learning: l'idea alla base delle tecniche di aggregazione bootstrap (ad esempio Random Forests) è quella di adattare molti modelli a bassa inclinazione e ad alta varianza ai dati con qualche elemento di "casualità" o "instabilità". Nel caso di foreste casuali, l'instabilità viene aggiunta tramite il bootstrap e selezionando un set casuale di funzionalità per dividere ciascun nodo dell'albero. La media di questi alberi rumorosi, ma di bassa propensione, allevia l'alta varianza di ogni singolo albero.

Mentre gli alberi di regressione / classificazione sono modelli "a bassa inclinazione, ad alta varianza", i modelli di regressione lineare sono in genere l'opposto: "alta inclinazione, bassa varianza". Pertanto, il problema che si incontra spesso con i modelli lineari è la riduzione della distorsione, non la varianza. L'aggregazione Bootstrap semplicemente non è fatta per fare questo.

Un ulteriore problema è che il bootstrap potrebbe non fornire abbastanza "casualità" o "instabilità" in un tipico modello lineare. Mi aspetterei che un albero di regressione sia più sensibile alla casualità dei campioni bootstrap, poiché ogni foglia in genere contiene solo una manciata di punti dati. Inoltre, gli alberi di regressione possono essere cresciuti stocasticamente suddividendo l'albero su un sottoinsieme casuale di variabili su ciascun nodo. Vedi questa domanda precedente sul perché questo è importante: perché le foreste casuali sono suddivise in base alle funzioni m casuali?

Detto questo, puoi certamente usare il bootstrap su modelli lineari [LINK] , e questo può essere molto utile in determinati contesti. Tuttavia, la motivazione è molto diversa dalle tecniche di aggregazione bootstrap.


Grazie per i collegamenti e la risposta. Se il metodo di casualità è utile per i modelli "a bassa inclinazione, ad alta varianza", ci sono metodologie per trattare il tipo opposto di modelli "ad alta inclinazione, a bassa varianza"?
Rick,

Se si dispone di un modello a bassa inclinazione e ad alta varianza, metodologie come l'insaccamento possono ridurre la varianza con un leggero aumento della distorsione. Se hai un bias elevato, una varianza bassa, usa un modello con bias inferiore e varianza più alta, come una regressione polinomiale o più in generale metodi del kernel.
Joe,

10

kk

Ed ecco perché non è così attraente fare qualcosa "casuale" con modelli lineari come lo è con gli alberi decisionali:

È molto probabile che un grande albero decisionale creato da un grande campione sovrascriva i dati e il metodo di foresta casuale combatte questo effetto basandosi sul voto di molti piccoli alberi.

La regressione lineare, d'altra parte, è un modello che non è molto incline al sovradimensionamento e quindi non è danneggiato allenandolo sul campione completo all'inizio. E anche se si hanno molte variabili regressor, è possibile applicare altre tecniche, come la regolarizzazione, per combattere l'eccessivo adattamento.


0

k

X1,X2,...,XnBe(p)
p1p
θ=1{p>0}
Xi=1 to know that θ=1. The whole sample may contain such a data point and allow us to estimate θ without any error. On the other hand, any bootstrap sample may not contain such a data point and lead us to wrongly estimating θ with 0 (we adopt no Bayesian framework here, juts good old method of maximum likelihood). In other words,
Bias bagging=Prob(in a bootstrap sample X(1)=...=X(n)=0)>0,
conditional on θ=1.

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.