12. Multicolinealidad, selección de variables y validación¶
Medir bien la grasa corporal es una molestia. La forma precisa es pesar a una persona bajo el
agua y calcular su densidad, lo que requiere un tanque, un técnico y un sujeto cooperativo. La
forma barata es una cinta métrica. Así surge una pregunta natural: ¿pueden un puñado de medidas
con cinta (cintura, pecho, muslo, muñeca y las demás) predecir el porcentaje de grasa corporal
que da el pesaje bajo el agua? Un estudio de 1985 registró ambas cosas para 252 hombres, y ese
conjunto de datos, fat.csv, es con el que este capítulo trabaja de principio a fin. (Este es el
estudio mayor de 252 hombres con trece medidas, no la tabla de grasa corporal de veinte hombres y
tres medidas que conociste para las sumas de cuadrados extra en 8.5 Gráficos de variable agregada; ambos comparten
una columna “thigh” pero son datos distintos.)
Hay un plan obvio: hacer la regresión de la grasa corporal sobre las trece medidas y leer los coeficientes. Cuando lo haces, el modelo explica cerca del 75 por ciento de la variación, lo que suena a éxito. Luego miras los coeficientes y algo anda mal. El coeficiente del peso es negativo, como si los hombres más pesados tuvieran menos grasa una vez que fijas las demás medidas. Varios predictores que todos saben que importan salen estadísticamente no significativos. Quita una medida y las otras se tambalean. El problema es que las medidas de cinta miden todas más o menos lo mismo, el tamaño del cuerpo, así que están enredadas entre sí. Figure 1 muestra justo cuán enredadas.

Figure 1:Las medidas de perímetro están fuertemente correlacionadas entre sí (peso y cadera correlacionan 0.94, pecho y abdomen 0.92). Predictores tan redundantes llevan casi la misma información, y eso es lo que hace que sus coeficientes individuales sean difíciles de precisar.
Este capítulo trata de convivir con demasiados predictores, la mayoría redundantes. Tres preguntas lo organizan. Primera, ¿cómo diagnosticamos y describimos el daño que causan los predictores correlacionados, usando el factor de inflación de la varianza? Segunda, cuando hay varios modelos sobre la mesa, ¿cómo elegimos, usando criterios como el de Mallows y la validación cruzada que premian la predicción y no el mero ajuste? Tercera, ¿qué herramientas modernas (el lasso y la regresión ridge) esquivan todo el problema de selección encogiendo los coeficientes en lugar de eliminarlos? Por el camino conocerás la advertencia más importante de la estadística aplicada: un modelo elegido para ajustar tus datos siempre se verá mejor en esos datos de lo que merece.
12.1 La multicolinealidad y el factor de inflación de la varianza¶
Intuición¶
Los capítulos 7 y 8 construyeron una regresión múltiple y leyeron cada coeficiente como una pendiente parcial, el efecto de un predictor con los demás fijos (8.5 Gráficos de variable agregada). Esa lectura suponía calladamente que los predictores llevaban información separada. La viñeta mostró el daño cuando no es así; ahora nombramos la causa, la multicolinealidad (Definición 12.1).
Un poco de ella es inofensiva y normal. Mucha es un problema, porque el modelo no puede distinguir entre los predictores correlacionados. Imagina dos predictores que se mueven casi al unísono, como el peso y el perímetro de la cadera. Los datos muestran qué le pasa a la grasa corporal cuando ambos suben juntos, pero casi no muestran nada sobre qué pasa cuando uno sube y el otro se queda fijo, porque esa combinación apenas ocurre. Así que el modelo no tiene una base firme para repartir el efecto compartido entre ellos. Puede darle al peso un coeficiente positivo grande y a la cadera uno negativo grande, o al revés, y ajustar los datos más o menos igual de bien en cualquier caso. Figure 2 dibuja la escena.

Figure 2:Cuando los predictores son independientes (izquierda) los datos fijan cada coeficiente. Cuando son colineales (derecha) solo su suma está bien medida; el reparto en coeficientes separados es casi libre de moverse, y por eso los coeficientes colineales tienen errores estándar enormes.
El factor de inflación de la varianza (Definición 12.2) mide exactamente cuánto se infla la varianza.
El modelo completo, y por qué se portan mal sus coeficientes¶
Ajusta primero el modelo completo, para que los síntomas sean concretos. La respuesta es
brozek, el porcentaje de grasa corporal por la fórmula de Brozek, y los trece predictores son
las medidas de cinta y báscula. Recuerda de 4.2 La correlación y la pendiente de regresión que para un solo predictor,
es simplemente la correlación al cuadrado; con muchos predictores sigue subiendo a
medida que agregas columnas, ayuden o no, así que un alto por sí solo no prueba nada.
Viste una versión pequeña de esto en 8.5 Gráficos de variable agregada, donde una tabla de grasa corporal de veinte hombres tenía una medida de tríceps y una de muslo tan correlacionadas que sus coeficientes se volvieron inestables. Aquí aparece la misma enfermedad a plena escala, con trece predictores enredados en vez de dos. Un vistazo rápido a las correlaciones entre las medidas de tamaño confirma el diagnóstico.
round(cor(fat[, c("weight", "chest", "abdom", "hip", "thigh")]), 3) weight chest abdom hip thigh
weight 1.000 0.894 0.888 0.941 0.869
chest 0.894 1.000 0.916 0.829 0.730
abdom 0.888 0.916 1.000 0.874 0.767
hip 0.941 0.829 0.874 1.000 0.896
thigh 0.869 0.730 0.767 0.896 1.000print(fat[["weight", "chest", "abdom", "hip", "thigh"]].corr().round(3)) weight chest abdom hip thigh
weight 1.000 0.894 0.888 0.941 0.869
chest 0.894 1.000 0.916 0.829 0.730
abdom 0.888 0.916 1.000 0.874 0.767
hip 0.941 0.829 0.874 1.000 0.896
thigh 0.869 0.730 0.767 0.896 1.000Cada par correlaciona por encima de 0.7, y el peso con la cadera llega a 0.941. Estas columnas son casi duplicados unas de otras.
Fórmula¶
En palabras: haz la regresión del predictor sobre los predictores restantes, ve qué tan bien lo predicen, y es uno sobre la fracción que sobra. Si no se relaciona con los demás, y . Si los demás explican el 90 por ciento de él, y . Una regla práctica común señala (equivalentemente ) como grave, aunque el corte es una convención, no una ley.
Vale la pena mirar la forma de esa fórmula, porque explica por qué un poco de colinealidad es inofensiva y mucha es un desastre. Figure 3 grafica el VIF contra . La curva es casi plana mientras un predictor es en su mayoría propio, luego se dobla bruscamente hacia arriba a medida que los demás se acercan a reproducirlo. El peso, del cual las otras doce medidas explican el 97 por ciento, se sitúa muy arriba en la parte empinada.

