¡gente! Si alguna vez ha querido comprender cómo funciona la regresión lineal o simplemente actualizar las ideas principales sin saltar entre muchas fuentes diferentes, este artículo es para usted. Es una lectura extra larga que me llevó más de un año escribir. Se basa en cinco ideas clave:
Lo visual primero. Este es un artículo de estilo cómic: leer el texto ayuda, pero no es obligatorio. Un vistazo rápido a las imágenes y animaciones aún puede brindarle una comprensión sólida de cómo funcionan las cosas. Hay más de 100 imágenes en total; Animaciones en las que podrían ayudar (33 en total). La informática se entiende mejor en movimiento, por eso utilizo animaciones para explicar ideas clave; Apto para principiantes. Mantuve el material lo más simple posible para que el artículo fuera fácil de seguir para los principiantes. Reproducible. La mayoría de los elementos visuales se generaron en Python y el código es de código abierto. Concéntrate en la práctica. Cada siguiente paso resuelve un problema que aparece en el paso anterior, por lo que todo el artículo permanece conectado.
Una cosa más: la publicación está simplificada a propósito, por lo que algunas palabras y ejemplos pueden ser un poco toscos o no perfectamente precisos. Por favor, no confíe únicamente en mi palabra: piense críticamente y vuelva a verificar mis puntos. Para las partes más importantes, proporciono enlaces al código fuente para que puedas verificar todo tú mismo.
Tabla de contenido
¿Para quién es este artículo?
Omita este párrafo, simplemente desplácese por el artículo durante dos minutos y observe las imágenes. Sabrás inmediatamente si quieres leerlo correctamente (las ideas principales se muestran en los argumentos y animaciones). Esta publicación es para principiantes y para cualquiera que trabaje con datos, y también para personas experimentadas que desean una actualización rápida.
Qué cubre esta publicación
El artículo se estructura en tres actos:
Regresión lineal: qué es, por qué la usamos y cómo ajustarla a un modelo; Cómo evaluar el desempeño del modelo; Cómo mejorar el modelo cuando los resultados no son lo suficientemente buenos.
En un nivel alto, este artículo cubre:
modelado basado en datos; solución analítica para regresión lineal y por qué no siempre es práctica; formas de evaluar la calidad del modelo, tanto visualmente como con métricas; Regresión lineal múltiple, donde las predicciones se basan en muchas características; el lado probabilístico de la regresión lineal, ya que las predicciones no son exactas y es importante cuantificar la incertidumbre; formas de mejorar la calidad del modelo, desde agregar complejidad hasta simplificar el modelo con regularización.
Más específicamente, recorre:
el método de mínimos cuadrados para regresión lineal simple; métricas de regresión como R², RMSE, MAE, MAPE, SMAPE, junto con el coeficiente de correlación de Pearson y el coeficiente de determinación, además de diagnósticos visuales como gráficos de residuos; máxima verosimilitud e intervalos de predicción; divisiones de entrenamiento/prueba, por qué son importantes y cómo realizarlas; métodos de manejo de valores atípicos, incluidos RANSAC, distancia de Mahalanobis, factor de valores atípicos locales (LOF) y distancia de Cook; preprocesamiento de datos, incluida la normalización, estandarización y codificación categórica; el álgebra lineal detrás de los mínimos cuadrados y cómo se extiende a la regresión multivariada; métodos de optimización numérica, incluido el descenso de gradientes; Regularización L1 y L2 para modelos lineales; validación cruzada y optimización de hiperparámetros.
Aunque este artículo se centra en la regresión lineal, algunas partes, especialmente la sección sobre evaluación de modelos, se aplican también a otros algoritmos de regresión. Lo mismo ocurre con los capítulos de preprocesamiento de funciones.
Dado que esto pretende ser una guía introductoria de regresión lineal relacionada con ML, evitaré principalmente la notación vectorial (donde las fórmulas usan vectores en lugar de escalares). En otras palabras, difícilmente verás vectores y matrices en las ecuaciones, excepto en algunos lugares donde son realmente necesarios. Tenga en cuenta que la mayoría de las fórmulas que se muestran aquí tienen forma vectorial y las bibliotecas modernas implementan los algoritmos exactamente de esa manera. Esas implementaciones son eficientes y confiables, por lo que si decide codificar cosas, no reinvente la rueda: use bibliotecas o herramientas con interfaz de usuario bien probadas cuando tenga sentido.
Todas las animaciones e imágenes del artículo son originales y creadas por el autor.
Una breve reseña literaria.
Este tema no es nuevo, por lo que hay mucho material disponible. A continuación se muestra una breve lista de predecesores directos, similares en plataforma (principalmente hacia la ciencia de datos) y audiencia, es decir, lectores que utilizan primero el navegador en lugar de lectores de libros de texto. La lista está ordenada por complejidad subjetiva creciente:
¿Qué es la regresión lineal? – Una descripción general para principiantes de qué es la regresión lineal, qué representa la línea, cómo se hacen las predicciones, con imágenes y código simples; Una guía práctica para la regresión lineal: representa el ajuste de modelos lineales como canal de aprendizaje automático: EDA, manejo de características, ajuste de modelos y evaluación en un conjunto de datos real de Kaggle; Dominar los conceptos básicos: cómo la regresión lineal revela los secretos de los modelos complejos: guía fácil de seguir con cálculos paso a paso, imágenes agradables y memorables; Predecir el precio de la vivienda mediante regresión lineal en Python: artículo orientado a la implementación elaborado en torno al conjunto de datos de Boston Housing, con ejemplos de código para cálculos desde cero; Análisis de regresión lineal múltiple: un artículo con más detalles matemáticos, centrado en la multicolinealidad; Dominar la regresión lineal: la guía definitiva para aspirantes a científicos de datos: una guía larga, todo en uno, teoría más Python; Regresión lineal en profundidad (Parte 1) y Regresión lineal en profundidad (Parte 2): teoría más profunda más artículos de implementación que se centran en la regresión lineal simple y configuran la transición a la regresión múltiple;
Y por supuesto, no ignores los artículos clásicos si quieres leer más sobre este tema. No los enumero como una bibliografía separada en esta sección, pero encontrará enlaces a ellos más adelante en el texto. Cada referencia aparece justo después del fragmento al que se refiere, entre corchetes, en el formato: [Autor(es). Título. Año. Enlace a la fuente original]
Un buen modelo comienza con datos.
Supongamos que tenemos datos tabulares con dos columnas:
Número de habitaciones del apartamento; El precio del apartamento, $
Para cuando construyas un modelo, ya debería haber datos. La recopilación de datos y la preparación inicial del conjunto de datos están fuera del alcance de este artículo, especialmente porque el proceso puede variar mucho según el dominio. El principio fundamental a tener en cuenta es "basura entra, basura sale", que se aplica al aprendizaje automático supervisado en general. Un buen modelo comienza con un buen conjunto de datos.
Descargo de responsabilidad con respecto al conjunto de datos: los datos utilizados en este artículo son sintéticos y fueron generados por el autor. Se distribuye bajo la misma licencia que el código fuente: BSD 3-Clause.
¿Por qué necesitamos un modelo?
Como dijo una vez el estadístico británico George Box: “Todos los modelos son incorrectos, pero algunos son útiles”. Los modelos son útiles porque nos ayudan a descubrir patrones en los datos. Una vez que esos patrones se expresan como una relación matemática (un modelo), podemos usarlo, por ejemplo, para generar predicciones (Figura 2).
Modelar relaciones en datos no es una tarea trivial. Se puede hacer utilizando modelos matemáticos de muchos tipos diferentes, desde modelos simples hasta enfoques modernos de múltiples etapas, como las redes neuronales. Por ahora, el punto clave es que un "modelo" puede significar cualquier tipo de mapeo de un conjunto de datos (columnas de características) a una columna de destino. Usaré esta definición a lo largo del artículo.
En la regresión lineal, modelamos relaciones lineales entre variables de datos. En la regresión por pares (de una característica), cuando hay una característica y una variable dependiente, la ecuación tiene la forma:
y=b0+b1⋅xy = b_0 + b_1 cdot x, donde xx – característica, yy – variable objetivo [James, G., et al. Regresión lineal. Introducción al aprendizaje estadístico, 2021. Versión gratuita https://www.statlearning.com/].
Entonces la expresión y=1+10⋅xy= 1 + 10cdot x es un modelo de regresión lineal. Y y=15−21⋅xy = 15 − 21 cdot x también es uno; la única diferencia son los coeficientes. Dado que los coeficientes son los parámetros clave de la ecuación, tienen sus propios nombres:
b0 – la intersección (también llamada término de sesgo) b1 – el coeficiente de pendiente
Entonces, cuando construimos un modelo de regresión lineal, hacemos la siguiente suposición:
Supuesto 1. La relación entre las características (variables independientes) y la respuesta (variable dependiente) es lineal [Kim, Hae-Young. Notas estadísticas para investigadores clínicos: regresión lineal simple 1 – conceptos básicos, 2018. https://www.rde.ac/upload/pdf/rde-43-e21.pdf]
En la Figura 4 se muestra un ejemplo de un modelo lineal con los coeficientes de intersección y pendiente ya ajustados (analizaremos por qué se llaman así un poco más adelante).
Para el conjunto de datos que se muestra en la Figura 1, estimar el precio de un apartamento en dólares significa multiplicar el número de habitaciones por 10 000.
Nota importante: nos estamos centrando en una aproximación, por lo que la línea del modelo no tiene que pasar por todos los puntos de datos, porque los datos del mundo real casi nunca caen exactamente en una sola línea recta. Siempre hay algo de ruido y algunos factores que el modelo no ve. Es suficiente que la línea del modelo se mantenga lo más cerca posible de los datos observados. Si no recuerdas bien la diferencia entre aproximación, interpolación y extrapolación, consulta la imagen a continuación.
Rama lateral 1. Diferencia entre aproximación, interpolación y extrapolación
Cómo construir un modelo simple
Necesitamos elegir los coeficientes b0b_0 y b1b_1 en la siguiente ecuación para que la línea recta se ajuste lo más posible a las observaciones empíricas (los datos reales): y=b0+b1⋅xy = b_0 + b_1 cdot x, donde xx – número de habitaciones, yy – precio del apartamento, $.
Por qué esta ecuación y por qué dos coeficientes
A pesar de su aparente simplicidad, la ecuación de regresión lineal puede representar muchas relaciones lineales diferentes, como se muestra en la Figura 5. Para cada conjunto de datos, una línea diferente será óptima.
Solución analítica
Para encontrar los valores óptimos de los coeficientes, usaremos una solución analítica: conectar los datos empíricos de la sección anterior a una fórmula bien conocida derivada hace mucho tiempo (por Carl Gauss y Adrien-Marie Legendre). La solución analítica se puede escribir en cuatro pasos simples (Figura 6) [Hastie, T., et al. Métodos lineales de regresión (capítulo 3 de Los elementos del aprendizaje estadístico: extracción de datos, inferencia y predicción). 2009. https://hastie.su.domains/ElemStatLearn].
El error también es parte del modelo.
Anteriormente señalé que la regresión lineal es un algoritmo de aproximación. Esto significa que no requerimos que la línea pase exactamente a través de las observaciones. En otras palabras, incluso en esta etapa permitimos que las predicciones del modelo difieran de los precios de departamentos observados. Y es importante recalcar: este tipo de desajustes es completamente normal. En el mundo real, es muy difícil encontrar un proceso que genere datos perfectamente alineados en línea recta (Figura 7).
Por tanto, el modelo necesita un componente más para ser realista: un término de error. Con datos reales, el análisis de errores es esencial: ayuda a detectar problemas y solucionarlos a tiempo. Lo más importante es que proporciona una forma de cuantificar qué tan bueno es realmente el modelo.
Cómo medir la calidad del modelo
La calidad del modelo se puede evaluar mediante dos enfoques principales:
Evaluación visual Evaluación basada en métricas
Antes de profundizar en cada uno de ellos, es un buen momento para definir qué entendemos aquí por “calidad”. En este artículo, consideraremos que un modelo es bueno cuando el término de error es lo más pequeño posible.
Utilizando el conjunto de datos original (ver Figura 1), se pueden introducir diferentes valores de coeficientes en la ecuación de regresión lineal. Luego se generan predicciones para los ejemplos conocidos y se compara la diferencia entre los valores previstos y los reales (Tabla 1). Entre todas las combinaciones de intercepto y pendiente, un par produce el error más pequeño.
Verdad fundamental (observación)Error (observación – predicho)20+10000⋅20 + 10000 cdot 2 20 00020 000020+5000⋅20 + 5000 cdot 210 00020 00010 0002500+1000⋅2500 + 1000 cdot 22 50020 00017 500
El ejemplo de la tabla anterior es fácil de seguir porque es una configuración de juguete pequeña. Solo muestra cómo diferentes modelos predicen el precio de un apartamento de dos habitaciones, y en el conjunto de datos original cada valor de “número de habitaciones” se asigna a un precio único. Una vez que el conjunto de datos aumenta, este tipo de comparación manual deja de ser práctico. Es por eso que la calidad del modelo generalmente se evalúa con herramientas de evaluación (visuales, métricas y pruebas estadísticas) en lugar de tablas hechas a mano.
Para hacer las cosas un poco más realistas, el conjunto de datos se ampliará en tres versiones: un caso sencillo y dos que son más difíciles de ajustar. Luego se aplicará la misma evaluación a estos conjuntos de datos.
La figura 8 se acerca más a la vida real: los apartamentos varían, e incluso si el número de habitaciones es el mismo, el precio en diferentes propiedades no tiene por qué ser idéntico.
Evaluación visual
Usando la fórmula de la sección Solución analítica (Figura 6), los datos se pueden conectar para obtener los siguientes modelos para cada conjunto de datos:
A: 0+10000⋅x0 + 10000 cdot x, donde x es el número de habitaciones B: 0+10000⋅x0 + 10000 cdot x, donde x es el número de habitaciones C: 6800+6600⋅x6800 + 6600 cdot x, donde x es el número de habitaciones
Un primer gráfico útil para mostrar aquí es el gráfico de dispersión: los valores de las características se colocan en el eje x, mientras que el eje y muestra tanto los valores predichos como las observaciones reales, en diferentes colores. Este tipo de cifra es sencilla de interpretar: cuanto más cerca esté la línea del modelo de los datos reales, mejor será el modelo. También hace que la relación entre las variables sea más fácil de ver, ya que la característica misma se muestra en el gráfico [Piñeiro, G., et al. ¿Cómo evaluar modelos: observado versus predicho o predicho versus observado? 2008. https://doi.org/10.1016/j.ecolmodel.2008.05.006].
Una desventaja de esta trama es que resulta difícil introducir características adicionales una vez que tienes más de una o dos; por ejemplo, cuando el precio depende no sólo del número de habitaciones, sino también de la distancia a la estación de metro más cercana, el nivel del piso, etc. Otro problema es la escala: el alcance objetivo puede influir en gran medida en la impresión visual. Pequeñas diferencias en el gráfico, apenas visibles a simple vista, aún pueden corresponder a errores de varios miles de dólares. La predicción de precios es un gran ejemplo aquí, porque una impresión visual engañosa de los errores del modelo puede traducirse directamente en dinero.
Cuando el número de funciones crece, visualizar el modelo directamente (función versus objetivo con una línea ajustada) rápidamente se vuelve confuso. Una alternativa más limpia es un diagrama de dispersión observado versus previsto. Está construido así: el eje x muestra los valores reales y el eje y muestra los valores predichos (Figura 10) [Moriasi, DN, et al. Modelos hidrológicos y de calidad del agua: medidas de desempeño y criterios de evaluación. 2015. enlace pdf]. También he visto los ejes intercambiados, con valores predichos en el eje x. De cualquier manera, la trama tiene el mismo propósito, así que siéntete libre de elegir la convención que prefieras.
Este gráfico se lee de la siguiente manera: cuanto más cerca estén los puntos de la línea diagonal que viene de la esquina inferior izquierda, mejor. Si el modelo reprodujera las observaciones perfectamente, cada punto se ubicaría exactamente en esa línea sin ninguna desviación (el conjunto de datos A se parece bastante a este caso ideal).
Cuando los conjuntos de datos son grandes o la estructura es desigual (por ejemplo, cuando hay valores atípicos), los gráficos QQ pueden resultar útiles. Muestran los mismos valores predichos y observados en los mismos ejes, pero después de una transformación especial.
Gráfico QQ Opción 1, – estadísticas de pedidos. Los valores previstos se ordenan en orden ascendente y se hace lo mismo con los valores observados. Luego, las dos matrices ordenadas se trazan entre sí, como en la Figura 10.
Gráfico QQ Opción 2: – gráfico QQ de dos muestras. Aquí el gráfico utiliza cuantiles en lugar de valores ordenados sin procesar. Los datos se agrupan en un número finito de niveles (yo suelo utilizar alrededor de 100). Este gráfico es útil cuando el objetivo es comparar el patrón general, no pares individuales de “predicción versus observación”. Es útil ver la forma de las distribuciones, dónde se ubica la mediana y qué tan comunes son los valores muy grandes o muy pequeños.
Rama lateral 2. Recordatorio sobre cuantiles
Según Wikipedia, un cuantil es un valor que una variable aleatoria determinada no supera con una probabilidad fija.
Dejando a un lado la formulación de probabilidad por un momento, se puede considerar un cuantil como un valor que divide un conjunto de datos en partes. Por ejemplo, el cuantil 0,25 es el número por debajo del cual se encuentra el 25% de la muestra. Y el cuantil 0,9 es el valor por debajo del cual se encuentra el 90% de los datos.
Para la muestra [1, 3, 5, 7, 9] el cuantil 0,5 (la mediana) es 5. Sólo hay dos valores por encima de 5 (7 y 9), y sólo dos por debajo (1 y 3).
El cuantil de 0,25 es aproximadamente 3 y el cuantil de 0,75 es aproximadamente 7. Consulte la explicación en la siguiente figura.
El percentil 25 también se denomina primer cuartil, el percentil 50 es la mediana o segundo cuartil y el percentil 75 es el tercer cuartil.
En la segunda variante, no importa cuán grande sea el conjunto de datos, este gráfico siempre muestra 99 puntos, por lo que se adapta bien a muestras grandes. En la Figura 11, los cuantiles reales y previstos para el conjunto de datos A se encuentran cerca de la línea diagonal, lo que indica un buen modelo. Para el conjunto de datos B, la cola derecha de las distribuciones (esquina superior derecha) comienza a divergir, lo que significa que el modelo funciona peor en apartamentos de alto precio.
Para el conjunto de datos C:
Por debajo del percentil 25, los cuantiles previstos se encuentran por encima de los observados; Dentro del rango intercuartil (del percentil 25 al 75), los cuantiles predichos se encuentran por debajo de los observados; Por encima del percentil 75, la cola prevista vuelve a estar por encima de la observada.
Otro diagnóstico muy utilizado es el gráfico residual. El eje x muestra los valores predichos y el eje y muestra los residuos. Los residuos son la diferencia entre los valores observados y predichos. Si lo prefiere, puede definir el error con el signo opuesto (predicho menos observado) y trazarlo en su lugar. No cambia la idea, sólo la dirección de los valores en el eje y.
Una gráfica de residuos es una de las herramientas más convenientes para verificar los supuestos clave detrás de la regresión lineal (el Supuesto 1 (linealidad) se introdujo anteriormente):
Supuesto 2. Normalidad de los residuos. Los residuos (observados menos predichos) deben tener una distribución aproximadamente normal. Intuitivamente, la mayoría de los residuos deberían ser pequeños y cercanos a cero, mientras que los residuos grandes son raros. Los residuos ocurren aproximadamente con la misma frecuencia en la dirección positiva y negativa. Supuesto 3. Homoscedasticidad (varianza constante). El modelo debería tener errores de aproximadamente la misma magnitud en toda la gama: apartamentos baratos, de gama media y caros. Supuesto 4. Independencia. Las observaciones (y sus residuos) deben ser independientes entre sí, es decir, no debe haber autocorrelación.
La Figura 12 muestra que el conjunto de datos B viola el Supuesto 3: a medida que aumenta el número de habitaciones, los errores aumentan: los residuos se abren en abanico de izquierda a derecha, lo que indica una variación creciente. En otras palabras, el error no es constante y depende del valor de la característica. Esto generalmente significa que al modelo le falta algún patrón subyacente, lo que hace que sus predicciones sean menos confiables en esa región.
Para el conjunto de datos C, los residuos no parecen normales: el modelo a veces sobreestima sistemáticamente y a veces subestima sistemáticamente, por lo que los residuos se mueven por encima y por debajo de cero de forma estructurada en lugar de flotar alrededor de él aleatoriamente. Además de eso, el gráfico residual muestra patrones visibles, lo que puede ser una señal de que los errores no son independientes (para ser justos, no siempre XD, pero de cualquier manera es una señal de que algo anda mal con el modelo).
Un buen complemento de la Figura 12 es un conjunto de gráficos de distribución residual (Figura 13). Esto hace que la forma de los residuos sea inmediatamente visible: incluso sin pruebas estadísticas formales, se puede observar cuán simétrica es la distribución (una buena señal es la simetría alrededor de cero) y cuán pesadas son sus colas. Idealmente, la distribución debería tener forma de campana, la mayoría de los residuos deberían ser pequeños y los errores grandes deberían ser raros.
Rama lateral 3. Un recordatorio rápido sobre las distribuciones de frecuencia.
Si su curso de estadísticas se ha borrado de la memoria o nunca tomó uno, vale la pena examinar más de cerca esta parte. Esta sección presenta las formas más comunes de visualizar muestras en estadística matemática. Después, interpretar los argumentos utilizados más adelante en el artículo debería ser sencillo.
La distribución de frecuencia es una representación ordenada que muestra cuántas veces los valores de una variable aleatoria caen dentro de ciertos intervalos.
Para construir uno:
Divida el rango completo de valores en k contenedores (intervalos de clase) Cuente cuántas observaciones caen en cada contenedor: esta es la frecuencia absoluta Divida la frecuencia absoluta por el tamaño de la muestra n para obtener la frecuencia relativa
En la siguiente figura, se muestran los mismos pasos para la variable V:
También se puede construir el mismo tipo de visualización para la variable U, pero en esta sección el foco permanece en V por simplicidad. Más adelante, el histograma se rotará hacia los lados para facilitar la comparación de los datos sin procesar con el diseño vertical comúnmente utilizado para los gráficos de distribución.
A partir de la descripción del algoritmo y de la figura anterior, queda claro un inconveniente importante: el número de contenedores k (y por lo tanto el ancho del contenedor) tiene un impacto importante en el aspecto de la distribución.
Existen fórmulas empíricas que ayudan a elegir una cantidad razonable de contenedores según el tamaño de la muestra. Dos ejemplos comunes son la regla de Sturges y la regla de Rice (consulte la Figura 5 adicional a continuación) [Sturges. La elección de un intervalo de clase. 1926. DOI: 10.1080/01621459.1926.10502161], [Lane, David M., et. Alabama. Histogramas. https://onlinestatbook.com/2/graphing_distributions/histograms.html].
Una alternativa es visualizar la distribución utilizando la estimación de densidad del núcleo (KDE). KDE es una versión suavizada de un histograma: en lugar de barras rectangulares, utiliza una curva continua construida sumando muchas funciones “núcleo” suaves, generalmente distribuciones normales (Figura 6 adicional).
Entiendo que describir KDE como una suma de “pequeñas distribuciones normales” no es muy intuitivo. Aquí tienes una mejor imagen mental. Imagine que cada punto de datos está lleno de una gran cantidad de pequeños granos de arena. Si dejas que la arena caiga por gravedad, se forma una pequeña pila directamente debajo de ese punto. Cuando varios puntos están cerca uno del otro, sus montones de arena se superponen y forman un montículo más grande. Mire la animación a continuación para ver cómo funciona:
En un gráfico de KDE, esos “montones de arena” normalmente se modelan como pequeñas distribuciones normales (gaussianas) colocadas alrededor de cada punto de datos.
Otra forma muy utilizada de resumir una distribución es un diagrama de caja. Un diagrama de caja describe la distribución en términos de cuartiles. Muestra:
La mediana (segundo cuartil, Q2); El primer (Q1) y el tercer (Q3) cuartiles (los percentiles 25 y 75), que forman los bordes de la “caja”; Los bigotes, que marcan el rango de los datos excluyendo los valores atípicos; Puntos individuales, que representan valores atípicos.
En resumen, el siguiente paso es visualizar muestras de diferentes tamaños y formas utilizando todos los métodos comentados anteriormente. Esto se hará extrayendo muestras de diferentes distribuciones teóricas: dos tamaños de muestra para cada una, 30 y 500 observaciones.
Una distribución de frecuencia es una herramienta clave para describir y comprender el comportamiento de una variable aleatoria basada en una muestra. Los métodos visuales como histogramas, curvas de densidad del núcleo y diagramas de caja se complementan entre sí y ayudan a crear una imagen clara de la distribución: su simetría, dónde se concentra la masa, qué tan dispersa está y si contiene valores atípicos.
Este punto de vista sobre los datos también es útil porque tiene una interpretación probabilística natural: los valores más probables caen en la región donde la densidad de probabilidad es más alta, es decir, donde la curva KDE alcanza su pico.
Como se señaló anteriormente, la distribución residual debería parecer más o menos normal. Por eso tiene sentido comparar dos distribuciones: la normal teórica versus los residuales que realmente observamos. Dos herramientas convenientes para esto son los gráficos de densidad y los gráficos QQ con cuantiles residuales versus cuantiles normales. Los parámetros de la distribución normal se estiman a partir de la muestra residual. Dado que estos gráficos funcionan mejor con muestras más grandes, a modo de ilustración, aumentaré artificialmente cada conjunto de residuos a 500 valores y al mismo tiempo preservaré el comportamiento clave de los residuos para cada conjunto de datos (Figura 14).
Como muestra la Figura 14, las distribuciones residuales para los conjuntos de datos A* y B* se aproximan razonablemente mediante una distribución normal. Para B*, las colas se desplazan un poco: los errores grandes ocurren un poco más a menudo de lo que nos gustaría. El caso bimodal C* es mucho más sorprendente: su distribución residual no parece nada normal.
La heteroscedasticidad en B* no aparecerá en estos gráficos porque analizan los residuos por sí solos (una dimensión) e ignoran cómo cambia el error en el rango de predicciones.
En resumen, un modelo rara vez es perfecto, tiene errores. El análisis de errores con gráficos es una forma conveniente de diagnosticar el modelo:
Para la regresión por pares, resulta útil trazar los valores previstos y observados en el eje y frente a la característica en el eje x. Esto hace que la relación entre la característica y la respuesta sea fácil de ver; Además, trace los valores observados (eje x) frente a los valores predichos (eje y). Cuanto más cerca estén los puntos de la línea diagonal que viene de la esquina inferior izquierda, mejor. Este gráfico también es útil porque no depende de cuántas características tenga el modelo; Si el objetivo es comparar las distribuciones completas de predicciones y observaciones, en lugar de pares individuales, un gráfico QQ es una buena opción; Para muestras muy grandes, la carga cognitiva se puede reducir agrupando valores en cuantiles en el gráfico QQ, de modo que el gráfico tendrá, por ejemplo, sólo 100 puntos de dispersión; Un gráfico de residuos ayuda a comprobar si los supuestos clave de la regresión lineal se cumplen para el modelo actual (independencia, normalidad de los residuos y homocedasticidad); Para una comparación más sencilla entre la distribución residual y una distribución normal teórica, utilice un gráfico QQ.
Métrica
Descargo de responsabilidad sobre las designaciones X e Y
En las visualizaciones de esta sección, algunas notaciones pueden parecer un poco inusuales en comparación con la literatura relacionada. Por ejemplo, los valores previstos se denominan XX, mientras que la respuesta observada se denomina YY. Esto es intencional: aunque la discusión está ligada a la evaluación del modelo, no quiero que parezca que las mismas ideas sólo se aplican al par “predicción versus observación”. En la práctica, XX e YY pueden ser dos matrices cualesquiera; la elección correcta depende de la tarea.
También hay una razón práctica para elegir este par: XX e YY son visualmente distintos. En tramas y animaciones, son más fáciles de distinguir que pares como UU y VV, o los más familiares yy e y^hat{y}.
Por muy convincente que pueda ser el diagnóstico visual, la mejor manera de evaluar la calidad del modelo es junto con métricas (medidas numéricas de rendimiento). Una buena métrica es atractiva porque reduce la carga cognitiva: en lugar de inspeccionar otro conjunto de gráficos, la evaluación se reduce a un solo número (Figura 15).
A diferencia de un gráfico residual, una métrica también es un formato muy conveniente para el análisis automatizado, no solo fácil de interpretar, sino también fácil de incorporar al código. Eso hace que las métricas sean útiles para la optimización numérica, a la que llegaremos un poco más adelante.
Esta sección de "Métricas" también incluye pruebas estadísticas: ayudan a evaluar la importancia de los coeficientes individuales y del modelo en su conjunto (también lo cubriremos más adelante).
Aquí hay una lista no exhaustiva:
Coeficiente de determinación R2 – [Kvalseth, Tarald O. Nota de precaución sobre R². 1985. https://www.tandfonline.com/doi/abs/10.1080/00031305.1985.10479448]; Inclinación; Error absoluto medio – MAE; Error cuadrático medio – RMSE; Error porcentual absoluto medio – MAPE; Error porcentual absoluto medio simétrico – SMAPE; La prueba F para comprobar si el modelo es significativo en su conjunto; La prueba t para comprobar la importancia de las características y del objetivo; Prueba de Durbin-Watson para el análisis de residuos.
La Figura 16 muestra métricas calculadas comparando los precios de departamentos observados con los pronosticados.
Las métricas están agrupadas para facilitar la lectura. El primer grupo, que se muestra en rojo, incluye el coeficiente de correlación (entre los valores previstos y observados) y el coeficiente de determinación, R². Ambos son adimensionales y los valores más cercanos a 1 son mejores. Tenga en cuenta que la correlación no se limita a las predicciones frente al objetivo. También se puede calcular entre una característica y el objetivo, o por pares entre características cuando hay muchas.
El segundo grupo, que se muestra en verde, incluye métricas que miden el error en las mismas unidades que la respuesta, que aquí significa $. Para las tres métricas, la interpretación es la misma: cuanto más cerca esté el valor de cero, mejor (Animación 2).
Un detalle interesante: en la Figura 16 el sesgo es cero en todos los casos. Literalmente, esto significa que los errores del modelo no se desplazan en ninguna dirección en promedio. Una pregunta para usted: ¿por qué esto es generalmente cierto para un modelo de regresión lineal ajustado a cualquier conjunto de datos (intente cambiar los valores de entrada y jugar con diferentes conjuntos de datos)?
La Animación 2 y la Figura 16 también muestran que a medida que crece la brecha entre XX e YY, RMSE reacciona con más fuerza a errores grandes que MAE. Esto sucede porque RMSE eleva los errores al cuadrado.
El tercer grupo, que se muestra en azul, incluye métricas de error medidas en porcentajes. Los valores más bajos son mejores. MAPE es sensible a errores cuando los valores verdaderos son pequeños, porque la fórmula divide el error de predicción por el valor observado en sí. Cuando el valor real es pequeño, incluso un error absoluto modesto se convierte en un porcentaje grande y puede afectar fuertemente la puntuación final (Figura 17).
La Figura 17 muestra que la diferencia medida en las unidades originales, la desviación absoluta entre los valores observados y predichos, permanece igual en ambos casos: es 0 para el primer par, 8 para el segundo y 47 para el tercero. Para las métricas basadas en porcentajes, los errores se reducen por una razón obvia: los valores observados aumentan.
El cambio es mayor para MAPE, porque normaliza cada error según el valor observado en sí. sMAPE, por el contrario, se normaliza según la magnitud promedio de los valores observados y predichos. Esta diferencia es más importante cuando las observaciones son cercanas a cero y se desvanece a medida que los valores se alejan de cero, que es exactamente lo que muestra la figura.
Rama lateral 4. Características de los cálculos MAPE y SMAPE
Es importante discutir los detalles de los cálculos métricos. Utilizando MAPE y SMAPE (y brevemente MAE) como ejemplos, esta sección muestra cómo se pueden comportar de manera diferente las métricas entre conjuntos de datos. La conclusión principal es simple: antes de comenzar cualquier proyecto de aprendizaje automático, piense detenidamente qué métrica o métricas debe utilizar para medir la calidad. No todas las métricas se adaptan bien a su tarea o datos específicos.
Aquí hay un pequeño experimento. Usando los datos de la Figura 17, tome las matrices originales, las observaciones [1,2,3] y las predicciones [1,10,50]. Aleje ambas matrices de cero agregando 10 a cada valor, repitiendo durante 10 iteraciones. En cada paso, calcule tres métricas: MAPE, SMAPE y MAE. Los resultados se muestran en el siguiente gráfico:
Como puede verse en la figura anterior, cuanto mayores sean los valores incluidos en el conjunto de datos, menor será la diferencia entre MAPE y SMAPE, y menores serán los errores medidos en términos porcentuales. La alineación de MAPE y SMAPE se explica por las características de cálculo que permiten eliminar el efecto de la asimetría de MAPE, que es particularmente notable en valores de observación pequeños. MAE se mantiene sin cambios, como se esperaba.
Ahora queda clara la razón de la palabra “asimetría”. La forma más sencilla de demostrarlo es con un ejemplo. Supongamos que el modelo predice 110 cuando el valor real es 100. En ese caso, MAPE es 10%. Ahora cámbielos: el valor real es 110, pero la predicción es 100. El error absoluto sigue siendo 10, pero MAPE se convierte en 9,1%. MAPE es asimétrico porque la misma desviación absoluta se trata de manera diferente dependiendo de si la predicción está por encima o por debajo del valor real.
Otro inconveniente de MAPE es que no se puede calcular cuando algunos valores objetivo son cero. Una solución alternativa común es reemplazar los ceros con un número muy pequeño durante la evaluación, por ejemplo 0,000001. Aún así, está claro que esto puede inflar el MAPE.
Otras métricas también tienen sus propias peculiaridades. Por ejemplo, RMSE es más sensible a errores grandes que MAE. Esta sección no pretende cubrir todos estos detalles. El punto principal es simple: elija las métricas cuidadosamente. Utilice las métricas recomendadas en su dominio y, si no hay estándares claros, comience con las más comunes y experimente.
En resumen, las unidades de medida de las métricas y los rangos de valores posibles se compilan en la Tabla 2.
La misma unidad que la variable objetivo de −∞ a ∞Cuanto más cerca de 1, mejor será el modeloError absoluto medio (MAE)
La misma unidad que la variable objetivo de 0 a ∞Cuanto más cerca de cero, mejor será el modeloError cuadrático medio (RMSE)
La misma unidad que la variable objetivode 0 a ∞Cuanto más cerca de cero, mejor será el modeloError porcentual absoluto medio simétrico (MAPE)Porcentaje (%)de 0 a ∞Cuanto más cerca de cero, mejor será el modeloError porcentual absoluto medio simétrico (SMAPE)Porcentaje (%)de 0 a 200Cuanto más cerca de cero, mejor será el modelo
Como se mencionó anteriormente, esta no es una lista completa de métricas. Algunas tareas pueden requerir otras más especializadas. Si es necesario, siempre es fácil obtener información de referencia rápida de su LLM favorito.
Aquí hay un punto de control rápido. La evaluación del modelo comenzó con una tabla de valores previstos y observados (Tabla 1). Las tablas grandes son difíciles de inspeccionar, por lo que la misma información se hizo más fácil de digerir con gráficos, pasando a la evaluación visual (Figuras 9-14). Luego, la tarea se simplificó aún más: en lugar de confiar en el juicio de expertos a partir de los gráficos, se calcularon métricas (Figuras 15-17 y Animaciones 1-3). Todavía hay un problema. Incluso después de obtener uno o varios números, todavía depende de nosotros decidir si el valor de la métrica es "bueno" o no. En la Figura 15, se utilizó un umbral del 5 % para MAPE. Esa heurística no se puede aplicar a todas las tareas de regresión lineal. Los datos varían, los objetivos comerciales son diferentes, etc. Para un conjunto de datos, un buen modelo puede significar un error inferior al 7,5%. Por otro lado, el umbral aceptable podría ser el 11,2%.
prueba F
Por eso pasamos ahora a la estadística y a la prueba formal de hipótesis. Una prueba estadística puede, en principio, salvarnos de tener que decidir dónde colocar exactamente el umbral métrico, con una salvedad importante, y darnos una respuesta binaria: sí o no.
Si nunca antes se ha encontrado con pruebas estadísticas, tiene sentido comenzar con una definición simplificada. Una prueba estadística es una forma de comprobar si lo que observamos es sólo una variación aleatoria o un patrón real. Se puede considerar como una caja negra que recoge datos y, utilizando un conjunto de fórmulas, produce una respuesta: unos pocos valores intermedios, como un estadístico de prueba y un valor p, y un veredicto final (Figura 18) [Sureiman, Onchiri, et al. Prueba F de significancia global en análisis de regresión simplificada. 2020. https://www.tandfonline.com/doi/full/10.1080/00031305.2016.1154108].
Como muestra la Figura 18, antes de ejecutar una prueba, debemos elegir un valor umbral. Sí, este es el momento adecuado para volver a esa advertencia: aquí también tenemos que abordar un umbral. Pero en este caso es mucho más fácil, porque existen valores estándar ampliamente aceptados entre los que elegir. Este umbral se llama nivel de significancia. Un valor de 0,05 significa que aceptamos un 5% de probabilidad de rechazar incorrectamente la hipótesis nula. En este caso, la hipótesis nula podría ser algo así como: el modelo no es mejor que una predicción ingenua basada en la media. Podemos variar este umbral. Por ejemplo, algunos campos científicos utilizan 0,01 o incluso 0,001, que es más estricto, mientras que otros utilizan 0,10, que es menos estricto.
Si el significado práctico del nivel de significancia no está completamente claro en este momento, está completamente bien. Hay una explicación más detallada al final de esta sección. Por ahora, basta con fijar un punto clave: las pruebas estadísticas que se analizan a continuación tienen un parámetro, αalpha, que nosotros, como investigadores o ingenieros, elegimos en función de la tarea. En nuestro caso, se establece en 0,05.
Entonces, una prueba estadística nos permite tomar los datos y algunos parámetros elegidos, luego calcular cantidades de prueba que se utilizan para comparar, por ejemplo, si la estadística de prueba está por encima o por debajo de un umbral. Con base en esa comparación, decidimos si el modelo es estadísticamente significativo. No recomendaría reinventar la rueda aquí. Es mejor utilizar paquetes estadísticos (es confiable) para calcular estas pruebas, que es una de las razones por las que no doy las fórmulas en esta sección. En cuanto a qué comparar exactamente, las dos opciones comunes son el estadístico F frente al valor F crítico o el valor p frente al nivel de significancia. Personalmente, más que nada por costumbre, me inclino por la segunda opción.
Podemos utilizar la prueba F para responder a la pregunta: "¿Es significativo el modelo?" Dado que la estadística es una disciplina matemática, primero describamos las dos posibles interpretaciones del modelo ajustado de manera formal. La prueba estadística nos ayudará a decidir cuál de estas hipótesis es más plausible.
Podemos formular la hipótesis nula (H₀) de la siguiente manera: todos los coeficientes de las variables independientes, es decir, las características, son iguales a cero. El modelo no explica la relación entre las características y la variable objetivo mejor que simplemente usar el valor medio (objetivo).
La hipótesis alternativa (H₁) es entonces: al menos un coeficiente no es igual a cero. En ese caso, el modelo es significativo porque explica parte de la variación en la variable objetivo.
Ahora ejecutemos las pruebas en nuestros tres conjuntos de datos, A, B y C (Figura 19).
Como podemos ver en la Figura 19, en los tres casos el valor p está por debajo de 0,05, que es el nivel de significancia elegido. Usamos 0,05 porque es el umbral predeterminado estándar y, en el caso de la predicción del precio de un apartamento, elegir la hipótesis incorrecta no es tan crítico como lo sería, por ejemplo, en un entorno médico. Por lo tanto, no hay ninguna razón de peso para hacer que el umbral sea más estricto en este caso. El valor p es inferior a 0,05 significa que rechazamos la hipótesis nula, H₀, para los modelos A, B y C. Después de esta verificación, podemos decir que los tres modelos son estadísticamente significativos en general: al menos una característica contribuye a explicar la variación en el objetivo.
Sin embargo, el ejemplo del conjunto de datos C muestra que la confirmación de que el modelo es significativamente mejor que el precio promedio no significa necesariamente que el modelo sea realmente bueno. El estadístico F comprueba la adecuación mínima.
Una limitación de este enfoque para la evaluación de modelos es que su alcance es bastante limitado. La prueba F es una prueba paramétrica diseñada específicamente para modelos lineales, por lo que, a diferencia de métricas como MAPE o MAE, no se puede aplicar a algo como un bosque aleatorio (otro algoritmo de aprendizaje automático). Incluso para los modelos lineales, esta prueba estadística también requiere que se cumplan supuestos estándar (ver Supuestos 2 a 4 arriba: independencia de las observaciones, normalidad de los residuos y homocedasticidad).
Aún así, si este tema le interesa, hay mucho más que explorar por su cuenta. Por ejemplo, podría analizar la prueba t para características individuales, donde la hipótesis se prueba por separado para cada coeficiente del modelo, o la prueba de Durbin-Watson. O puede elegir cualquier otra prueba estadística para estudiar más a fondo. Aquí sólo cubrimos la idea básica. PD: Vale la pena prestar especial atención a cómo se calculan las estadísticas de las pruebas y a la intuición matemática detrás de ellas.
Rama lateral 5. Si no tiene del todo claro el nivel de significancia αalpha, lea esta sección
Cada vez que intentaba entender qué significaba el nivel de importancia, me topaba con una pared de ladrillos. Ejemplos más complejos involucraban cálculos que no entendía. Fuentes más sencillas transmiten el concepto con mayor claridad: “aquí hay un ejemplo en el que todo es intuitivamente comprensible”:
H₀ (hipótesis nula): El paciente no tiene cáncer; Error tipo I: la prueba dice “el cáncer está presente” cuando en realidad no lo está; Si el nivel de significancia αalfa se fija en 0,05, en el 5% de los casos la prueba puede alarmar erróneamente a una persona sana informándole que tiene cáncer; Por lo tanto, en medicina, a menudo se elige un αalfa bajo (p. ej., 0,01) para minimizar las falsas alarmas.
Pero aquí tenemos datos y coeficientes del modelo: todo está arreglado. Aplicamos la prueba F y obtenemos un valor p <0,05. Podemos ejecutar esta prueba 100 veces y el resultado será el mismo, porque el modelo es el mismo y los coeficientes son los mismos. Ahí vamos: 100 veces obtenemos la confirmación de que el modelo es significativo. ¿Y cuál es el umbral del 5 por ciento aquí? ¿De dónde viene esta “probabilidad”?
Analicemos esto juntos. Comience con la frase "El modelo es significativo en el nivel 0,05". A pesar de lo que pueda parecer, esta frase no se refiere realmente al modelo en sí. En realidad, es una declaración sobre cuán convincente es la relación observada en los datos que utilizamos. En otras palabras, imaginemos que recopilamos repetidamente datos del mundo real, ajustamos un modelo, luego recopilamos una nueva muestra y ajustamos otra, y seguimos haciendo esto muchas veces. En algunos de esos casos, todavía encontraremos una relación estadísticamente significativa incluso si, en realidad, no existe una relación real entre las variables. El nivel de significancia nos ayuda a dar cuenta de eso.
En resumen, con un umbral de valor p de 0,05, incluso si no existe una relación real, la prueba seguirá diciendo "hay una relación" en aproximadamente 5 de cada 100 casos, simplemente debido a la variación aleatoria en los datos.
Para que el texto sea un poco menos denso, permítanme ilustrarlo con una animación. Generaremos 100 puntos aleatorios, luego extraeremos repetidamente conjuntos de datos de 30 observaciones de ese grupo y ajustaremos un modelo de regresión lineal a cada uno. Repetiremos este proceso de muestreo 20 veces. Con un nivel de significancia del 5%, esto significa que permitimos aproximadamente 1 caso de 20 en el que la prueba F dice que el modelo es significativo aunque, en realidad, no existe relación entre las variables.
De hecho, en 1 de cada 20 casos en los que en realidad no había relación entre xey, la prueba aún produjo un valor p inferior a 0,05. Si hubiéramos elegido un nivel de significancia más estricto, por ejemplo 0,01, habríamos evitado un error de Tipo I, es decir, un caso en el que rechazamos H₀ (no existe relación entre x e y) y aceptamos la hipótesis alternativa aunque H₀ sea verdadera.
A modo de comparación, ahora generaremos una población donde esté presente una relación lineal clara y repetiremos el mismo experimento: 20 muestras y los mismos 20 intentos de ajustar un modelo de regresión lineal.
Para concluir este capítulo de descripción general sobre las métricas de regresión y la prueba F, estas son las principales conclusiones:
Los métodos visuales no son la única forma de evaluar el error de predicción. También podemos utilizar métricas. Su principal ventaja es que resumen la calidad del modelo en un único número, lo que facilita juzgar si el modelo es lo suficientemente bueno o no. Las métricas también se utilizan durante la optimización del modelo, por lo que es importante comprender sus propiedades. Por ejemplo: Las métricas del “grupo verde” (RMSE, MAE y sesgo) son convenientes porque se expresan en las unidades originales del objetivo. El error cuadrático medio (RMSE) reacciona más fuertemente a errores grandes y valores atípicos que el error absoluto medio (MAE). El “grupo azul” (MAPE y SMAPE) se expresa en porcentaje, lo que a menudo hace que estas métricas sean convenientes para analizarlas en un contexto empresarial. Al mismo tiempo, cuando los valores objetivo son cercanos a cero, estas métricas pueden volverse inestables y producir estimaciones engañosas. Las pruebas estadísticas proporcionan una evaluación aún más compacta de la calidad del modelo, dando una respuesta en forma de "sí o no". Sin embargo, como vimos anteriormente, dicha prueba sólo verifica la adecuación básica, donde la principal alternativa al modelo de regresión ajustado es simplemente predecir la media. No ayuda en casos más complejos, como el conjunto de datos C, donde el modelo captura la relación entre la característica y el objetivo lo suficientemente bien como para superar el ruido estadístico, pero no completamente.
Más adelante en el artículo, usaremos diferentes métricas a lo largo de las visualizaciones, para que te acostumbres a mirar más allá de un solo favorito de la lista 🙂
Incertidumbre en las previsiones. Intervalo de predicción
Una combinación interesante de evaluación visual y métricas formales es el intervalo de predicción. Un intervalo de predicción es un rango de valores dentro del cual se espera que caiga una nueva observación con una probabilidad determinada. Ayuda a mostrar la incertidumbre de la predicción al combinar medidas estadísticas con la claridad de una representación visual (Figura 20).
La pregunta principal aquí es cómo elegir estos valores umbral, ΔDelta. El enfoque más natural, y el que realmente se utiliza en la práctica, es extraer información sobre la incertidumbre de los casos en los que el modelo ya cometió errores durante el entrenamiento, es decir, de los residuos. Pero para convertir un conjunto de diferencias en valores umbral reales, necesitamos ir un nivel más profundo y considerar la regresión lineal como un modelo probabilístico.
Recuerde cómo funciona la predicción de puntos. Introducimos los valores de las características en el modelo, en el caso de una regresión lineal simple, solo una característica, y calculamos la predicción. Pero una predicción rara vez es exacta. En la mayoría de los casos, se trata de un error aleatorio.
Cuando configuramos un modelo de regresión lineal, asumimos que los errores pequeños son más probables que los grandes, y que los errores en cualquier dirección son igualmente probables. Estos dos supuestos conducen a la visión probabilística de la regresión lineal, donde los coeficientes del modelo y la distribución del error se tratan como dos partes del mismo todo (Figura 21) [Fisher, RA On the Mathematical Foundations of Theoretical Statistics. 1922. https://doi.org/10.1098/rsta.1922.0009].
Como muestra la Figura 21, la variabilidad de los errores del modelo se puede estimar calculando la desviación estándar de los errores, denotada por σsigma. También podríamos hablar aquí de la varianza del error, ya que es otra medida adecuada de variabilidad. La desviación estándar σsigma es simplemente la raíz cuadrada de la varianza. Cuanto mayor sea la desviación estándar, mayor será la incertidumbre de la predicción (consulte la Sección 2 en la Figura 21).
Esto nos lleva al siguiente paso de la lógica: cuanto más se distribuyen los errores, menos seguro es el modelo y más amplio se vuelve el intervalo de predicción. En general, la amplitud del intervalo de predicción depende de tres factores principales:
Ruido en los datos: cuanto más ruido hay, mayor es la incertidumbre; Tamaño de la muestra: cuantos más datos haya visto el modelo durante el entrenamiento, más confiablemente se estimarán sus coeficientes y más estrecho será el intervalo; Distancia desde el centro de los datos: cuanto más lejos esté el valor de la nueva característica de la media, mayor será la incertidumbre.
En forma simplificada, el procedimiento para construir un intervalo de predicción se ve así:
Ajustamos el modelo (usando la fórmula de la sección anterior, Figura 6). Calculamos el componente de error, es decir, los residuos. A partir de los residuos, estimamos el tamaño típico del error. Obtenemos la predicción puntual. Luego, escalamos s usando varios factores de ajuste: en cuántos datos de entrenamiento se ajustó el modelo, a qué distancia está el valor de la característica del centro de los datos y el nivel de confianza seleccionado. El nivel de confianza controla la probabilidad de que el intervalo contenga el valor de interés. Lo elegimos en función de la tarea, de la misma manera que elegimos anteriormente el nivel de significancia para las pruebas estadísticas (común por defecto: 0,95).
Como ejemplo simple, generaremos un conjunto de datos de 30 observaciones con una relación lineal "perfecta" entre la característica y el objetivo, ajustaremos un modelo y calcularemos el intervalo de predicción. Luego 1) agregaremos ruido a los datos, 2) aumentaremos el tamaño de la muestra y 3) aumentaremos el nivel de confianza del 90% al 95 y 99%, donde el intervalo de predicción alcanza su ancho máximo (ver Animación 4).
Y considere por separado cómo se ve el intervalo de predicción para los conjuntos de datos A, B y C (Figura 22).
La Figura 22 muestra claramente que, aunque los modelos A y B tienen los mismos coeficientes, sus intervalos de predicción difieren en amplitud, siendo el intervalo para el conjunto de datos B mucho más amplio. En términos absolutos, el intervalo de predicción más amplio, como se esperaba, lo produce el modelo ajustado al conjunto de datos C.
Dividir pruebas de tren y métricas
Todas las evaluaciones de calidad discutidas hasta ahora se centraron en cómo se comporta el modelo en las mismas observaciones en las que fue entrenado. Sin embargo, en la práctica queremos saber si el modelo también funcionará bien con datos nuevos que no haya visto antes.
Por eso, en el aprendizaje automático, una buena práctica común es dividir el conjunto de datos original en partes. El modelo se ajusta en una parte, el conjunto de entrenamiento, y su capacidad de generalizar se evalúa en la otra parte, la muestra de prueba (Figura 23).
Si combinamos estos métodos de diagnóstico de modelos en una visualización grande, esto es lo que obtenemos:
La Figura 24 muestra que los valores de las métricas son peores en los datos de prueba, que es exactamente lo que esperaríamos, ya que los coeficientes del modelo se optimizaron en el conjunto de entrenamiento. Se destacan algunas observaciones más:
En primer lugar, la métrica de sesgo finalmente se ha vuelto informativa: en los datos de prueba ya no es cero, como lo era en los datos de entrenamiento, y ahora se desplaza en ambas direcciones, hacia arriba para los conjuntos de datos A y B, y hacia abajo para el conjunto de datos C. En segundo lugar, la complejidad del conjunto de datos claramente importa aquí. El conjunto de datos A es el caso más sencillo para un modelo lineal, el conjunto de datos B es más difícil y el conjunto de datos C es el más difícil. A medida que pasamos de los datos de entrenamiento a los de prueba, los cambios en las métricas se vuelven más notorios. Los residuos también se vuelven más dispersos en las parcelas.
En esta sección, es importante señalar que la forma en que dividimos los datos en conjuntos de entrenamiento y prueba puede afectar el aspecto de nuestro modelo (Animación 5).
La elección de la estrategia de división depende de la tarea y de la naturaleza de los datos. En algunos casos, los subconjuntos no deberían formarse al azar. Aquí hay algunas situaciones en las que eso tiene sentido:
Dependencia geográfica o espacial. Cuando los datos tienen un componente espacial, por ejemplo mediciones de temperatura, niveles de contaminación del aire o rendimientos de cultivos de diferentes campos, las observaciones cercanas suelen estar fuertemente correlacionadas. En tales casos, tiene sentido construir el conjunto de pruebas a partir de regiones geográficamente separadas para evitar sobreestimar el rendimiento del modelo. Pruebas basadas en escenarios. En algunos problemas empresariales, es importante evaluar de antemano cómo se comportará el modelo en determinadas situaciones críticas o raras, por ejemplo, con valores de características altos o extremos. Estos casos pueden incluirse intencionalmente en el conjunto de pruebas, incluso si están ausentes o insuficientemente representados en la muestra de entrenamiento.
Imagínate que sólo hay 45 apartamentos en el mundo…
Para que el resto de la discusión sea más fácil de seguir, introduzcamos una simplificación importante para este artículo. Imaginemos que nuestro mundo hipotético, aquel en el que construimos estos modelos, es muy pequeño y contiene sólo 45 apartamentos. En ese caso, todos nuestros intentos anteriores de ajustar modelos en los conjuntos de datos A, B y C fueron en realidad solo pasos individuales para recuperar esa relación original a partir de todos los datos disponibles.
Desde este punto de vista, A, B y C no son realmente conjuntos de datos separados, aunque podemos imaginarlos como datos recopilados en tres ciudades diferentes, A, B y C. En cambio, son partes de una población más grande, D. Supongamos que podemos combinar estas muestras y trabajar con ellas como un todo único (Figura 25).
Es importante tener en cuenta que todo lo que hacemos, dividir los datos en conjuntos de entrenamiento y prueba, preprocesar los datos, calcular métricas, ejecutar pruebas estadísticas y todo lo demás, tiene un objetivo: garantizar que el modelo final describa bien a toda la población. El objetivo de las estadísticas, y esto también se aplica al aprendizaje automático supervisado, es sacar conclusiones sobre toda la población utilizando solo una muestra.
En otras palabras, si de alguna manera construyéramos un modelo que predijera perfectamente los precios de estos 45 apartamentos, tendríamos una herramienta que siempre daría la respuesta correcta, porque en este mundo hipotético no hay otros datos en los que el modelo pueda fallar. Nuevamente, aquí todo depende de ese "si". Ahora permítanme volver a la realidad e intentar describir todos los datos con un único modelo de regresión lineal (Figura 26).
En el mundo real, recopilar datos sobre cada apartamento es físicamente imposible, porque requeriría demasiado tiempo, dinero y esfuerzo, por lo que siempre trabajamos solo con un subconjunto. Lo mismo se aplica aquí: recolectamos muestras e intentamos estimar la relación entre las variables de una manera que nos acercara lo más posible a la relación en la población, todo el conjunto de datos D.
Una nota muy importante: más adelante en el artículo, ocasionalmente aprovecharemos las reglas de nuestro mundo simplificado y veremos cómo se comporta el modelo ajustado en toda la población. Esto nos ayudará a comprender si nuestras modificaciones fueron exitosas cuando la métrica de error disminuye o no cuando la métrica de error aumenta. Al mismo tiempo, tenga en cuenta que esto no es algo que podamos hacer en el mundo real. ¡En la práctica, es imposible evaluar un modelo para cada objeto!
Mejorando la calidad del modelo
En la sección anterior, antes de combinar nuestros datos en una población completa, medimos el error de predicción del modelo y encontramos que los resultados no eran satisfactorios. En otras palabras, queremos mejorar el modelo. En términos generales, hay tres formas de hacerlo: cambiar los datos, cambiar el modelo o cambiar ambos. Más concretamente, las opciones son:
Ampliar la muestra: aumentar el número de observaciones en el conjunto de datos Reducir la muestra: eliminar valores atípicos y otras filas no deseadas de la tabla de datos Hacer el modelo más complejo: agregar nuevas características, ya sean observadas directamente o recientemente diseñadas Hacer el modelo más simple: reducir el número de características (a veces esto también mejora las métricas) Ajustar el modelo: buscar los mejores hiperparámetros, es decir, parámetros que no se aprenden durante el entrenamiento
Revisaremos estos enfoques uno por uno, comenzando con la expansión de la muestra. Para ilustrar la idea, realizaremos un experimento.
Ampliando la muestra
Tenga en cuenta que los valores de toda la población no están directamente disponibles para nosotros y solo podemos acceder a ellos en partes. En este experimento, extraeremos aleatoriamente muestras de 10 y 20 apartamentos. Para cada tamaño de muestra, repetiremos el experimento 30 veces. Las métricas se medirán en 1) el conjunto de entrenamiento, 2) el conjunto de prueba y 3) la población, es decir, las 45 observaciones. Esto debería ayudarnos a ver si muestras más grandes conducen a un modelo más confiable para toda la población (Animación 6).
Aumentar el tamaño de la muestra es una buena idea aunque sólo sea porque la estadística matemática tiende a funcionar mejor con números más grandes. Como resultado, las métricas se vuelven más estables y las pruebas estadísticas también se vuelven más confiables (Figura 27).
Si los diagramas de caja le resultan más familiares, eche un vistazo a la versión Boxplot de la Figura 27.
Figura 27 en forma de diagrama de caja
Aunque trabajamos aquí con muestras muy pequeñas, en parte por conveniencia visual, la Animación 6 y la Figura 27 aún nos permiten sacar algunas conclusiones que también son válidas para conjuntos de datos más grandes. En particular:
El RMSE promedio de la población es menor cuando el tamaño de la muestra es 20 en lugar de 10, específicamente 4088 versus 4419. Esto significa que un modelo ajustado a más datos tiene un error menor en la población (todos los datos disponibles). Las estimaciones métricas son más estables para muestras más grandes. Con 20 observaciones, la brecha entre RMSE en el conjunto de entrenamiento, el conjunto de prueba y la población es menor.
Como podemos ver, el uso de muestras más grandes, 20 observaciones en lugar de 10, condujo a mejores valores métricos de la población. El mismo principio se aplica en la práctica: después de realizar cambios en los datos o en el modelo, siempre verifique las métricas. Si el cambio mejora la métrica, manténgala. Si empeora la métrica, revertirla. Confíe en una mentalidad de ingeniería, no en la suerte. Por supuesto, en el mundo real no podemos medir métricas sobre toda la población. Pero las métricas de los conjuntos de entrenamiento y prueba aún pueden ayudarnos a elegir la dirección correcta.
Reducir la muestra filtrando valores atípicos
Dado que esta sección trata sobre la poda de la muestra, omitiré la división de prueba de entrenamiento para que las visualizaciones sean más fáciles de leer. Otra razón es que los modelos lineales son muy sensibles al filtrado cuando la muestra es pequeña, y aquí utilizamos deliberadamente muestras pequeñas para mayor claridad. Entonces, en esta sección, cada modelo se ajustará a todas las observaciones de la muestra.
Intentamos recopilar más datos para el ajuste del modelo. Pero ahora imaginemos que tuvimos mala suerte: incluso con una muestra de 20 observaciones, todavía no pudimos obtener un modelo que se acerque al de referencia (Figura 28).
Además de una muestra que no refleja bien la relación subyacente, otros factores pueden dificultar aún más la tarea. Estas distorsiones son bastante comunes en los datos reales por muchas razones: imprecisiones en las mediciones, errores técnicos durante el almacenamiento o la transferencia de datos y simples errores humanos. En nuestro caso, imaginemos que algunos de los agentes inmobiliarios a los que solicitamos datos cometieron errores al ingresar información manualmente desde registros en papel: escribieron 3 en lugar de 4, o agregaron o quitaron ceros (Figura 29).
Si ajustamos un modelo a estos datos sin procesar, el resultado estará lejos del modelo de referencia y, una vez más, estaremos insatisfechos con la calidad del modelado.
Esta vez intentaremos resolver el problema eliminando algunas observaciones que son mucho menos similares al resto, es decir, valores atípicos. Hay muchos métodos para esto, pero la mayoría de ellos se basan en la misma idea básica: separar observaciones similares de las inusuales utilizando algún umbral (Figura 30) [Mandic-Rajcevic, et al. Métodos para la identificación de valores atípicos y su influencia en la evaluación de la exposición en aplicadores de pesticidas agrícolas: un enfoque propuesto y una validación mediante el monitoreo biológico. 2019. https://doi.org/10.3390/toxics7030037]:
Rango intercuartil (IQR), un método no paramétrico Regla de tres sigma, un método paramétrico, ya que supone una distribución, generalmente normal Puntuación Z, un método paramétrico Puntuación Z modificada (basada en la mediana), un método paramétrico
Los métodos paramétricos se basan en una suposición sobre la forma de la distribución de los datos, que suele ser normal. Los métodos no paramétricos no requieren tales supuestos y funcionan de manera más flexible, utilizando principalmente el orden de valores o cuantiles. Como resultado, los métodos paramétricos pueden ser más efectivos cuando sus supuestos son correctos, mientras que los métodos no paramétricos suelen ser más sólidos cuando se desconoce la distribución.
En los métodos unidimensionales (Figura 30), las características no se utilizan. Sólo se considera una variable, a saber, el objetivo y. Por eso, entre otras cosas, estos métodos claramente no tienen en cuenta la tendencia de los datos. Otra limitación es que requieren que se elija un umbral, ya sea 1,5 en la regla del rango intercuartil, 3 en la regla de tres sigma o un valor de corte para la puntuación Z.
Otra nota importante es que tres de los cuatro métodos de filtrado de valores atípicos que se muestran aquí se basan en una suposición sobre la forma de la distribución objetivo. Si los datos se distribuyen normalmente, o al menos tienen una moda única y no son fuertemente asimétricos, entonces la regla de tres sigma, el método de puntuación Z y el método de puntuación Z modificado generalmente darán resultados razonables. Pero si la distribución tiene una forma menos habitual, los puntos marcados como valores atípicos pueden no serlo en realidad. Dado que en la Figura 30 la distribución se acerca bastante a una forma de campana normal, estos métodos estándar son apropiados en este caso.
Otro detalle interesante es que la regla de tres sigma es en realidad un caso especial del método de puntuación Z con un umbral de 3,0. La única diferencia es que se expresa en la escala y original en lugar de en unidades estandarizadas, es decir, en el espacio de puntuación Z. Puede ver esto en el gráfico comparando las líneas 2σ2sigma del método tres sigma con las líneas del método de puntuación Z en un umbral de 2,0.
Si aplicamos todos los métodos de filtrado descritos anteriormente a nuestros datos, obtenemos los siguientes modelos ajustados (Figura 31).
Si observamos la Figura 31, podemos ver que el peor modelo en términos de RMSE de la población es el que se ajusta a los datos y aún incluye valores atípicos. El mejor RMSE se logra mediante el modelo ajustado a los datos filtrados mediante el método de puntuación Z con un umbral de 1,5.
La Figura 31 hace que sea bastante fácil comparar cuán efectivos son los diferentes métodos de filtrado de valores atípicos. Pero esa impresión es engañosa, porque aquí estamos comparando las métricas con la población completa D, que no es algo a lo que tengamos acceso en el desarrollo de modelos reales.
Entonces, ¿qué deberíamos hacer en su lugar? Experimento. En algunos casos, la opción más rápida y práctica es limpiar el equipo de prueba y luego medir la métrica en él. En otros, la eliminación de valores atípicos puede considerarse exitosa si la brecha entre los errores de entrenamiento y de prueba se reduce. No existe un enfoque único que funcione mejor en todos los casos.
Sugiero pasar a métodos que utilicen información de múltiples variables. Mencionaré cuatro de ellos y veremos los dos últimos por separado:
Cada método mostrado en la Figura 32 merece una discusión separada, ya que ya son mucho más avanzados que los enfoques unidimensionales. Aquí, sin embargo, me limitaré a las visualizaciones y evitaré profundizar demasiado en los detalles. Trataremos estos métodos desde un punto de vista práctico y veremos cómo su uso afecta los coeficientes y las métricas de un modelo de regresión lineal (Figura 33).
Los métodos que se muestran en las visualizaciones anteriores no se limitan a la regresión lineal. Este tipo de filtrado también puede resultar útil para otros algoritmos de regresión, y no sólo para los de regresión. Dicho esto, los métodos más interesantes para estudiar por separado son los que son específicos de la propia regresión lineal: el apalancamiento, la distancia de Cook y el consenso de muestra aleatoria (RANSAC).
Ahora veamos el apalancamiento y la distancia de Cook. El apalancamiento es una cantidad que muestra cuán inusual es una observación a lo largo del eje x; en otras palabras, qué tan lejos está xix_i del centro de los datos. Si está lejos, la observación tiene una gran influencia. Una buena metáfora aquí es un balancín: cuanto más lejos del centro te sientas, más influencia tienes en el movimiento. La distancia de Cook mide cuánto puede cambiar un punto el modelo si lo eliminamos. Depende tanto del apalancamiento como del residual.
En el ejemplo anterior, los cálculos se realizan de forma iterativa para mayor claridad. Sin embargo, en la práctica, bibliotecas como scikit-learn implementan esto de manera diferente, por lo que la distancia de Cook se puede calcular sin necesidad de reajustar el modelo n veces.
Una nota importante: una distancia de Cook grande no siempre significa que los datos sean malos. En cambio, puede apuntar a un grupo importante. Eliminar ciegamente tales observaciones puede perjudicar la capacidad del modelo para generalizar, por lo que la validación siempre es una buena idea.
Si está buscando una forma más automatizada de filtrar valores, también existe. Un buen ejemplo es el algoritmo RANSAC, que es una herramienta útil para la eliminación automática de valores atípicos (Animación 8). Funciona en seis pasos:
Seleccione aleatoriamente un subconjunto de n observaciones. Ajustar un modelo a esas n observaciones. Eliminar los valores atípicos, es decir, excluir las observaciones para las cuales el error del modelo excede un umbral elegido. Paso opcional: ajuste el modelo nuevamente en los valores interiores restantes y elimine los valores atípicos una vez más. Cuente el número de valores interiores, denotados por m. Repita los primeros cinco pasos varias veces, donde elegimos el número de iteraciones nosotros mismos y luego seleccionamos el modelo para el cual el número de valores interiores m es mayor.
Los resultados de aplicar el algoritmo RANSAC y el método de distancia de Cook se muestran en la Figura 34.
Según los resultados que se muestran en la Figura 34, el modelo más prometedor en esta comparación es el equipado con RANSAC.
En resumen, intentamos recopilar más datos y luego filtramos lo que parecía inusual. Vale la pena señalar que los valores atípicos no son necesariamente valores “malos” o “incorrectos”. Son simplemente observaciones que difieren del resto, y eliminarlas del conjunto de entrenamiento no es lo mismo que corregir errores de datos. Aun así, excluir observaciones extremas puede hacer que el modelo sea más estable en una mayor proporción de datos más típicos.
Para mayor claridad, en la siguiente parte del artículo continuaremos trabajando con la muestra original sin filtrar. De esa manera, podremos ver cómo se comporta el modelo en valores atípicos bajo diferentes transformaciones. Aún así, ahora sabemos qué hacer cuando queremos eliminarlos.
Haciendo el modelo más complejo: regresión lineal múltiple
Como alternativa, y también como complemento a los dos primeros enfoques (de mejora de la calidad del modelo), podemos introducir nuevas características al modelo.
Ingeniería de características. Generando nuevas características
Un buen lugar para comenzar a transformar el espacio de funciones es con uno de los enfoques más simples de implementar: generar nuevas funciones a partir de las que ya tenemos. Esto permite evitar cambios en los procesos de recopilación de datos, lo que a su vez hace que la solución sea más rápida y, a menudo, más económica de implementar (en contraste con recopilar nuevas funciones desde cero). Una de las transformaciones más comunes es la polinómica, donde las características se multiplican entre sí y se elevan a una potencia. Dado que nuestro conjunto de datos actual tiene solo una característica, se verá de la siguiente manera (Figura 36).
Tenga en cuenta que la ecuación resultante es ahora un modelo de regresión polinómica, lo que permite capturar relaciones no lineales en los datos. Cuanto mayor es el grado del polinomio, más grados de libertad tiene el modelo (Figura 37).
Hay muchas transformaciones diferentes que se pueden aplicar a los datos originales. Sin embargo, una vez que los usamos, el modelo ya no es verdaderamente lineal, lo que ya es visible en la forma de las curvas ajustadas en la Figura 37. Por esa razón, no entraré en ellas en detalle en este artículo. Si esto despertó su curiosidad, puede leer más sobre otras transformaciones de características que se pueden aplicar a los datos originales. Una buena referencia aquí es Trevor Hastie, Robert Tibshirani, Jerome Friedman – The Elements of Statistical Learning):
Transformaciones funcionales Logaritmos: log(x+ε)log(x + ε) Recíprocos: 1/x,1/(x+ε)1/x, 1/(x + ε) Raíces: x, x1/3sqrt{x}, x^{1/3} Exponenciales: exp(x), exp(−x)exp(x), exp(-x) Funciones trigonométricas: sin(x),cos(x),tan(x)sin(x), cos(x), tan(x) especialmente cuando una característica tiene comportamiento periódico Sigmoide: 1/(1+exp(−x))1 / (1 + exp(-x)) Binarización y discretización Binning: dividir una característica X en intervalos, por ejemplo, [x<10],[10≤x<20],[x≥20][x < 10], [10 ≤ x < 20], [x ≥ 20] Combinación de cuantiles: divide los datos en grupos con igual número de observaciones Funciones de umbral (hola, redes neuronales) Splines Wavelet y transformadas de Fourier y muchas otras
Recopilando nuevas funciones
Si generar nuevas características no mejora la métrica, podemos pasar a un enfoque "más pesado": recopilar más datos, pero esta vez no nuevas observaciones, como hicimos antes, sino nuevas características, es decir, nuevas columnas.
Supongamos que tenemos la oportunidad de recopilar varias características candidatas adicionales. En el caso de los precios de los apartamentos, tendría sentido considerar lo siguiente:
Área del apartamento, en metros cuadrados Distancia a la estación de metro más cercana, en metros Ciudad Si el apartamento tiene aire acondicionado
El conjunto de datos actualizado tendría entonces el siguiente aspecto:
Una nota sobre la visualización
Volviendo a la Figura 1 y a la mayoría de las figuras anteriores en este artículo, es fácil ver que un gráfico bidimensional ya no es suficiente para capturar todas las características. Entonces es hora de cambiar a nuevas visualizaciones y mirar los datos desde un ángulo diferente (Figura 39 y Animación 9).
Lo mejor es revisar la figura en detalle (Figura 40).
La animación 9 destaca dos patrones notables en el conjunto de datos:
Cuanto más cerca esté un apartamento del metro, más alto suele ser su precio. Los apartamentos cerca de las estaciones de metro también tienden a tener un área más pequeña (Observación 2 en la Figura 40). El aire acondicionado es una característica que separa claramente el objetivo, es decir, el precio del apartamento: los apartamentos con aire acondicionado tienden a ser más caros (Observación 6 en la Figura 40).
Como muestran las figuras y la animación, una buena visualización puede revelar patrones importantes en el conjunto de datos mucho antes de que comencemos a ajustar un modelo o a observar gráficos residuales.
Rama lateral 6. Pensando en la Figura 5, ¿por qué disminuyó el precio después de todo?
Volvamos a una de las primeras figuras (Figura 5 y Figura 7) del artículo, la que se utiliza para explicar la idea de describir datos con una línea recta. Mostró un ejemplo con tres observaciones en las que el precio bajó a pesar de que el número de habitaciones aumentó. Pero todo queda claro una vez visualizamos los datos con una característica adicional:
El motivo de la caída de precios se vuelve mucho más claro aquí: aunque los apartamentos eran cada vez más grandes, también estaban mucho más lejos de la estación de metro. No se deje engañar por la simplicidad de este ejemplo. Ilustra una idea importante que es fácil perder de vista cuando se trabaja con datos realmente grandes y complejos: no podemos ver las relaciones entre variables más allá de los datos que realmente analizamos. Por eso siempre hay que sacar conclusiones con cautela. Puede aparecer un nuevo patrón tan pronto como el conjunto de datos gane una dimensión más.
A medida que crece el número de características, se vuelve más difícil crear visualizaciones por pares como las que se muestran en las Figuras 39 y 40. Si su conjunto de datos contiene muchas características numéricas, una opción común es usar matrices de correlación (Figura 41). Estoy seguro de que los encontrará con frecuencia si continúa explorando el dominio de la ciencia de datos/análisis de datos.
Aquí se aplica el mismo principio que al evaluar la calidad del modelo: cognitivamente es más fácil para un ingeniero interpretar números, uno para cada par, que inspeccionar un gran conjunto de subtramas. La Figura 41 muestra que el precio está correlacionado positivamente con las características, número de habitaciones y área, y negativamente con la distancia al metro. Esto tiene sentido: en general, cuanto más cerca esté un apartamento del metro o cuanto más grande sea, más caro suele ser.
También vale la pena señalar por qué se visualiza con tanta frecuencia el coeficiente de correlación. Siempre es útil comprobar si el conjunto de datos contiene predictores que estén fuertemente correlacionados entre sí, un fenómeno conocido como multicolinealidad. Eso es exactamente lo que vemos para el par número de habitaciones y área, donde el coeficiente de correlación es igual a uno. En casos como este, a menudo tiene sentido eliminar una de las funciones, porque agrega poca información útil al modelo y al mismo tiempo consume recursos, por ejemplo, durante la preparación de datos y la optimización del modelo. La multicolinealidad también puede tener otras consecuencias desagradables, pero hablaremos de ello un poco más adelante.
Sobre la importancia de las características (categóricas) de preprocesamiento
Como muestra la Figura 39, la tabla ahora contiene no sólo valores numéricos claros, como el número de habitaciones, sino también distancias menos ordenadas al metro, e incluso valores no sencillos, como nombres de ciudades o respuestas de texto a preguntas como si el apartamento tiene una determinada característica (por ejemplo, aire acondicionado).
Y si bien la distancia al metro no es un problema, es simplemente otra característica numérica como las que usamos anteriormente en el modelo, los nombres de las ciudades no se pueden introducir directamente en el modelo. Intente asignar un coeficiente a una expresión como esta: precio del apartamento = X * Nueva York. Se podría bromear diciendo que algunos “apartamentos” realmente podrían costar, digamos, dos Nueva York, pero eso no le dará un modelo útil. Es por eso que las características categóricas requieren métodos especiales para convertirlas en forma numérica.
Empezando por la característica más sencilla, el aire acondicionado, ya que sólo requiere dos valores, sí o no. Características como esta generalmente están codificadas, es decir, convertidas de texto a números, usando dos valores, por ejemplo (Figura 42):
Observe que la Figura 42 no muestra dos modelos separados, cada uno ajustado a su propio subconjunto, sino un solo modelo. Aquí, el coeficiente de pendiente b1b_1 permanece fijo, mientras que el desplazamiento vertical de la línea ajustada difiere dependiendo de si la característica binaria es 0 o 1. Esto sucede porque cuando la característica es igual a 0, el término correspondiente en el modelo se vuelve cero. Esto funciona bien cuando la relación entre las características y el objetivo es lineal y sigue la misma dirección para todas las observaciones. Pero una característica binaria no ayudará mucho cuando la relación es más compleja y cambia de dirección en los datos (Figura 43).
Como muestra la Figura 43, en el peor de los casos, un modelo con una característica binaria colapsa y adopta el mismo comportamiento que un modelo con una sola característica numérica. Para abordar este "problema", podemos tomar prestada una idea de la sección anterior (generación de características) y generar una nueva característica de interacción, o podemos ajustar dos modelos separados para diferentes partes del conjunto de datos (Figura 44).
Ahora que hemos abordado la característica binaria, tiene sentido pasar al caso más complejo en el que una columna contiene más de dos valores únicos. Hay muchas formas de codificar valores categóricos, y algunas de ellas se muestran en la Figura 45. Sin embargo, no las analizaré todas aquí porque, según mi propia experiencia, la codificación one-hot ha sido suficiente para aplicaciones prácticas. Solo tenga en cuenta que existen diferentes métodos de codificación.
Estimar la importancia de las características
Ahora que sabemos cómo hacer que el modelo sea más complejo agregando nuevas características, tiene sentido hablar más cuidadosamente sobre cómo combinar las variables independientes. Por supuesto, cuando el espacio de funciones crece, ya sea mediante la generación de funciones o mediante la recopilación de nuevos datos, rápidamente aparecen límites prácticos, como el "sentido común" y el "tiempo de entrenamiento" del modelo. Pero también podemos confiar en heurísticas más efectivas para decidir qué características realmente vale la pena mantener en el modelo. Comience por el más simple y observe más de cerca los coeficientes de un modelo de regresión lineal múltiple (Figura 46).
Como muestra la Figura 46, aquí aparece un pequeño problema: las diferencias en la escala de características afectan los coeficientes estimados. Las diferencias de escala también provocan otros efectos desagradables, que se vuelven especialmente notorios cuando se utilizan métodos numéricos para encontrar los coeficientes óptimos. Es por eso que es una práctica estándar llevar las características a una escala común mediante la normalización.
Normalización y estandarización (escalado estándar) de características.
La normalización es una transformación de datos que lleva los valores de las matrices al mismo rango (Figura 47).
Una vez que las características se llevan a la misma escala, el tamaño de los coeficientes en un modelo de regresión lineal se convierte en un indicador conveniente de cuán fuertemente se basa el modelo en cada variable al hacer predicciones.
Las fórmulas exactas utilizadas para la normalización y estandarización se muestran en la Figura 48.
A partir de este momento, asumiremos que todas las características numéricas han sido estandarizadas. En aras de visualizaciones más claras, aplicaremos también la misma transformación al objetivo, aunque no es obligatorio. Cuando sea necesario, siempre podemos convertir el objetivo a su escala original.
Coeficiente del modelo y panorama de errores cuando las características están estandarizadas
Una vez que se han estandarizado las características originales, es decir, los coeficientes b1b_1, b2b_2, b3b_3, etc. ahora están en una escala comparable, lo que hace que sean más fáciles de variar, es un buen momento para observar más de cerca cómo sus valores afectan el error del modelo. Para medir el error, usaremos MAE y MAPE para regresión lineal simple y RMSE para regresión lineal múltiple.
Como muestra la Animación 10, existe una combinación particular de coeficientes en la que el error del modelo alcanza su mínimo. Al mismo tiempo, los cambios en la intersección y la pendiente afectan el error en un grado similar, las líneas de contorno de la superficie de error a la izquierda son casi circulares.
A modo de comparación, resulta útil observar cuán diferentes pueden ser los panoramas métricos. En el caso del error porcentual absoluto medio, el panorama cambia notablemente. Como MAPE es sensible a errores con valores objetivo pequeños, en el caso de los “apartamentos baratos”, el mínimo se extiende hasta formar un valle alargado. Como resultado, muchas combinaciones de coeficientes producen valores MAPE similares siempre que el modelo se ajuste bien a la región de y pequeña, incluso si comete errores notables en apartamentos caros (Animación 11).
A continuación, aumentamos el número de características en el modelo, por lo que en lugar de encontrar la combinación óptima de dos coeficientes, ahora necesitamos encontrar la mejor combinación de tres (Animaciones 12 y 13):
Las animaciones anteriores muestran que las características están fuertemente relacionadas linealmente. Por ejemplo, en la Animación 12, la proyección b1b_1 vs b2b_2, el plano de la izquierda en el panel inferior izquierdo, muestra un patrón lineal claro. Esto nos dice dos cosas. En primer lugar, existe una fuerte correlación negativa entre las características, el número de habitaciones y la distancia al metro. En segundo lugar, aunque los coeficientes “se mueven a lo largo del valle” de valores bajos de RMSE, las predicciones del modelo permanecen estables y el error apenas cambia. Esto también sugiere que las funciones contienen información similar. El mismo patrón aparece en la Animación 13, pero allí la relación lineal entre las características es aún más fuerte y positiva en lugar de negativa.
Espero que esta breve sección con visualizaciones te haya dado la oportunidad de recuperar el aliento, porque la siguiente parte será más difícil de seguir: a partir de ahora, el álgebra lineal se vuelve inevitable. Aún así, prometo que incluirá la misma cantidad de visualizaciones y ejemplos intuitivos.
Ampliando la solución analítica al caso multivariado
Anteriormente en este artículo, cuando exploramos la superficie de error, pudimos ver visualmente dónde el error del modelo alcanzó su mínimo. El modelo en sí no tiene esa señal visual, por lo que encuentra la mejor combinación óptima de coeficientes b0b_0, b1b_1, b2b_2, etc., usando una fórmula. Para la regresión lineal simple, donde solo hay una característica, ya introdujimos esa ecuación (Figura 6). Pero ahora tenemos varias características y, una vez preprocesadas, es natural preguntar cómo encontrar los coeficientes óptimos para la regresión lineal múltiple; en otras palabras, cómo extender la solución a datos de dimensiones superiores.
Un rápido descargo de responsabilidad: esta sección será muy colorida, y eso es intencional, porque cada color tiene un significado. Entonces tengo dos solicitudes. Primero, preste mucha atención a los colores. En segundo lugar, si tiene dificultades para distinguir colores o matices, envíeme sus sugerencias sobre cómo se podrían mejorar estas visualizaciones, incluso en un mensaje privado si lo prefiere. Haré todo lo posible para seguir mejorando las imágenes con el tiempo.
Anteriormente, cuando presentamos la solución analítica, escribimos los cálculos en forma escalar. Pero es mucho más eficaz cambiar a la notación vectorial. Para facilitar ese paso, visualizaremos los datos originales no en el espacio de características, sino en el espacio de observación (Figura 49).
Aunque esta forma de ver los datos puede parecer contradictoria al principio, no hay ninguna magia detrás de ella. Los datos son exactamente los mismos, sólo ha cambiado la forma. Continuando, en la escuela, al menos en mi caso, los vectores se introdujeron como segmentos de línea dirigidos. Estos “segmentos de línea dirigidos” se pueden multiplicar por un número y sumar. En el espacio vectorial, el objetivo de la regresión lineal es encontrar una transformación del vector x tal que el vector de predicción resultante, generalmente escrito como y^hat{y}, esté lo más cerca posible del vector objetivo y. Para ver cómo funciona esto, podemos empezar probando las transformaciones más simples, comenzando con la multiplicación por un número (Figura 50).
A partir de la esquina superior izquierda de la Figura 50, el modelo no transforma el vector de características x en absoluto, porque el coeficiente b1b_1 es igual a 1. Como resultado, los valores predichos son exactamente los mismos que los valores de las características y el vector x corresponde completamente al vector de pronóstico.
Si el coeficiente b1b_1 es mayor que 1, multiplicar el vector x por este coeficiente aumenta proporcionalmente la longitud del vector de predicción. El vector de características también se puede comprimir, cuando b1b_1 está entre 0 y 1, o invertirse en la dirección opuesta, cuando b1b_1 es menor que 0.
La Figura 50 ofrece una explicación visual clara de lo que significa multiplicar un vector por un escalar. Pero en la Figura 51 aparecen dos operaciones vectoriales más. Tiene sentido revisarlos brevemente por separado antes de continuar (Figura 52).
Después de este breve recordatorio, podemos continuar. Como muestra la Figura 51, para dos observaciones pudimos expresar el vector objetivo como una combinación de vectores de características y coeficientes. Pero ahora toca hacer la tarea más difícil (Animación 14).
A medida que crece el número de observaciones, la dimensionalidad crece con ellas y la trama gana más ejes. Eso rápidamente se vuelve difícil para nosotros (los humanos) imaginarlo, así que no entraré más en dimensiones superiores aquí, no hay una necesidad real. Las ideas principales que estamos discutiendo también funcionan allí. En particular, la tarea sigue siendo la misma: necesitamos encontrar una combinación de los vectores vv (el vector de todos unos) y xx, el vector de características del conjunto de datos, de manera que el vector de predicción resultante y^hat{y} esté lo más cerca posible del vector objetivo yy. Lo único que podemos variar aquí son los coeficientes que multiplican v, es decir, b0b_0, y xx, es decir, b1b_1. Ahora podemos probar diferentes combinaciones y ver cómo se ve la solución tanto en el espacio de características como en el espacio vectorial (Animación 15).
Se puede delinear el área de la gráfica que contiene todas las soluciones posibles, lo que nos da un plano. En la animación anterior, ese plano se muestra como un paralelogramo para que sea más fácil de ver. Llamaremos a este plano subespacio de predicción y lo denotaremos como Col(X)Col(X). Como se muestra en la Animación 15, el vector objetivo y no se encuentra en el subespacio de solución. Esto significa que no importa qué solución o vector de predicción encontremos, siempre diferirá ligeramente del objetivo. Nuestro objetivo es encontrar un vector de predicción que se encuentre lo más cerca posible de y y al mismo tiempo pertenezca al subespacio Col(X)Col(X).
En la visualización anterior, construimos este subespacio combinando los vectores vv y xx con diferentes coeficientes. La misma expresión también se puede escribir en una forma más compacta, utilizando la multiplicación de matrices. Para ello, introducimos un vector más, esta vez construido a partir de los coeficientes b0b_0 y b1b_1. Lo denotaremos por b→vec{b}. Un vector se puede transformar multiplicándolo por una matriz, que puede rotarlo, estirarlo o comprimirlo y también asignarlo a otro subespacio. Si tomamos la matriz XX construida a partir de los vectores columna vv y xx, y la multiplicamos por el vector b→vec{b} formado por los valores de los coeficientes, obtenemos una aplicación de yy en el subespacio Col(X)Col(X) (Figura 53).
Tenga en cuenta que, de acuerdo con nuestras suposiciones, el vector objetivo no se encuentra en el subespacio de predicción. Si bien siempre se puede trazar una línea recta exactamente a través de dos puntos, con tres o más puntos aumenta la posibilidad de que no exista un modelo perfecto con error cero. Es por eso que el vector objetivo no se encuentra en el hiperplano ni siquiera para el modelo óptimo (consulte el vector negro para el modelo C en la Figura 54).
Una mirada más cercana a la figura revela una diferencia importante entre los vectores de predicción de los modelos A, B y C: el vector del modelo C parece la sombra del vector objetivo en el plano. Esto significa que resolver un problema de regresión lineal se puede interpretar como proyectar el vector y en el subespacio Col(X)Col(X). La mejor predicción entre todas las posibles es el vector que termina en el punto del plano más cercano al objetivo. Desde la geometría básica, el punto más cercano en un plano es el punto donde una perpendicular del objetivo se encuentra con el plano. Este segmento perpendicular también es un vector, llamado vector residual ee, porque se obtiene restando las predicciones del objetivo (recuerde la fórmula residual del capítulo sobre evaluación de modelos visuales).
Entonces, conocemos el vector objetivo yy y el vector de características xx. Nuestro objetivo es encontrar un vector de coeficientes b→vec{b} tal que el vector de predicción resultante y^hat{y} sea lo más cercano posible a yy. No conocemos el vector residual ee, pero sí sabemos que es ortogonal al espacio Col(X)Col(X). Esto, a su vez, significa que ee es ortogonal a todas las direcciones del plano y, por tanto, en particular, perpendicular a cada columna de XX, es decir, a los vectores vv y xx.
El método analítico que acabamos de analizar se llama método de mínimos cuadrados o mínimos cuadrados ordinarios (OLS). Tiene este nombre porque elegimos los coeficientes para minimizar la suma de residuos al cuadrado del modelo (Figura 6). En el espacio vectorial, el tamaño de los residuos es la distancia euclidiana al cuadrado desde el punto objetivo hasta el subespacio Col(X)Col(X) (Figura 55). En otras palabras, mínimos cuadrados significa la distancia al cuadrado más pequeña.
Ahora recordemos el objetivo de esta sección: trabajamos con las fórmulas y visualizaciones anteriores para extender la solución analítica al caso multivariado. ¡Y ahora es el momento de comprobar cómo funciona la fórmula cuando no hay una sino dos características! Considere un conjunto de datos con tres observaciones, al que agregamos una característica más (Animación 16).
Hay tres hallazgos importantes que podemos extraer de la Animación 16:
Primero, el plano modelo pasa exactamente por los tres puntos de datos. Esto significa que la segunda característica agregó la información faltante que le faltaba al modelo de una característica. En la Figura 50, por ejemplo, ninguna de las líneas pasó por todos los puntos. En segundo lugar, a la derecha, el número de vectores no ha cambiado porque el conjunto de datos todavía contiene tres observaciones. En tercer lugar, el subespacio Col(X)Col(X) ya no es sólo un “plano” en el gráfico, sino que ahora llena todo el espacio. Para fines de visualización, los valores están delimitados por una forma tridimensional, un paralelepípedo. Dado que este subespacio contiene completamente el vector objetivo y, la proyección del objetivo se vuelve trivial. En la animación, el vector objetivo y el vector de predicción coinciden. El residuo es cero.
Cuando la solución analítica tiene dificultades
Ahora imagina que tenemos mala suerte y la nueva función x2 no agrega ninguna información nueva. Supongamos que esta nueva característica se puede expresar como una combinación lineal de las otras dos, el término de desplazamiento y la característica x1. En ese caso, el polígono Col(X)Col(X) colapsa nuevamente en un plano, como se muestra en la Animación 17.
Y aunque anteriormente no teníamos problemas para encontrar una proyección sobre dicho subespacio, el vector de predicción ahora no se construye a partir de dos vectores, el término de desplazamiento y x1, sino de tres, el término de desplazamiento, x1 y x2. Como ahora hay más grados de libertad, hay más de una solución. En el lado izquierdo del gráfico, esto se muestra mediante dos superficies de modelo separadas que describen los datos igualmente bien desde el punto de vista del método de mínimos cuadrados. A la derecha se muestran los vectores de características para cada modelo, y en ambos casos suman el mismo vector de predicción.
Con este tipo de datos de entrada, el problema aparece al intentar calcular la matriz inversa (Figura 56).
Como muestra la Figura 56, la matriz es singular, lo que significa que no se puede aplicar la fórmula de la matriz inversa y no existe una solución única. Vale la pena señalar que incluso cuando no existe una dependencia lineal exacta, el problema persiste si las características están altamente correlacionadas entre sí, por ejemplo, la superficie del piso y el número de habitaciones. En ese caso, la matriz queda mal condicionada y la solución se vuelve numéricamente inestable. También pueden surgir otros problemas, por ejemplo con las funciones codificadas en caliente, pero incluso esto ya es suficiente para empezar a pensar en métodos de solución alternativos.
Además de las cuestiones analizadas anteriormente, una solución analítica para la regresión lineal tampoco es aplicable en los siguientes casos:
Se utiliza una función de pérdida no cuadrática o no suave, como la pérdida L1 o la pérdida cuantil. En ese caso, la tarea ya no se reduce al método de mínimos cuadrados. El conjunto de datos es muy grande o el dispositivo informático tiene memoria limitada, por lo que incluso si existe una fórmula, calcularla directamente no es práctico.
Anticipando cómo se sentirá el lector después de leer esta sección, vale la pena detenerse un momento y tener en mente una idea principal: a veces la “fórmula” o no funciona o no vale la pena usarla, y en esos casos recurrimos a métodos numéricos.
Métodos numéricos
Para abordar el problema con la fórmula de solución analítica descrita anteriormente, se utilizan métodos numéricos. Sin embargo, antes de pasar a implementaciones específicas, es útil plantear la tarea claramente: necesitamos encontrar una combinación de coeficientes para las características en un modelo de regresión lineal que haga que el error sea lo más pequeño posible. Mediremos el error utilizando métricas.
Búsqueda exhaustiva
El enfoque más sencillo es probar todas las combinaciones de coeficientes utilizando un tamaño de paso fijo. En este caso, una búsqueda exhaustiva significa verificar cada par de coeficientes de una cuadrícula discreta predefinida de valores y seleccionar el par con el error más pequeño. Para medir ese error se suele utilizar la métrica MSE, que es igual que RMSE pero sin la raíz cuadrada.
Quizás por mi amor por la geografía, siempre me ha venido a la mente una analogía: la optimización como búsqueda del lugar con menor elevación (Animación 18). Imagine un paisaje en el "mundo real" a la izquierda. Durante la búsqueda, podemos muestrear ubicaciones individuales y construir un mapa en el centro, para resolver un problema práctico, en nuestro caso, encontrar las coordenadas del punto donde la función de error alcanza su mínimo.
Para simplificar, las animaciones 18 y 19 muestran el proceso de encontrar coeficientes para una regresión lineal simple. Sin embargo, los métodos de optimización numérica discutidos aquí también se extienden a casos multivariados, donde el modelo incluye muchas características. La idea principal sigue siendo la misma, pero estos problemas se vuelven extremadamente difíciles de visualizar debido a su alta dimensionalidad.
búsqueda aleatoria
El enfoque de búsqueda exhaustiva tiene un gran inconveniente: depende en gran medida del tamaño del paso de la cuadrícula. La cuadrícula cubre el espacio de manera uniforme y, aunque algunas regiones son claramente poco prometedoras, todavía se realizan cálculos para combinaciones de coeficientes deficientes. Por lo tanto, podría resultar beneficioso explorar el paisaje al azar sin una cuadrícula predefinida (Animación 19).
Una desventaja tanto de la búsqueda aleatoria como de la búsqueda basada en cuadrículas es su costo computacional, especialmente cuando el conjunto de datos es grande y la cantidad de características es alta. En ese caso, cada iteración requiere esfuerzo computacional, por lo que tiene sentido buscar un enfoque que minimice el número de iteraciones.
Usando información sobre la dirección.
En lugar de probar a ciegas combinaciones de coeficientes aleatorios, el enfoque se puede mejorar utilizando información sobre la forma del panorama de funciones de error y dando un paso en la dirección más prometedora en función del valor actual. Esto es especialmente relevante para la función de error MSE en regresión lineal, porque la función de error es convexa, lo que significa que tiene solo un óptimo global.
Para que la idea sea más fácil de ver, simplificaremos el problema y tomaremos una porción de un solo parámetro, una matriz unidimensional, y la usaremos como ejemplo. A medida que avanzamos en esta matriz, podemos aprovechar el hecho de que el valor del error ya se calculó en el paso anterior. Al tomar MSE en este ejemplo y comparar el valor actual con el anterior, podemos determinar qué dirección tiene sentido para el siguiente paso, como se muestra en la Figura 57.
Nos movemos a lo largo del corte de izquierda a derecha, y si el error comienza a aumentar, giramos y nos movemos en la dirección opuesta.
Tiene sentido visualizar este enfoque en acción. Comience a partir de una suposición inicial aleatoria, un punto elegido al azar en el gráfico, y muévase hacia la derecha, aumentando así el coeficiente de intersección. Si el error comienza a crecer, se da el siguiente paso en la dirección opuesta. Durante la búsqueda también contaremos cuantas veces se evalúa la métrica (Animación 20).
Es importante señalar explícitamente que en la Animación 20 el paso siempre es igual a un intervalo, un paso de cuadrícula, y aún no se utilizan derivadas, anticipando el algoritmo de descenso de gradiente. Simplemente comparamos valores métricos en pares.
El enfoque descrito anteriormente tiene un gran inconveniente: depende en gran medida del tamaño de la cuadrícula. Por ejemplo, si la cuadrícula está bien, serán necesarios muchos pasos para llegar al óptimo. Por otro lado, si la cuadrícula es demasiado gruesa, se perderá el óptimo (Animación 21).
Por lo tanto, queremos que la cuadrícula sea lo más densa posible para poder descender al mínimo con alta precisión. Al mismo tiempo, queremos que sea lo más escaso posible para reducir el número de iteraciones necesarias para alcanzar el óptimo. Usar la derivada resuelve ambos problemas.
descenso de gradiente
A medida que el paso de la cuadrícula se hace más pequeño en las comparaciones por pares, llegamos a la definición de la derivada basada en límites (Figura 58).
Ahora es el momento de navegar por el panorama de errores. Vea la animación a continuación, que muestra los vectores gradiente y antigradiente (Animación 22). Como podemos ver, el tamaño del paso ahora se puede elegir libremente, porque ya no estamos limitados por una cuadrícula regular [Goh, Gabriel. Por qué Momentum realmente funciona. 2017. https://distill.pub/2017/momentum/].
En espacios multivariados, por ejemplo cuando se optimizan los coeficientes de intersección y pendiente al mismo tiempo, el gradiente consta de derivadas parciales (Figura 59).
Ahora es el momento de ver el descenso de gradiente en acción (Animación 23).
Vea cómo el descenso de gradiente converge a diferentes tasas de aprendizaje
(enlace al código para generar la animación – animación del autor)
Una característica útil de los métodos numéricos es que la función de error se puede definir de diferentes maneras y, como resultado, se pueden optimizar diferentes propiedades del modelo (Figura 60).
Cuando se utiliza la función de pérdida de Tukey, el proceso de optimización tiene el siguiente aspecto (Animación 24).
Sin embargo, a diferencia de la pérdida al cuadrado, la función de pérdida de Tukey no siempre es convexa, lo que significa que puede tener mínimos locales y puntos silla donde la optimización puede atascarse (Animación 25).
Pasemos ahora a la regresión multivariada. Si observamos la historia de convergencia de la solución hacia los coeficientes óptimos, podemos ver cómo los coeficientes para las características "importantes" aumentan gradualmente, mientras que el error también disminuye gradualmente (Figura 61).
Regularización
Recuerde el efecto que se muestra en la Animación 5, donde diferentes muestras de entrenamiento condujeron a diferentes coeficientes estimados, aunque intentábamos recuperar la misma relación subyacente entre la característica y el objetivo. El modelo resultó ser inestable, lo que significa que era sensible a la división de la prueba del tren.
También hay otro problema: a veces un modelo funciona bien en el conjunto de entrenamiento pero mal con datos nuevos.
Entonces, en esta sección, veremos la estimación de coeficientes desde dos perspectivas:
Cómo ayuda la regularización cuando diferentes divisiones de pruebas de trenes conducen a diferentes estimaciones de coeficientes Cómo ayuda la regularización al modelo a funcionar bien con nuevos datos
Tenga en cuenta que nuestros datos no son excelentes: hay multicolinealidad, es decir, correlación entre características, lo que conduce a coeficientes numéricamente inestables (Figura 62).
Una forma de mejorar la estabilidad numérica es imponer restricciones a los coeficientes, es decir, utilizar la regularización (Figura 63).
La regularización permite un control más preciso sobre el proceso de entrenamiento: los coeficientes de características adquieren valores más razonables. Esto también ayuda a abordar un posible sobreajuste, cuando el modelo funciona mucho peor con datos nuevos que con el conjunto de entrenamiento (Figura 64).
En cierto punto (Figura 64), la métrica en el conjunto de prueba comienza a aumentar y a divergir de la métrica en el conjunto de entrenamiento, a partir de la iteración 10 del descenso de gradiente con regularización L2. Esta es otra señal de sobreajuste. Aún así, para los modelos lineales, este comportamiento en las iteraciones de descenso de gradiente es relativamente raro, a diferencia de muchos otros algoritmos de aprendizaje automático.
Ahora podemos ver cómo cambian los gráficos para diferentes valores de coeficientes en la Figura 65.
La Figura 65 muestra que con la regularización, los coeficientes se vuelven más uniformes y ya no difieren mucho, incluso cuando se utilizan diferentes muestras de entrenamiento para ajustar el modelo.
Sobreajuste
La fuerza de la regularización puede variar (Animación 26).
La animación 26 muestra lo siguiente:
Fila 1: los coeficientes de las características, las métricas de los conjuntos de entrenamiento y prueba, y un gráfico que compara las predicciones con los valores reales del modelo sin regularización. Fila 2: Cómo se comporta la regresión de Lasso en diferentes niveles de regularización. El error en el conjunto de prueba disminuye al principio, pero luego el modelo colapsa gradualmente para predecir la media porque la regularización se vuelve demasiado fuerte y los coeficientes de características se reducen a cero. Fila 3: a medida que la regularización se vuelve más fuerte, la regresión Ridge muestra valores de error cada vez mejores en el conjunto de prueba, aunque el error en el conjunto de entrenamiento aumenta gradualmente.
La principal conclusión de Animation 26 es la siguiente: con una regularización débil, el modelo funciona muy bien en el conjunto de entrenamiento, pero su calidad cae notablemente en el conjunto de prueba. Este es un ejemplo de sobreajuste (Figura 66).
A continuación se muestra un ejemplo artificial pero muy ilustrativo basado en características generadas para la regresión polinómica (Animación 27).
Ajuste de hiperparámetros
Arriba, abordamos una pregunta muy importante: cómo determinar qué valor del hiperparámetro alfa es adecuado para nuestro conjunto de datos (ya que podemos variar la intensidad de la regularización). Una opción es dividir los datos en conjuntos de entrenamiento y prueba, entrenar n modelos en el conjunto de entrenamiento y luego evaluar la métrica en el conjunto de prueba para cada modelo. Luego elegimos el que tiene el error de prueba más pequeño (Figura 67).
Sin embargo, el enfoque anterior crea el riesgo de ajustar el modelo a un conjunto de pruebas específico, razón por la cual la validación cruzada se usa comúnmente en el aprendizaje automático (Figura 68).
Como muestra la Figura 68, en la validación cruzada la métrica se evalúa utilizando todo el conjunto de datos, lo que hace que las comparaciones sean más confiables. Este es un enfoque muy común en el aprendizaje automático, y no solo para modelos de regresión lineal. Si este tema le interesa, la documentación de scikit-learn sobre validación cruzada es un buen lugar para continuar: https://scikit-learn.org/stable/modules/cross_validation.html.
La regresión lineal es un mundo entero.
En el aprendizaje automático, está relacionado con métricas, validación cruzada, ajuste de hiperparámetros, optimización de coeficientes con descenso de gradiente, métodos para filtrar valores y seleccionar características, y preprocesamiento.
En estadística y teoría de la probabilidad, implica estimación de parámetros, distribuciones residuales, intervalos de predicción y pruebas estadísticas.
En álgebra lineal, incluye vectores, operaciones matriciales, proyecciones sobre subespacios de características y mucho más.
Conclusión
Gracias a todos los que llegaron hasta aquí.
No solo nos familiarizamos con un algoritmo de aprendizaje automático, sino también con el conjunto de herramientas necesario para ajustarlo cuidadosamente y diagnosticar su comportamiento. Espero que este artículo contribuya a su viaje hacia el mundo del aprendizaje automático y la estadística. A partir de ahora navegarás solo 🙂
Si disfrutó de las visualizaciones y ejemplos y le gustaría utilizarlos en sus propias conferencias o charlas, hágalo. Todos los materiales y el código fuente utilizado para generarlos están disponibles en el repositorio de GitHub: https://github.com/Dreamlone/linear-regression
Atentamente, Mijail Sarafanov