Ejercicio de programación con ScikitLearn: Validación y evaluación de modelos en series temporales

Código
Práctica
0h 30m

Ejercicio práctico de validación cruzada en series temporales usando Scikit-Learn y TimeSeriesSplit para evaluar modelos y evitar sobreajuste.

A menudo, al trabajar con modelos de series temporales, es importante mantener la secuencia temporal al dividir los datos para evitar el sobreajuste y obtener evaluaciones precisas. En este reto, aplicarás técnicas de validación cruzada adaptadas a series temporales utilizando Scikit-Learn. Usarás TimeSeriesSplit para crear particiones que respeten el orden temporal, y evaluarás un modelo sobre esos datos.

  1. Carga los datos: Usa el conjunto de datos de flights proporcionado por la librería Seaborn. Importa Seaborn y carga los datos con sns.load_dataset('flights').
  2. Preparamos los datos:
    • Filtra el DataFrame para tener solamente las columnas de interés: ['passengers'].
    • Divide el conjunto de datos en características X y variable objetivo y.
  3. Implementación de TimeSeriesSplit:
    • Define un objeto TimeSeriesSplit con 5 divisiones. Asegúrate de que las particiones mantengan la integridad temporal.
  4. Entrena un modelo de regresión:
    • Utiliza RandomForestRegressor para ajustar el modelo sobre las particiones temporales creadas.
    • La variable a predecir es el número de pasajeros.
    • Por cada partición (fold), entrena el modelo en el conjunto de entrenamiento y predice en el conjunto de prueba.
  5. Calcula el rendimiento del modelo:
    • Calcula el Error Absoluto Medio (MAE) por cada partición y almacena los resultados.
  6. Presenta los resultados:
    • Imprime el MAE promedio de todas las particiones.
Empezar ejercicio de programación

Todos los ejercicios de programación de ScikitLearn

Evalúa tus conocimientos con ejercicios de programación en ScikitLearn de tipo Test, Puzzle, Código y Proyecto con VSCode.

Regresión SVM con SVR

scikit-learn
Código

Ajuste de hiperparámetros

scikit-learn
Código

Pipelines y Validación Cruzada

scikit-learn
Código

Preprocesamiento de datos desbalanceados

scikit-learn
Código

Pipelines con ColumnTransformer

scikit-learn
Código

Validación y evaluación de modelos

scikit-learn
Código

Preprocesamiento de datos de series temporales

scikit-learn
Código

Identificación y tratamiento de valores faltantes

scikit-learn
Código

Ingeniería de características para series temporales

scikit-learn
Código

Introducción a la clasificación

scikit-learn
Código

Transformación y escalado de series temporales

scikit-learn
Código

Extracción de características

scikit-learn
Código

Clasificación KNN KNeighborsClassifier

scikit-learn
Código

Regresión con algoritmos de conjunto

scikit-learn
Código

Regresión lineal

scikit-learn
Código

Reducción de la dimensionalidad con PCA

scikit-learn
Código

Clasificación con algoritmos de conjunto

scikit-learn
Código

Clasificación SVM con SVC

scikit-learn
Código

Escalado de datos

scikit-learn
Código

Clustering jerárquico

scikit-learn
Código

Análisis de sentimiento

scikit-learn
Código

Regresión KNN KNeighborsRegressor

scikit-learn
Código

Técnicas de validación cruzada

scikit-learn
Código

Introducción al preprocesamiento de datos

scikit-learn
Código

Exportar e importar Pipelines

scikit-learn
Código

Preprocesamiento de textos para NLP

scikit-learn
Código

Clasificación con árboles DecisionTreeClassifier

scikit-learn
Código

Selección de Características

scikit-learn
Código

Introducción a la regresión

scikit-learn
Código

Clasificación con regresión logística en Scikit Learn

scikit-learn
Código

Ingeniería de Características

scikit-learn
Código

Clustering con KMeans

scikit-learn
Código

Introducción al análisis de series temporales

scikit-learn
Código

Codificación de variables categóricas

scikit-learn
Código

Clasificación de Texto con Scikit Learn

scikit-learn
Código

Métricas de Regresión

scikit-learn
Código

Aprendizaje automático

scikit-learn
Puzzle

Clustering de densidad con DBSCAN

scikit-learn
Código

Métricas de clasificación

scikit-learn
Código

Técnicas avanzadas de extracción de características

scikit-learn
Código

Creación de pipelines básicos