Figure 3:Como el VIF es uno sobre la fracción que sobra , apenas se mueve mientras un predictor conserva la mayor parte de su propia información, luego explota una vez que los demás predictores casi lo reproducen. Esa pendiente pronunciada es la razón por la que el peso, explicado en un 97 por ciento por el resto, aterriza hasta arriba en VIF 33.5.
El nombre es literal. El VIF es el factor por el cual se multiplica la varianza de , en comparación con la varianza que tendría si no estuviera correlacionado con los demás predictores:
En palabras: la varianza de un coeficiente es el usual (pequeño cuando el predictor está muy disperso) por el factor de inflación. La colinealidad entra solo a través de ese último factor.
Deducción (el VIF a partir de la regresión auxiliar)¶
Demostración. Fija un predictor . Por la construcción de variable agregada de 8.5 Gráficos de variable agregada, el coeficiente de mínimos cuadrados es igual a la pendiente de una regresión simple de sobre la parte de que los demás predictores no explican. Haz concreta esa parte: ejecuta la regresión auxiliar de sobre todos los demás predictores, y llama a sus residuos . Estos residuos son con la información de los demás predictores removida.
El resultado de variable agregada dice que , una pendiente de regresión simple con los como predictor. De 2.5 Comportamiento muestral y el teorema de Gauss-Markov, una pendiente de regresión simple con pesos tiene varianza . Así que
Ahora identifica el denominador. La regresión auxiliar tiene suma total de cuadrados y suma de cuadrados del error . Por la definición de aplicada a esa regresión auxiliar,
Sustituye:
El primer factor es lo que sería la varianza si estuviera libre de los demás (). El segundo factor es el precio de la colinealidad. Cuando los demás predictores casi reproducen , y la varianza explota.
R y Python¶
El paquete car de R calcula todos los VIF a la vez. La fórmula de arriba te permite comprobar
cualquiera de ellos a mano a partir de una sola regresión auxiliar.

Figure 4:Factores de inflación de la varianza, ordenados. El peso, la cadera y el abdomen superan la línea de advertencia habitual de VIF = 10, así que sus coeficientes individuales son los menos confiables del modelo.
Remedios¶
Hay cuatro respuestas honestas a los VIF altos. Primera, no hacer nada, si solo te importa la predicción dentro del rango de los datos: la colinealidad no sesga ni ensancha mucho su intervalo, así que un modelo predictivo puede llevar predictores redundantes sin peligro. Segunda, quitar predictores: si el peso, la cadera y el abdomen dicen casi lo mismo, conserva el que puedas medir mejor y descarta el resto. Tercera, combinarlos en un solo índice (un promedio, o una componente principal) que capture la señal de tamaño compartida. Cuarta, encoger los coeficientes con regresión ridge (Sección 12.5), que tolera la colinealidad por diseño. Lo que no debes hacer es leer un coeficiente colineal como un efecto causal real y actuar según su signo.
Leer sobre varianza inflada es una cosa; aquí está la misma enfermedad con una perilla, para que decidas por ti mismo cuánta correlación es demasiada.
Qué notar: al subir la correlación, el EE(b1) y el VIF se disparan juntos mientras la SCE del ajuste no se mueve en absoluto, porque los datos todavía fijan la suma de los dos efectos y no el reparto. Prueba a poner la correlación en 0.99 y luego nombrar un valor de b1 que los datos puedan descartar. La fórmula detrás de las dos curvas es la Definición 12.2 en 12.1 La multicolinealidad y el factor de inflación de la varianza.
12.2 Elegir entre modelos: criterios de selección¶
Intuición¶
El modelo completo tiene predictores redundantes; un modelo más pequeño podría predecir igual de bien y ser más fácil de confiar. ¿Pero cuál modelo más pequeño? Con trece predictores hay subconjuntos posibles. Necesitamos una puntuación que los clasifique. La puntuación obvia, , es inútil para esto, porque nunca disminuye cuando agregas un predictor: el modelo más grande siempre gana, incluso si los predictores agregados son ruido. Recuerda de 4.2 La correlación y la pendiente de regresión que es la correlación al cuadrado, una medida de ajuste, no de predicción. Un buen criterio de selección debe premiar el ajuste cobrando a la vez una penalización por cada parámetro extra, de modo que un predictor gane su lugar solo si se paga a sí mismo.
Cuatro criterios hacen esto, cada uno en su propia moneda. El ajustado descuenta por los grados de libertad gastados. El de Mallows estima el error total de predicción y lo compara con el número de parámetros. AIC y BIC intercambian bondad de ajuste contra una penalización por tamaño de la teoría de la información. PRESS predice cada caso a partir de un modelo ajustado sin él. Suelen coincidir en el mensaje general (quita el peso muerto) mientras discrepan en el tamaño exacto, lo cual es en sí una lección: no hay un único modelo correcto.
Fórmula¶
Sea un modelo candidato con parámetros (predictores más intercepto), suma de cuadrados del error , y . Sea el cuadrado medio del error del modelo más grande (completo), nuestra mejor estimación de la varianza del ruido . Los cuatro criterios son
( ajustado): como pero con y divididos por sus grados de libertad. Agregar un predictor inútil lo baja. Más grande es mejor.
(Mallows): más pequeño es mejor; un modelo sin sesgo tiene , así que buscas modelos con bajo que también se sitúen cerca de la línea .
, : término de ajuste más penalización; más pequeño es mejor. La penalización de BIC es más pesada que la de AIC siempre que , así que BIC prefiere modelos más pequeños.
Esa última afirmación es fácil de ver en una imagen. Figure 6 dibuja las dos penalizaciones por tamaño como líneas rectas. Con hombres, BIC cobra alrededor de por cada parámetro extra mientras que AIC cobra solo 2, así que la línea de BIC sube casi tres veces más empinada. Un predictor tiene que mejorar el ajuste más para pagar su peaje BIC más pesado, que es exactamente por qué BIC aterriza en modelos más pequeños.

Figure 6:Ambos criterios cobran por el tamaño, pero con el BIC cobra alrededor de 5.5 por parámetro extra frente al 2 constante de AIC. La línea más empinada significa que cada predictor debe mejorar más el ajuste para ganar su lugar, así que BIC se decide por modelos más austeros.
El quinto criterio, PRESS, recibe su propia subsección porque mide algo distinto: el error honesto fuera de la muestra.
donde es la predicción para el caso del modelo reajustado con el caso removido. En palabras: oculta cada observación, predícela a partir del resto, y suma los fallos al cuadrado. Más pequeño es mejor, y a diferencia de , PRESS no puede reducirse solo agregando predictores, porque un predictor basura ayuda al ajuste pero perjudica la predicción del caso dejado fuera.
Deducción (el de Mallows)¶
Demostración. Queremos un criterio que sea pequeño cuando los valores ajustados de un modelo estén cerca de las medias verdaderas , a través de los casos. Define el objetivo
el error cuadrático medio total de los valores ajustados, estandarizado por . Divide cada término en varianza y sesgo al cuadrado con la identidad aplicada a :
Para el término de varianza, los valores ajustados son con la matriz sombrero del modelo candidato, y , usando de 7.3 La matriz sombrero. Así que
Ahora conecta con algo que podamos calcular, la suma de cuadrados del error esperada. Escribe y . Entonces
porque tiene -ésima entrada así que su longitud al cuadrado es , y es idempotente con traza (de nuevo 7.3 La matriz sombrero). Despeja el sesgo: . Sustituye en :
Reemplaza el desconocido por el observado y el desconocido por el del modelo completo, y tienes el estadístico de Mallows:
Salen dos consecuencias. Si el modelo candidato no tiene sesgo (, es decir, contiene todos los predictores que importan), entonces y . Así que los modelos sin sesgo tienen : buscas modelos donde sea a la vez pequeño y cercano a . Un modelo que omite un predictor importante tiene , lo que empuja bien por encima de .
R y Python¶
El paquete leaps de R busca los 213 subconjuntos e informa el mejor modelo de cada tamaño.

