Intervalos de predicción para la regresión de Gradient Boosting

Beginner

This tutorial is from open-source community. Access the source code

Introducción

Esta práctica demuestra cómo utilizar la regresión cuantílica para crear intervalos de predicción con scikit-learn. Generaremos datos sintéticos para un problema de regresión, aplicaremos la función a estos datos y crearemos observaciones de la variable objetivo utilizando una distribución lognormal. Luego, dividiremos los datos en conjuntos de entrenamiento y prueba, ajustaremos regresores cuantílicos no lineales y de mínimos cuadrados y crearemos un conjunto de evaluación de valores de entrada equiespaciados que cubra el rango [0, 10]. Compararemos la mediana predicha con la media predicha, analizaremos las métricas de error y calibraremos el intervalo de confianza. Finalmente, ajustaremos los hiperparámetros de los regresores cuantílicos.

Consejos sobre la VM

Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje su retroalimentación después de la sesión y resolveremos el problema inmediatamente para usted.

Generar datos sintéticos

Generaremos datos sintéticos para un problema de regresión aplicando la función a entradas aleatorias muestreadas uniformemente. Para que el problema sea interesante, generamos las observaciones de la variable objetivo y como la suma de un término determinista calculado por la función f y un término de ruido aleatorio que sigue una distribución log-normal centrada. La distribución log-normal no es simétrica y tiene una cola larga: es probable observar valores atípicos grandes, pero es imposible observar valores atípicos pequeños.

Dividir los datos en conjuntos de entrenamiento y prueba

Dividiremos los datos en conjuntos de entrenamiento y prueba.

Ajustar regresores cuantílicos no lineales y de mínimos cuadrados

Ajustaremos modelos de potenciación por gradiente entrenados con la pérdida cuantílica y alpha = 0.05, 0.5, 0.95. Los modelos obtenidos para alpha = 0.05 y alpha = 0.95 producen un intervalo de confianza del 90%. El modelo entrenado con alpha = 0.5 produce una regresión de la mediana.

Crear un conjunto de evaluación de valores de entrada equiespaciados

Crearemos un conjunto de evaluación de valores de entrada equiespaciados que cubra el rango [0, 10].

Graficar la función de media condicional verdadera f

Graficaremos la función de media condicional verdadera f, las predicciones de la media condicional (la pérdida es igual al error cuadrático), la mediana condicional y el intervalo condicional del 90% (desde el 5º hasta el 95º percentil condicional).

Analizar las métricas de error

Mediremos los modelos con las métricas mean_squared_error y mean_pinball_loss en el conjunto de entrenamiento. Una columna muestra todos los modelos evaluados por la misma métrica.

Ajustar los hiperparámetros de los regresores cuantílicos

Ajustaremos los hiperparámetros de un nuevo regresor del 5º percentil seleccionando los mejores parámetros del modelo mediante validación cruzada en la pérdida pinball con alpha = 0.05. Luego ajustaremos los hiperparámetros para el regresor del 95º percentil.

Resumen

Esta práctica mostró cómo utilizar la regresión cuantil para crear intervalos de predicción utilizando scikit - learn. Generamos datos sintéticos para un problema de regresión, aplicamos la función a estos datos y creamos observaciones de la variable objetivo utilizando una distribución lognormal. Dividimos los datos en conjuntos de entrenamiento y prueba, ajustamos regresores cuantílicos no lineales y de mínimos cuadrados, y creamos un conjunto de evaluación equiespaciado de valores de entrada que cubre el rango [0, 10]. Comparamos la mediana predicha con la media predicha, analizamos las métricas de error y calibramos el intervalo de confianza. Finalmente, ajustamos los hiperparámetros de los regresores cuantílicos.