Come trattare i predittori categorici in LASSO


17

Sto eseguendo un LASSO che ha alcuni predittori di variabili categorici e alcuni continui. Ho una domanda sulle variabili categoriche. Il primo passo che capisco è quello di dividere ciascuno di loro in manichini, standardizzarli per una giusta penalizzazione e quindi regredire. Diverse opzioni sorgono per il trattamento delle variabili fittizie:

  1. Includi tutti i manichini tranne uno per ogni fattore, lasciando quello come livello di riferimento. L'interpretazione di un coefficiente fittizio è relativa alla categoria di "riferimento" esclusa. L'intercettazione è ora la risposta media per la categoria di riferimento.

  2. Raggruppa le variabili in ciascun fattore in modo che siano tutte escluse o tutte tranne una. Credo che sia ciò che @Glen_b sta suggerendo qui :

    Normalmente sì, tieni tutti i tuoi fattori uniti. Esistono diversi pacchetti R che possono farlo, incluso glmnet

  3. Includi tutti i livelli, come suggerito da @Andrew M qui :

    È inoltre possibile modificare la funzione di contrasto predefinita, che per impostazione predefinita esclude un livello di ciascun fattore (codifica del trattamento). Ma a causa della penalità del lazo, questo non è più necessario per l'identificabilità, e in effetti rende più complicata l'interpretazione delle variabili selezionate. Per fare questo, impostare

    contr.Dummy <- function(contrasts, ...){
       conT <- contr.treatment(contrasts=FALSE, ...)
       conT
    }
    options(contrasts=c(ordered='contr.Dummy', unordered='contr.Dummy'))
    

    Ora, qualunque sia il livello di un fattore selezionato, puoi pensare che suggerisca che questi livelli specifici contano, rispetto a tutti i livelli omessi. Nell'apprendimento automatico, ho visto questa codifica definita codifica one-hot.

Domande:

  1. Qual è l'interpretazione dell'intercetta e dei coefficienti in ciascuno di questi approcci?
  2. Quali sono le considerazioni relative alla selezione di uno di essi?
  3. Annulliamo la scala dei coefficienti fittizi e li interpretiamo come un cambiamento di passaggio da spento a acceso?

Risposte:


6

β

In risposta a domande specifiche:

(1) LASSO è un metodo di stima per i coefficienti, ma i coefficienti stessi sono definiti dall'equazione del modello iniziale per la regressione. Pertanto, l'interpretazione dei coefficienti è la stessa di una regressione lineare standard; rappresentano i tassi di variazione della risposta attesa a causa di cambiamenti nelle variabili esplicative.

(2) La letteratura di cui sopra raccomanda di raggruppare le variabili, ma mantenendo una categoria di riferimento. Ciò presuppone implicitamente che si sta confrontando la presenza di una variabile categoriale con un modello che la rimuove ma ha ancora un termine di intercettazione.

(3) Come indicato sopra, il metodo di stima non influisce sull'interpretazione dei coefficienti, che sono stabiliti dalla dichiarazione del modello.


1
Hatshepsut: se hai trovato utile questa risposta, ti preghiamo di prendere in considerazione l' upgrade e / o l' accettazione . Altrimenti, forse potresti indicare cosa manca ancora?
S. Kolassa - Ripristina Monica il

@StephanKolassa done
Hatshepsut
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.