Figure 7:El de Mallows para el mejor subconjunto de cada tamaño. Cae hacia la línea punteada y alcanza su mínimo en ocho predictores, el tamaño que prefiere el criterio. Más allá de eso, agregar predictores eleva .

Figure 8:Dos criterios, dos respuestas. El ajustado alcanza su pico en ocho predictores mientras que BIC, que penaliza el tamaño más fuertemente, prefiere cuatro. Ninguno se equivoca; el informe honesto es un rango de modelos defendibles, no un único ganador.
Deducir y comprobar PRESS¶
PRESS parece caro: reajustar el modelo veces, una por cada caso eliminado, son 252 ajustes por modelo aquí. Una identidad hermosa lo hace gratis. Puedes obtener cada predicción eliminada a partir de un solo ajuste con todos los datos, usando el residuo ordinario y el valor de apalancamiento.
Demostración. Escribe la matriz de diseño con -ésima fila , la estimación con todos los datos , el valor ajustado , el residuo , y el valor de apalancamiento de 7.3 La matriz sombrero (la diagonal de la matriz sombrero). Sea la estimación a partir de los datos con el caso removido, y la predicción eliminada. Mostramos
Eliminar el caso cambia la matriz de productos cruzados y el vector a y . La identidad de actualización del inverso de Sherman-Morrison (deducida y comprobada en 9.3 Influencia: qué puntos cambian realmente el ajuste) da
Escribe , de modo que y . Multiplica el inverso actualizado por :
donde el numerador colapsó a . Ahora forma la predicción eliminada:
Así que cada residuo eliminado es simplemente el residuo ordinario dividido por , y
Los puntos de alto apalancamiento (grande ) ven sus residuos magnificados, lo cual es correcto: esos son los casos sobre los que el modelo se apoya, y los predice peor cuando se remueven.
Antes de aceptar el veredicto de un solo criterio, recorre tú mismo la escalera completa de tamaños de modelo y observa cómo las cuatro puntuaciones tiran en direcciones distintas.
Qué notar: el sube en cada paso, así que siempre te entregaría el modelo completo, mientras que el ajustado y el dan la vuelta en ocho predictores y el BIC la da en cuatro. Prueba a detenerte donde cada criterio te dice que pares, y lee cuánto cede cada punto de parada. Las cuatro fórmulas están en 12.2 Elegir entre modelos: criterios de selección.
12.3 Los peligros de la selección automática¶
Intuición¶
Es tentador automatizar la búsqueda: dejar que la computadora agregue y quite predictores por sus valores hasta que nada mejore. Esto es la selección paso a paso (Definición 12.7), y está disponible en una línea en todo paquete estadístico. También es la fuente de más mala ciencia que casi cualquier otro procedimiento rutinario, y deberías entender exactamente por qué antes de usarla.
Dos cosas salen mal. La primera es el sobreajuste (Definición 12.8): un procedimiento que persigue el mejor ajuste en tu muestra se aferrará a accidentes de esa muestra, patrones que son ruido y no se repetirán. La segunda, más sutil y peor, es la inferencia posterior a la selección (Definición 12.9): una vez que has elegido un modelo porque ajustó bien, los valores , los intervalos de confianza y las pruebas que el software imprime para ese modelo están mal. Se dedujeron suponiendo que el modelo estaba fijo de antemano, antes de mirar los datos. Elegir el modelo mirando los datos rompe esa suposición, y la significancia reportada se vuelve ficción.
Una demostración con puro ruido¶
La forma más limpia de ver el desastre es ejecutar la selección sobre datos sin señal alguna. Toma una respuesta y cuarenta predictores que sean todos ruido aleatorio independiente, sin relación con la respuesta ni entre sí. Una prueba honesta casi nunca debería encontrar nada. La selección encuentra bastante.
set.seed(4210)
noise <- data.frame(y = rnorm(100), matrix(rnorm(100 * 40), 100, 40))
names(noise)[-1] <- paste0("x", 1:40)
pvals <- sapply(1:40, function(j)
summary(lm(noise$y ~ noise[[paste0("x", j)]]))$coefficients[2, 4])
best5 <- order(pvals)[1:5]
selected <- lm(y ~ ., data = noise[, c("y", paste0("x", best5))])
fstat <- summary(selected)$fstatistic
c(R2 = summary(selected)$r.squared,
overall_F_pvalue = as.numeric(pf(fstat[1], fstat[2], fstat[3], lower.tail = FALSE))) R2 overall_F_pvalue
0.13497399 0.01663716Elegimos los cinco predictores con los valores individuales más pequeños de cuarenta columnas de puro ruido, ajustamos un modelo solo sobre esos cinco, y obtuvimos un valor de la prueba general de 0.017. Por la regla habitual, ese modelo es “significativo al nivel 0.05”, y su se ve respetable. Todo ello es una ilusión: no hay relación alguna en los datos. El paso de selección fabricó la significancia escogiendo a dedo, y la prueba , ciega al escogido a dedo, la reportó como real.
Esto no es una casualidad única de la semilla. Figure 10 repite todo el experimento 2000 veces. Bajo una prueba honesta el valor de la prueba general debería ser uniforme en , así que solo el 5 por ciento debería caer por debajo de 0.05. Tras la selección, el 94 por ciento lo hace.

