Combinar predictores usando Stacking

Machine LearningMachine LearningBeginner
Practicar Ahora

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

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, usaremos el método de Stacking para combinar varios estimadores y hacer predicciones. En esta estrategia, algunos estimadores se ajustan individualmente a algunos datos de entrenamiento, mientras que un estimador final se entrena usando las predicciones apiladas de estos estimadores base. Usaremos el conjunto de datos de viviendas de Ames para predecir el precio logarítmico final de las casas. Usaremos 3 algoritmos de aprendizaje, lineales y no lineales, y usaremos un regresor Ridge para combinar sus salidas. También compararemos el rendimiento de cada predictor individual y del conjunto de regresores.

Consejos sobre la VM

Una vez que se haya iniciado 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 comentarios después de la sesión y resolveremos el problema rápidamente para usted.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills ml/sklearn -.-> lab-49302{{"Combinar predictores usando Stacking"}} end

Descargar el conjunto de datos

Usaremos el conjunto de datos de viviendas de Ames, que fue compilado por primera vez por Dean De Cock y se hizo más conocido después de ser utilizado en un desafío de Kaggle. Es un conjunto de 1460 viviendas residenciales en Ames, Iowa, cada una descrita por 80 características. Lo usaremos para predecir el precio logarítmico final de las casas. En este ejemplo, usaremos solo las 20 características más interesantes elegidas usando GradientBoostingRegressor() y limitaremos el número de registros.

Crear un pipeline para preprocesar los datos

Antes de poder usar el conjunto de datos de Ames, todavía necesitamos hacer un poco de preprocesamiento. Primero, seleccionaremos las columnas categóricas y numéricas del conjunto de datos para construir el primer paso del pipeline. Luego, necesitaremos diseñar pipelines de preprocesamiento que dependan del regresor final. Si el regresor final es un modelo lineal, es necesario codificar las categorías con one-hot encoding. Si el regresor final es un modelo basado en árboles, un codificador ordinal será suficiente. Además, los valores numéricos deben ser estandarizados para un modelo lineal, mientras que los datos numéricos sin procesar pueden ser tratados tal cual por un modelo basado en árboles. Sin embargo, ambos modelos necesitan un imputador para manejar los valores faltantes.

Pila de predictores en un solo conjunto de datos

Ahora podemos usar el conjunto de datos de viviendas de Ames para hacer las predicciones. Comprobamos el rendimiento de cada predictor individual y del conjunto de regresores. Combinamos 3 algoritmos de aprendizaje (lineales y no lineales) y usamos un regresor Ridge para combinar sus salidas. El regresor apilado combinará las fortalezas de los diferentes regresores. Sin embargo, también vemos que entrenar el regresor apilado es mucho más costoso computacionalmente.

Medir y graficar los resultados

Mediremos y graficaremos los resultados del regresor apilado en comparación con los predictores individuales.

Resumen

En este laboratorio, aprendimos sobre el método de Stacking para combinar varios estimadores para hacer predicciones. Usamos el conjunto de datos de viviendas de Ames para predecir el precio logarítmico final de las casas. También aprendimos cómo diseñar pipelines de preprocesamiento que dependen del regresor final y cómo medir el rendimiento de cada predictor individual y del conjunto de regresores.