Processing math: 100%

22 votos

Regresión en p>n configuración: ¿cómo elegir el método de regularización (Lasso, PLS, PCR, ridge)?

Estoy tratando de ver si ir por regresión de cresta , LASSO , regresión de componentes principales (PCR), o Mínimos cuadrados parciales (PLS) en una situación en la que hay un gran número de variables / características ( p ) y menor número de muestras ( n<p ), y mi objetivo es la predicción.

Esto es lo que yo entiendo:

  1. Regresión Ridge reduce los coeficientes de regresión, pero utiliza todos los coeficientes sin hacerlos 0 .

  2. LASSO también reduce los coeficientes, pero también los hace 0 lo que significa que también puede hacer selección de variables.

  3. Regresión de componentes principales trunca los componentes de forma que p es inferior a n descartará pn componentes.

  4. Mínimos cuadrados parciales también construye un conjunto de combinaciones lineales de las entradas para la regresión, pero a diferencia de PCR utiliza y (además de X ) para reducir la dimensionalidad. La principal diferencia práctica entre la regresión PCR y la PLS es que la PCR suele necesitar más componentes que la PLS para lograr el mismo error de predicción ( ver aquí ).

Considere los siguientes datos ficticios (los datos reales con los que intento trabajar son similares):

#random population of 200 subjects with 1000 variables 

M <- matrix(rep(0,200*100),200,1000)
for (i in 1:200) {
set.seed(i)
  M[i,] <- ifelse(runif(1000)<0.5,-1,1)
}
rownames(M) <- 1:200

#random yvars 
set.seed(1234)
u <- rnorm(1000)
g <- as.vector(crossprod(t(M),u))
h2 <- 0.5 
set.seed(234)
y <- g + rnorm(200,mean=0,sd=sqrt((1-h2)/h2*var(g)))

myd <- data.frame(y=y, M)

Aplicación de cuatro métodos:

 require(glmnet)

 # LASSO 
 fit1=glmnet(M,y, family="gaussian", alpha=1)

 # Ridge   
 fit1=glmnet(M,y, family="gaussian", alpha=0)

 # PLS
 require(pls)
 fit3 <- plsr(y ~ ., ncomp = 198, data = myd, validation = "LOO")
 # taking 198 components and using leave-one-out cross validation 
 summary(fit3)
 plot(RMSEP(fit3), legendpos = "topright")

 # PCR 
 fit4 <- pcr(y ~ ., ncomp = 198, data = myd, validation = "LOO")

La mejor descripción de los datos es:

  1. p>n la mayoría de las veces p>10n ;

  2. Variables ( X y Y ) son correlacionado entre sí con diferentes grados.

Mi pregunta es ¿qué estrategia puede ser la mejor para esta situación? ¿Por qué?

42voto

liggett78 Puntos 8268

Creo que no hay una respuesta única a tu pregunta: depende de muchas situaciones, de los datos y de lo que intentes hacer. Algunas de las modificaciones pueden o deben modificarse para lograr el objetivo. Sin embargo, la siguiente discusión general puede ayudar.

Antes de pasar a los métodos más avanzados, hablemos primero del modelo básico: Regresión por mínimos cuadrados . Hay dos razones por las que una estimación por mínimos cuadrados de los parámetros del modelo completo no es satisfactoria:

  1. Calidad de predicción: Las estimaciones por mínimos cuadrados suelen tener un sesgo pequeño pero una varianza elevada. La calidad de la predicción puede mejorarse a veces reduciendo los coeficientes de regresión o fijando algunos coeficientes en cero. De este modo, el sesgo aumenta, pero la varianza de la predicción se reduce significativamente, lo que conduce a una mejora general de la predicción. Este tradeoff entre sesgo y varianza se puede ver fácilmente descomponiendo el error cuadrático medio (ECM). Un MSE menor conduce a una mejor predicción de los nuevos valores.

  2. Interpretabilidad : Si se dispone de muchas variables predictoras, tiene sentido identificar las que tienen mayor influencia y poner a cero las que no son relevantes para la predicción. Así, eliminamos las variables que sólo explicarán algunos detalles, pero mantenemos las que permiten explicar en mayor medida la variable de respuesta.

Así métodos de selección de variables entran en escena. Con la selección de variables sólo se utiliza un subconjunto de todas las variables de entrada, el resto se elimina del modelo. El mejor subconjunto de regresión encuentra el subconjunto de tamaño k para cada k{0,1,...,p} que da el menor RSS. Un algoritmo efficiente es el denominado Algoritmo Leaps and Bounds que puede gestionar hasta 30 o 40 variables regresoras. Con conjuntos de datos superiores a 40 variables de entrada una búsqueda a través de todos los subconjuntos posibles se vuelve inviable. Por lo tanto, Paso a paso hacia delante y la selección por pasos hacia atrás. Selección hacia atrás sólo puede utilizarse cuando n>p para tener un modelo bien definido. La eficiencia computacional de estos métodos es cuestionable cuando p es muy alto.

En muchas situaciones tenemos un gran número de entradas (como la suya), a menudo muy correlacionadas (como en su caso). En el caso de regresores altamente correlacionados, OLS conduce a un parámetros numéricamente inestables es decir, poco fiable β estimaciones. Para evitar este problema, utilizamos métodos que emplean direcciones de entrada derivadas. Estos métodos producen un pequeño número de combinaciones lineales zk,k=1,2,...,q de las entradas originales xj que luego se utilizan como entradas en la regresión.