Figure 10:Seleccionando los cinco mejores de cuarenta predictores de puro ruido, 2000 veces. Una prueba honesta daría un histograma plano con el 5 por ciento por debajo de 0.05; en cambio el 94 por ciento de los modelos seleccionados se ven significativos. Los valores p impresos tras la selección no son confiables.
Qué hacer en su lugar¶
Nada de esto significa que la selección de variables esté prohibida. Significa tres cosas. Primera, prefiere los métodos basados en criterios de la Sección 12.2 (compara modelos completos por , BIC, o error validado cruzadamente) sobre la búsqueda paso a paso guiada por valores , e informa que buscaste. Segunda, nunca cites los valores de un modelo seleccionado como si el modelo hubiera estado fijo de antemano; recuerda de 8.4 La prueba lineal general que la distribución de la prueba supone que la comparación se eligió antes de ver los datos. Tercera, y más confiable de todo, juzga el modelo final con datos con los que no fue elegido. Eso es validación, el tema de la siguiente sección, y es el único árbitro honesto para un modelo que construiste buscando.
12.4 Validación: entrenar, probar y validar cruzadamente¶
Intuición¶
Los residuos de un modelo ajustado te dicen qué tan bien ajusta los datos sobre los que fue construido, lo cual siempre es halagador. Para saber qué tan bien predice un modelo, debes probarlo con datos que nunca ha visto. La idea hace eco del pensamiento fuera de la muestra detrás del bootstrap en 5.4 El bootstrap para la regresión y de los intervalos de predicción de 3.5 Intervalo de predicción para una observación nueva: las estimaciones honestas del error vienen de tratar algunos datos como genuinamente nuevos.
La versión más simple divide los datos una vez: un conjunto de entrenamiento (Definición 12.10) para ajustar el modelo, y un conjunto de prueba, apartado, para medir su error. La división debe hacerse antes de todo modelado, y el conjunto de prueba nunca debe influir en una sola decisión. Una versión más eficiente, la validación cruzada de particiones (Definición 12.11), divide los datos en particiones iguales, luego rota: cada partición toma su turno como conjunto de prueba mientras las otras particiones entrenan el modelo. Promediar los errores de prueba usa cada caso para probar exactamente una vez, así que no desperdicia datos. Figure 11 muestra la rotación.

Figure 11:Validación cruzada de cinco particiones. Los datos se dividen en cinco particiones; cada ronda aparta una partición para probar (naranja) y entrena con las otras cuatro (azul). Cada caso se prueba exactamente una vez, y los cinco errores de prueba se promedian.
Medimos el error con la raíz del error cuadrático medio (Definición 12.12), el tamaño típico de un fallo de predicción, en las unidades de la respuesta (puntos porcentuales de grasa corporal). Una más pequeña significa que el modelo está más cerca, en promedio, de la verdad para un hombre nuevo.
La división única entrenamiento/prueba¶
Divide los 252 hombres con una semilla fija para que el análisis se reproduzca, ajusta sobre el conjunto de entrenamiento, y compara el error de entrenamiento con el error de prueba.
Validación cruzada de particiones, escrita a mano¶
Una sola división es ruidosa: un conjunto de prueba afortunado o desafortunado puede engañar. La validación cruzada promedia sobre divisiones. Vale la pena escribir el bucle tú mismo una vez, para que el mecanismo no guarde misterio. Asigna a cada caso un número de partición, luego haz el bucle: entrena con las otras particiones, predice la partición apartada, recolecta los errores al cuadrado.

Figure 12:El error de entrenamiento (azul) siempre cae a medida que se agregan predictores. El error validado cruzadamente (naranja), la medida honesta, cae, se aplana y luego sube: pasado cierto punto, los predictores extra compran ajuste en esta muestra pero no exactitud en hombres nuevos. La brecha entre las curvas es el sobreajuste hecho visible.
El Ejemplo 12.5 reportó la RMSE de prueba de una sola división. Este widget repite esa división mil veces, para que veas todas las demás respuestas que igual de fácil te pudo haber dado.
Qué notar: unos solos sesenta y tres hombres apartados pueden puntuar este mismo modelo entre unos 3.0 y 4.9, una dispersión de casi dos puntos porcentuales de grasa corporal. Prueba cinco divisiones individuales, luego mil, y observa cómo la media se asienta en el valor de dejar uno fuera que el conjunto completo ya conocía. Las definiciones de entrenamiento, prueba y validación cruzada están en 12.4 Validación: entrenar, probar y validar cruzadamente.
12.5 Un vistazo a la contracción: ridge y lasso¶
Intuición¶
La selección es un instrumento tosco: un predictor está o dentro (coeficiente completo) o fuera (cero). La contracción (Definición 12.13) ofrece una alternativa más suave. En vez de eliminar predictores, los conserva todos pero jala sus coeficientes hacia cero, cambiando un poco de sesgo por una gran caída de varianza. Cuando los predictores son colineales, los mínimos cuadrados ordinarios pueden producir coeficientes enormes que se cancelan entre sí (el peso negativo del Ejemplo 12.1). La contracción se niega a dejar que los coeficientes crezcan tanto, lo que los estabiliza.

Figure 14:El equilibrio sesgo-varianza. A medida que un modelo se vuelve más flexible, el sesgo cae pero la varianza sube, y el error de predicción esperado es su suma: una U con un punto óptimo. La selección y la contracción son ambas formas de apuntar a ese punto óptimo en vez del extremo de bajo sesgo y alta varianza.
Fórmula¶
Los mínimos cuadrados ordinarios minimizan la suma de residuos al cuadrado. Ridge (Definición 12.14) y lasso (Definición 12.15) agregan una penalización sobre el tamaño de los coeficientes.
El primer término es la pérdida usual de mínimos cuadrados; quiere un buen ajuste.
El segundo término es la penalización; quiere coeficientes pequeños. La suma corre sobre los coeficientes de pendiente (no el intercepto), y los predictores se estandarizan primero para que la penalización los trate de forma justa.
es el parámetro de ajuste que fija la fuerza de la penalización. En ambos se reducen a mínimos cuadrados; a medida que todos los coeficientes son aplastados a cero. Elegimos por validación cruzada.
Ridge usa la penalización al cuadrado (, la norma ); lasso usa la penalización de valor absoluto (, la norma ). La diferencia suena menor y no lo es. Ridge encoge cada coeficiente hacia cero pero rara vez exactamente a cero. Lasso puede fijar coeficientes exactamente a cero, así que hace selección de variables y contracción a la vez. La razón es geométrica, mostrada en Figure 15: la región de restricción del lasso es un rombo con esquinas sobre los ejes, y el contorno de mejor ajuste tiende a tocar una esquina, donde un coeficiente es cero. La región de restricción de ridge es un disco suave sin esquinas.

Figure 15:Por qué el lasso pone coeficientes en cero y ridge no. La solución está donde un contorno de pérdida creciente toca primero la región de restricción. El rombo del lasso tiene esquinas sobre los ejes, así que los contornos a menudo lo tocan en una esquina (un coeficiente fijado en cero); el disco suave de ridge no tiene esquinas, así que solo encoge.
R y Python¶
El paquete de R glmnet es la herramienta estándar. Su cv.glmnet ajusta toda la trayectoria de
valores de y elige uno por validación cruzada, devolviendo lambda.min (el minimizador
del error) y lambda.1se (el mayor dentro de un error estándar del mínimo, una elección
deliberadamente más dispersa). Los predictores se estandarizan automáticamente.

