Perché la multicollinearità non è controllata nelle moderne statistiche / apprendimento automatico


44

Nelle statistiche tradizionali, durante la creazione di un modello, controlliamo la multicollinearità utilizzando metodi come le stime del fattore di inflazione della varianza (VIF), ma nell'apprendimento automatico, invece, utilizziamo la regolarizzazione per la selezione delle funzionalità e non sembriamo verificare se le funzionalità sono correlate affatto. Perché lo facciamo?

Risposte:


51

Considerare il multicollineariy è importante nell'analisi di regressione perché, in estrema misura , dipende direttamente dal fatto che i tuoi coefficienti siano identificati in modo univoco nei dati. Nei casi meno gravi, può comunque incasinare le stime dei coefficienti; piccole variazioni nei dati utilizzati per la stima possono causare oscillazioni selvagge dei coefficienti stimati. Questi possono essere problematici da un punto di vista inferenziale: se due variabili sono altamente correlate, gli aumenti in uno possono essere compensati da diminuzioni in un altro, quindi l'effetto combinato è quello di negarsi a vicenda. Con più di due variabili, l'effetto può essere ancora più sottile, ma se le previsioni sono stabili, ciò è spesso sufficiente per le applicazioni di apprendimento automatico.

Considera perché regolarizziamo in un contesto di regressione: dobbiamo costringere il modello ad essere troppo flessibile. L'applicazione della corretta quantità di regolarizzazione aumenterà leggermente la distorsione per una maggiore riduzione della varianza. L'esempio classico di ciò è l'aggiunta di termini polinomiali ed effetti di interazione a una regressione: nel caso degenerato, l'equazione di previsione interpolerà i punti dati, ma probabilmente sarà terribile quando si tenta di prevedere i valori dei punti dati non visti. Ridurre tali coefficienti probabilmente minimizzerà o eliminerà del tutto alcuni di quei coefficienti e migliorerà la generalizzazione.

Una foresta casuale, tuttavia, potrebbe avere un parametro di regolarizzazione attraverso il numero di variabili campionate ad ogni divisione: si ottiene una migliore suddivisione più grande è mtry(più funzionalità tra cui scegliere; alcune sono migliori di altre), ma anche questo rende ogni albero più altamente correlato tra loro, mitigando in qualche modo l'effetto diversificante della stima di più alberi in primo luogo. Questo dilemma obbliga a trovare il giusto equilibrio, generalmente ottenuto usando la validazione incrociata. È importante sottolineare che, contrariamente a un'analisi di regressione, nessuna parte del modello di foresta casuale è danneggiata da variabili altamente collineari: anche se due delle variabili forniscono la stessa purezza del nodo figlio, è possibile sceglierne una senza ridurre la qualità del risultato.

Allo stesso modo, per qualcosa come un SVM, puoi includere più predittori che funzionalità perché il trucco del kernel ti consente di operare esclusivamente sul prodotto interno di quei vettori di funzionalità. Avere più funzioni che osservazioni sarebbe un problema nelle regressioni, ma il trucco del kernel significa che stimiamo solo un coefficiente per ogni esemplare, mentre il parametro di regolarizzazione riduce la flessibilità della soluzione, il che è decisamente una buona cosa, poiché stimare parametri perCNNle osservazioni in modo illimitato produrranno sempre un modello perfetto sui dati di test - e torniamo al punto di partenza, tornando allo scenario di regressione della cresta / LASSO / rete elastica dove abbiamo la flessibilità del modello vincolata come un controllo rispetto a un modello eccessivamente ottimista. Una revisione delle condizioni KKT del problema SVM rivela che la soluzione SVM è unica, quindi non dobbiamo preoccuparci dei problemi di identificazione sorti nel caso della regressione.