scikit-learn
Código

Particionamiento de datos

scikit-learn
Código

Normalización de datos

scikit-learn
Código

Regresión con árboles DecisionTreeRegressor

scikit-learn
Código

Introducción e instalación de Scikit Learn

scikit-learn
Código

Preprocesamiento de datos con pipelines

scikit-learn
Código

Representación de texto y extracción de características

scikit-learn
Código

Introducción a pipelines

scikit-learn
Código

Tutorial para resolver este ejercicio de programación

scikit-learn

ScikitLearn

Validación y evaluación de modelos en series temporales

Series temporales

Otros tutoriales de programación con ScikitLearn

Aprendizaje Automático

scikit-learn

Introducción Y Entorno

Introducción E Instalación

scikit-learn

Introducción Y Entorno

Introducción Al Preprocesamiento De Datos

scikit-learn

Preprocesamiento De Datos

Identificación Y Tratamiento De Valores Faltantes

scikit-learn

Preprocesamiento De Datos

Escalado De Datos

scikit-learn

Preprocesamiento De Datos

Normalización De Datos

scikit-learn

Preprocesamiento De Datos

Codificación De Variables Categóricas

scikit-learn

Preprocesamiento De Datos

Ingeniería De Características

scikit-learn

Preprocesamiento De Datos

Selección De Características

scikit-learn

Preprocesamiento De Datos

Extracción De Características

scikit-learn

Preprocesamiento De Datos

Particionamiento De Datos

scikit-learn

Preprocesamiento De Datos

Preprocesamiento De Datos Desbalanceados

scikit-learn

Preprocesamiento De Datos

Introducción A La Regresión

scikit-learn

Regresión

Regresión Lineal

scikit-learn

Regresión

Regresión Knn Kneighborsregressor

scikit-learn

Regresión

Regresión Svm Con Svr

scikit-learn

Regresión

Regresión Con Árboles Decisiontreeregressor

scikit-learn

Regresión

Regresión Con Algoritmos De Conjunto

scikit-learn

Regresión

Introducción A La Clasificación

scikit-learn

Clasificación

Clasificación Con Regresión Logística

scikit-learn

Clasificación

Clasificación Knn Kneighborsclassifier

scikit-learn

Clasificación

Clasificación Svm Con Svc

scikit-learn

Clasificación

Clasificación Con Árboles Decisiontreeclassifier

scikit-learn

Clasificación

Clasificación Con Algoritmos De Conjunto

scikit-learn

Clasificación

Reducción De La Dimensionalidad Con Pca

scikit-learn

Aprendizaje No Supervisado

Clustering Con Kmeans

scikit-learn

Aprendizaje No Supervisado

Clustering Jerárquico

scikit-learn

Aprendizaje No Supervisado

Clustering De Densidad Con Dbscan

scikit-learn

Aprendizaje No Supervisado

Preprocesamiento De Textos Para Nlp

scikit-learn

Nlp

Representación De Texto Y Extracción De Características

scikit-learn

Nlp

Clasificación De Texto Con Scikit Learn

scikit-learn

Nlp

Análisis De Sentimiento

scikit-learn

Nlp

Técnicas Avanzadas De Extracción De Características

scikit-learn

Nlp

Introducción Al Análisis De Series Temporales

scikit-learn

Series Temporales

Preprocesamiento De Datos De Series Temporales

scikit-learn

Series Temporales

Ingeniería De Características Para Series Temporales

scikit-learn

Series Temporales

Transformación Y Escalado De Series Temporales

scikit-learn

Series Temporales

Validación Y Evaluación De Modelos

scikit-learn

Validación De Modelos

Técnicas De Validación Cruzada

scikit-learn

Validación De Modelos

Métricas De Regresión

scikit-learn

Validación De Modelos

Métricas De Clasificación

scikit-learn

Validación De Modelos

Ajuste De Hiperparámetros

scikit-learn

Validación De Modelos

Introducción A Pipelines

scikit-learn

Pipelines Y Despliegue

Creación De Pipelines Básicos

scikit-learn

Pipelines Y Despliegue

Preprocesamiento De Datos Con Pipelines

scikit-learn

Pipelines Y Despliegue

Pipelines Y Validación Cruzada

scikit-learn

Pipelines Y Despliegue

Pipelines Con Columntransformer

scikit-learn

Pipelines Y Despliegue

Exportar E Importar Pipelines

scikit-learn

Pipelines Y Despliegue