Figure 16:Trayectorias de coeficientes del lasso. A medida que la penalización crece (moviéndose a la derecha), los coeficientes se jalan exactamente a cero uno tras otro, así que el lasso realiza una selección de variables continua. El abdomen y la muñeca son los últimos en sobrevivir.
El resumen sencillo de la contracción¶
Ridge y lasso responden a los problemas de colinealidad y selección en un solo movimiento. Ridge conserva cada predictor pero encoge los coeficientes de modo que dos predictores colineales no puedan estallar uno contra otro; es la herramienta natural cuando crees que muchos predictores contribuyen cada uno un poco. Lasso encoge y selecciona a la vez, poniendo en cero los coeficientes que no necesita, así que es la herramienta natural cuando crees que solo unos pocos predictores importan y quieres que el modelo los encuentre. Ambos reemplazan la pregunta discreta e inestable “¿cuáles predictores están dentro?” con un dial suave y ajustable , fijado por validación cruzada. Por eso la contracción, no la selección paso a paso, es el estándar moderno cuando el objetivo es predecir.
12.6 Resumen del capítulo¶
Ahora puedes manejar una regresión con más predictores de los que puedes confiar. Diagnosticaste la multicolinealidad con el factor de inflación de la varianza y lo dedujiste de una regresión auxiliar; comparaste modelos candidatos con ajustado, de Mallows, AIC, BIC y PRESS, deduciendo y demostrando el atajo del residuo eliminado que hace gratis el dejar uno fuera; viste, en una demostración de puro ruido, por qué la selección paso a paso sobreajusta y por qué los valores posteriores a la selección mienten; escribiste un bucle de validación cruzada de particiones a mano y usaste un conjunto de prueba apartado para juzgar un modelo honestamente; y describiste y ejecutaste ridge y lasso, leyendo la contracción como un intercambio sesgo-varianza hecho por una penalización ajustable. En los datos de grasa corporal el candidato de ocho predictores venció al modelo completo en cada medida honesta: menor , menor PRESS, y menor error validado cruzadamente.
Figure 17 pone todo el capítulo en una sola página: diagnostica la redundancia, deja que tu objetivo decida el remedio, elige un modelo por una puntuación con mentalidad de predicción, y confirma al ganador con datos que nunca vio.