Infine, considera l' impatto reale della multicollinearità. Non cambia la potenza predittiva del modello (almeno, sui dati di addestramento) ma si rovina con le nostre stime dei coefficienti. Nella maggior parte delle applicazioni ML, non ci interessiamo dei coefficienti stessi, solo la perdita delle previsioni del nostro modello, quindi in questo senso, il controllo di VIF non risponde effettivamente a una domanda conseguente. (Ma se un leggero cambiamento nei dati provoca un'enorme fluttuazione dei coefficienti [un sintomo classico della multicollinearità], può anche cambiare le previsioni, nel qual caso ci preoccupiamo - ma tutto questo [speriamo!] È caratterizzato quando eseguire la convalida incrociata, che fa comunque parte del processo di modellazione). Una regressione viene interpretata più facilmente, ma l'interpretazione potrebbe non essere l'obiettivo più importante per alcune attività.


1
Per la modellizzazione della regressione causale, usando tecniche come il punteggio di propensione o l'adattamento della regressione, la collinearità può essere un problema anche per la previsione, perché di solito l'obiettivo è quello di adattare un modello esclusivamente su un gruppo di controllo / non esposto e quindi stimare i risultati usando quel modello su un modello sperimentale gruppo, oppure combina i due gruppi ma usa una variabile indicatore per misurare l'effetto, controllando per altri fattori, di essere nel gruppo sperimentale.
ely,

1
Se la collinearità crea errori nei coefficienti, la regressione estesa al gruppo sperimentale non funzionerà. Allo stesso modo, la stima del coefficiente per la variabile indicatore di aver ricevuto il trattamento potrebbe essere scartata se si effettuasse una singola regressione in entrambi i sottocampioni. Le moderne tecniche di apprendimento automatico di solito non vengono utilizzate per analizzare questi tipi di problemi di causalità, e quindi nessuno ha dovuto affrontare la necessità di strumenti per giustificarlo.
ely,

@ely, nel tuo primo esempio, la colinearità (tra le covariate, non il trattamento) non causa problemi, perché ancora una volta l'obiettivo è la previsione degli esiti controfattuali e la colinearità non è un problema con la previsione. Inoltre, i moderni metodi ML sono spesso usati nell'inferenza causale; la modellazione generalizzata potenziata e le foreste casuali sono ampiamente utilizzate per stimare i punteggi di propensione e TMLE utilizza metodi ML per imputare i risultati controfattuali. Direi che un punto di forza dei metodi causali è che la colinearità non è di solito un problema per loro.
Noah,

@Noah Di solito è l'interpretazione del coefficiente di esposizione che conta (e anche l'interpretazione delle altre stime degli effetti), e non solo la precisione della previsione grezza. Mi rendo conto che il mio commento non lo ha chiarito, ma è per questo che è un problema. Se la previsione complessiva è buona, ma non è guidata dal fatto di essere veramente correlata al coefficiente stimato per l'esposizione, di solito è un modello indesiderato per l'inferenza causale.
ely,

21

Il motivo è perché gli obiettivi delle "statistiche tradizionali" sono diversi da molte tecniche di apprendimento automatico.

Per "statistiche tradizionali", presumo tu intenda la regressione e le sue varianti. In regressione, stiamo cercando di comprendere l'impatto che le variabili indipendenti hanno sulla variabile dipendente. Se c'è una forte multicollinearità, questo semplicemente non è possibile. Nessun algoritmo risolverà questo problema. Se lo studioso è correlato alla frequenza e ai voti in classe, non possiamo sapere che cosa stia realmente facendo aumentare i voti: frequenza o studi.

Tuttavia, nelle tecniche di Machine Learning che si concentrano sull'accuratezza predittiva, tutto ciò che ci interessa è come possiamo usare un insieme di variabili per prevedere un altro insieme. Non ci interessa l'impatto che queste variabili hanno l'una sull'altra.

Fondamentalmente, il fatto che non controlliamo la multicollinearità nelle tecniche di Machine Learning non è una conseguenza dell'algoritmo, è una conseguenza dell'obiettivo. Puoi vederlo notando che la forte collinearità tra le variabili non danneggia l'accuratezza predittiva dei metodi di regressione.


11

