Amarengo

Articles and news

Tutorial rapido sulla regressione LAZO con esempio

La regressione LAZO sta per minimo restringimento assoluto e operatore di selezione. L’algoritmo è un’altra variazione della regressione lineare, proprio come la regressione della cresta. Usiamo la regressione lazo quando abbiamo un gran numero di variabili predittive.

Panoramica – Regressione Lasso

La regressione lasso è un modello parsimonioso che esegue la regolarizzazione L1. La regolarizzazione L1 aggiunge una penalità equivalente alla grandezza assoluta dei coefficienti di regressione e cerca di minimizzarli. L’equazione del lazo è simile alla regressione della cresta e si presenta come indicato di seguito.

 LS Obj + λ (sum of the absolute values of coefficients)

Qui l’obiettivo è il seguente:
Se λ = 0, otteniamo gli stessi coefficienti della regressione lineare
Se λ = vary large, Tutti i coefficienti sono ridotti verso lo zero

I due modelli, la regressione lazo e ridge, sono quasi simili tra loro. Tuttavia, nel lasso, i coefficienti responsabili della grande varianza vengono convertiti a zero. D’altra parte, i coefficienti sono solo ridotti ma non vengono mai azzerati nella regressione della cresta.

L’analisi di regressione Lazo viene anche utilizzata per la selezione delle variabili poiché il modello impone coefficienti di alcune variabili per ridursi verso lo zero.

Cosa significa un gran numero di variabili?

  1. Il numero elevato qui significa che il modello tende a sovrapporsi. Teoricamente, un minimo di dieci variabili può causare un problema di overfitting.
  2. Quando si affrontano sfide computazionali dovute alla presenza di n numero di variabili. Sebbene, data l’odierna potenza di elaborazione dei sistemi, questa situazione si presenti raramente.

Il seguente diagramma è l’interpretazione visiva che confronta OLS e regressione lazo.

Il LAZO non è molto bravo a gestire variabili che mostrano una correlazione tra loro e quindi a volte può mostrare un comportamento molto selvaggio.

Training Lazo Regression Model

L’allenamento del lazo regression model è esattamente lo stesso di quello della regressione della cresta. Dobbiamo identificare il valore lambda ottimale e quindi utilizzare quel valore per addestrare il modello. Per ottenere ciò, possiamo utilizzare la stessa funzione glmnet e passare l’argomentoalpha = 1. Quando passiamo alpha = 0, glmnet() esegue una regressione di cresta e quando passiamo alpha = 0.5, glmnet esegue un altro tipo di modello che viene chiamato rete elastica ed è una combinazione di regressione di cresta e lazo.

  1. Si usa cv.glmnet() funzione di identificare l’ottimale il valore di lambda
  2. Estrarre il meglio lambda e migliore modello di
  3. Ricostruire il modello usando glmnet() funzione
  4. Utilizzare la funzione predict per prevedere i valori futuri dei dati

Per questo esempio, useremo swiss set di dati a prevedere fertilità basata su Indicatori Socioeconomici per l’anno 1888.

Aggiornato-Frammento di codice è stato aggiornato per correggere alcuni nomi di variabili– 28/05/2020

# Output 0.3981072

Usando questo valore, alleniamo di nuovo il modello lazo.

Infine, combiniamo i valori previsti e i valori effettivi per vedere i due valori fianco a fianco, quindi è possibile utilizzare la formula R-Squared per verificare le prestazioni del modello. Nota: è necessario calcolare i valori R-Quadrato sia per il treno che per il set di dati di test.

final <- cbind(y_var, pred)# Checking the first six obshead(final)

Condivisione della formula R Squared

La funzione fornita di seguito è solo indicativa e devi fornire i valori effettivi e previsti in base al tuo set di dati.

actual <- test$actualpreds <- test$predictedrss <- sum((preds - actual) ^ 2)tss <- sum((actual - mean(actual)) ^ 2)rsq <- 1 - rss/tssrsq

Ottenere l’elenco delle variabili importanti

Per ottenere l’elenco delle variabili importanti, abbiamo solo bisogno di indagare i coefficienti beta del modello migliore finale.

# Inspecting beta coefficientscoef(lasso_best)
# Output6 x 1 sparse Matrix of class "dgCMatrix" s0(Intercept) 66.5365304Agriculture -0.0489183Examination . Education -0.9523625Catholic 0.1188127Infant.Mortality 0.4994369

Il modello indica che i coefficienti dell’agricoltura e dell’istruzione sono stati ridotti a zero. Così siamo lasciati con tre variabili, vale a dire; Esame, cattolica, e infantile.Mortalità

In questo capitolo, abbiamo imparato come costruire una regressione lazo utilizzando lo stesso pacchetto glmnet, che abbiamo usato per costruire la regressione ridge. Abbiamo anche visto qual è la differenza tra la cresta e il lazo. Nel prossimo capitolo, discuteremo come prevedere una variabile dicotomica usando la regressione logistica.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.