Los métodos difieren en cómo se construyen las combinaciones lineales. Regresión de componentes principales (PCR) busca transformaciones de los datos originales en un nuevo conjunto de variables no correlacionadas llamado componentes principales .

Regresión por mínimos cuadrados parciales (PLS) - esta técnica también construye un conjunto de combinaciones lineales de las entradas para la regresión, pero a diferencia de la regresión de componentes principales utiliza y además de X para esta construcción. Suponemos que tanto y y X están centrados. En lugar de calcular los parámetros β en el modelo lineal, estimamos los parámetros γ en el llamado variable latente modo. Suponemos que los nuevos coefficientes γ son de dimensión qp . PLS realiza una regresión sobre una versión ponderada de X que contiene información incompleta o parcial. Dado que PLS también utiliza y para determinar las direcciones PLS, se supone que este método tiene un mejor rendimiento de predicción que, por ejemplo, la PCR. A diferencia de PCR, PLS busca direcciones con una varianza elevada y una gran correlación con y .

Métodos de contracción mantener todas las variables en el modelo y asignarles differentes ( continuo ) pesos. De este modo obtenemos un procedimiento más suave con una variabilidad menor. Regresión Ridge reduce los coeficientes imponiendo una penalización a su tamaño. Los coefficientes de cresta minimizan una suma de cuadrados residual penalizada. En este caso, λ0 es un parámetro de complejidad que controla la cantidad de contracción: cuanto mayor sea el valor de λ mayor será la cantidad de contracción. Los coefficientes se encogen hacia cero (y entre sí).

Al penalizar el RSS intentamos evitar que regresores altamente correlacionados se anulan entre sí. Un coefficient positivo especialmente grande β puede ser cancelado por un coefficient negativo igualmente grande. β . Imponiendo una restricción de tamaño a los coefficientes se puede evitar este fenómeno.

Se puede demostrar que La PCR es muy similar a la regresión de cresta ambos métodos utilizan los componentes principales de la matriz de entrada X . La regresión Ridge encoge los coefficientes de los componentes principales, el encogimiento depende de los valores propios correspondientes; la PCR descarta completamente los componentes a la menor pq valores propios.

En lazo es un método de contracción como ridge, pero en las restricciones se utiliza la norma L1 en lugar de la norma L2. Norma L1 también se conoce como Desviaciones mínimas absolutas (DMA) , errores mínimos absolutos (LAE). Se trata básicamente de minimizar la suma de las diferencias absolutas entre el valor objetivo y los valores estimados. Norma L2 también se conoce como error de mínimos cuadrados (LSE). Básicamente consiste en minimizar la suma del cuadrado de las diferencias entre el valor objetivo ( Yi ) y los valores estimados. La diferencia entre L1 y L2 es que L2 es la suma del cuadrado de los pesos, mientras que L1 es sólo la suma de los pesos. La norma L1 tiende a producir coeficientes dispersos y tiene selección de características incorporada. . La norma L1 no tiene solución analítica, pero la norma L2 sí. Esto permite calcular las soluciones de la norma L2 de forma computacionalmente eficiente. La norma L2 tiene soluciones únicas, mientras que la norma L1 no.

Lazo y cresta differ en su plazo de sanción. Las soluciones del lazo no son lineales y se utiliza un algoritmo de programación cuadrática para calcularlas. Debido a la naturaleza de la restricción, hacer s sufficientemente pequeño hará que algunos de los coefficientes sean exactamente 0 . Así, el lasso realiza una especie de selección continua de subconjuntos . Como el tamaño del subconjunto en la selección de subconjuntos o la penalización en la regresión de cresta, s debe elegirse de forma adaptada para minimizar una estimación del error de predicción esperado.

En pN La alta varianza y el sobreajuste son una preocupación importante en este contexto. Como resultado, los enfoques simples y altamente regularizados se convierten a menudo en los métodos de elección.

Análisis de componentes principales es un método eficaz para encontrar combinaciones lineales de características que presentan una gran variación en un conjunto de datos. Pero lo que buscamos aquí son combinaciones lineales con una alta varianza y una correlación significativa con el resultado. Por lo tanto, queremos fomentar el análisis de componentes principales para encontrar combinaciones lineales de características que tengan una alta correlación con el resultado. componentes principales supervisados (véase la página 678, Algoritmo 18.1, del libro Elementos de aprendizaje estadístico ).

Los mínimos cuadrados parciales reducen la ponderación de las características ruidosas, pero no las descartan; como resultado, un gran número de características ruidosas pueden contaminar las predicciones. El PLS con umbral puede considerarse una versión ruidosa de los componentes principales supervisados, por lo que no es de esperar que funcione tan bien en la práctica. Componentes principales supervisados puede producir errores de ensayo menores que Umbral PLS . Sin embargo, no siempre produce un modelo disperso que incluya sólo un pequeño número de características.

En cambio, el lazo produce un modelo disperso a partir de los datos. Ridge siempre puede realizar un promedio. Creo que lasso es una buena opción cuando hay un gran número p . El componente principal supervisado también puede funcionar bien.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X