Cómo tratar los predictores categóricos en LASSO

17

Estoy ejecutando un LASSO que tiene algunos predictores de variables categóricas y algunos continuos. Tengo una pregunta sobre las variables categóricas. El primer paso que entiendo es dividir cada uno de ellos en tontos, estandarizarlos para una penalización justa y luego retroceder. Surgen varias opciones para tratar las variables ficticias:

  1. Incluya todos los dummies menos uno para cada factor, dejando ese como nivel de referencia. La interpretación de un coeficiente ficticio es relativa a la categoría de "referencia" excluida. La intersección es ahora la respuesta media para la categoría de referencia.

  2. Agrupe las variables en cada factor para que estén excluidas o incluidas todas menos una. Creo que eso es lo que @Glen_b sugiere aquí :

    Normalmente, sí, mantienes todos tus factores juntos. Hay varios paquetes R que pueden hacer esto, incluido glmnet

  3. Incluya todos los niveles, como lo sugiere @ Andrew M aquí :

    También es posible que desee cambiar la función de contraste predeterminada, que por defecto omite un nivel de cada factor (codificación de tratamiento). Pero debido a la penalización del lazo, esto ya no es necesario para la identificabilidad, y de hecho hace que la interpretación de las variables seleccionadas sea más complicada. Para hacer esto, establezca

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

    Ahora, cualquiera que sea el nivel de un factor seleccionado, puede pensar que sugiere que estos niveles específicos son importantes, en comparación con todos los niveles omitidos. En el aprendizaje automático, he visto que esta codificación se conoce como codificación one-hot.

Preguntas:

  1. ¿Cuál es la interpretación de la intersección y los coeficientes bajo cada uno de estos enfoques?
  2. ¿Cuáles son las consideraciones involucradas en la selección de uno de ellos?
  3. ¿Desescalamos los coeficientes ficticios y luego los interpretamos como un cambio de ir de encendido a apagado?
Hatshepsut
fuente

Respuestas:

6

Cuando se trata de variables categóricas en la regresión LASSO, es habitual usar un LASSO agrupado que mantiene juntas las variables ficticias correspondientes a una variable categórica particular (es decir, no puede excluir solo algunas de las variables ficticias del modelo). Un método útil es el Grupo modificado LASSO (MGL) descrito en Choi, Park y Seo (2012) . En este método, la penalización es proporcional a la norma del vector para el conjunto de variables ficticias. Aún mantiene una categoría de referencia en este método, por lo que el término de intercepción todavía se incluye. Esto le permite lidiar con múltiples variables categóricas sin problemas de identificabilidad.β

En respuesta a sus preguntas específicas:

(1) LASSO es un método de estimación para los coeficientes, pero los coeficientes en sí están definidos por la ecuación del modelo inicial para su regresión. Como tal, la interpretación de los coeficientes es la misma que en una regresión lineal estándar; representan tasas de cambio de la respuesta esperada debido a cambios en las variables explicativas.

(2) La literatura anterior recomienda agrupar las variables, pero mantener una categoría de referencia. Esto supone implícitamente que está comparando la presencia de una variable categórica con un modelo que la elimina pero que aún tiene un término de intercepción.

(3) Como se indicó anteriormente, el método de estimación no afecta la interpretación de los coeficientes, que se establecen mediante la declaración del modelo.

Reinstalar a Mónica
fuente
1
Hatshepsut: Si encontró útil esta respuesta, considere la posibilidad de votar y / o aceptarla . Si no, ¿tal vez podría indicar lo que aún falta?
S. Kolassa - Restablece a Mónica el
@StephanKolassa hecho
Hatshepsut