Figure 17:El capítulo en una imagen. Diagnostica la redundancia, deja que tu objetivo (predecir frente a interpretar) elija el remedio, elige el modelo por una puntuación con mentalidad de predicción, y confírmalo con datos que nunca vio.
Resultados clave de un vistazo
| Resultado | Enunciado o fórmula | Válido cuando |
|---|---|---|
| Varianza del coeficiente (Teorema 12.4) | modelo lineal general, errores no correlacionados de igual varianza | |
| Factor de inflación de la varianza (Definición 12.2) | , con el auxiliar | cualquier regresión múltiple |
| ajustado | ; más grande es mejor | comparar modelos de distinto tamaño |
| de Mallows (Teorema 12.5) | ; un modelo sin sesgo tiene | de un modelo completo casi sin sesgo |
| AIC / BIC | ; más pequeño es mejor | comparados dentro de un programa |
| Atajo de PRESS (Teorema 12.6) | ajuste lineal por mínimos cuadrados | |
| CV RMSE | ; más pequeño es mejor | particiones disjuntas, probadas una vez cada una |
| Ridge / lasso | $\min \mathrm{RSS} + \lambda\sum {\beta_k^2,\ | \beta_k |
Términos clave. Multicolinealidad, factor de inflación de la varianza, regresión auxiliar, ajustado, de Mallows, AIC, BIC, PRESS, residuo eliminado, selección paso a paso, sobreajuste, inferencia posterior a la selección, conjuntos de entrenamiento y de prueba, validación cruzada de particiones, raíz del error cuadrático medio, equilibrio sesgo-varianza, contracción, regresión ridge, lasso, parámetro de ajuste .
Ahora deberías ser capaz de
Diagnosticar la multicolinealidad con el VIF y deducirlo de una regresión auxiliar (Teorema 12.4).
Explicar qué daña y qué no daña la multicolinealidad, y enumerar los remedios estándar.
Calcular y comparar ajustado, de Mallows, AIC, BIC y PRESS.
Deducir el de Mallows (Teorema 12.5) y demostrar el atajo del residuo eliminado de PRESS (Teorema 12.6).
Explicar, sin rodeos, por qué la selección paso a paso y la inferencia posterior a la selección engañan.
Implementar validación cruzada de particiones a mano en R y Python.
Describir la contracción de ridge y lasso y demostrarlas en los datos de grasa corporal.
Dónde encaja esto. Este capítulo son las etapas AJUSTAR y COMPROBAR de El flujo de trabajo del modelado hechas juntas y repetidamente: ajustas muchos modelos, compruebas cada uno por colinealidad y error de predicción, e iteras hacia uno que puedas defender. Los capítulos 8 a 11 te dieron una sola regresión múltiple y las herramientas para interpretarla y diagnosticarla; este capítulo enfrentó la situación más difícil de muchos modelos competidores y te enseñó a elegir entre ellos por la predicción en vez del ajuste. La mentalidad de validación pasa directo a 13. Regresión logística, donde el mismo pensamiento de datos apartados se vuelve las métricas de clasificación (exactitud, ROC) que juzgan un modelo logístico, y las ideas de contracción y de criterios reaparecen dondequiera que un modelo tenga más parámetros de los que los datos pueden sostener cómodamente.
12.7 Preguntas frecuentes¶
P1. ¿La multicolinealidad sesga mis coeficientes? No. Los mínimos cuadrados siguen siendo insesgados bajo colinealidad: en promedio los coeficientes siguen siendo correctos. Lo que la colinealidad hace es inflar su varianza, así que las estimaciones de cualquier muestra individual pueden estar tremendamente desviadas, con signos cambiados y errores estándar enormes. El promedio está bien; la estimación individual no es confiable.
P2. Si la colinealidad no perjudica la predicción, ¿por qué preocuparse por ella? Depende de tu objetivo. Si solo quieres predecir la grasa corporal para hombres como los de los datos, un modelo colineal predice bien y puedes ignorar los VIF. Si quieres interpretar los coeficientes (para decir cuál medida importa y por cuánto), la colinealidad vuelve esos coeficientes sin sentido, y debes arreglarla quitando, combinando o encogiendo predictores.
P3. ¿Qué criterio de selección debo usar? Para interpretación, BIC y su penalización más pesada te dan un modelo austero y defendible. Para predicción, el error validado cruzadamente es la respuesta más directa, y el de Mallows es un sustituto rápido y bien motivado. No agonices por diferencias pequeñas: informa que los criterios apuntaron a un rango de modelos (aquí, de cuatro a ocho predictores) y elige dentro de ese rango por una razón que puedas enunciar.
P4. ¿Por qué el del modelo completo siempre es igual al número de sus parámetros? Por construcción. , y para el modelo completo , así que y $C_p = (n - p_{\text{full}})
(n - 2p_{\text{full}}) = p_{\text{full}}C_pC_p = p$.
P5. ¿Un PRESS más bajo siempre es mejor? Como comparación de modelos sobre los mismos datos, sí: un PRESS más bajo significa mejor predicción dejando uno fuera. Pero PRESS sigue siendo una estimación dentro de la muestra en el sentido de que usa los mismos 252 hombres para construir y para probar (solo que nunca el mismo hombre para ambos a la vez), así que puede ser optimista si todo el conjunto de datos es inusual. Un conjunto de prueba realmente apartado, o validación cruzada de particiones repetida con semillas distintas, es una comprobación más fuerte.
P6. ¿Puedo simplemente confiar en el modelo que devuelve la función step() de mi software? No.
La selección paso a paso sobreajusta y sus valores reportados son inválidos (Sección 12.3). Si
la usas, trata su salida como un candidato a validar con datos apartados, nunca como un modelo
terminado, y nunca cites la significancia de sus coeficientes como si el modelo se hubiera elegido
de antemano.
P7. El lasso y el paso a paso ambos quitan predictores. ¿Cuál es la diferencia? El paso a paso toma decisiones duras e inestables de dentro o fuera por valor y reporta inferencia deshonesta. El lasso toma la decisión de forma continua a través de una sola penalización elegida por validación cruzada, encogiendo los coeficientes suavemente y apagándolos solo a medida que crece la penalización. El lasso es más estable, tiene una justificación coherente de sesgo-varianza, y está construido para predecir. En caso de duda, prefiérelo.
P8. ¿Por qué estandarizar los predictores antes de ridge o lasso? La penalización
o suma coeficientes medidos en las unidades propias de cada
predictor. Sin estandarizar, un predictor medido en unidades pequeñas (y por eso con un coeficiente
grande) sería penalizado más que un predictor idéntico en unidades grandes. Estandarizar pone cada
predictor en la misma escala para que la penalización sea justa. Tanto glmnet como el ajuste
escalado de scikit-learn aquí hacen esto.
12.8 Problemas de práctica¶
(A) En una sola oración cada uno, di qué le hace la multicolinealidad al sesgo de , a la varianza de , y a las predicciones hechas dentro del rango de los datos. Luego nombra dos de los remedios estándar para un predictor con VIF alto.
(A) Un predictor tiene . ¿Cuál es el auxiliar, y cuántas veces más grande es que lo que sería si el predictor no estuviera correlacionado con los demás?
(A) Explica por qué no puede usarse para elegir entre un modelo con 5 predictores y uno con 8 predictores, pero el ajustado sí.
(A) Enuncia la regla práctica que conecta el de un “buen” modelo con su número de parámetros , y di qué indica un muy por encima de .
(A) ¿Por qué BIC tiende a seleccionar modelos más pequeños que AIC? Señala el término específico que difiere.
(A) En palabras sencillas, ¿qué mide el estadístico PRESS que el ordinario no?
(A) Un estudiante selecciona predictores por regresión paso a paso, luego reporta los valores del modelo como evidencia de que es correcto. Nombra la falacia y explícala en dos oraciones.
(A) Describe la diferencia entre lo que ridge y lasso le hacen a un coeficiente, y di cuál de los dos realiza selección de variables.
(A) La RMSE de entrenamiento de un modelo es 3.5 y su RMSE de validación cruzada de 10 particiones es 4.6. ¿Qué te dice la brecha, y cuál número estima el desempeño con datos nuevos?
(A) Explica por qué los predictores se estandarizan antes de aplicar una penalización ridge o lasso.
(B) Deduce (Teorema 12.4) partiendo del hecho de variable agregada de que es la pendiente de sobre los residuos de regresado sobre los demás predictores. Identifica dónde aparece .
(B) Muestra que la suma de cuadrados del error de la regresión auxiliar es igual a , y úsalo para explicar por qué un predictor casi determinado por los demás tiene un denominador casi nulo en la varianza de su coeficiente.
(B) Deduce el de Mallows (Teorema 12.5) a partir del error cuadrático medio total estandarizado , incluyendo los pasos y . Concluye que un modelo sin sesgo tiene .
(B) Demuestra el atajo del residuo eliminado de PRESS (Teorema 12.6), enunciando con claridad dónde se usa la actualización del inverso de Sherman-Morrison.
(B) Muestra que para el modelo completo, es igual a su número de parámetros exactamente. (Parte de la definición de y del hecho de que es el MSE del modelo completo.)
(B) Un caso de alto apalancamiento tiene y residuo ordinario . Calcula su residuo eliminado, y explica por qué la predicción dejando uno fuera magnifica los residuos de los casos de alto apalancamiento.
(B) Explica, usando la descomposición sesgo-varianza del error de predicción, por qué un modelo puede tener a la vez menor error de entrenamiento y mayor error de prueba que un modelo más pequeño. ¿Cuál término de la descomposición sube a medida que el modelo crece?
(B) Muestra que a medida que el coeficiente ridge de un solo predictor estandarizado tiende a cero, y que en es igual a la pendiente de mínimos cuadrados. (Usa la solución ridge de un predictor, que puedes deducir en el Problema 19.)
(B) Deduce el estimador ridge de un predictor del Problema 18 igualando a cero la derivada de , e interpreta el denominador como “señal más penalización”.
(C) Ajusta el modelo completo y reproduce los VIF. Identifica cada predictor con $\mathrm{VIF}
10$ y, para uno de ellos, confirma el VIF ejecutando su regresión auxiliar a mano.
(C) Ejecuta la búsqueda exhaustiva del mejor subconjunto (R
leaps, o el bucle de Python) e informa el mejor modelo de cada tamaño con su . Enuncia los tamaños elegidos por , ajustado y BIC.(C) Para el mejor subconjunto de cuatro predictores (peso, abdomen, antebrazo, muñeca), calcula , AIC, BIC y PRESS. Compara cada uno con el candidato de ocho predictores y di cuál modelo reportarías y por qué.
(C) Escribe una función que calcule PRESS a partir de un modelo ajustado usando el atajo, y verifícala contra un bucle de fuerza bruta dejando uno fuera sobre el modelo candidato. Informa ambos valores.
(C) Reproduce la demostración de puro ruido posterior a la selección con una semilla distinta. Informa el del modelo seleccionado y el valor de la prueba general, y explica por qué son engañosos.
(C) Realiza una división entrenamiento/prueba 70/30 con semilla. Ajusta los modelos completo y candidato sobre el conjunto de entrenamiento e informa ambas RMSE del conjunto de prueba. ¿Cuál modelo predice mejor, y coincide el orden con el ajuste del conjunto de entrenamiento?
(C) Escribe un bucle de validación cruzada de 5 particiones a mano y compara el modelo completo, el candidato de ocho predictores, y el modelo de cuatro predictores (peso, abdomen, antebrazo, muñeca) por CV RMSE. Ordénalos.
(C) Ajusta un lasso con
cv.glmnet(R) oLassoCV(Python) a todo el conjunto de datos. Informa cuáles predictores tienen coeficientes distintos de cero en la penalización validada cruzadamente, y compara ese conjunto con el modelo de ocho predictores.(C) Ajusta la regresión ridge a través de una malla de valores de y grafica el coeficiente de
weightcontra . Describe cómo cambia el coeficiente, y conecta su comportamiento con el VIF de 33.5 que encontraste paraweight.(C) Usando el modelo candidato, grafica los residuos eliminados contra los residuos ordinarios . ¿Cuáles casos se mueven más, y qué propiedad de esos casos lo explica?
(C) Toma el 25 por ciento de los hombres con los mayores apalancamientos y reajusta el modelo candidato sin ellos. Informa cuánto cambian los coeficientes y PRESS, y discute si el modelo se está apoyando en unos pocos casos.
12.9 Práctica de examen¶
Estas cinco preguntas están escritas al estilo de los exámenes del curso: cada una te pide
explicar tu razonamiento en oraciones completas, no solo producir un número. Donde se muestra
salida, se produjo en la máquina del curso a partir de fat.csv; lee los números que necesites del
impreso y di cuáles usaste. Trabaja cada una antes de abrir su respuesta modelo.
EP 12.1 (conceptos, evaluar una afirmación). El modelo completo de grasa corporal del Ejemplo
12.1 fue reajustado y se imprimieron el coeficiente de weight y tres factores de inflación de la
varianza.
full <- lm(brozek ~ age + weight + height + neck + chest + abdom + hip +
thigh + knee + ankle + biceps + forearm + wrist, data = fat)
round(coef(summary(full))["weight", ], 4)
round(car::vif(full)[c("weight", "hip", "abdom")], 2) Estimate Std. Error t value Pr(>|t|)
-0.0803 0.0496 -1.6198 0.1066
weight hip abdom
33.51 14.80 11.77Un estudiante lee el coeficiente negativo de weight y concluye: “manteniendo fijas las otras doce
medidas, los hombres más pesados tienen menos grasa corporal, así que deberíamos decirles a los
clientes que ganar peso baja su porcentaje de grasa corporal”. Evalúa esta afirmación. Usa el
factor de inflación de la varianza en tu respuesta, y enuncia con claridad qué puede y qué no puede
sostener el coeficiente.
Respuesta modelo
El coeficiente es una pendiente parcial: pretende describir qué le pasa a la grasa corporal cuando
weight sube una libra mientras todas las demás medidas se mantienen fijas. La afirmación falla
porque los datos apenas contienen esa comparación. El peso tiene , lo que
significa que las otras doce medidas explican de weight, así que
los hombres casi nunca difieren en peso mientras su pecho, abdomen, cadera y muslo se mantienen
fijos. La estimación por lo tanto se apoya en casi ningún contraste real: su error estándar está
inflado por veces, el estadístico es solo -1.62 con , y
el coeficiente no es distinguible de cero. La multicolinealidad infla la varianza de un coeficiente
sin sesgarlo, así que el signo negativo aquí es un artefacto de los predictores de tamaño casi
duplicados, no evidencia de que ganar peso reduzca la grasa. El coeficiente no puede sostener
ningún consejo sobre cambiar el peso; la afirmación honesta es que este modelo no puede separar el
efecto del peso de los otros perímetros. Una respuesta débil se detiene en “no es significativo” o
“el peso no importa” sin invocar el VIF y el contraste faltante, o peor, trata el signo negativo
como un efecto real por explicar.
EP 12.2 (interpretar salida en contexto). Se ejecutó una búsqueda exhaustiva del mejor
subconjunto sobre una versión de seis predictores del modelo,
brozek ~ age + weight + height + abdom + hip + thigh, informando el mejor subconjunto de cada
tamaño.
rs <- regsubsets(brozek ~ age + weight + height + abdom + hip + thigh,
data = fat, nvmax = 6)
ss <- summary(rs)
rbind(Cp = round(ss$cp, 2), adjR2 = round(ss$adjr2, 4), BIC = round(ss$bic, 1))
c(min_Cp = which.min(ss$cp), max_adjR2 = which.max(ss$adjr2), min_BIC = which.min(ss$bic)) [,1] [,2] [,3] [,4] [,5] [,6]
Cp 55.07 6.29 3.88 4.40 5.13 7.00
adjR2 0.6608 0.7165 0.7203 0.7208 0.7212 0.7202
BIC -262.40 -303.10 -302.00 -298.00 -293.70 -288.30
min_Cp max_adjR2 min_BIC
3 5 2El mejor modelo de tamaño 2 es weight + abdom, el mejor modelo de tamaño 3 es
weight + abdom + thigh, y el mejor modelo de tamaño 5 es weight + height + abdom + hip + thigh.
Interpreta esta salida. Enuncia cuál tamaño de modelo selecciona cada uno de los tres criterios,
explica en oraciones completas por qué el de Mallows y BIC aterrizan en tamaños distintos, y
di cuál modelo reportarías a un colega que quiere interpretar los coeficientes, con tu razón.
Respuesta modelo
El de Mallows es más pequeño en el tamaño 3 (weight + abdom + thigh, ), el
ajustado es más grande en el tamaño 5 (0.72), y BIC es más pequeño en el tamaño 2
(weight + abdom, -303.1). Los criterios discrepan porque cada uno cobra un precio distinto por
parámetro agregado. El ajustado penaliza el tamaño solo ligeramente, así que tolera el modelo
más grande que aún mejora el ajuste en algo; BIC cobra , alrededor de 5.5 por parámetro
con , el peaje más pesado, así que se decide por el modelo más austero; se sitúa
entre ellos. Los tres coinciden en la sustancia: el abdomen y el peso juntos capturan casi toda la
señal ( cae de 55 a 6.3 tan pronto como ambos están dentro), y la altura no compra
esencialmente nada por su parámetro. Para un colega que quiere interpretar coeficientes reportaría
el modelo de BIC o (dos o tres predictores), porque un modelo austero da coeficientes que en
efecto puedes leer y confiar, y enunciaría con claridad que los criterios apuntan a un rango
pequeño de tamaños defendibles (dos a tres), no a un único ganador. Una respuesta débil solo lee
los tres mínimos del impreso sin explicar que las penalizaciones distintas por parámetro son lo que
impulsa el desacuerdo, o declara un criterio como el “correcto”.
EP 12.3 (qué cambiaría si). Para el modelo de cuatro predictores
brozek ~ weight + abdom + forearm + wrist, la suma de cuadrados del error es
con y parámetros. La estimación de la varianza del
ruido del modelo completo es .
cand4 <- lm(brozek ~ weight + abdom + forearm + wrist, data = fat)
c(SSE = sum(resid(cand4)^2), sigma2_full = summary(full)$sigma^2) SSE sigma2_full
3994.311 15.904Primero calcula para este modelo. Luego responde: ¿qué cambiaría si estimaras no del modelo completo sino del modelo de solo abdomen, cuyo cuadrado medio residual es 20.38? Calcula el resultante y explica, en oraciones completas, por qué se vuelve sin sentido con esa elección.
Respuesta modelo
Con la varianza del modelo completo, , un poco por encima de , lo que insinúa un ligero sesgo en este modelo pequeño. Si en cambio se estima del modelo de solo abdomen, esa estimación es 20.38, y , un valor negativo y sin sentido. La razón es que el modelo de solo abdomen está mal especificado: ha dejado señal predictiva real en sus residuos, así que su cuadrado medio residual estima más un sesgo positivo, no en sí, y sale demasiado grande. La deducción de supone que es insesgado para el verdadero , que es exactamente por qué lo tomas del modelo completo (o de un modelo grande casi insesgado), cuyo cuadrado medio residual es insesgado. Un sesgado e inflado encoge cada término , empuja todos los valores de muy por debajo de , y destruye tanto el punto de referencia “” como cualquier comparación honesta entre modelos. Una respuesta débil calcula -46.0 pero no explica que el cuadrado medio de solo abdomen está sesgado al alza porque omite predictores reales, ni conecta el fallo con la suposición de insesgadez detrás de .
EP 12.4 (evaluar una afirmación, interpretar salida). Tres modelos se compararon por su RMSE de entrenamiento y por la RMSE validada cruzadamente de 5 particiones sobre todos los datos de grasa corporal: el modelo completo de trece predictores, el candidato de ocho predictores (edad, peso, cuello, abdomen, cadera, muslo, antebrazo, muñeca), y un modelo de dos predictores (abdomen, peso).
set.seed(4210)
folds <- sample(rep(1:5, length.out = nrow(fat)))
# training RMSE and 5-fold CV RMSE for each modelfull train RMSE 3.876 5-fold CV RMSE 4.097
cand8 train RMSE 3.893 5-fold CV RMSE 4.003
two train RMSE 4.103 5-fold CV RMSE 4.183Un estudiante argumenta: “el modelo completo tiene la RMSE de entrenamiento más baja (3.876), así que predice mejor; reporta el modelo completo”. Evalúa este argumento. Di cuál número estima cómo le irá al modelo con un hombre nuevo y por qué, explica por qué el orden se invierte entre las dos columnas, y enuncia cuál modelo reportarías.
Respuesta modelo
El argumento confunde ajuste con predicción. La RMSE de entrenamiento solo puede caer o mantenerse igual a medida que se agregan predictores, porque los mínimos cuadrados ajustan la propia muestra sobre la que se puntúan, así que la RMSE de entrenamiento más baja del modelo completo está garantizada por su tamaño y no es evidencia de mejor predicción. La medida honesta es la RMSE validada cruzadamente de 5 particiones, que puntúa a cada hombre con un modelo que no entrenó sobre él. Por esa medida el candidato de ocho predictores es el mejor (4.003) y el modelo completo es el peor de los tres (4.097): los cinco predictores extra del modelo completo ajustan ruido del conjunto de entrenamiento que no se traslada a hombres nuevos, así que el orden se invierte entre las columnas. El modelo de dos predictores tiene la RMSE de CV más alta (4.183), así que subajusta: muy pocos predictores también perjudican. Reportaría el candidato de ocho predictores, porque minimiza el error fuera de la muestra, y notaría que la RMSE de CV, no la RMSE de entrenamiento, es el número que estima la exactitud con un hombre nuevo. Una respuesta débil dice que el modelo completo “sobreajusta” sin notar que la RMSE de entrenamiento debe disminuir con el tamaño, no nombra la RMSE de CV como la estimación fuera de la muestra, o pasa por alto que el modelo de dos predictores subajusta.
EP 12.5 (qué cambiaría si). Se ajustó un lasso a todos los datos de grasa corporal con la
penalización elegida por validación cruzada, y los coeficientes se leyeron en dos
penalizaciones, lambda.min (el minimizador del error) y el más disperso lambda.1se.
X <- as.matrix(fat[, preds]); Y <- fat$brozek
set.seed(4210)
cvl <- cv.glmnet(X, Y, alpha = 1)
round(cbind(min = coef(cvl, s = "lambda.min")[, 1],
onese = coef(cvl, s = "lambda.1se")[, 1]), 3) min onese
(Intercept) -13.683 -6.733
age 0.055 0.052
weight -0.065 0.000
height -0.081 -0.149
neck -0.403 -0.137
chest 0.000 0.000
abdom 0.830 0.635
hip -0.147 0.000
thigh 0.171 0.000
knee 0.000 0.000
ankle 0.086 0.000
biceps 0.114 0.000
forearm 0.387 0.112
wrist -1.437 -1.265En lambda.min once predictores tienen coeficientes distintos de cero; en lambda.1se solo seis.
Explica qué le pasa a los coeficientes a medida que aumenta de lambda.min a
lambda.1se, por qué el lasso fija algunos coeficientes exactamente en cero mientras que la
regresión ridge no lo haría, y qué cambiaría si los predictores no se estandarizaran antes de
ajustar.
Respuesta modelo
A medida que crece de lambda.min a lambda.1se, la penalización sobre el tamaño del
coeficiente se vuelve más pesada, así que cada coeficiente se jala con más fuerza hacia cero y
cinco predictores más (peso, cadera, muslo, tobillo, bíceps) llegan a exactamente cero, dejando
seis distintos de cero. El lasso puede poner coeficientes en cero porque su penalización
tiene esquinas sobre los ejes de coordenadas: a medida que el contorno de pérdida
de mínimos cuadrados crece hacia afuera tiende a tocar primero la región de restricción en forma de
rombo en una esquina, donde un coeficiente es exactamente cero, así que el lasso realiza selección
de variables mientras encoge. La regresión ridge usa la penalización , cuya
región de restricción es un disco suave sin esquinas, así que encoge cada coeficiente hacia cero
pero esencialmente nunca a exactamente cero; ridge conservaría los trece predictores. Si los
predictores no se estandarizaran, la penalización sería injusta, porque suma coeficientes medidos
en las unidades propias de cada predictor: un predictor registrado en unidades pequeñas lleva un
coeficiente naturalmente grande y sería penalizado más fuertemente, así que sería encogido y puesto
en cero primero por una razón no relacionada con su importancia. Estandarizar pone cada predictor
en una escala común para que la penalización los compare de forma justa, y sin ello el conjunto de
predictores sobrevivientes cambiaría de forma arbitraria. Una respuesta débil dice solo que “los
coeficientes se encogen” sin la geometría de las esquinas que explica los ceros exactos, o no puede
decir por qué la estandarización importa para una penalización justa entre unidades distintas.
Juego del capítulo¶
Chapter summary (in English)
This chapter is about living with too many predictors, nearly all of them redundant, using
body-fat data from 252 men (fat.csv): percent body fat, measured by underwater weighing, is
predicted from thirteen tape measurements. Fitting the full model gives , which looks
good, but the coefficients make no sense (weight comes out negative). The cause is
multicollinearity: the predictors are strongly correlated, so the model cannot split the shared
effect among them.
The variance inflation factor (VIF), , measures the damage. We derive it from an auxiliary regression and show that $\operatorname{Var}{b_k} = \sigma^2/(S_{kk}(1
R_k^2))\mathrm{VIF} = 33.5$.
To choose among models we use criteria that reward prediction, not fit: adjusted , Mallows’ (which we derive, with for an unbiased model), AIC, BIC, and PRESS, whose deleted-residual shortcut, , we prove. The chosen eight-predictor model has and a lower PRESS than the full model.
We warn about the dangers of stepwise selection: it overfits, and post-selection -values are false (a pure-noise demonstration produces “significant” models 94 percent of the time). The honest solution is validation: a train/test split, and -fold cross-validation, which we write by hand. The smaller model predicts better out of sample. Finally, we introduce shrinkage: ridge and lasso pull the coefficients toward zero, balancing bias and variance; the lasso also selects variables. It is the modern answer when the goal is prediction.