se ridimensionare indicatore / binario / predittori fittizi per LASSO


30

Per LASSO (e altre procedure di selezione dei modelli) è fondamentale ridimensionare i predittori. La raccomandazione generale che seguo è semplicemente quella di utilizzare una media di 0, 1 normalizzazione di deviazione standard per variabili continue. Ma cosa c'è da fare con i manichini?

Ad esempio alcuni esempi applicati della stessa (eccellente) scuola estiva che ho collegato al ridimensionamento delle variabili continue tra 0 e 1 (non eccezionale con i valori anomali), probabilmente per essere paragonabile ai manichini. Ma anche questo non garantisce che i coefficienti debbano essere dello stesso ordine di grandezza, e quindi penalizzati in modo simile, la ragione principale del riscatto, no?


2
Risposta breve: no, non ridimensionare i manichini
Affine,

4
In relazione a ciò
luglio

@julieth, grazie mille, fammi sapere se hai trovato delle risposte da allora.
László,

Risposte:


27

Secondo Tibshirani ( IL METODO LASSO PER LA SELEZIONE VARIABILE NEL MODELLO COX, Statistics in Medicine, VOL. 16, 385-395 (1997) ), che ha letteralmente scritto il libro sui metodi di regolarizzazione, dovresti standardizzare i manichini. Tuttavia, si perde quindi l'interpretazione diretta dei coefficienti. In caso contrario, le variabili non si trovano in condizioni di parità. Stai essenzialmente ribaltando le scale a favore delle tue variabili continue (molto probabilmente). Quindi, se il tuo obiettivo principale è la selezione del modello, questo è un errore grave. Tuttavia, se sei più interessato all'interpretazione, forse questa non è la migliore idea.

La raccomandazione è a pagina 394:

Il metodo del lazo richiede la standardizzazione iniziale dei regressori, in modo che lo schema di penalizzazione sia equo per tutti i regressori. Per i regressori categorici, si codifica il regressore con variabili fittizie e quindi si standardizzano le variabili fittizie. Come sottolineato da un arbitro, tuttavia, il relativo ridimensionamento tra variabili continue e categoriche in questo schema può essere in qualche modo arbitrario.


3
potresti fornire un riferimento preciso a dove Tibshirani suggerisce di standardizzare i manichini.
seanv507,

@ seanv507 "... uno codifica i regressori con variabili fittizie e quindi standardizza le variabili fittizie ". Penso che la spiegazione dei rocrati sia corretta: in generale si desidera che tutti i predittori, compresi i manichini, abbiano la stessa scala e varianza affinché la penalizzazione sia giusta.
Robert Kubrick,

1
@RobertKubrick Non sono d'accordo. Il motivo fondamentale per la regolarizzazione è che piccoli cambiamenti dovrebbero avere piccoli effetti. Quindi il caso ideale è che tutte le tue variabili hanno una scala fisica naturale rispetto alla tua variabile dipendente e non le normalizzi. In genere non conosciamo la scala corretta, quindi ricorrere alla normalizzazione. Tuttavia le variabili categoriali hanno una scala così naturale, vale a dire la probabilità che siano 0 o 1: direi che una variabile che è per lo più 0, è meno importante di una variabile che passa tra 0/1. Invece la risposta di Jeff sembra appropriata.
seanv507,

8

Anche il post sul blog di Andrew Gelman, Quando standardizzare gli input di regressione e quando lasciarli soli , vale la pena dare un'occhiata. Questa parte in particolare è rilevante:

Per confrontare coefficienti per diversi predittori all'interno di un modello, la standardizzazione ottiene il cenno del capo. (Anche se non standardizzo gli input binari. Li codifico come 0/1, quindi standardizzo tutti gli altri input numerici dividendoli per due deviazioni standard, mettendoli quindi approssimativamente sulla stessa scala delle variabili 0/1.)


1
E quando dice "non standardizzare gli input binari" , sembra significare qualsiasi gruppo di variabili univoco, vale a dire dei manichini per variabili categoriali?
smci,

2
p(1-p)p=0.50.25

x -> x / 2σ

non importa, sembra essere tutto spiegato qui: stat.columbia.edu/~gelman/research/unpublished/…
Alex

3

Questo è più un commento, ma troppo lungo. Uno dei software più utilizzati per il lazo (e gli amici) è R's glmnet. Dalla pagina di aiuto, stampata da ?glmnet:

standardize: flag logico per la standardizzazione delle variabili x, prima di adattare la sequenza del modello. I coefficienti vengono sempre restituiti sulla scala originale. L'impostazione predefinita è 'standardize = TRUE'. Se le variabili sono già nelle stesse unità, potresti non voler standardizzare. Vedi i dettagli di seguito per la standardizzazione y con 'family = "gaussian"'.

X

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.