Práctica de Regresión Polinomial

Autor

Óscar Belmonte Fernández

1 Introducción

En esta práctica vas a crear un modelo de regresión polinomial para un conjunto de datos de dos variables, una variable independiente y una variable dependiente.

El modelo deberá estimar la energía producida por una planta eólica a partir del dato de velocidad del viento.

Los datos los puedes descargar desde el github de la asignatura.

Vas a crear un libro de notas de Python para desarrollar la práctica. Este libro lo debes subir a aulavirtual para su evaluación.

2 Duración de la práctica

A esta práctica le vamos a dedicar una sesión de prácticas.

3 Objetivos de aprendizaje

  1. Examinar un conjunto de datos de dos variables y valorar su utilidad.
  2. Construir un modelo de regresión polinomial.
  3. Adaptar el modelo para mejorar su rendimiento.
  4. Plantear posibles mejoras del modelo.
  5. Emplear el esquema de Proyectos de Aprendizaje Automático como guía de desarrollo.

4 Metodología

Vas a seguir una adaptación de los pasos que has visto en la presentación de teoría Proyectos de Aprendizaje Automático.

  1. Definir el problema y tener una imagen del conjunto.
  2. Obtener los datos.
  3. Explorar los datos para conocerlos mejor.
  4. Preparar los datos para que muestren los patrones.
  5. Crear una primera versión del algoritmo.
  6. Ajustar el modelo para obtener una solución.
  7. Presentar la solución.
  8. Crítica del trabajo y posibles mejoras.

5 Objetivo

Crear un modelo de regresión polinómica que ajuste los datos un conjunto de datos con las medidas de generación de energía de un aerogenerador y la velocidad del viento. A partir de este modelo podrás estimar la energía producida por el aerogenerador para la velocidad del viento actual.

6 Tareas a realizar

Vas a seguir una adaptación del esquema que se presentó en el tema de Proyectos de Aprendizaje Automático.

6.1 Definir el problema y tener un imagen del conjunto

Debes redactar, con tus propias palabras en qué consiste el problema en cuestión.

6.2 Obtener los datos

Los datos los puedes descargar desde el github de la asignatura.

El conjunto de datos está formado por una serie de medidas, cada una de ellas presenta la energía generada por un aerogenerador (en kilowatios), para una determinada velocidad del viento (m./s.).

6.3 Explorar los datos para conocerlos mejor

Como los datos son bidimensionales, los podemos representar de manera completa en un gráfico 2D. Fíjate en que hay algunos datos anómalos, para los que la potencia producida es 0 aún cuando sopla el viento.

Visualiza las distribuciones de ambas variables. ¿Reconoces alguna de las distribuciones?

¿Existe correlación entre las dos características?

6.4 Preparar lo datos para que muestren los patrones

Elimina los datos anómalos y vuelve a representarlos en un gráfico 2D.

¿Qué patrón pueden estar siguiendo los datos? Por ejemplo ¿es adecuado describir la relación entre ellos de manera lineal?

6.5 Crear una primera versión del modelo

Ahora que ya tienes una primera hipótesis de cómo crear un modelo, utiliza scikit-learn para implementarlo.

Divide el conjunto inicial de los datos en dos subconjuntos, el conjunto de datos de entrenamiento (80% de los datos), y el conjunto de datos de prueba (20% restante de los datos). Recuerda especificar el origen de generación de los datos aleatorios para que tus experimentos sean reproducibles.

Elige una medida de error para poder comparar los resultados entre varios modelos.

¿Los residuos siguen una distribución normal? Representa la distribución de los residuos y el diagrama qq-plot.

6.6 Ajustar el modelo para obtener una solución

Haz una serie de experimentos variando el grado del polinomio a ajustar. Registra el error para cada uno de ellos.

¿Qué grado del polinomio da el error más pequeño? ¿Es razonable utilizar ese grado del polinomio? ¿Por qué?

Prueba a hacer regresiones utilizando regularización (Ridge y Lasso). ¿Mejoran los resultados? ¿Qué conclusiones puedes extraer al comparar los modelos regularizados con la regresión polinómica sin regularización?

6.7 Presentar la solución

Mejora tu libro de notas para que sea descriptivo del trabajo que has realizado. Presta especial atención a la sección de conclusiones.

6.8 Critica del trabajo y posibles mejoras

¿Qué crees que se puede mejorar del trabajo que has hecho? Haz un listado de posibles mejoras, y ordénalas por importancia de mayor a menor.

7 Entrega

El trabajo que debes entregar para su corrección es el libro de notas (fichero con extensión ipynb).

Súbelo a aulavirtual. No es necesario que los suban todos los miembros del equipo, basta con que lo suba uno de vosotros.