Sembra esserci un presupposto di base qui che non verificare la collinearità è una pratica ragionevole o addirittura migliore. Questo sembra imperfetto. Ad esempio, la verifica della perfetta collinearità in un set di dati con molti predittori rivelerà se due variabili sono effettivamente la stessa cosa, ad es. Data di nascita ed età (esempio tratto da Dormann et al. (2013), Ecography , 36 , 1, pp 27–46 ). A volte ho anche visto sorgere il problema dei predittori perfettamente correlati nelle competizioni Kaggle in cui i concorrenti sul forum tentano di eliminare potenziali predittori che sono stati resi anonimi (ovvero l'etichetta del predittore è nascosta, un problema comune nelle competizioni simili a Kaggle e Kaggle).

Esiste ancora un'attività nell'apprendimento automatico della selezione dei predittori: l'identificazione di predittori altamente correlati può consentire al lavoratore di trovare predittori che sono proxy per un'altra variabile (nascosta) sottostante e, in definitiva, trovare una variabile che fa il miglior lavoro di rappresentazione della variabile latente o in alternativa, suggerire variabili che possono essere combinate (ad esempio tramite PCA).

Pertanto, suggerirei che sebbene i metodi di apprendimento automatico di solito (o almeno spesso) siano stati progettati per essere robusti rispetto ai predittori correlati, la comprensione del grado di correlazione dei predittori è spesso un passo utile nella produzione di un modello robusto e accurato ed è un utile aiuto per ottenere un modello ottimizzato.


9

Il problema principale con la multicollinearità è che confonde i coefficienti (beta) delle variabili indipendenti. Ecco perché è un problema serio quando studi le relazioni tra variabili, stabilisci la causalità, ecc.

Tuttavia, se non sei interessato a capire così tanto il fenomeno, ma sei solo concentrato sulla previsione e sulla previsione, la multicollinearità è meno un problema. O almeno è quello che la gente ci pensa.

Non sto parlando della perfetta multicollinearità qui, che è un problema tecnico o di identificazione. Tecnicamente, significa semplicemente che la matrice di progettazione porta alla singolarità e la soluzione non è definita.


4
Anche con una perfetta collinearità, le previsioni sono ben definite.
whuber

@whuber, se si utilizza OLS, è probabile che il pacchetto stat generi un errore, poiché non sarà in grado di invertire la matrice. Quelli intelligenti possono rilasciare uno dei vari variatori indipendenti e andare avanti però.
Aksakal,

2
Se usi l'inverso generalizzato, questa singolarità non è un problema.
Analista il

1
Non seguo la tua logica, Aksakal: stai cercando di suggerire che le tecniche di apprendimento automatico differiscono dalle tecniche statistiche in quanto le prime in qualche modo non hanno problemi con le matrici di rango ridotto? È un'idea interessante da esplorare.
whuber

1
@utente, la variabile indipendente è quasi sempre correlata, e di solito va bene. Solo la multicollinearità perfetta provoca carenza di rango. La multicollinearità si riferisce a correlazioni molto forti e non è auspicabile, in generale, ma come ho scritto prima è un problema benigno in molti casi.
Aksakal,

7

La regolarizzazione dell'apprendimento automatico stabilizza i coefficienti di regressione, quindi almeno quell'effetto della multicollinearità domato. Ma ancora più importante, se stai cercando una previsione (che spesso sono gli studenti di macchine), allora il "problema" della multicollinearità non era poi un grosso problema. È un problema quando è necessario stimare un coefficiente particolare e non si dispone delle informazioni.

Inoltre, la mia risposta a " Quando LASSO seleziona predittori correlati " potrebbe esserti utile.


1

Penso che la multicollinearità dovrebbe essere verificata nell'apprendimento automatico. Ecco perché: Supponiamo di avere due funzioni altamente correlate X e Y nel nostro set di dati. Ciò significa che il piano di risposta non è affidabile (una piccola modifica nei dati può avere effetti drastici sull'orientamento del piano di risposta). Ciò implica che le previsioni del modello per i dati puntano lontanodalla linea, dove X e Y tendono a cadere, non sono affidabili. Se si utilizza il modello per le previsioni per tali punti, le previsioni probabilmente saranno pessime. Per dirla in altre parole, quando si hanno due caratteristiche altamente correlate, come modello, si sta imparando un piano in cui i dati rientrano per lo più in linea. Pertanto, è importante rimuovere funzionalità altamente correlate dai dati per prevenire modelli inaffidabili e previsioni errate.

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.