109
Universidad Politécnica de Madrid Escuela Técnica Superior de Ingenieros Informáticos Grado en Ingeniería Informática Trabajo Fin de Grado Predicción de la Radiación mediante el Uso de una Red Neuronal Recurrente Autor: Pablo Heras Aranzana Tutor(a): María Luisa Córdoba Cabeza Madrid, Julio 2020

Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Universidad Politécnica de Madrid

Escuela Técnica Superior de

Ingenieros Informáticos

Grado en Ingeniería Informática

Trabajo Fin de Grado

Predicción de la Radiación mediante el Uso de una Red Neuronal Recurrente

Autor: Pablo Heras Aranzana

Tutor(a): María Luisa Córdoba Cabeza

Madrid, Julio 2020

Page 2: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de la Universidad Politécnica de Madrid para su defensa.

Trabajo Fin de Grado Grado en Ingeniería Informática Título: Predicción de la Radiación mediante el Uso de una Red Neuronal

Recurrente Julio 2020

Autor: Pablo Heras Aranzana Tutor:

María Luisa Córdoba Cabeza DATSI ETSI Informáticos Universidad Politécnica de Madrid

Page 3: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Gracias Marisa y Dopico, por ofrecerme este trabajo y resolver todas las dudas surgidas al realizarlo. Gracias también, Iker, por facilitarme los datos y toda la

ayuda que he necesitado.

Gracias a todos los compañeros con los que he compartido horas de clase, proyecto de inicio, trabajos, cafetería, liga interna o simplemente una cerveza. En especial a

Espa, Pereda, Javi, Christian, Dani y Valentín.

Gracias Carlos, Laynez y Paco porque sois mi segunda familia.

Gracias a Pablo, Jorge y Miguel por formar parte de mi vida durante estos años.

Gracias, tía, tío, Raúl, Jesús y Lucía por ser la mejor familia que podría desear. Y sobre todo gracias a mis padres, por seguir confiando en mi pase lo que pase.

Sin vosotros no habría llegado hasta aquí

Incluso a vosotros, Chus y Antolín, de alguna manera me habéis ayudado a madurar

a pesar de todo. Gracias.

Page 4: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de
Page 5: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

RESUMEN

i

RESUMEN

En la actualidad, el cambio climático es un hecho constatable que nos obliga a cambiar la manera de relacionarnos con el medio ambiente. En este proceso de transición ecológica en el que nos encontramos, las energías renovables juegan un papel fundamental. Sin embargo, este tipo de energías a menudo no se obtienen de manera constante, sino que fluctúan debido a causas meteorológicas y a los ciclos estacionales. Las tecnologías de almacenamiento de energía aún no están lo suficientemente desarrolladas para ser una solución a gran escala, por lo que las redes eléctricas deben adaptarse y estar preparadas para recibir cantidades variables de electricidad.

En el caso particular de la energía solar, es fundamental poder predecir la cantidad de radiación que una placa fotovoltaica va a recibir para así calcular la cantidad de energía que será volcada a la red eléctrica. De esta forma, la red estará preparada para asumirla. En esta área, las redes neuronales han probado su capacidad de predicción dada una gran cantidad de datos. En concreto las redes recurrentes son de especial utilidad para casos en los que los datos tienen una relación temporal [1]. La tecnología IoT (Internet de las cosas) aplicado a los paneles solares nos permiten obtener una gran cantidad de datos de radiación para entrenar estas redes.

Así el objetivo de este trabajo es explorar la capacidad de distintos tipos de redes neuronales recurrentes para predecir datos de radiación solar en un conjunto de placas fotovoltaicas para distintos horizontes de predicción.

Page 6: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

ABSTRACT

ii

ABSTRACT

Nowadays, climate change is an observable fact which force us to change the way we interact with the environment. Renewable energy sources play a central role in the ecologic transition process we are in. However, in most cases these types of energy are not obtained in a constant way. They fluctuate due to meteorological causes and seasonal cycles. Electricity storing technologies are not yet fully developed to be a large-scale solution to the problem. Because of this, the energy grids must be adapted and prepared to receive variable amounts of electricity.

In the case of photovoltaic panels, it is fundamental to be able to predict the amount of solar radiation the panel will receive, in order to calculate the amount of electricity that will be supplied to the grid. Thus, the grid would be ready to handle it. In this field, neural networks have proved their prediction power given huge sets of data. Recurrent neural networks (RNN) specially come in handy in cases where the data presents time correlations. Internet of Things (IoT) technology applied to solar panels now offers us huge amounts radiation data to train these networks.

Therefore, the goal of this project is to explore the capacity of several types of recurrent neural networks to predict radiation measurements in a set of solar panels for different forecast horizons.

Page 7: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

TABLA DE CONTENIDOS

iii

TABLA DE CONTENIDOS

1. Introducción ......................................................................................... 1

2. Estado del arte ...................................................................................... 3 2.1. Redes neuronales ....................................................................................... 3

2.1.1. Historia de las redes neuronales .......................................................... 3 2.1.2. Funcionamiento de las redes neuronales ............................................. 4 2.1.3. Función de activación .......................................................................... 5

2.1.3.1. Función de paso ............................................................................... 6 2.1.3.2. Función sigmoide ............................................................................. 6 2.1.3.3. Tanh ................................................................................................ 7 2.1.3.4. ReLU y Leaky ReLU ........................................................................... 7

2.1.4. Función de coste .................................................................................. 8 2.1.5. Optimizador ......................................................................................... 8

2.1.5.1. Gradient Descent (GD) ....................................................................... 9 2.1.5.2. Gradient Descent con momentum ...................................................... 9 2.1.5.3. RMSprop ........................................................................................ 10 2.1.5.4. Adam.............................................................................................. 10 2.1.5.5. Adadelta ......................................................................................... 10

2.1.6. Hiperparámetros ................................................................................ 11 2.1.6.1. Learning rate .................................................................................. 11 2.1.6.2. Tamaño de mini-batch .................................................................... 11 2.1.6.3. Arquitectura de la red .................................................................... 12 2.1.6.4. Número de épocas .......................................................................... 12

2.1.7. Tipos de redes neuronales ................................................................. 12 2.1.7.1. Redes neuronales convolucionales.................................................. 13 2.1.7.2. Redes neuronales recurrentes ........................................................ 14 2.1.7.3. Redes neuronales híbridas ............................................................. 17

2.2. Trabajos previos ....................................................................................... 17 2.2.1. Caso 1 ............................................................................................... 17 2.2.2. Caso 2 ............................................................................................... 18

3. Herramientas ...................................................................................... 19 3.1. Hardware ................................................................................................. 19 3.2. Software ................................................................................................... 19

3.2.1. Tensorflow ......................................................................................... 20 3.2.2. Keras ................................................................................................. 20

Page 8: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

TABLA DE CONTENIDOS

iv

3.2.3. Numpy ............................................................................................... 20 3.2.4. Vitables ............................................................................................. 21

4. Desarrollo de las soluciones adoptadas ................................................ 23 4.1. Estudio de los datos de entrada ............................................................... 23 4.2. Preprocesamiento de los datos ................................................................. 26 4.3. Desarrollo y aplicación de las redes neuronales ....................................... 28

4.3.1. Horizonte de predicción de 1 hora ...................................................... 29 4.3.2. Horizonte de predicción de 3 horas .................................................... 59 4.3.3. Horizonte de predicción de 6 horas .................................................... 73

4.4. Comparación de resultados ...................................................................... 83

5. Conclusiones ....................................................................................... 89

6. Líneas futuras ..................................................................................... 91 6.1. Redes híbridas: LSTM/ConvoNet .............................................................. 91 6.2. Escalar a un gran número de sensores .................................................... 91 6.3. Transfer Learning ..................................................................................... 92 6.4. Paralelización y uso de sistemas HPC ....................................................... 93

ANEXO: Índice de tablas y figuras ................................................................ 95

Bibliografía ................................................................................................... 99

Page 9: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 1: Introducción

1

CAPÍTULO 1 1. Introducción

La energía solar fotovoltaica está teniendo una creciente importancia y se prevé que aumente sustancialmente en los próximos años. La energía solar fotovoltaica ronda el 4% del mix energético español, lo que equivale a 1003 GWh [2]. Este dato adquiere mayor relevancia teniendo en cuenta que la instalación de este tipo de energías ha aumentado un 500% entre 2016 y 2018 [3]. Es decir, el ritmo de crecimiento es cada vez mayor.

Sin embargo, la producción de energía solar no es constante y presenta variaciones a lo largo del día y también variaciones estacionales. Así, las mediciones diarias tomadas en intervalos cortos de tiempo serán similares, pero la entrada de nubes puede producir bajadas repentinas en la cantidad de radiación recibida. La red eléctrica debe poder adaptarse a estas variaciones de energía y ajustarlas a la demanda, puesto que no puede almacenar la energía sobrante.

El objetivo de este trabajo es el estudio y desarrollo de varios tipos de redes neuronales para medir su capacidad de predecir la radiación solar que recibirán una serie de sensores situados en la isla de Oahu, Hawái. Se analizará su rendimiento para predecir datos en distintos horizontes temporales: 1, 3 y 6 horas. Dadas las correlaciones temporales mencionadas anteriormente, centraremos el trabajo en el uso de redes neuronales recurrentes.

Se experimentará con distintos hiperparámetros: ratios de aprendizaje, funciones de activación, número de épocas y tamaños de batch. Así como con distintas ventanas de datos. Posteriormente, compararemos los resultados en términos de evolución del coste de entrenamiento, velocidad de aprendizaje y precisión en la predicción.

Para el desarrollo de las redes neuronales se empleará el framework de código abierto Keras, escrito en Python. Se trata de un entorno de alto nivel que permite abstraer al usuario de la implementación más técnica de las redes neuronales. De esta forma permite un desarrollo más rápido y centrado en la experimentación con gran cantidad de arquitecturas y diseños de red.

Estudiaremos tres tipos de redes neuronales:

1. Red neuronal Fully-Connected: comenzaremos con redes neuronales simples donde cada nodo de una capa está conectado con todos los nodos de capas contiguas. Se experimentará con distintos números de capas ocultas, así como con el número de neuronas de dichas capas.

2. Red neuronal recurrente (RNN): posteriormente probaremos con una RNN con

el fin de aprovechar las correlaciones temporales de los datos para producir mejores predicciones. A diferencia de las anteriores, estas redes tienen en cuenta las mediciones previas a la hora de realizar la predicción. Sin embargo, este tipo de redes no es capaz de tener en cuenta las correlaciones temporales amplias como, por ejemplo, las que se producen entre mediciones de varias semanas o meses.

Page 10: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 1: Introducción

2

3. Red Long Short-Term Memory (LSTM): este tipo de redes son un subconjunto de las RNN. Tienen la particularidad de que en sus nodos son capaces de mantener en su estado interno resultados de predicciones anteriores que pueden mantener relación con las actuales. De esta forma, las redes LSTM han demostrado una mayor capacidad de predicción cuando los datos presentan patrones temporales amplios. Es por ello por lo que su análisis resulta muy interesante en este caso de estudio y se espera que ofrezca buenos resultados.

Page 11: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

3

CAPÍTULO 2 2. Estado del arte

2.1. Redes neuronales Las redes neuronales son un paradigma computacional inspirado en el cerebro humano y basado en el aprendizaje supervisado. En este apartado se hace un repaso de la historia e importancia de las redes neuronales. Se introducen también los tipos de redes más utilizados y su funcionamiento.

2.1.1. Historia de las redes neuronales Los primeros modelos teóricos que buscan replicar de alguna manera el funcionamiento neuronal del cerebro se remontan a la década de 1940 [4] con los trabajos de Warren S. McCulloch y Walter H. Pitts. En un ensayo de 1943 [5], ya introdujeron algunos de los conceptos básicos que aún se aplican hoy en día en inteligencia artificial y los adaptaron al campo del cálculo y la lógica. Así definieron la neurona como un interruptor que, recibiendo unos valores de entrada, se dispara si alcanza un valor umbral de activación. Demostraron que una red simple de estas neuronas puede calcular prácticamente cualquier función lógica o aritmética. Mencionaron también un uso práctico, aplicando la red a un problema de reconocimiento de patrones espaciales.

Durante los años 50 el desarrollo de este campo se aceleró con la construcción de los primeros supercomputadores que implementan las redes neuronales. Entre ellas destacó en “Mark I perceptron” desarrollado por Frank Rosenblatt, Charles Wightman y su equipo en el MIT. Este sistema era capaz de reconocer caracteres numéricos mediante un sensor de imágenes de 20 x 20 píxeles [4]. En 1960 se desarrolló la primera red neuronal implementada a gran escala. Se trataba de una red de una sola capa y gozó de gran éxito comercial. Se encontraba en la mayoría de los teléfonos analógicos de la época actuando como filtro adaptativo de ruido.

En 1969 Marvin Minsky and Seymour Papert [6] descubrieron serias limitaciones en las redes neuronales para resolver algunos problemas importantes. Así demostraron que las redes existentes no podían predecir correctamente la salida de una puerta lógica XOR. Esta publicación causó un cierto desánimo en las capacidades de las redes neuronales, lo que provocó a su vez una caída en la financiación de este tipo de tecnologías.

Durante la década de 1970 y primera mitad de 1980, debido a la falta de recursos mencionada antes, la investigación y uso de las redes neuronales decayó. En 1986 [7] se descubrió que el problema del XOR podía resolverse mediante redes neuronales con varias capas ocultas. Sin embargo, no se encontró una manera eficiente de actualizar los parámetros de las neuronas en estas redes profundas, pues suponía un problema NP-completo [8]. Pero esto cambió con los estudios sobre el “backpropagation method” que produjeron un renacimiento de este campo.

En las décadas posteriores, se produjo un crecimiento exponencial en las investigaciones y aplicaciones de las redes neuronales. Destacan la aparición de las

Page 12: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

4

redes neuronales convolucionales y redes recurrentes. Con el desarrollo del hardware y en concreto las GPUs (“Graphics Processing Unit”) a principios del siglo XXI se han reducido considerablemente los tiempos necesarios para entrenar las redes, facilitando así su eficiencia y ampliando su ámbito de aplicación. Actualmente pueden encontrarse en trabajos de predicción de series temporales, clasificación de imágenes, reconocimiento de lenguaje natural y algoritmos de recomendación en todo tipo de aplicaciones.

2.1.2. Funcionamiento de las redes neuronales Las redes neuronales se componen de nodos o neuronas conectadas que disgregan el problema a tratar en partes más pequeñas que interactúan entre sí para inferir un resultado. A diferencia de otros modelos computacionales, en los cuales un algoritmo indica a la máquina cómo resolver el problema, las redes neuronales solo necesitan un conjunto de datos de prueba para entrenar al sistema y unos datos de testeo para comprobar la eficiencia en el cálculo de las soluciones. Este paradigma se conoce como “aprendizaje supervisado”. Así, tras una serie de iteraciones de entrenamiento, las redes neuronales son capaces de ofrecer una gran eficacia en la resolución de problemas con respecto a los modelos estadísticos empleados en tiempos anteriores.

Las redes neuronales han demostrado ser muy potentes en problemas tales como:

Clasificación de imágenes. Reconocimiento de voz y lenguaje natural. Predicción de secuencias temporales de datos.

El funcionamiento de las redes neuronales se basa en una serie de capas de neuronas. Cada neurona recibe una serie de n datos de entrada, xn, procedente de capas anteriores (excepto en la primera capa donde se reciben los datos de entrada). Cada uno de esos valores tiene asociado un peso wn. Tras ponderar los datos de entrada con los pesos, la neurona suma un sesgo b (bias) y aplica a ese resultado una función de activación f que da el valor de salida de la neurona.

El cálculo de la salida de la neurona corresponde con la siguiente fórmula: output = ∑ +

Existen distintos tipos de neuronas en función de la función de activación que emplean para calcular el valor de salida. Estas funciones se detallarán más adelante.

Una vez se calculados los valores de salida de las neuronas de la última capa, se

calcula cuánto difiere este valor con respecto al resultado esperado o valor de test. Para ello se aplica una función de coste. Este valor de coste es la variable que se quiere reducir al máximo durante las sucesivas iteraciones de entrenamiento. Este proceso de cálculo del valor de salida y la función de coste se conoce como “propagación hacia adelante” (forward propagation).

Ilustración 1. Esquema básico de una neurona

Page 13: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

5

Una vez obtenida la salida, es necesario modificar los parámetros de las neuronas (pesos y sesgos) para reducir al máximo la función de coste. Para ello se realiza el cálculo de las derivadas de la función de coste, también llamados gradientes, en función de estos parámetros desde la capa final hacia la primera. Con ese dato de la derivada se modifican los parámetros de sesgo y pesos de la neurona en función de un “tasa de aprendizaje”. La tasa de aprendizaje es un valor asignado por el usuario que indica cuánta influencia tendrá esta modificación en los pesos. Este proceso se conoce como “propagación hacia atrás” (backward propagation) y existen distintos algoritmos de optimización que lo implementan, como por ejemplo Gradient Descent, Adadelta, RMSprop o Adam.

Para alimentar a la red normalmente se agrupan m muestras de datos de entrada elegidas aleatoriamente en conjuntos llamados batches. Con cada uno de ellos se realiza el proceso de entrenamiento de la red hasta agotar todas las entradas disponibles. Cuando esto ocurre se dice que se ha completado una época de entrenamiento o epoch.

Una vez se ha completado el número de épocas deseado concluye el proceso de entrenamiento. Los parámetros internos de la red, pesos y sesgos ya están actualizados y la red puede comenzar a predecir datos.

Este es el funcionamiento de las redes más sencillas Fully-Connected en los que cada neurona de una capa está relacionada con todas las neuronas de capas contiguas, como se muestra en la figura 2. Esta en concreto cuenta con dos capas ocultas además de las capas de entrada y salida.

Con esta breve explicación entendemos en esencia cómo se entrena una red neuronal para que sea capaz de realizar predicciones de series temporales o clasificaciones de imágenes. En los siguientes apartados se detallan los principales conceptos y parámetros mencionados.

2.1.3. Función de activación Como hemos visto en el apartado anterior, la función de activación es aquella que recibe el sumatorio de las entradas ponderadas de la neurona y produce un valor de salida. Es la característica principal de las neuronas, tanto es así que a menudo damos a la neurona el nombre de su función de activación. Cada función tiene ventajas y desventajas dependiendo del escenario del problema y no existe una teoría sólida que nos diga cuál debemos usar. Es por eso por lo que durante el diseño y entrenamiento de una red neuronal es importante adaptar la elección de la función de activación al tipo de problema y a la naturaleza de los datos.

A continuación, se explican algunas de las más importantes:

Ilustración 2. Esquema de una red neuronal Fully-Connected

Page 14: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

6

2.1.3.1. Función de paso Como hemos visto en el apartado 2.1.1, el primer modelo de neurona propuesto fue el “perceptrón”. Este modelo empleó como función de activación la llamada “función de paso” o “step function”. Se trata de una función de salida binaria. Evalúa si la suma ponderada de las entradas supera o no un valor umbral. Si esto ocurre devolverá 1 como valor de salida, en caso contrario devolverá 0: output = 0 ∑ ≤ umbral1 ∑ > umbral

La función permite clasificar los datos de entrada en dos grupos: deseado o no deseado, sí o no. Esta característica trae consigo importantes limitaciones. Así, esta función no permite la clasificación multigrupo y está desaconsejada para la mayor parte de escenarios y en especial para las series temporales.

2.1.3.2. Función sigmoide Como solución a las limitaciones que presentaba el perceptrón y su función de paso surge la sigmoide. Este tipo de neurona permite dar como salida números reales entre 0 y 1, con una transición mucho más suave. Dado el sumatorio ponderado de las entradas, que llamaremos z, la fórmula de la función sigmoide es la siguiente: σ(z) ≡ 11 +

Además de la posibilidad de poder realizar clasificaciones de más de dos elementos, esta función de activación facilita en gran medida el entrenamiento de la red. Esto se debe a que una pequeña modificación de los pesos o el sesgo produce un cambio en la salida de la neurona. Esto contrasta con la función anterior donde en la mayoría de los casos no producía un cambio en el output, a excepción de que el cambio hiciera que el valor cayera de un lado u otro del valor umbral.

La función sigmoide es ampliamente utilizada ya que aporta buenos resultados en casos diversos. Destaca su uso en calificaciones binarias y en aquellos problemas donde los valores de salida se encuentren en el intervalo [0,1]. [9] Sin embargo, tiene algunas desventajas como el hecho de que las salidas no estén centradas en el cero o el que se produce cuando los valores se las entradas son muy grandes o muy pequeños, que da lugar a que la red pueda aprender muy lentamente. Este problema se conoce como saturación o vanishing gradient [10].

Ilustración 3. Gráfica de la función de paso

Ilustración 4. Grafica de la función sigmoide

Page 15: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

7

2.1.3.3. Tanh La función tanh tiene muchas similitudes con la función sigmoide como su pendiente suave entre su valor máximo y mínimo, así como el problema del vanishing gradient. Su forma es también muy parecida y sigue la siguiente fórmula: tanh(z) ≡ −+

La ventaja principal que tiene respecto a la anterior es que está centrada en el

0, con valores en un intervalo [-1,1]. Esto le permite obtener mejores resultados con valores tanto fuertemente negativos como fuertemente positivos.

2.1.3.4. ReLU y Leaky ReLU Además de las funciones sigmoide y tanh, caracterizadas por su forma curvilínea, existe otra familia de funciones llamadas rectificadores (rectifiers). Se caracteriza por reproducir en la salida el mismo valor de la entrada para valores mayores que cero. La función más representativa es la función ReLU (rectified linear unit) representada por la fórmula: relu(z) ≡ (0, ) Este tipo de neuronas son ampliamente

utilizadas en problemas de reconocimiento de imágenes [11] y como capa de salida en problemas en los que los datos corresponden con series temporales: precio de la vivienda, mercado de valores, etc. [9]

Su principal ventaja frente a las funciones sigmoide y tanh es que carecen del problema de saturación para valores altos, ya que la función ReLU no tiene máximo y por lo tanto el gradiente no se reduce. Sin embargo, para valores negativos de entrada la salida es constante en 0 por lo que el gradiente también, impidiendo el aprendizaje.

Para solucionar este problema existe la función Leaky ReLU. Tiene la particularidad de que para valores menores que 0 no es constante en 0, sino que tiene una pequeña pendiente que hace que el gradiente no sea nulo para valores negativos. En este intervalo presenta una pequeña pendiente positiva según la siguiente fórmula, donde p es un factor pequeño como por ejemplo 0.01: lrelu(z) ≡ ( , )

Ilustración 6. Gráfica función ReLU

Ilustración 7. Gráfica de la función Leaky ReLU

Ilustración 5. Gráfica de la función tanh

Page 16: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

8

2.1.4. Función de coste Como vimos anteriormente la función de coste nos da una medida de la cercanía de la medida predicha por la red y el valor real. Durante la fase de entrenamiento el objetivo es reducir este valor al máximo en cada iteración. Para ello, durante el proceso de propagación hacia atrás es necesario calcular las derivadas parciales del coste con respecto a los pesos y sesgos. Estas derivadas o gradiente marcarán cuánto se modifican los pesos y sesgos.

Puesto que estamos buscando reducir el peso al mínimo necesitamos funciones de coste que tengan un único mínimo. Si esto no sucede, el algoritmo de optimización puede alcanzar un mínimo relativo y quedar estancado ahí, de manera que no se alcanza el resultado óptimo que minimiza el coste. Es por ello por lo que suelen utilizarse funciones cuadráticas como el Mean Squared error (MSE).

Para poder calcular estas derivadas y poder realizar la propagación hacia atrás, la función de coste debe cumplir dos condiciones [1]:

La primera es que la función pueda ser escrita en términos de la media de los costes de cada uno de los ejemplos de entrenamiento Cx: = ∑

La segunda es que el coste pueda ser escrito como función de las salidas de la red.

A continuación, se muestran dos de las funciones de coste más utilizadas:

Mean Squared Error

(MSE) = 1 ( ( ) − )

Cross-entropy cost = − 1 [ ( ( )) + (1 − ) (1 − ( ))]

Donde y es el valor esperado y f(x) la salida de la red para los datos de entrada x. Se ve claramente que cumplen las dos condiciones.

2.1.5. Optimizador En el apartado anterior hemos visto qué es una función de coste y qué condiciones deben cumplir para poder entrenar nuestra red. Sabemos que el objetivo del entrenamiento es reducir este valor al máximo, pero ahora veremos cómo modificamos los pesos y sesgos de las neuronas para reducir este valor en cada iteración. El optimizador o algoritmo de optimización es el que marca este proceso, es decir, la propagación hacia atrás. Los algoritmos con los que trabajaremos son los siguientes:

Page 17: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

9

2.1.5.1. Gradient Descent (GD) Este algoritmo busca el mínimo de la función de coste avanzando en la dirección en la que más varía en ese punto. Dicho de otra manera, calcula la dirección donde la pendiente hacia el coste mínimo es mayor, como se ve en la figura. De esta forma calcula qué variaciones de los distintos parámetros (pesos y sesgos) reducen en mayor medida el coste. Estas variaciones es lo que conocemos como gradiente y representamos con la notación ∇C.

Posteriormente modifica los pesos y sesgos ‘v’ mediante la siguiente fórmula [1]: ′ = − ∇ Donde η es el learning rate o tasa de aprendizaje, un parámetro elegido por el usuario que indica cuándo deben modificarse los parámetros en función del gradiente.

El problema con este algoritmo de optimización es que puede divergir mucho en su búsqueda del mínimo e incluso quedarse atascado en mínimos locales. Esto puede causar que el entrenamiento sea muy lento e impedirnos utilizar ratios de aprendizaje más altas.

2.1.5.2. Gradient Descent con momentum Una de las modificaciones del descenso de gradiente que nos permite acelerar la búsqueda del mínimo es el momento [9] (en inglés, momentum). En GD se actualizaban los parámetros únicamente con el gradiente calculado en esa iteración según la fórmula que vimos en el apartado anterior. En el caso del momento, se tienen en cuenta también la media ponderada decreciente (exponentially weighted average) de los N gradientes anteriores. De esta forma las oscilaciones en una determinada dirección se cancelan en gran medida, agilizando el proceso de aprendizaje de la red neuronal.

Ilustración 9. Convergencia del algoritmo GD con (rojo) y sin (azul) momentum.

La fórmula es la siguiente: = − (1 − ) ′ = −

Donde Vdvt es la media ponderada de los gradientes en el instante ‘t’ y dvt la derivada en dicho instante. β es un parámetro que indica cuántos instantes N anteriores se tienen en cuenta para realizar la media y que puede afinarse durante el diseño de la red.

Ilustración 8. Grafica tridimensional de la función de coste..

Page 18: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

10

2.1.5.3. RMSprop Esta modificación del descenso de gradiente es similar al uso del momentum. Al igual que el anterior calcula la media ponderada decreciente pero esa vez del cuadrado de los gradientes: = − (1 − ) ′ = − √ +

Donde Sdvt es la media ponderada de los cuadrados de los gradientes en el instante ‘t’ y dvt el gradiente en dicho instante. β2 es un parámetro que indica cuántos instantes N anteriores se tienen en cuenta para realizar la media, de manera similar al GD con momentum. ϵ es un valor pequeño que sumado al denominador impide que éste sea 0, para dar mayor estabilidad matemática a la fórmula.

2.1.5.4. Adam Adam (Adaptive Moment estimation [9]) es un algoritmo que surge de la unión de RMSprop y GD con momentum. De esta forma, calcula por un lado la media ponderada decreciente de los gradientes anteriores y por otro la misma media, pero de los cuadrados de los gradientes: = − (1 − ) = − (1 − ) Posteriormente actualiza los parámetros con ambos valores: ′ = − √ +

Este es uno de los algoritmos más utilizados por la rápida convergencia que ofrece en la búsqueda del mínimo de la función de coste y por tanto la rapidez del entrenamiento.

2.1.5.5. Adadelta Este algoritmo forma parte de la familia de optimizadores adaptativos. Estos optimizadores, a diferencia del algoritmo anterior, modifican la tasa de aprendizaje para cada iteración y para cada parámetro en función de los gradientes anteriores. Así, permiten al usuario despreocuparse de elegir la ratio que mejor se adapta al problema. Adadelta en particular, en lugar de almacenar todo el gradiente anterior, guarda una media decreciente de los gradientes anteriores que va actualizado. La variación que hace de cada parámetro viene definida por la siguiente fórmula [12]:

∆ = − ∆ + +

Donde es: = − (1 − )

Page 19: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

11

2.1.6. Hiperparámetros Para que una red neuronal dé buenos resultados en un escenario concreto primero debe realizarse un proceso de afinamiento (en inglés tuning) de los distintos parámetros que la definen. Estos parámetros (no confundir con los pesos y sesgos que son modificados por el algoritmo de optimización) se conocen como hiperparámetros.

El problema es que no existe un único método estándar para elegir los mejores hiperparámetros. En ocasiones este proceso consiste en probar distintos conjuntos de valores y observar cuáles ofrecen los mejores rendimientos. Se trata de un proceso altamente iterativo de experimentación con distintos valores hasta conseguir el mejor resultado posible. Sin embargo, el número de parámetros y de posibles combinaciones es enorme, lo que a priori pude hacer inabarcable la búsqueda. Por suerte, sí existen algunas heurísticas y métodos aproximados que nos permiten centrar la búsqueda y reducir el tiempo de diseño de la red.

Los principales hiperparámetros con los que trataremos en este trabajo se explican a continuación. No todos ellos deberán tenerse en cuenta en todos los casos. Algunos de estos parámetros solo deben ajustarse si se emplean determinadas técnicas para mejorar el proceso de optimización y aprendizaje (como el momentum o batch normalization).

2.1.6.1. Learning rate Como hemos visto en el apartado de Optimizadores, la tasa de aprendizaje ‘η’ es el valor que indica cuánto afectan los gradientes a la actualización de los pesos y sesgos. En otras palabras, es una medida de cómo de rápido queremos que aprenda la red. Sin embargo, el afinamiento de este parámetro no es trivial. Un valor más alto no necesariamente implica mayor velocidad de aprendizaje.

Este hiperparámetro debe ajustarse en función del algoritmo de optimización. Si el algoritmo se acerca hacia el mínimo de la función de coste, pero con grandes oscilaciones, una tasa de aprendizaje alta solo aumentará dichas oscilaciones haciendo que el aprendizaje sea más lento. Por otro lado, si el algoritmo no diverge en exceso podemos aumentar su valor para alcanzar antes el mínimo de la función de coste y reducir el tiempo de entrenamiento.

Este es el parámetro que más se debe tener en cuenta a la hora de afinar nuestra red neuronal [13]. Normalmente se toman valores entre 0.1 y 0.0001 en una escala logarítmica hasta ir acotando el rango de valores óptimo que agilice el entrenamiento de la red.

2.1.6.2. Tamaño de mini-batch Un mini-batch es el subconjunto de los datos de entrada con el que alimentamos a la red en cada etapa de aprendizaje. El tamaño de éste influye en gran medida en la velocidad de entrenamiento y en la capacidad de obtener resultados parciales antes de que concluya. Asumiendo que el tamaño total del conjunto de datos de entrada es M, existen tres escenarios dependiendo del tamaño m de cada mini-batch [14]:

m=1: En este caso cada dato de entrada se introduce individualmente en la red. Esta variedad de GD se conoce como Stochastic Gradient Descent (SGD). Nos permite que en cada entrenamiento la red trate cada dato de manera independiente sin tener en cuenta otros datos. Sin embargo, tiene la

Page 20: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

12

desventaja de que desaprovecha las posibilidades de vectorización del computador por lo que el procesamiento es mucho más ineficiente. Esto da lugar a un tiempo de entrenamiento excesivo. También aumenta las oscilaciones en la búsqueda del mínimo ya que cada dato lleva al algoritmo en una dirección distinta, lo que obliga a reducir la tasa de aprendizaje.

m=M: También conocido como Batch Gradient Descent, este caso se caracteriza por introducir todo el conjunto de dato de una sola vez en la red. Este caso puede ser razonable si nuestro conjunto de datos no es muy grande (≤ 2000 datos, por ejemplo). En conjuntos de datos mayores este método provoca que cada iteración sea demasiado larga y costosa computacionalmente. También nos obliga a esperar hasta el final de la iteración para obtener información sobre cómo ha ido el entrenamiento.

1<m<M: Este es el escenario ideal. Donde se aprovechan las opciones de vectorización que nos ofrecen los procesadores actuales y además podemos recibir información relevante en cada iteración del entrenamiento. Se recomienda escoger un tamaño de mini-batch ‘m’ que sea potencia de dos (64, 128, 256…) y que no exceda la memoria de la CPU/GPU.

2.1.6.3. Arquitectura de la red La arquitectura de la red puede influir en gran medida en su capacidad de obtener buenos resultados reduciendo el coste. Un mayor número de capas suele ayudar a obtener mayor precisión. Aunque se corre el riesgo de caer en el problema del Vanishing/Exploding Gradient si se trata de una red muy profunda. Aumentar el número de neuronas es un buen acercamiento, pero puede aumentar la carga computacional. Por otro lado, en función de la naturaleza de los datos de entrada y del uso o no de métodos de preprocesamiento de datos como la estandarización, deben escogerse distintas funciones de activación para las neuronas.

2.1.6.4. Número de épocas Una época corresponde con una iteración completa de entrenamiento sobre todo el conjunto de datos de entrada. Por cada iteración conseguimos que la red se ajuste cada vez mejor a los datos de entrenamiento. Sin embargo, esto puede dar lugar a un sobreajuste o overfitting. Esto se produce cuando la red se ha adaptado tanto a los datos de entrenamiento que es incapaz de generalizar esos resultados a otros conjuntos de datos como el de validación. Por ello debe ajustarse este valor para obtener unos buenos resultados reduciendo el coste tanto en los datos de entrenamiento como en los de validación y test.

2.1.7. Tipos de redes neuronales En función de su topología y de las características de sus neuronas, las redes neuronales pueden clasificarse en varios tipos. Despendiendo de la naturaleza del problema y de los datos, un determinado tipo de red puede resultar más apropiado que otro. En este apartado se describen los tipos de redes neuronales que tienen mayor importancia para el caso de estudio de este trabajo.

Page 21: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

13

2.1.7.1. Redes neuronales convolucionales Este tipo de redes neuronales son especialmente apropiadas en escenarios donde los datos de entrada tienen una clara relación espacial. Por ello, suelen emplearse en problemas de clasificación de imágenes. Cuentan con varios tipos de capas en las que se realizan distintas transformaciones de los datos originales hasta llegar a la clasificación final. Estos tipos de capas son:

Capa convolucional: Estas capas son el núcleo de las redes convolucionales y las de mayor carga computacional. La capa convolucional aplica una serie de filtros sobre los datos de entrada. El filtro normalmente es una matriz de tamaño pequeño (5x5x3, por ejemplo) que va recorriendo el largo y ancho de la imagen de entrada produciendo como salida una matriz de menor dimensión, como se muestra en la Figura 1. En el caso del reconocimiento de imágenes, estas capas detectan patrones sencillos en la imagen (rectas, curvas, esquinas, etc.) [15]

Ilustración 10. Capa de entrada y resultado después de la convolución.

Capa de pooling: La función de esta capa es reducir progresivamente la dimensión de la matriz. Con ello se consigue reducir el número de parámetros a entrenar y con ello la carga computacional. Normalmente se suele alternar entre capas convolucionales y de pooling. También permite controlar el nivel de sobreajuste. El método de pooling más utilizado es el “max-pooling”. Consiste en tomar regiones de los datos y tomar solo el valor máximo de las mismas para generar la matriz resultado, como se muestra en la figura 2.

Page 22: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

14

Ilustración 11. Ejemplo de max-pooling.

Capa Fully-Connected: Para problemas de clasificación, en la capa final se utiliza una capa Fully-Connected con tantas neuronas como clasificaciones. Cada una de estas neuronas está conectada con todas las neuronas de la capa anterior, y produce un valor con la probabilidad de que la imagen inicial pertenezca a cada una de las clases en las que se pretende clasificar.

Ilustración 12. Arquitectura típica de una red neuronal convolucional

2.1.7.2. Redes neuronales recurrentes Los datos de radiación solar que se abordan en este trabajo tienen un fuerte componente temporal. La medición de radiación solar en un determinado instante de tiempo normalmente es similar a la recogida en los periodos inmediatamente anteriores. También experimenta variaciones cíclicas de mayor duración por las estaciones y otra de menor periodo por las condiciones climatológicas. Por todo ello, tiene sentido que nuestra red neuronal tenga en cuenta este comportamiento.

Las redes neuronales convencionales tratan cada nuevo paquete de datos de entrada como independiente de los demás. Esto no parece razonable para nuestro caso de estudio, donde podríamos aprovechar la información de etapas anteriores para realizar una predicción más precisa. Las redes neuronales recurrentes, a diferencia de las convencionales, tienen en cuenta el valor de salida de la anterior iteración en el cálculo de la nueva salida. O lo que es lo mismo, tienen en cuenta las mediciones

Page 23: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

15

anteriores para predecir la actual. En este proyecto se estudiarán dos tipos de redes neuronales recurrentes:

Red neuronal recurrente estándar o RNN: Este tipo de red neuronal aplica el uso de datos previos en el cálculo del valor de salida. De esta forma en el cálculo de la función de salida para cada neurona, además del peso y el sesgo se le aplica también este valor previo, como se puede ver en la figura.

Estas redes funcionan bien cuando la información que se busca tener en cuenta en la etapa actual es información reciente, es decir, calculada unas pocas etapas atrás. Sin embargo, en algunos problemas es necesario un mayor contexto y poder contar con información. En estos casos en los que la distancia entre la información relevante pasada y la etapa actual es grande, las RNN no son capaces de conectar esta información.

Puesto que nuestro problema implica trabajar con datos con relaciones temporales que pueden estar bastante separadas en el tiempo, debemos tener en cuenta otro tipo de red neuronal.

Ilustración 13. Esquema de una RNN

Long Short Term Memory networks o LSTM: Las LSTM son un tipo especial de redes neuronales capaces de manejar dependencias temporales mayores. Cada nodo de estas redes mantiene un estado que puede modificarse en función de los datos de entrada. Este estado mantiene información sobre iteraciones anteriores de la red e influye en el valor de salida del nodo.

La celda de estado es el componente clave de las redes LSTM y corresponde con la línea horizontal superior de la figura. Mediante una serie de puertas, la información de la celda de estado puede modificarse opcionalmente. Estas puertas se componen de una función sigmoide junto con una operación de multiplicación elemento a elemento. Una LSTM tiene tres de estas puertas [16].

Page 24: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

16

Ilustración 14. Esquema de un nodo de LSTM

El funcionamiento paso a paso de estas celdas es el siguiente: La primera puerta, a la que llamaremos “puerta de olvido”, decide qué información queremos eliminar de la celda de estado. En función de los valores de ht-1 (salida de la anterior etapa) y xt (entrada de la etapa actual) se devuelve un valor entre 0 y 1 que indica a la celda de estado qué valores debe olvidar y mantener respectivamente como se observa en la figura. Posteriormente se estudia qué nueva información se va a almacenar en la celda se estado. Primero, la segunda puerta, a la que llamaremos “puerta de entrada”, decide qué valores se actualizarán. A continuación, aplicando la función tanh a los valores de entrada creamos un nuevo vector de candidatos a almacenarse en la celda de estado, como se muestra en la figura. Ahora ya se puede actualizar la celda de estado con los nuevos valores. Primero se olvidan los datos antes seleccionados. Posteriormente se hace el producto de los dos vectores de valores candidatos para después sumarse a la celda de estado.

Ilustración 17. Actualización de la celda de estado

Ilustración 16. Puerta de entrada

Ilustración 15. Puerta de olvido

Page 25: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

17

Finalmente se decide el valor de salida. Para ello se aplica una última puerta para indicar qué valores de la celda de estado se volcarán en la salida. Después se aplica la función tanh para acotar los valores entre -1 y 1. Posteriormente se multiplican estos dos resultados y se envía el producto como salida.

2.1.7.3. Redes neuronales híbridas Algunos problemas, como la predicción de series temporales en mediciones cercanas espacialmente, presentan tanto una correlación espacial como temporal de los datos de entrada. Resulta lógico pensar en un acercamiento al problema que incluya redes neuronales que aprovechen ambas relaciones: las RNN y en particular las LSTM son potentes a la hora de descubrir patrones en secuencias de datos, mientras que las CNN son más útiles a la hora de extraer relaciones locales entre los datos crudos de partida reforzando las relaciones entre las neuronas.

De esta forma, en los últimos años se han desarrollado implementaciones que combinan redes convolucionales y LSTM (CLSTM). La topología empleada en este tipo de redes híbridas realiza primero un procesamiento de los datos de series temporales mediante varias capas de redes convolucionales. Después alimenta con el resultado obtenido a la red LSTM y obtiene así la predicción.

Otro acercamiento es el realizado por la red neuronal TreNet [17] desarrollada para hallar tendencias en series temporales. Esta red consta de dos capas convolucionales apiladas y una red LSTM con 600 celdas de memoria. Para combinar las salidas de ambas redes implementa unas “capas de fusión”. El resultado de esta capa se vuelca sobre una capa de salida donde se proporciona la predicción de las tendencias.

2.2. Trabajos previos Por su relevancia y similitudes con el problema a resolver, se han investigado algunos trabajos realizados en este campo. Se trata de dos aplicaciones de redes neuronales recurrentes sobre series temporales de mediciones:

2.2.1. Caso 1 Estudio del caso de uso de red neuronal convolucional LSTM para la predicción de la temperatura del mar: Este estudio buscaba construir una red neuronal híbrida que permitiera predecir la temperatura media diaria del océano en distintas localizaciones alrededor del mundo [18]. Con estas predicciones las autoridades podrían predecir la afluencia de turistas en las playas e incluso la aparición de eventos climáticos extremos.

Este problema presenta varias similitudes con el caso de las mediciones de radiación solar. En ambos casos los datos presentan una correlación espacial, puesto que los

Ilustración 18. Cálculo de la salida

Page 26: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 2: Estado del arte

18

datos de temperaturas en una determinada posición tienden a ser similares a los de posiciones cercanas. También se da una correlación temporal entre los datos, ya que existen relaciones entre mediciones contiguas y también pueden presentar tendencias a lo largo de semanas o meses.

Esta segunda característica es relevante para el ámbito de este trabajo de fin de grado. En el caso de estudio, para aprovechar esta correlación temporal se aplica una red LSTM y así poder predecir las tendencias de la temperatura a lo largo de distintos periodos de tiempo. Así este estudio demuestra que al tener en cuenta estas dependencias se obtiene un poder de predicción mucho mayor que otros modelos. En este proyecto la implementación se realizó con el conjunto de herramientas de Deep Learning para Java “DL4J” a diferencia de nuestro caso que se realiza en Keras.

2.2.2. Caso 2 Estudio del caso de uso de una red neuronal LSTM escalable para la predicción a corto plazo del consumo de electricidad: El objetivo de este proyecto fue la creación de una red neuronal recurrente LSTM para la predicción de consumos eléctricos individuales de un conjunto de viviendas. Además de los datos de consumo se utilizarían también datos meteorológicos y de calendario para predecir dichos consumos. Una de sus metas principales fue poder entrenar la red neuronal eficientemente mediante solo un subconjunto de los datos, pero permitiéndola ser escalable para poder gestionar series temporales de gran tamaño.

Este trabajo es relevante para el caso que estamos estudiando por el carácter de los datos. Es muy similar al nuestro, puesto que se trata de mediciones de consumo eléctrico con una alta frecuencia de muestreo. De esta forma, los datos también muestran una clara correlación temporal y de ahí el uso de una red LSTM.

Al igual que en nuestro proyecto, la implementación se ha realizado utilizando Keras para una implementación más sencilla. De esta manera pudieron entrenar hasta 19 LSTM, una para cada conjunto de datos en que estructuraron las mediciones.

El resultado de este trabajo fue un modelo que permite realizar predicciones hasta un 20% más precisas que otros modelos. Entre las desventajas de este modelo, según describe el estudio [19], destaca la complejidad que entrañan las redes neuronales a la hora de realizar su diseño (elección de función de coste, función de activación, algoritmo de optimización, etc.) y de comprender su funcionamiento.

Page 27: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 3: Herramientas

19

CAPÍTULO 3

3. Herramientas

En este capítulo se detallan las principales características de los componentes, tanto software como hardware, que se han empleado en el desarrollo del proyecto. Se explicarán las especificaciones técnicas más representativas en relación con los objetivos previstos para la realización del trabajo.

3.1. Hardware Para la realización de este proyecto, tanto para el entrenamiento de las redes neuronales como para el desarrollo del código se ha utilizado un ordenador portátil MSI PS42 8RB con procesador Intel Core i7 8th Gen 8550U, 16GB de memoria RAM y tarjeta gráfica NVIDIA GeForce MX150. Estas especificaciones se incluyen para poner en contexto la duración de los entrenamientos de las distintas redes, así como para permitir la reproducibilidad de las pruebas realizadas.

3.2. Software El trabajo se ha realizado sobre un equipo con Sistema Operativo Windows 10 Home [20]. Para la gestión de entornos de desarrollo y paquetes software en Python se ha empleado Anaconda [21].

Anaconda es una distribución libre y abierta de los lenguajes Python y R que permite crear distintos contextos de desarrollo aislados. Esto habilita al usuario a tener distintos entornos para cada área de trabajo (data science, programación web, etc.) evitando colisiones entre distintas versiones de un mismo paquete software. Anaconda permite una gestión e instalación de paquetes sencilla y potente, muy similar a la de los sistemas operativos UNIX.

Como IDE se ha utilizado Spyder, la herramienta de desarrollo por defecto de Anaconda para Python. Spyder cuenta con todas las funcionalidades necesarias para el desarrollo del código proyecto: consola incorporada, función de depuración de código, gestión de varios proyectos y visualización inmediata de gráficos e imágenes.

Ilustración 20. Logo de Anaconda

Ilustración 19. Portátil MSI utilizado

Page 28: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 3: Herramientas

20

3.2.1. Tensorflow Tesnsorflow [22] es una biblioteca y motor de aprendizaje automático desarrollado por Google Brain que posteriormente fue publicada bajo licencia de código abierto Apache 2.0. Entre sus características principales destaca la posibilidad de correr en múltiples GPU y CPU. También consolida el uso de APIs de alto nivel como Keras, la cual se explica en el siguiente apartado. Desde 2019 está disponible la versión 2.0 que se centra en la facilidad de uso y la simplicidad. En este proyecto se ha empleado la versión de TensorFlow para CPU puesto que la versión para GPU ofrecía un peor rendimiento.

Ilustración 21. Logo de Tensorflow

3.2.2. Keras Keras [23] es una API de alto nivel centrada en la construcción de redes neuronales. Está desarrollada en Python y es capaz de ejecutarse sobre Tensorflow como backend. La principal ventaja de esta biblioteca es que permite un desarrollo rápido facilitando la experimentación y la investigación.

En este proyecto se utiliza la versión Keras 2.3.1 que ofrece las siguientes funcionalidades:

Permite la implementación tanto de redes neuronales recurrentes como convolucionales.

Puede ejecutarse tanto en CPU como GPU. Diseño centrado en el usuario. Modularidad. Permite configurar y acoplar distintos modelos de redes

neuronales sin apenas restricciones. Permite combinar distintas funciones de coste, optimizaciones, inicializaciones y funciones de activación.

Desarrollado exclusivamente en Python. Lo cual da lugar a un código más compacto y fácil de depurar.

Cuenta con multitud de funciones o Callbacks que permiten obtener información interna durante el proceso de entrenamiento y realizan acciones en consecuencia. Algunos ejemplos son:

o Early Stopping o Logs o Obtener el historial del entrenamiento o Programador de tasa de aprendizaje

3.2.3. Numpy Numpy [24] (Numerical Python) es el principal paquete de Python para el cálculo matemático y científico. Una de sus utilidades más potentes es el uso de vectores indexados multidimensionales que permiten operar con conjuntos de datos de manera mucho más eficiente que, por ejemplo, con las listas básicas de Python.

Ilustración 22. Logo de Keras

Page 29: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 3: Herramientas

21

Destacan también las opciones de broadcasting, como por ejemplo la suma de un vector fila a cada una de las filas de una matriz con el operador suma o las operaciones elemento a elemento.

En este trabajo se ha empleado la versión Numpy 1.18.1.

Ilustración 23. Logo de Numpy

3.2.4. Vitables Vitables [25] es un programa desarrollado en Python que ofrece una interfaz gráfica para navegar y editar ficheros en formato HDF5. Los conjuntos de datos con los que trabajaremos están en este formato. Son ficheros de gran tamaño que contienen millones de datos y que de otra forma serían imposibles de gestionar.

Algunas de las ventajas que ofrece este tipo de archivos es que tienen una estructura jerárquica, similar a las carpetas y ficheros; gran compresión de los datos que reduce su tamaño en memoria; carga de datos selectiva; posibilidad de incluir metadatos; rápido capacidad de entrada/salida y posibilidad de correr en múltiples plataformas. Vitables utiliza todas estas funcionalidades para facilitar el manejo de estos conjuntos de datos.

Ilustración 24. Logo de Vitables.

Page 30: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de
Page 31: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

23

CAPÍTULO 4 4. Desarrollo de las soluciones adoptadas

En este capítulo se abordan los distintos pasos que se han tomado para el diseño, desarrollo y estudio de las redes neuronales de este trabajo. En primer lugar, se realiza un estudio de los datos de radiación solar que utilizaremos para realizar las predicciones. Posteriormente se detalla el proceso de diseño de tres arquitecturas de red y el afinamiento de sus correspondientes hiperparámetros. Por último, se comparan los resultados obtenidos en cada una de ellas para distintas ventanas de predicción.

4.1. Estudio de los datos de entrada El conjunto de datos de radiación solar que empleamos procede de la red de mediciones solares de la isla de Oahu, en el archipiélago de Hawái (EEUU) [26] proporcionados por el “National Renewable Energy Laboratory” (NREL). La red consta de 17 sensores que miden la irradiancia en W/m2. El identificador de cada sensor es:

ap01, ap03, ap04, ap05, ap06, ap07, dh01, dh02, dh03, dh04, dh05, dh06, dh07, dh08, dh09, dh10, dh11

Se muestra en la siguiente imagen tomada por satélite su localización espacial.

Ilustración 25. Situación de los 17 sensores solares de Oahu.

Los datos corresponden al periodo comprendido entre el 18 de marzo de 2010 y el 31 de octubre de 2011. Los sensores toman datos de irradiación cada segundo entre las 5:00 y la 20:00 HST. De esta forma toman 54000 medidas por día. En ocasiones

Page 32: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

24

los sensores pueden tomar medidas erróneas en forma de valores no numéricos (NaN) que son convertidos a -99999. Por ello debemos preprocesar el conjunto de datos para inferir estos datos ausentes.

Ilustración 26. Gráfica del conjunto completo de mediciones de radiación.

Ilustración 27. Gráfica de medición de radiación para los primeros cuatro días

Page 33: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

25

Ilustración 28. Gráfica de radiación del 18/03/2010

En la primera imagen se representan todos los valores del conjunto de datos. Consta de valores cuyo rango oscila entre 0 y 1500 W/m2. En la primera imagen podemos observar el patrón anual que sigue la radiación solar, aumentando de media hacia los meses de verano y reduciéndose en invierno. En la segunda vemos las mediciones tomadas por el sensor ‘ap01’ durante los días 18 al 21 de marzo de 2010. En ella se pueden observar los ciclos diarios de día y noche, así como repentinas fluctuaciones causadas por el paso de nubes. Estas variaciones pueden verse con mayor claridad en la tercera imagen.

El uso de redes recurrentes y en especial de redes LSTM nos permitirá predecir con mayor exactitud este tipo de patrones tanto diarios como estacionales, ya que sus celdas de memoria pueden recordar características relevantes de mediciones anteriores.

Para los horizontes de predicción más lejanos necesitamos una mayor granularidad en las mediciones que nos permita alcanzar ventanas de datos más amplias en el tiempo sin necesidad de aumentar en exceso el tamaño de ventana, ya que daría lugar a entrenamientos excesivamente largos.

Page 34: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

26

4.2. Preprocesamiento de los datos Los datos proporcionados por el NREL están divididos en ficheros comprimidos con los datos de cada mes. Cada uno de ellos contiene un documento CSV con las mediciones de cada día tomadas segundo a segundo. Para poder introducir estos datos a la red es necesario realizar un preprocesamiento de estos.

Para este trabajo contamos con dos archivos ya preparados: stand_01m.h5 y filled_01m.h5 que agrupan todas las mediciones de manera jerarquizada por año y mes. En ambos se ha corregido el problema de las entradas con valores erróneos. Así, para cada elemento que sea -99999 (NaN), se intenta corregir con valores anteriores del mismo sensor (hasta 30 segundos). Si esto no es posible, se busca entre sus vecinos (por orden de cercanía) el que tenga un valor válido para ese mismo instante y se copia su valor. También se han descartado los datos del sensor ap02 porque sus datos son distintos y están tomados a intervalos de 3 segundos.

El archivo filled_01m.h5 contiene datos de todos los sensores con una granularidad de 1 minuto. Para ello se ha realizado la media de los datos en intervalos de un minuto. Además de la corrección de los datos erróneos con los datos interpolados. El archivo stand_01m.h5 parte del anterior con la particularidad de que se han estandarizado sus datos. De esta forma a cada dato se le ha aplicado la siguiente fórmula: = − ( ) / ( ) Donde mean(x) es la media del conjunto de datos y std(x) su desviación típica.

También se dispone de dos conjuntos adicionales con mayor granularidad: stand_15m.h5 y filled_15m.h5. Estos datos se han estructurado de la misma manera que en los dos primeros conjuntos. La única diferencia es que la granularidad de los datos es de 15 minutos. Para ello se ha calculado la media de los datos originales en intervalos de 15 minutos.

La preparación de los cuatro archivos con los datos preparados stand_01m.h5, filled_01m.h5, stand_15m.h5 y filled_15m.h5 ha sido realizada por Ignacio Iker Prado Rujas siguiendo la metodología explicada en este apartado.

En este trabajo buscamos realizar predicciones sobre las mediciones de un sensor con horizontes de predicción amplios (1, 3 y 6 horas) empleando ventanas de datos de distintos tamaños. En su implementación en Keras, las redes recurrentes reciben una matriz tridimensional donde sus dimensiones son:

Tamaño de batch: Número de ventanas de tiempo se introducen a la red en cada paso.

Tamaño de ventana o timesteps: Número de mediciones consecutivas que forman una ventana de datos. Se experimentará con distintos valores.

Variables de estudio o features: Número de variables que se tendrán en cuenta para realizar la predicción. En nuestro caso son 17, una por cada sensor.

A diferencia de las redes recurrentes, las redes FC solamente pueden recibir matrices bidimensionales. Para poder alimentar a la red con ventanas de datos generaremos matrices que incluyan mediciones desde ‘t-N’ a ‘t’ siendo ‘t’ el valor la medición en el

Page 35: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

27

instante actual y N la amplitud de dicha ventana. Así, si queremos predecir la radiación que incidirá dentro de una hora, buscaremos el valor t+60 en el caso de que los instantes de medición sean de 1 minuto.

Teniendo esto en cuenta, para el entrenamiento generamos datos de entrada X en los que en cada fila se muestran N mediciones consecutivas para cada sensor. Así el primer valor desde la izquierda es el valor en el instante actual, su siguiente es t-1 y así hasta llegar a t-N. En cada fila se concatenan las ventanas de valores de los siguientes sensores. En la siguiente tabla se muestra un ejemplo con dos sensores y ventanas de 5 mediciones consecutivas:

dh6_ t

dh6_ t-1

dh6_ t-2

dh6_ t-3

dh6_ t-4

dh9_ t

dh9_ t-1

dh9_ t-2

dh9_ t-3

dh9_ t-4

t=4 dh6_4 dh6_3 dh6_2 dh6_1 dh6_0 dh9_4 dh9_3 dh9_2 dh9_1 dh9_0 t=5 dh6_5 dh6_4 dh6_3 dh6_2 dh6_1 dh9_5 dh9_4 dh9_3 dh9_2 dh9_1

t=6 dh6_6 dh6_5 dh6_4 dh6_3 dh6_2 dh9_6 dh9_5 dh9_4 dh9_3 dh9_2 t=7 dh6_7 dh6_6 dh6_5 dh6_4 dh6_3 dh9_7 dh9_6 dh9_5 dh9_4 dh9_3

t=8 dh6_8 dh6_7 dh6_6 dh6_5 dh6_4 dh9_8 dh9_7 dh9_6 dh9_5 dh9_4

t=9 dh6_9 dh6_8 dh6_7 dh6_6 dh6_5 dh9_9 dh9_8 dh9_7 dh9_6 dh9_5 t=10 dh6_10 dh6_9 dh6_8 dh6_7 dh6_6 dh9_10 dh9_9 dh9_8 dh9_7 dh9_6

Tabla 1. Ejemplo de matriz de entrada X

Los valores reales Y con los que la red comparará los resultados obtenidos en el entrenamiento consisten en una matriz columna. Esta columna contiene los valores de radiación del instante a predecir t+H. A continuación, se muestra cuál sería la matriz con las predicciones para una hora más tarde (H=60) del sensor dh6.

dh6_t+60 dh6_64 dh6_65 dh6_66 dh6_67 dh6_68 dh6_69 dh6_70

Tabla 2. Ejemplo de matriz Y

Con este conjunto de datos de entrada se realizará una división en datos de entrenamiento, validación y test. Puesto que vamos a trabajar con datos de granularidad de 1 minuto, el conjunto total de datos es de alrededor de 500.000 de mediciones. Por ello será suficiente asignar un 20% de los datos para validación un 10% para test. Como hemos comentado antes, para los horizontes más lejanos emplearemos los conjuntos con granularidad de 15 min siguiendo esta metodología.

Page 36: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

28

4.3. Desarrollo y aplicación de las redes neuronales En este apartado se detalla el diseño e implementación de los distintos modelos de redes neuronales propuestos para la predicción de los datos de series temporales de radiación solar medida por los sensores.

Se desarrollarán 3 tipos de redes neuronales: Fully-Connected, recurrente y LSTM. En primer lugar, se realiza una batería de pruebas para cada horizonte y ventana de datos a estudiar. Posteriormente se realizarán modificaciones de manera iterativa para afinar al máximo sus hiperparámetros. También se experimentará con el número de muestras consecutivas con las que se alimenta a la red. Con ello probaremos su eficacia en casos con distintos horizontes de predicción: 1, 3 y 6 horas. Dentro de cada caso experimentaremos con distintos tamaños de ventanas de datos.

Puesto que por cada caso se realizan decenas de pruebas con distintas configuraciones, en este documento se detallan solo aquellas pruebas que hayan obtenido mejores resultados u ofrezcan información relevante. Con esto nos referimos a diferencias de rendimiento entre optimizadores, funciones de activación, etc.

Finalmente compararemos los resultados en función de la medida de precisión elegida. También compararemos los resultados con una predicción ingenua (weighted average), para comprobar que las redes no se especializan demasiado en las mediciones inmediatamente anteriores al instante de predicción.

La métrica empleada para medir la precisión en la predicción es el error absoluto medio (MAE en sus siglas en inglés). Este valor resulta de la media de las diferencias en valor absoluto entre los valores predichos por la red y los valores reales. Para medir el sobreajuste emplearemos la siguiente fórmula: = _ − __ × 100

Siendo val_loss y train_loss la media para todas las épocas de entrenamiento del coste de validación y coste de entrenamiento respectivamente.

El código desarrollado para automatizar las baterías de pruebas, así como la carga de los datasets de entrenamiento y la generación de las gráficas y resultados se encuentra en el siguiente repositorio de GitHub:

Ilustración 29. Logo de GitHub con enlace al repositorio

https://github.com/Pablosornp/TFG

Page 37: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

29

4.3.1. Horizonte de predicción de 1 hora Este caso corresponde con el horizonte de predicción más cercano, en el que predeciremos el valor de radiación que se producirá 60 minutos después de la ventana de medición. Comenzaremos empleando una ventana de 5 mediciones consecutivas para cada sensor. Después probaremos con una ventana de 15 min para ver en qué medida aumenta la capacidad de predicción.

VENTANA DE PREDICCIÓN: 5 min

Para corroborar que las distintas redes están realizando una buena predicción establecemos un valor referencia o baseline basado en una predicción trivial. Este método calcula como predicción la media ponderada de los valores de la ventana de datos.

La gráfica siguiente compara los valores reales y de predicción para las muestras tomadas durante un día. Los valores predichos muestran un retardo de 60 minutos con respecto a los valores reales. Las oscilaciones que presentan los valores reales son menos pronunciadas en los valores predichos ya que cada uno es la media de la ventana de medición.

Ilustración 30. Comparativa entre predicción y los valores reales del caso base

En la gráfica 21 vemos en detalle cómo esas oscilaciones muy acuciadas alrededor del minuto 700 se observan también en los valores predichos, pero con menor intensidad.

Ilustración 31. Detalle de la predicción del baseline

Page 38: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

30

La precisión obtenida por este método es de 183.83 W/m2. Es una predicción muy sencilla y poco precisa, pero nos sirve como referencia a la hora de evaluar las siguientes redes neuronales:

RED 1

Como primera prueba elegimos una red FC sin capas ocultas. La capa de entrada cuenta con 17 neuronas, una por cada sensor. Puesto que el resultado de la red debe ser un único valor con la predicción la capa de salida solo tiene una neurona. Esta red es uno de los casos más sencillos y nos servirá para probar distintos algoritmos de optimización y funciones de activación.

En este caso se utiliza RMSprop, un optimizador avanzado que ofrece mejores prestaciones que Gradient Descent. Como función de activación utilizaremos la clásica sigmoide. Puesto que la función sigmoide trabaja mejor con valores entre 0 y 1, realizaremos un escalado de los valores de entrada para que estén comprendidos en dicho intervalo. Una vez entrenada la red y realizada la predicción, los datos predichos se reescalarán para poder compararlos con los datos reales y obtener el valor final de predicción.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 17 (D) 1 (D) Learning rate: 1.00E-5 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: sigmoide Algoritmo de optimización: RMSprop Tratamiento de datos: Escalado entre 0 y 1

Ilustración 32. Evolución del coste por época de la RED 1

En la imagen vemos cómo el coste del entrenamiento por épocas se reduce de manera muy rápida durante las primeros 25 épocas. Después permanece prácticamente constante durante el resto de las épocas, lo cual puede indicar que no son necesarias tantas épocas de entrenamiento. El descenso se produce de manera suave sin apenas

Page 39: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

31

oscilaciones. En la gráfica de detalle vemos que los valores de coste de entrenamiento y validación presentan un sobreajuste importante y que se mantiene constante. La red se está ajustando en exceso al conjunto de valores de entrenamiento.

Ilustración 33. Predicción de la RED 1

Ilustración 34. Detalle de la predicción de la RED 1

En las gráficas de predicción vemos que aún se produce un retardo en los valores de predicción. La red aún basa sus predicciones de manera importante en los valores de la ventana de datos, razón por la que se produce el retardo. En la gráfica de detalle puede observarse cómo las fuertes oscilaciones centrales en los valores reales se traducen en oscilaciones de menor intensidad en los valores predichos con un desfase de 60 minutos.

La precisión de predicción final ha superado el valor base por lo que vamos por buen camino. Como hemos comentado anteriormente el sobreajuste de la red es importante. La duración del entrenamiento es de unos 6 minutos. Aunque no es demasiado alta no merece la pena aumentar el número de épocas de entrenamiento ya que como vimos el coste se reduce muy poco a partir de la época 25.

Page 40: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

32

RESULTADOS RED 1 Precisión (MAE) 178.74 Sobreajuste 19.81% Duración de entrenamiento (s)

381

Tabla 3. Resultados de la RED 1

RED 2

El principal cambio que introducimos en esta red es la sustitución de la función sigmoide por la función tanh, de esta forma comprobaremos cuál de las dos tiene mejores prestaciones a la hora de predecir. Análogamente al caso anterior es necesario escalar los datos de entrada. A su vez reescalaremos los datos en la salida para comparar los datos de predicción. El resto de hiperparámetros son los mismos que empleamos en la RED 1 para poder comparar ambas funciones de activación sin la interferencia de otros factores.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 17 (D) 1 (D) Learning rate: 1.00E-5 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: RMSprop Tratamiento de datos: Escalado entre 0 y 1

Ilustración 35. Evolución del coste por época de la RED 2

En la gráfica de coste observamos que, en este caso, el descenso es menos pronunciado en las primeras épocas. De manera similar al caso anterior la pendiente de descenso se reduce considerablemente a partir de dicha época. Por otro lado, la gráfica muestra un leve pero constante descenso del valor de coste incluso en las épocas finales. Se observa también un sobreajuste similar a la situación anterior. El sobreajuste tiende a deberse a la arquitectura de la red y a la cantidad de datos de entrenamiento por lo que es razonable que un cambio en la función de activación no altere este comportamiento.

Page 41: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

33

Ilustración 36. Predicción de la RED 2

Ilustración 37. Detalle de la predicción de la RED 2

En las gráficas de predicción aún persiste el retardo en la predicción. Este resultado indica que con bastante probabilidad sea necesario una red más profunda para obtener mejores resultados, añadiendo varias capas ocultas. Con esta función de activación tanh vemos que no se producen las fluctuaciones en la parte inicial de la gráfica que corresponde con el atardecer y la noche donde la radiación desciende hasta mantenerse constante en 0. Aunque por contrario las predicciones de estos valores nocturnos no llegan al valor 0, lo cual reduce la precisión.

En la tabla de resultados vemos que hay una pequeña mejoría de 3 unidades en la precisión. Así comprobamos que la función tanh ofrece un mejor rendimiento que la sigmoide. Comprobamos también que el porcentaje de sobreajuste es similar, así como la duración del entrenamiento.

RESULTADOS RED 2 Precisión (MAE) 177.07 Sobreajuste (%) 22.01 Duración de entrenamiento (s)

366

Tabla 4. Resultados de la RED 2

Page 42: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

34

RED 3

Las características e hiperparámetros completos de esta red son:

Arquitectura: 17 (D) 1 (D) Learning rate: 1.00E-5 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: ReLU Algoritmo de optimización: RMSprop Tratamiento de datos: Escalado entre 0 y 1

Ilustración 38. Evolución del coste por época de la RED 3

La gráfica de coste tiene un comportamiento similar a la de la función sigmoide, en la cual se produce un descenso brusco del coste en las primeras iteraciones para después permanecer prácticamente constante durante el resto de las épocas. No presenta apenas fluctuaciones en el coste de validación, pero si un overfitting similar a los dos casos anteriores.

Ilustración 39. Predicción de la RED 3

Page 43: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

35

Ilustración 40. Detalle de la predicción de la RED 3

En la gráfica de predicción en un día completo vemos la comparación entre la RED 3 (ReLU) y la RED 2 (tanh). La diferencia principal entre ambas se da en los valores cercanos a cero donde la RED 3 se acerca más al valor real 0. Sin embargo, esta red presenta mayores desviaciones en puntos concretos. Algunas muy importantes como la que se produce alrededor del minuto 500.

Observando la tabla de resultados podemos deducir que la función ReLU ofrece prestaciones ligeramente superiores a las que presentaba la RED 2 con la función tanh. El nivel de sobreajuste es también mejor en este caso.

RESULTADOS RED 3 Precisión (MAE) 174.81 Sobreajuste (%) 21.75 Duración de entrenamiento (s)

339

Tabla 5. Resultados de la RED 3

RED 4

Para esta red vamos a experimentar con los tres optimizadores avanzados que se explicaron en el apartado 2.1.5: RMSprop, Adadelta y Adam. Para ello utilizaremos la función tanh como función de activación. El resto de hiperparámetros serán los mismos que en el caso anterior para poder realizar la comparativa.

Para que la comparativa sea lo más justa posible debemos seleccionar para cada optimizador la tasa de aprendizaje más adecuada, es decir, aquella que reduzca más rápido el coste durante el entrenamiento sin producir excesivas oscilaciones. Para ello emplearemos la función de callbacks que ofrece Keras, en concreto el programador de tasa de aprendizaje. Esta función modifica la tasa de aprendizaje en función de la época en la que se encuentre el entrenamiento según la siguiendo función: = 1 ∗ 10 ∗ 10(é / ) De esta forma la ratio tomará valores entre 1.00E-8 y 1.00E-2.

Page 44: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

36

Ilustración 41. Gráficas de evolución del coste para ambos casos

En ambos casos vemos que el coste permanece estable hasta llegar a un valor crítico donde el coste se dispara. Para cada caso elegimos la mayor tasa de aprendizaje sin llegar al punto crítico. Para RMSprop elegiremos una tasa de aprendizaje de 10-4 y para Adam 5*10-4.

Evaluaremos la evolución del coste durante el entrenamiento, el nivel de sobreajuste que presenta y la precisión de predicción.

Las características e hiperparámetros completos son:

Arquitectura: 17 (D) 1 (D) Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización:

RED 4.1: RMSprop (learning rate = 1.00E-4) RED 4.2: Adadelta (no requiere inicializar learning rate) RED 4.3: Adam (learning rate = 5.00E-4)

Tratamiento de datos: Escalado entre 0 y 1

Page 45: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

37

Ilustración 42. Evolución del coste por época para los 3 casos

En la gráfica 34 podemos ver la comparativa en términos del coste en cada época de entrenamiento. El comportamiento que muestran en la gráfica global es similar, sin embargo, en la gráfica detallada se comprueba que Adam es el algoritmo que reduce el coste en mayor medida y por tanto el que ofrece un mejor rendimiento. Los resultados de precisión muestran que claramente el optimizador Adam es el que converge más rápidamente y obtiene un mejor dato de precisión. A su vez ofrece el valor más bajo de sobreajuste, aunque poca distancia de los otros dos algoritmos.

RESULTADOS RED 4.1 (RMSprop)

RED 4.2 (Adadelta)

RED 4.3 (Adam)

Precisión (MAE) 170.21 167.14 163.88 Sobreajuste (%) 21.04 20.69 20.68 Duración de entrenamiento (s)

426.07 381.14 441.85

Tabla 6. Resultados para los 3 casos

En la siguiente gráfica se muestra la gráfica de predicción de la red con optimizador Adam. Se observa una mejora suntancial en el ajuste de la predicción a los valores reales. Así a diferencia de las redes anteriores, los valores devueltos por la red sí alcanzan el valor 0 para los periodos de ausencia de sol. Sin embargo, tiene problemas para predecir los valores más altos y aún muestra un desfase horizontal entre valores reales y predichos como ocurre con las anteriores redes.

Page 46: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

38

Ilustración 43. Predicción de la RED 4.3

RED 5

Hemos seleccionado la función de activación y el optimizador que mejor se adaptan a nuestro caso. La precisión de la red es mejor que el valor referencia, pero aún puede mejorarse. Para ello vamos a probar añadiendo una nueva capa a la red. La capa de entrada tendrá 85 neuronas. Este número resulta del producto del número de sensores (17) y la longitud de la ventana de medición con la que alimentamos a la red para cada sensor. La capa oculta tiene 17 unidades, una por sensor. Finalmente, la capa de salida sigue siendo de una neurona para mostrar un único valor de salida correspondiente al sensor cuya medición queremos predecir.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Podemos ver en la gráfica cómo con esta nueva configuración se alcanza un nuevo mínimo en el valor del coste final, bajando por primera vez del umbral de 0.016. La pendiente que muestra la gráfica en las últimas épocas indica que podría obtenerse un mejor resultado aumentando el número de épocas de entrenamiento. El coste derivado del conjunto de validación muestra fuertes oscilaciones que puede indicar que la tasa de aprendizaje es demasiado alta.

Page 47: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

39

Ilustración 44. Evolución del coste por época de la RED 5

La gráfica siguiente muestra claramente que el ajuste de la predicción es sustancialmente mejor al añadir la nueva capa oculta. El comportamiento al predecir el nivel de radiación durante el atardecer y la noche es muy superior, llegando a solaparse las líneas de predicción y datos reales.

Ilustración 45. Predicción de la RED 5

La tabla de resultados muestra una mejora muy importante en la predicción. Así pasamos de una precisión media de 163.88 a 144.91 W/m2. Sin embargo, hay un aumento del sobreajuste importante. En las siguientes redes trataremos de reducir este valor mientras se mantiene o reduce el error medio absoluto (MAE). La duración del entrenamiento aún no es demasiado alta por lo que podemos aumentar el número de épocas si es necesario.

Page 48: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

40

RESULTADOS RED 5 Precisión (MAE) 144.91 Sobreajuste (%) 24.10 Duración de entrenamiento (s)

471

Tabla 7. Resultados de la RED 5

RED 6

En esta red añadimos una nueva capa oculta de 5 neuronas. Con ello buscamos comprobar cuánta mejora en la precisión podemos obtener con este cambio. No se espera una mejora en el valor de sobreajuste, puesto que añadir capas tiende a mantener este comportamiento o incluso a generar un mayor sobreajuste. En pruebas posteriores intentaremos reducir este efecto con técnicas de regularización como el dropout.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 5 (D) 1 (D) Learning rate: 5.00E-4 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Con la adición de esta capa se observa cierta mejoría en la predicción. Vemos cómo ahora el ajuste entre valor real y predicho es más preciso, especialmente en el amanecer y atardecer donde la pendiente de cambio de radiación es mayor. Aún pueden mejorarse los resultados a la hora de predecir. Los niveles de sobreajuste rondan el 24% al igual que los casos anteriores.

Ilustración 46. Predicción de la RED 6

Page 49: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

41

RESULTADOS RED 6 Precisión (MAE) 142.54 Sobreajuste (%) 23.19 Duración de entrenamiento (s)

493

Tabla 8. Resultados de la RED 6

RED 7

Para solucionar el problema de sobreajuste aplicaremos dos modificaciones:

En primer lugar, aumentaremos el conjunto de datos de entrenamiento reduciendo el de validación. Contar con la mayor cantidad posible de datos permitirá a la red realizar un entrenamiento más exhaustivo y preciso. Así el conjunto de datos de validación pasará de ser un 20% del total a solamente un 5%.

Ilustración 47. Ejemplo gráfico de dropout

Por otro lado, emplearemos una técnica de regularización conocida como dropout. Este método, aplicado sobre una capa determinada, hace que cada neurona de dicha capa tenga una probabilidad de desactivarse en cada iteración de entrenamiento, como se muestra en la figura anterior. De esta forma la red, al no poder confiar en ninguna neurona en concreto, puesto que puede ser desactivada, reparte los pesos de una manera más equilibrada entre las distintas neuronas de una capa. Este método puede reducir un poco el nivel de precisión por lo que ampliaremos el número de épocas de entrenamiento hasta 300. Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 5 (D) 1 (D) Learning rate: 5.00E-4 Número de épocas: 300 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1 Regularización: Dropout (20%) en la capa de salida

En la gráfica de la función de coste por época se muestra claramente la reducción del nivel de sobreajuste. La curva que representa el coste en validación presenta algunas oscilaciones, sin embargo, ésta se encuentra casi al mismo nivel que la perteneciente al conjunto de entrenamiento.

Page 50: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

42

Ilustración 48. Evolución del coste por época de la RED 7

Analizando la gráfica de predicción vemos que la predicción tiene un nivel de precisión similar al caso anterior. En la tabla de resultados se confirma esta idea ya que la precisión se ha reducido pero solo en dos unidades. También se confirma el descenso de sobreajuste que pasa a ser muy significativo al pasar de un 20% a apenas un 2%. Por último, como consecuencia del aumento en el número de épocas vemos que el tiempo de entrenamiento ha aumentado de manera proporcional.

Ilustración 49. Predicción de la RED 7

RESULTADOS RED 7 Precisión (MAE) 146.64 Sobreajuste (%) 2.64 Duración de entrenamiento (s)

738

Tabla 9. Resultados de la RED 7

Page 51: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

43

RED 8

Hemos comprobado que las redes FC ofrecen una precisión de predicción razonable, superando con creces el valor base que tomamos como referencia. Ahora pasamos a estudiar las redes recurrentes, comenzando por las formadas por celdas recurrentes estándar. Como se indica en el apartado 4.2, alimentaremos a las pruebas con redes recurrentes con matrices tridimensionales en lugar de con los datos aplanados con los que simulábamos las ventanas de tiempo para las redes FC. De esta forma, trataremos el entrenamiento como un caso multivariante donde cada sensor es una variable independiente sobre las que entrenará la red.

Comenzamos con una sola capa RNN de 20 unidades. Hemos empleado la función de activación Adadelta que ha demostrado buenos resultados y no necesita que se inicialice su tasa de aprendizaje. Las características e hiperparámetros completos de esta red son:

Arquitectura: 20 (RNN) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Ilustración 50. Evolución del coste por época de la RED 8

En la gráfica de evolución del coste se observa cómo el valor del coste de entrenamiento se reduce de manera brusca durante las primeras épocas para después descender de manera considerable hasta la época 175 donde se estanca. El coste de validación presenta importantes oscilaciones y un cierto sobreajuste que se mantiene constante durante todo el entrenamiento.

Page 52: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

44

Ilustración 51. Predicción de la RED 8

En la gráfica vemos la comparativa entre la predicción y los valores reales durante dos días. Muestra cómo la red logra predecir bastante bien la radiación que se produce durante la noche, amanecer y atardecer. Sin embargo, tiene problemas para predecir los valores relativos a las horas centrales del día. Esta dificultad se hace más patente en el segundo día, donde las medidas son más irregulares fruto de la aparición de nubes.

Ilustración 52. Detalle de la predicción de la RED 8

En la figura se muestra un detalle donde se muestra que la predicción lo logra adaptarse correctamente a los valores reales en aquellos intervalos donde la radiación es más irregular.

RESULTADOS RED 8 Precisión (MAE) 146.14 Sobreajuste (%) 9.71 Duración de entrenamiento (s)

745.4

Tabla 10. Resultados de la RED 8

Analizando la tabla de resultados vemos que ésta primera red recurrente ha obtenido unos resultados similares a los de la RED 7: una ligera mejora en la precisión y un sobreajuste algo mayor. El tiempo de entrenamiento es prácticamente el mismo. Sin

Page 53: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

45

embargo, el resultado aún es inferior al de la RED 6, por lo que de momento la red FC sigue siendo la que ofrece mejor precisión.

RED 9

En esta prueba añadimos una nueva capa recurrente sobre la capa inicial. Veremos si esta nueva capa logra aumentar la precisión de entrenamiento. En esta ocasión empleamos Adam como algoritmo de optimización.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 20 (RNN) 20 (RNN) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 53. Evolución del coste por época de la RED 9

En la gráfica de coste por épocas, vemos que el descenso durante las primeras épocas es más pronunciado que en la RED 8, donde se producía de manera más suave y prolongada. A partir de la época número 100 el coste en el conjunto de entrenamiento se reduce más lentamente mientras el coste en validación se estanca y mantiene las oscilaciones. Aparentemente el sobreajuste es mayor que en la RED 8.

Page 54: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

46

Ilustración 54. Predicción de la RED 9

En la gráfica de predicción podemos ver una cierta mejoría la predicción. Esto se comprueba especialmente en el primer día, donde la red ha mejorado su predicción para los valores más altos. Para el segundo día, el más irregular en cuanto a radiación, la predicción es muy similar al que ofrece la red con una capa recurrente.

RESULTADOS RED 9 Precisión (MAE) 144.06 Sobreajuste (%) 12.11 Duración de entrenamiento (s)

1009

Tabla 11. Resultados de la RED 9

La tabla de resultados corrobora las conclusiones sacadas de la gráfica. Se ha mejorado la precisión, reduciendo el MAE en 2 puntos con respecto al caso anterior. El sobreajuste ha empeorado ligeramente pasando del 9.7% al 12.11%. La diferencia más notable es el tiempo de entrenamiento que ha aumentado un 25%. A pesar de esta mejora, la RED 6 de tipo FC sigue siendo la más precisa.

RED 10

En los dos casos anteriores hemos comprobado que las redes basadas en capas recurrentes simples ofrecen unos resultados ligeramente inferiores a la mejor red FC. En esta prueba vamos a introducir por primera vez una red LSTM. Veremos si este tipo de capa recurrente es capaz de captar mejor los patrones temporales de los niveles de radiación. Para compararlas con las redes recurrentes simples vamos a emplear el mismo esquema que en el caso anterior, pero sustituyendo los nodos recurrentes simples por nodos LSTM.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 20 (LSTM) 20 (LSTM) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh

Page 55: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

47

Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 55. Evolución del coste por época de la RED 10

Podemos observar cómo ha evolucionado el entrenamiento de la red en la gráfica de costes. En ella observamos cómo el coste en el conjunto de entrenamiento desciende rápidamente hasta la época 25. A partir de ella la reducción es menos pronunciada, aunque se mantiene constante hasta el final del entrenamiento. El coste en el conjunto de validación es superior al de entrenamiento al igual que en las redes anteriores por lo que se produce un cierto sobreajuste. A diferencia del coste en entrenamiento, el coste de validación se estanca a partir de la época 25 y muestra algunas oscilaciones.

Ilustración 56. Predicción de la RED 10

En la gráfica de predicción se aprecia a simple vista un comportamiento similar al caso recurrente anterior. Sin embargo, realizando una inspección más detallada vemos un mejor ajuste especialmente en las zonas en los que la radicación se aumenta o decrece de manera lineal. Podemos ver este comportamiento alrededor del minuto 250 y alrededor del minuto 1250. Al igual que en el caso anterior vemos algunas oscilaciones fuertes que reducen el valor de precisión especialmente en el minuto 1000.

RESULTADOS RED 10 Precisión (MAE) 140.58 Sobreajuste (%) 14.61 Duración de entrenamiento (s)

2324

Tabla 12. Resultados de la RED 10

Page 56: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

48

Los valores de la tabla de resultados confirman la mejora de resultados. Así el error medio absoluto se ha reducido en 4 puntos con respecto a la RED 9 a pesar de que el sobreajuste es ligeramente mayor. Además de la mejora en la precisión, la principal diferencia de esta red con las basadas en nodos recurrentes simples es el tiempo de entrenamiento. Podemos comprobar que la duración del entrenamiento se ha duplicado. Las redes LSTM como vimos en el apartado 2.1.7 realizan un mayor número de operaciones para actualizar su celda de estado. Esto explica la mayor duración del entrenamiento.

RED 11

Una vez comprobado que las redes LSTM de dos capas ofrecen mejores resultados que sus equivalentes RNN, vamos a experimentar con una red LSTM de una sola capa. En ocasiones emplear una red más grande de lo necesario puede hacer que ésta se estanque demasiado rápido en el entrenamiento, dando lugar a sobreajuste si continúa entrenando. Por ello en este caso vamos a emplear una única capa con 60 nodos LSTM.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 60 LSTM 1 D Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 57. Evolución del coste por época de la RED 11

En la gráfica de coste vemos que se ha reproducido el comportamiento que intentamos evitar con esta nueva configuración. A pesar de que la precisión en el conjunto de entrenamiento desciende progresivamente, la precisión de validación se estanca e incluso aumenta ligeramente en las últimas épocas de entrenamiento. Esta red podría beneficiarse de una reducción en el número de épocas.

Page 57: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

49

Ilustración 58. Predicción de la RED 11

La gráfica de predicción durante dos días refleja un aumento en las oscilaciones en la precisión. Así vemos cómo la red se esfuerza más en tratar de ajustarse a las zonas con cambios bruscos de radiación. Este comportamiento destaca en el segundo día y lo podemos ver con más detalle en la gráfica siguiente.

Ilustración 59. Detalle de la predicción de la RED 11

En la gráfica detallada se muestra un zoom entre los minutos 1400 y 1600. En ella se observan cómo la predicción se adapta en mayor medida a los cambios bruscos, aunque aún existe margen de mejora. La gráfica de resultados muestra que esta red tiene una precisión ligeramente mayor a la anterior. Sin embargo, el sobreajuste es sensiblemente superior como vimos en la gráfica de coste de entrenamiento. El tiempo de entrenamiento es alrededor de 400 segundos mayor por lo que parece que el número de nodos tiene mayor influencia que el número de capas en la duración del entrenamiento.

RESULTADOS RED 11 Precisión (MAE) 139.92 Sobreajuste (%) 20.57 Duración de entrenamiento (s)

2691

Tabla 13. Resultados de la RED 11

Page 58: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

50

Finalmente se comprueba que estas dos redes LSTM, RED 10 y RED 11. Son las que han obtenido un mejor resultado en términos de precisión siendo ésta última la mejor con una precisión de 139.92 W/m2. Se trata de una mejora de 3 puntos con respecto a la RED 6.

Sin embargo, la mejora nos es tan significativa como cabía esperar, especialmente teniendo en cuenta que la diferencia en la duración de entrenamiento entre la RED 6 y la RED 11. Así la red LSTM requiere 5 veces más tiempo de entrenamiento que la red FC para lograr una mejora de apenas el 3%.

Es posible que este resultado se deba a la escasa ventana de datos que se ha empleado. Tiene sentido pensar que las redes LSTM no sean capaces de captar relaciones temporales complejas en los datos de radiación observando intervalos de 5 min para predecir el valor que se producirá una hora más tarde.

VENTANA DE PREDICCIÓN: 15 min

En las pruebas anteriores hemos comprobado cómo para una ventana de datos corta de 5 min, las redes LSTM tienen un mejor rendimiento, pero con una diferencia muy pequeña con respecto a las redes FC. Parece una ventana de 5 min no es suficiente para que las redes recurrentes sean capaces de capturar patrones temporales que les permitan ajustar mejor su predicción. Para comprobar esta hipótesis vamos a aumentar el tamaño de la ventana a 15 mediciones, es decir un intervalo de 15 min. Comenzamos calculando la predicción base:

Ilustración 60. Comparativa entre predicción y los valores del caso base

Como podemos ver en la figura, esta predicción es muy similar al baseline del caso anterior. La única diferencia es que en este caso toma como precisión la media de 15 elementos en lugar de 5 por lo que las fluctuaciones son más suaves. El valor de precisión de esta predicción es 185.60 W/m2.

Page 59: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

51

RED 12 - RED 13

Para esta prueba vamos a utilizar una de las configuraciones de FC que mejor ha funcionado en el caso anterior. Esto nos permitirá comprobar si el aumento de la ventana de datos ofrece alguna mejora en este tipo de redes. A su vez compararemos su rendimiento para los optimizadores Adadelta (RED 12) y Adam (RED 13). Usaremos tanh como función de activación. Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate:

RED 12: 1.0 RED 13: 1.00E-3

Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización:

RED 12: Adadelta RED 13: Adam

Tratamiento de datos: Escalado entre 0 y 1

Ilustración 61. Comparación del coste por época de la RED 12 y 13

La gráfica anterior muestra una comparativa entre ambos algoritmos de optimización. Podemos comprobar cómo el optimizador Adam converge significativamente más rápido hacia el valor mínimo de coste que Adadelta. Observando en detalle a partir de la época 100 podemos ver cómo la distancia entre ellos aumenta ligeramente con el paso de las épocas.

Page 60: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

52

Ilustración 62. Predicción de la RED 13

En la gráfica de predicción vemos cómo los valores calculados (naranja) son bastante próximos a los valores reales. En los intervalos de mayor radiación es donde la predicción se desvía en mayor medida de los valores reales, teniendo dificultada para predecir los valores máximos. A simple vista la predicción tiene una precisión similar a la obtenida a los casos anteriores donde empleamos una ventana de 5 mediciones.

RESULTADOS RED 12 (Adadelta)

RED 13 (Adam)

Precisión (MAE) 145.05 140.91 Sobreajuste (%) 10.91 20.15 Duración de entrenamiento (s) 483 503

Tabla 14. Resultados de la RED 12 y 13

En la tabla de resultados vemos la comparativa entre las RED 12 y 13. Vemos que claramente el optimizador Adam consigue reducir el error en la predicción en mayor medida que Adadelta para este caso. Sin embargo, con Adam el sobreajuste es el doble que con Adadelta. Esto indica que mientras Adam lograba reducir en mayor medida el coste en el conjunto de entrenamiento, no era capaz de reducirlo en la misma medida en el conjunto de validación.

RED 14

En esta red vamos a introducir la función de activación ReLU para comparar su rendimiento con la RED 14 en la que empleamos la función tanh. Para ello también emplearemos el optimizador Adam, el cual vimos que ofrece mejores resultados que Adadelta en las redes FC. Hemos reducido a la mitad la tasa de aprendizaje para que la reducción del coste durante el entrenamiento sea más suave y con menos oscilaciones.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate: 5.00E-4 Número de épocas: 200

Page 61: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

53

Tamaño de batch: 300 Función de coste: MSE Función de activación: ReLU Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 63. Evolución del coste por época de la RED 14

En la gráfica vemos cómo ha evolucionado el valor del coste durante el proceso de entrenamiento. La reducción de la tasa de aprendizaje se muestra en la caída más suave del coste durante las primeras 50 épocas en el conjunto de datos de entrenamiento (en azul). El coste en validación sigue mostrando algunas oscilaciones y vemos que se ha estancado alrededor de la época 100.

Ilustración 64. Predicción de la RED 14

La gráfica de predicción muestra algunas diferencias interesantes con respecto a su análoga en la RED 13. En este caso la red sí que consigue alcanzar más fácilmente los valores más altos de radiación. Este resultado tiene sentido si observamos la gráfica de la función ReLU (apartado 2.1.3), que aumenta de manera lineal a diferencia de la función tanh. De esta forma no reduce los valores cercanos a ‘1’ como sí hace la función tanh. A su vez, logra un menor ajuste en los valores iguales o próximos a 0, ya que el mínimo de la función ReLU es 0, a diferencia que tanh que es -1.

En la tabla de resultados de la RED 14 vemos cómo estos comportamientos se trasladan a una mejora en el valor de precisión. La RED 14 tiene un valor de MAE 4 puntos inferior a la RED 13. Esto demuestra que las redes FC con ReLU dan lugar a mejores predicciones. Los valores de sobreajuste y duración de entrenamiento son similares a los de la RED 13.

Page 62: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

54

RESULTADOS RED 14 Precisión (MAE) 136.64 Sobreajuste (%) 17.47 Duración de entrenamiento (s)

467

Tabla 15. Resultados de la RED 14

RED 15 – RED 16

Una vez estudiadas las redes FC empleando ventanas de medición de tamaño 15, comenzamos con las RNN. En este primer caso compararemos dos arquitecturas de dos capas: una con dos capas de 100 nodos RNN y otra con 20 nodos. Al igual que en los casos anteriores la capa de salida es una única capa densa con función de activación ReLU. Las características e hiperparámetros comunes de ambas redes son los siguientes:

Arquitectura: RED 15: 100 (RNN) 100 (RNN) 1 (D) RED 20: 20 (RNN) 20 (RNN) 1 (D)

Learning rate: 5.00E-4 Número de épocas: 100 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 65. Evolución del coste por época de la RED 15 y 16

En la imagen anterior aparecen comparadas las gráficas de predicción de ambas redes. La principal diferencia que se puede observar es que la RED 15 presenta mayores oscilaciones, por ejemplo, en los minutos 550 y 850. Esto muy probablemente causará un descenso en la precisión. En los primeros 400 minutos las predicciones es muy similar en ambas redes.

RESULTADOS RED 15 (100 nodos)

RED 16 (20 nodos)

Precisión (MAE) 143.86 142.57 Sobreajuste (%) 21.05 9.12 Duración de entrenamiento (s) 3660 919

Tabla 16. Resultados de la RED 15 y 16

Page 63: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

55

En la tabla de resultados vemos notables diferencias entre ambas redes. Pese a que la RED 15 necesita 4 veces más tiempo de entrenamiento, tiene un MAE mayor que la RED 16. Además, el sobreajuste es mucho mayor. La RED 15, por tanto, es más adecuada para este escenario y prueba que dos capas de 100 nodos LSTM son demasiados.

RED 17

En el caso de estudio anterior en que empleamos ventanas de predicción de 5 minutos vimos que las redes recurrentes de una sola capa funcionan en términos generales mejor que las de dos capas. Por ello vamos a experimentar con una RNN de una sola capa y 100 nodos:

Arquitectura: 100 (RNN) 1 (D) Learning rate: 1.00E-5 Número de épocas: 100 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 66. Evolución del coste por época de la RED 17

Podemos ver en la gráfica que muestra la evolución del coste durante el entrenamiento cómo en esta red se sigue reproduciendo el efecto de estancamiento del coste en validación a partir de la época 50. El coste en el conjunto de entrenamiento desciende de manera suave y más pronunciada en las primeras 10 épocas que en las restantes.

Page 64: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

56

Ilustración 67. Predicción de la RED 17

La gráfica de predicción muestra un comportamiento a medio camino entre la RED 15 y 16. Así el número de oscilaciones bruscas de la red está en un nivel intermedio entre ambas. También se observa una predicción razonablemente buena en las primeras mediciones del día correspondiente al intervalo comprendido entre los minutos 400 y 600.

Ilustración 68. Detalle de la predicción de la RED 17

En la gráfica vemos un detalle del intervalo antes mencionado. En ella vemos cómo la red ajusta su predicción en las perturbaciones en la radiación que se producen entre los minutos 525 y 550.

RESULTADOS RED 17 Precisión (MAE) 141.11 Sobreajuste (%) 14.17 Duración de entrenamiento (s)

1660

Tabla 17. Resultados de la RED 17

Page 65: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

57

La tabla de resultados de la RED 17 vemos una mejoría de más de 1 punto en la reducción del MAE con respecto a la RED 16. A su vez tanto el sobreajuste como el tiempo de entrenamiento están a medio camino entre las dos redes anteriores. Parece que esta red ha conseguido un término medio adecuado entre ambas.

Sin embargo, ninguna de las RNN ha obtenido mejores resultados de precisión que la RED 14, una red FC. El aumento en la ventana de datos de 5 a 15 mediciones nos ofrece diferencias significativas en este aspecto, puesto que también en el caso de 5 mediciones las RNN seguían por debajo con respecto a la mejor red FC.

RED 18-19

Para este caso vamos a comparar las dos arquitecturas de red LSTM que mejores resultados han dado en las pruebas preliminares:

Arquitectura: RED 18: 20 (LSTM) 1 (D) RED 19: 60 (LSTM) 1 (D)

Learning rate: 5.00E-4 Número de épocas: 100 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 69. Comparación del coste por época entre la RED 18 y 19

En la gráfica vemos la evolución del coste de entrenamiento entre ambas. A priori vemos que a mayor número de unidades por capa LSTM, se produce un mayor descenso en el coste. Sin embargo, esto no necesariamente da lugar a una mejor precisión final como podemos comprobar en la siguiente gráfica.

Ilustración 70. Evolución del coste por época de la RED 18 y 19

Page 66: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

58

En la gráfica anterior vemos que la RED 19 (gráfica inferior), presenta un sobreajuste mucho mayor a la RED 18 (gráfica superior). De esta forma es muy probable que la precisión final sea peor a pesar de que el coste en el conjunto de entrenamiento fuera menor.

Ilustración 71. Comparativa de predicción de la RED 18 (izq.) y RED 19 (dcha.)

Podemos comprobar en la gráfica comparativa entre predicciones que a simple vista la RED 18 tiene un mejor ajuste. Esto se comprueba especialmente en los intervalos de radiación correspondientes al amanecer y atardecer donde la predicción de la RED 18 prácticamente se superpone al valor real.

RESULTADOS RED 18 (20 nodos)

RED 19 (60 nodos)

Precisión (MAE) 139.72 140.82 Sobreajuste (%) 10.62 16.80 Duración de entrenamiento (s) 3660 4280

Tabla 18. Resultados comparados de la RED 18 y RED 19

La tabla de resultados confirma que la RED 18 tiene una mayor precisión como vimos en la gráfica de predicción. Al igual que se muestra en las gráficas de evolución del coste, la tabla muestra también que la RED 19 tiene un nivel de sobreajuste significativamente mayor.

De esta forma la RED 18 es la red LSTM que mejor rendimiento demuestra. A pesar de ello no logra superar a la RED 14 que termina siendo la mejor entre todas las probadas para un horizonte de predicción de 1 hora. Se comprueba que en términos generales la precisión de los distintos grupos de redes aumenta al aumentar la ventana de datos. Sin embargo, esta mejora no es muy significativa puesto que el descenso del MAE de la RED 14 sobre la RED 11 es de apenas 3 puntos.

Hemos comprobado que emplear ventanas de 5 y 15 minutos da lugar a predicciones razonables muy superiores sus respectivos casos base. Las redes predicen bastante bien los patrones diarios de los datos de radiación, deduciendo con bastante precisión los valores los valores nocturnos y los relativos al amanecer y atardecer. Por el contrario, las redes tienen dificultades para predecir los descensos bruscos de radiación por la aparición de nubes y otros fenómenos.

Page 67: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

59

4.3.2. Horizonte de predicción de 3 horas Hemos estudiado la capacidad de distintas redes para predecir la radiación en un lapso de 1h. En este apartado analizaremos la precisión que muestran si triplicamos dicho lapso de tiempo. Empezaremos alimentando a las redes con timesteps de 15 mediciones consecutivas al igual que en el apartado anterior, de esta forma podremos comparar los resultados con las predicciones a 1 hora.

VENTANA DE PREDICCIÓN: 15 min

Comenzamos estudiando el caso base:

Ilustración 72. Gráfica de predicción del baseline

En la gráfica comprobamos cómo en este caso la predicción basada en weighted average forecast es muy pobre ya que el desfase es 3 veces mayor al aumentar el horizonte de predicción. Así el valor de precisión de predicción es de 343.98 W/m2. Recordemos que calculamos la predicción en cada caso como la media de los valores de la ventana de datos. Aun así, nos sirve como cota mínima con la que comparar el rendimiento de nuestras redes.

RED 20 - RED 21

Comenzamos con la arquitectura de RED que mejores resultados nos ha dado en los casos anteriores. En este caso compararemos de nuevo las funciones de activación tanh y ReLU. Para aumentar la velocidad de entrenamiento aumentamos el tamaño de batch de 300 a 500. Esto tendrá una pequeña penalización en la precisión, pero no es apenas significativa. En cambio, reducirá el tiempo de entrenamiento permitiendo realizar más pruebas:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 500 Función de coste: MSE

Page 68: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

60

Función de activación: RED 20: tanh RED 21: ReLU

Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 73. Comparación del coste por época entre la RED 20 y 21

En la mitad superior de la gráfica vemos que la evolución del coste durante el entrenamiento es muy similar en ambas redes. Sin embargo, si hacemos zoom sobre las ultimas 10 épocas, podemos comprobar que la RED 21 (ReLU) consigue reducir en mayor medida el coste. Este resultado coincide con los obtenidos en las pruebas con horizonte de predicción de 1 hora, donde en redes FC con función ReLU como activación se consigue una mayor precisión en la predicción.

Ilustración 74. Predicción de la RED 21

En la gráfica de predicción se ve a simple vista que la predicción de la RED 21 es significativamente menos acertada que en el caso de las predicciones a 1 hora. Vemos por un lado fuertes fluctuaciones en los primeros 100 minutos. Además, se acentúan

Page 69: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

61

las dificultades para predecir los valores pertenecientes a las horas centrales del día, produciéndose desfases de hasta 300 W/m2. Este resultado tiene sentido teniendo en cuenta que cuanto más lejana en el tiempo sea la predicción, más difícil será predecir su valor.

RESULTADOS RED 20 (tanh)

RED 21 (ReLU)

Precisión (MAE) 198.39 187.79 Sobreajuste (%) 11.48 11.56 Duración de entrenamiento (s) 426 399

Tabla 19. Resultados comparados de la RED 20 y 21

En la tabla de resultados vemos cómo claramente la RED 21 supera a la RED 20. La diferencia en términos de precisión es de 11 puntos. Esta ventaja en la precisión no va acompañada de un mayor sobreajuste ni de un mayor tiempo de entrenamiento.

Por otro lado, se hace evidente que la precisión de predicción en este caso es muy inferior a las predicciones de 1 hora. Donde el MAE de la mejor red FC es 40 puntos menor que la RED 21.

RED 22

Pasamos a experimentar con las RNN. Comenzamos con una red de dos capas y 100 unidades por capa. En las pruebas realizadas en los escenarios anteriores con RNN de dos capas vimos que tienden sufrir de sobreajuste, por lo que añadimos un 30% de dropout entre la última capa recurrente y la capa densa para intentar reducirlo.

Arquitectura: 100 (RNN) 100 (RNN) 1 (D) Learning rate: 5.00E-4 Número de épocas: 100 Tamaño de batch: 500 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1 Regularización: Dropout

Ilustración 75. Evolución del coste por época de la RED 22

Podemos ver cómo gracias a la introducción del dropout el sobreajuste es muy pequeño. Esto se comprueba al ver cómo la línea que representa el coste en validación está muy próxima a la línea azul que representa el coste del conjunto de entrenamiento.

Page 70: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

62

Ilustración 76. Predicción de la RED 22

La predicción de esta red muestra algunos comportamientos extraños. Por un lado, están las fluctuaciones que se producen antes del minuto 200, que también se dan en las redes FC. Por otro lado, a partir del minuto 400, la predicción se mantiene plana a pesar de que el valor real va en aumento. Este fenómeno puede verse más en detalle en la siguiente gráfica:

Ilustración 77. Detalle de la predicción de la RED 22

RESULTADOS RED 22 Precisión (MAE) 206.77 Sobreajuste (%) 7.85 Duración de entrenamiento (s)

3354

Tabla 20. Resultados de la RED 22

En la tabla de resultados se muestra que, a pesar de que hemos reducido el sobreajuste, la precisión es significativamente peor con respecto a la RED 21. La duración del entrenamiento, a su vez, es 10 veces mayor.

Page 71: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

63

RED 23

El uso de dropout en el caso anterior logró reducir el sobreajuste, pero a costa de reducir también la precisión de predicción. Para intentar redecir el sobreajuste sin penalizar la precisión probaremos con una red RNN de una sola capa y 100 unidades. Al reducir el tamaño de la red esperamos que la red no se especialice demasiado en los datos de entrenamiento. Las demás características e hiperparámetros de la red son los siguientes:

Arquitectura: 100 (RNN) 1 (D) Learning rate: 5.00E-4 Número de épocas: 100 Tamaño de batch: 500 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1

Ilustración 78. Evolución del coste por época de la RED 23

Podemos ver en la gráfica anterior que el nivel de sobreajuste de la red es moderado, aunque no tan bajo como en el caso anterior. También presenta fluctuaciones especialmente en las épocas finales. El coste del conjunto de datos de entrenamiento desciende de forma suave, lo que indica que la tasa de aprendizaje elegida para el algoritmo de optimización (Adam) es adecuado.

Ilustración 79. Predicción de la RED 23

Page 72: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

64

La predicción muestra comportamientos similares a los de la RED 22. Siguen apareciendo las fuertes fluctuaciones en los primeros minutos. También el intervalo en el que la predicción se mantiene plana a partir del minuto 400 sigue presente. Las principales diferencias son la mejor predicción de los valores máximos y de los valores nulos nocturnos.

RESULTADOS RED 23 Precisión (MAE) 200.06 Sobreajuste (%) 10.05 Duración de entrenamiento (s)

1348

Tabla 21. Resultados de la RED 23

En la tabla se observa que, en efecto, la precisión es sustancialmente mejor que en el caso anterior, con una mejora de 6 puntos en la precisión. El sobreajuste es algo mayor pero aun así está en un valor razonable. Además, el tiempo de entrenamiento es 3 veces menor. A pesar de esta mejoría, las RNN no han superado el valor de precisión obtenido por la mejor red FC, la RED 21.

RED 24

En este caso vamos a comprobar si las redes LSTM pueden superar la precisión obtenida por las RNN y en especial a las redes FC, al igual que ocurrió para el horizonte de predicción de 1 hora. Esta red se compone de dos capas LSTM de 20 nodos.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 20 (LSTM) 20 (LSTM) 1 (D) Learning rate: 1.0 Número de épocas: 100 Tamaño de batch: 500 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Ilustración 80. Evolución del coste por época de la RED 24

La evolución del coste de entrenamiento indica que el nivel de sobreajuste es bajo, aunque de lugar a oscilaciones en el coste de validación. El coste sobre los datos de entrenamiento desciende de manera suave y progresiva, con dos descensos un poco más pronunciados al comienzo y alrededor de la época 20.

Page 73: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

65

Ilustración 81. Predicción de la RED 24

Para mostrar mejor los resultados de predicción mostraremos la predicción sobre dos días consecutivos. Vemos que la red predice relativamente bien ellos ciclos de día y noche. Sin embargo, se repiten los comportamientos extraños que vimos en las anteriores redes RNN, como por ejemplo los picos durante los valores nocturnos o los estancamientos en el valor de predicción durante el amanecer.

RESULTADOS RED 24 Precisión (MAE) 195.72 Sobreajuste (%) 9.51 Duración de entrenamiento (s)

3445

Tabla 22. Resultados de la RED 24

Los resultados de la tabla muestran una mejora sustancial en la precisión con respecto a la RED 23, la mejor RNN. Así pasamos de un MAE de 200.06 a 195.72. El sobreajuste está dentro de los parámetros normales con un valor de 9.51. La duración, como ya comprobamos en casos anteriores es mucho mayor en las redes LSTM que en las RNN simples, siendo de media 3 veces mayor.

RED 25

Para esta prueba utilizaremos una única capa LSTM. En pruebas anteriores hemos visto que este tipo de arquitecturas en ocasiones ofrece mejores resultados que otras redes de mayor tamaño. Las características e hiperparámetros completos de esta red son:

Arquitectura: 60 (LSTM) 1 (D) Learning rate: 1.0 Número de épocas: 100 Tamaño de batch: 500 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Page 74: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

66

Ilustración 82. Evolución del coste por época de la RED 25

En la gráfica de coste vemos un comportamiento muy similar con respecto al caso anterior. El tamaño de las oscilaciones es parecido y el nivel de sobreajuste es también moderado. La evolución del coste del conjunto de datos de entrenamiento (azul) sigue el mismo comportamiento, con dos descensos más pronunciados.

Ilustración 83. Predicción de la RED 25

En la gráfica de predicción podemos destacar el aumento de las oscilaciones que hemos ido viendo en los casos anteriores. Así comprobamos que el pico que se produce en la noche comprendida entre ambos días es aún más pronunciado. Además, persisten los estancamientos durante el amanecer que ya vimos en los casos anteriores.

Los resultados de la RED 25 muestran una menor precisión. Así el aumento del error MAE es de 5 puntos con respecto al caso anterior. El sobreajuste se mantiene prácticamente idéntico, al igual que la duración del entrenamiento con respecto al caso anterior.

Page 75: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

67

RESULTADOS RED 25 Precisión (MAE) 200.60 Sobreajuste (%) 9.86 Duración de entrenamiento (s)

3353

Tabla 23. Resultados de la RED 25

Una vez estudiados los Resultados de la ventana de datos de 15 minutos y horizonte de predicción de 3 horas, hemos comprobado que estas redes tienen una precisión significativamente menor con respecto al horizonte de predicción de 1 hora. A pesar de ello, la mejora con respecto al caso base es muy superior. Si comparamos las dos redes que mejor rendimiento han en cada caso, vemos que la RED 14 tiene un 25% menos de nivel de error en la predicción frente a la RED 21. Siendo el error de la RED 14 igual a 136.74 W/m2 frente a los 187.79 W/m2 de la RED 19.

Estas dos redes son redes FC, con una topología [85 (D) 17 (D) 1 (D)], optimizador Adam y neuronas ReLU. Vemos que por el momento este tipo de red se impone a las redes RNN y LSTM. Sin embargo, aún es pronto para calificar a las redes FC como las más adecuadas para la predicción de valores de radiación solar. Sobre todo, teniendo en cuenta que los tamaños de ventanas de predicción son aún reducidos y es posible que no sea suficiente para que las redes recurrentes sean capaces de detectar los patrones temporales lejanos de existen en este tipo de datos.

VENTANA DE PREDICCIÓN: 30 min

En las pruebas anteriores hemos comprobado cómo para una ventana de datos corta de 15 min, las redes LSTM no logran superar la capacidad de predicción de las redes FC. Parece una ventana de 15 min no es suficiente para que las redes recurrentes sean capaces de capturar patrones temporales que les permitan ajustar mejor su predicción. Para comprobar esta hipótesis vamos a aumentar el tamaño de la ventana a 30 mediciones, es decir un intervalo de 30 min. Comenzamos calculando la predicción base:

Ilustración 84. Comparativa entre predicción y los valores del caso base

Como podemos ver en la figura, esta predicción es muy similar al baseline del caso anterior. La única diferencia es que en este caso toma como precisión la media de 30 elementos en lugar de 15 por lo que las fluctuaciones son más suaves. El valor de precisión de esta predicción es 350.80 W/m2.

Page 76: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

68

RED 26 - RED 27

Vamos a estudiar la tipología de red FC que mejores resultados ha dado en las pruebas iniciales. Al igual que en los casos anteriores emplearemos la función de activación ReLU y Adam como optimizador. Mantenemos el tamaño de batch en 300 y el número de épocas en 200 ya que permiten un tiempo de entrenamiento razonable para nuestras limitaciones de hardware y procesamiento. Vamos a comparar dos casos: una red usará dropout y otra no. Así veremos el impacto que tiene esta característica en la reducción del sobreajuste y en a precisión.

Las características e hiperparámetros completos de estas redes son:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate: 1.00E-3 Número de épocas: 200 Tamaño de batch: 500 Función de coste: MSE Función de activación: ReLU Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1 Regularización:

RED 26: No RED 27: Dropout

Ilustración 85. Comparativa del coste por época entre la RED 26 y 27

En la gráfica de evolución del coste vemos que la RED 27, que emplea dropout, reduce en menor medida el coste en comparación con la RED 26, que no utiliza dropout. Este resultado a priori puede hacer ver que el dropout da lugar a menor precisión, pero es necesario ver también el efecto que tiene en la reducción del sobreajuste. Esto pude verse en la siguiente gráfica comparativa.

Page 77: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

69

Ilustración 86. Evolución del coste por época de la RED 26 y 27

La parte izquierda de la gráfica muestra el coste en el conjunto de entrenamiento y validación de la RED 26 y a la derecha los de la RED 27. Se comprueba a simple vista que la red 26 presenta un nivel de sobreajuste mayor, especialmente en las últimas épocas de entrenamiento. Así vemos que el dropout ayuda en gran medida a reducir el sobreajuste. Sin embargo, también limita la reducción del coste, de forma que puede reducir la precisión de la predicción.

Ilustración 87. Predicción de la RED 26 y 27

En la gráfica comparativa de predicciones vemos muchas similitudes entre ambas predicciones. Por otro lado, la RED 26 parece tener más fluctuaciones, algunas fuertes como la brusca caída a 0 alrededor del minuto 650. Sin embargo, esta red predice con menor margen de error los valores altos de radiación del mediodía. La RED 27, con dropout, parece tener un comportamiento más estable, pero predice peor los valores altos antes mencionados.

RESULTADOS RED 26 (No Dropout)

RED 27 (Dropout)

Precisión (MAE) 189.40 199.54 Sobreajuste (%) 15.53 8.10

Duración de entrenamiento (s) 536 601

Tabla 24. Resultados comparados de las redes 26 y 27

Analizando la tabla de resultados vemos cómo, en efecto, la red que emplea dropout, reduce significativamente el sobreajuste en la predicción hasta casi la mitad. Sin embargo, este hecho se ve eclipsado por la fuerte caída en la precisión con un aumento del error de predicción de 10 puntos. Concluimos así que para este caso de red FC la introducción de dropout no aporta una mejora en su capacidad de predicción.

Page 78: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

70

RED 28

En este caso analizaremos la red RNN que mejores resultados ha obtenido en las pruebas preliminares. Esta red se compone de dos capas RNN simples con 100 nodos cada una. Emplea Adadelta como optimizador. Adadelta parece funcionar mejor en redes recurrentes por encima de otros optimizadores como Adam. Continuamos con tanh como función de activación pues es la que mejores resultados ofrece en

Las características e hiperparámetros completos de esta red son:

Arquitectura: 100 (RNN) 100 (RNN) 1 (D) Learning rate: 1.0 Número de épocas: 100 Tamaño de batch: 500 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Ilustración 88. Evolución del coste por época de la RED 28

En la gráfica de evolución de coste durante el entrenamiento vemos un descenso muy pronunciado durante las primeras épocas que se va suavizando hasta el final del entrenamiento. El coste de validación se mantiene ligeramente por encima del coste de entrenamiento y presenta fluctuaciones, algunas de ellas fuertes como alrededor de la época 60. A pesar de ello muestra un sobreajuste bajo.

Ilustración 89. Predicción de la RED 28

Page 79: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

71

Observando la gráfica de predicción comprobamos que persisten algunos de los comportamientos anómalos que vimos en anteriores redes recurrentes para las predicciones de 3 horas. Continúan las fuertes oscilaciones durante los periodos correspondientes al atardecer, así como el estancamiento de la predicción a partir de la época 400 que puede verse en más detalle en la gráfica siguiente. La predicción es muy similar a la de la RED 23, que fue la red recurrente simple que mejores resultados obtuvo con una ventana de datos de 15 minutos y horizonte de predicción de 3 horas.

Ilustración 90. Detalle de la predicción de la RED 28

RESULTADOS RED 28 Precisión (MAE) 199.51 Sobreajuste (%) 26.32 Duración de entrenamiento (s)

5856

Tabla 25. Resultados de la RED 28

En la tabla de resultados vemos que, como intuimos antes, la precisión de predicción es casi la misma que la RED 23 (200.06 de MAE), con una pequeña mejoría de medio punto. El overfitting, por otro lado, es muy superior al caso anterior pasando de 10.05% a 26.32%. De esta forma hemos comprobado que el aumento del tamaño de la ventana de datos de 15 a 30 minutos tiene una influencia positiva en las redes RNN simples, pero no es demasiado significativa.

RED 29 - RED 30

Las características e hiperparámetros completos de esta red son:

Arquitectura: 20 (LSTM) 20 (LSTM) 1 (D) Learning rate:

RED 29: 1.0 RED 30: 5.00E-4

Número de épocas: 100 Tamaño de batch: 500

Page 80: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

72

Función de coste: MSE Función de activación: tanh Algoritmo de optimización:

RED 29: Adadelta RED 30: Adam

Tratamiento de datos: Escalado entre 0 y 1

Ilustración 91. Evolución del coste por época de la RED 29 y 30

En la gráfica de costes vemos que la tendencia de descenso del coste en ambas gráficas es muy similar. Ambas tienen un descenso brusco en las primeras épocas seguido de uno más progresivo y ambas tienen un nivel de sobreajuste bajo a su vez.

Ilustración 92. Comparativa de predicción de la RED 29 (izq.) y RED 30 (dcha.)

Analizando las gráficas de predicción vemos que ambas siguen un esquema similar. Podemos ver en ambas las mismas variaciones y estancamientos que hemos observado en las demás redes recurrentes y LSTM. En la gráfica de la RED 29, sin embargo, vemos que estas oscilaciones están más atenuadas, lo cual reduce el error en la precisión.

RESULTADOS RED 29 (Adadelta) RED 30 (Adam) Precisión (MAE) 182.86 197.09 Sobreajuste (%) 10.61 7.80

Duración de entrenamiento (s) 6068 6318

Tabla 26. Resultados comparados de la RED 29 y 30

Page 81: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

73

Finalmente, en la tabla de resultados vemos que la RED 29, que emplea Adadelta como optimizador, obtiene una precisión de predicción muy superior a la RED 30 que emplea Adam. Este resultado coincide con el que se obtuvo empleando 15 minutos como ventana de datos, donde las redes LSTM con Adadelta fueron más precisas.

La RED 29 es la que ha obtenido una mejor precisión de predicción en este escenario de predicción de 3 horas con una ventana de datos de 30 minutos. La precisión de la RED 21, que fue el que mejor rendimiento obtuvo para una ventana de datos de 15 minutos, es de 187.79. De esta forma hemos comprobado que, para una predicción con un alcance de 3 horas, el aumento de la ventana de datos mejora el rendimiento de las redes recurrentes y en especial de las LSTM. Mientras tanto las redes FC no vieron mejorada su precisión en las mismas condiciones.

4.3.3. Horizonte de predicción de 6 horas En los escenarios anteriores hemos realizado pruebas con diversos tipos de redes neuronales FC y recurrentes para horizontes de predicción cercanos de 1 y 3 horas. Para ello hemos entrenado estas redes con ventanas de datos de entre 5 y 30 minutos. Analizando los resultados de las predicciones hemos comprobado que cuanto mayor es el tamaño de dicha ventana mayor es en general la precisión, siendo las redes LSTM las que más se benefician de este hecho.

Para experimentar con predicciones más lejanas, es necesario utilizar ventanas de predicción más amplias que permitan a las redes detectar correlaciones temporales más alejadas en el tiempo. Es necesario utilizar intervalos de tiempo de varias horas e incluso días. Por desgracia, las limitaciones en la capacidad de cómputo y en el tiempo de trabajo hacen que no sea posible entrenar redes neuronales con ventanas tan amplias ya que cada entrenamiento podría llevar días en completarse.

El objetivo de este trabajo es experimentar con gran cantidad de combinaciones de características e hiperparámetros en las redes por lo que debemos buscar alternativas que nos permitan cumplir con el objetivo. Por ello para experimentar con predicciones más lejanas utilizaremos un conjunto de datos de medición con una granularidad de 15 minutos entre mediciones, como se explica en el apartado 4.1.

Este aumento en la granularidad de los datos reduce significativamente el tamaño del conjunto por lo que será más rápido entrenar las redes. Sin embargo, también se pierde detalle en la serie temporal al hacer que los datos sean más homogéneos. Esto provoca que perdamos algo de información acerca de cambios bruscos en las mediciones de los sensores, como por ejemplo uno provocado por el paso de una nube. A pesar de ello nos aportará información sobre si las redes recurrentes verdaderamente con capaces de ver comportamientos en los datos que las redes FC no pueden.

Page 82: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

74

VENTANA DE PREDICCIÓN: 1 día

El primer caso que estudiaremos para este nuevo escenario es realizar predicciones para una ventana de datos de 1 día completo. Puesto que los sensores toman medidas durante 15 horas al día y la granularidad de los datos es de 15 min, necesitamos una ventana de datos de 60 mediciones para abarcar un día completo.

Comenzamos estudiando el caso base:

Ilustración 93. Comparativa entre predicción y los valores reales del caso base

En la gráfica vemos que los datos reales tienen un perfil más suavizado y con menos ruido que en el conjunto de datos con granularidad de 1 minuto entre mediciones. Por otro lado, puesto que la predicción se basa en la media de las mediciones de la ventana y la ventana es de 1 día completo, la predicción es muy plana y poco precisa. A pesar de ello nos servirá como caso base. Si las redes obtienen predicciones menos precisas que ésta, sabremos que no vamos por buen camino. La precisión medida como el MAE de la predicción con respecto al valor real es de 274.48 W/m2.

RED 31

Como primera red a estudiar hemos elegido esta red ya que ha obtenido unos buenos resultados dentro de las redes FC. Esta red es bastante llamativa puesto que da lugar a predicciones con una precisión significativa empleando elementos que no han funcionado bien en casos anteriores. Así tiene una topología de red muy simple sin capas ocultas y con solo 17 neuronas en su capa de entrada y emplea como función de activación la sigmoide:

Arquitectura: 17 (D) 1 (D) Learning rate: 1.0 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: sigmoide Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Page 83: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

75

Ilustración 94. Evolución del coste por época de la RED 31

Analizando la evolución del coste durante el entrenamiento, vemos que a diferencia de los casos anteriores la curva desciende muy bruscamente durante las primeras 5 épocas. Posteriormente el coste se mantiene casi constante, decreciendo muy lentamente. Se observa un cierto sobreajuste especialmente en las épocas finales donde el coste en validación aumenta.

Ilustración 95. Predicción de la RED 31

En la gráfica de predicción, vemos algunas diferencias notables con respecto a los anteriores escenarios. En primer lugar, vemos que la red predice con gran precisión la tendencia general de la radiación en un día. Así, podemos comprobar cómo el ajuste de la predicción al valor real durante el anochecer, la noche y el amanecer es prácticamente exacto. Vemos también que las predicciones para distintos días tienen una forma similar pero la red consigue adaptar en cierta medida los picos de las curvas a los máximos de radiación de cada día. Sin embargo, tiene problemas para predecir los valores muy altos y los valles como puede verse en los dos primeros días y en los dos siguientes respectivamente.

Page 84: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

76

RESULTADOS RED 31 Precisión (MAE) 112.67 Sobreajuste (%) 14.70 Duración de entrenamiento (s)

59

Tabla 27. Resultados de la RED 31

En la tabla de Resultados de la RED 30 destaca la enorme mejora en la precisión con respecto a todas las predicciones realizadas anteriormente. Conviene recordar que estos buenos resultados se deben en gran medida a la granularidad más gruesa de los datos, que hace más fácil su predicción. Por ello debemos comparar este resultado con las pruebas posteriores para un mejor análisis.

Vemos que debido a la reducción en el número de datos sobre los que entrenar, el tiempo de entrenamiento de ha reducido considerablemente por un factor de 10. Tiene sentido puesto que el número total de datos es 15 veces menor al estar empleando la media de los datos en intervalos de 15 minutos.

RED 32

A continuación, vamos a analizar la arquitectura de red FC que mejores resultados ha dado en los escenarios anteriores. Se trata de una arquitectura con una capa oculta de 17 nodos, una capa de entrada de 85 nodos y una de salida con 1 nodo. Las características e hiperparámetros completos de esta red son:

Arquitectura: 85 (D) 17 (D) 1 (D) Learning rate: 1.0 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Ilustración 96. Evolución del coste por época de la RED 32

En la gráfica anterior se observa una evolución del coste de entrenamiento similar al de la RED 31. La principal diferencia es que el descenso durante las primeras 10 épocas es aún más brusco. Esto unido a que el coste se mantiene prácticamente

Page 85: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

77

constante durante el resto de las épocas, hace que la gráfica tenga forma de ‘L’. Por otro lado, puede verse que las oscilaciones del coste de validación son algo mayores.

Ilustración 97. Predicción de la RED 32

La predicción de la RED 31 es prácticamente idéntica a la de la RED 30. Así vemos que su ajuste a los datos reales sigue siendo preciso, aunque con algunas perturbaciones en los intervalos de tiempo relativos a la noche. De nuevo tiene problemas para predecir los valores máximos. La diferencia más notable la vemos en el cuarto día, donde la predicción se adapta mejor al valle que se produce en las horas centrales de dicho día.

RESULTADOS RED 32 Precisión (MAE) 112.92 Sobreajuste (%) 24.58 Duración de entrenamiento (s)

100

Tabla 28. Resultados de la RED 32

La tabla de resultados muestra que la precisión prácticamente idéntica a la RED 31, con una diferencia de apenas 0.25 W/m2 entre ambos valores. Destaca el valor del sobreajuste, que en este caso duplica al valor calculado de la RED 30. El tiempo de entrenamiento es mayor, aunque sigue siendo muy bajo.

RED 33-34

Una vez analizadas las dos redes FC más relevantes en este escenario pasamos a las RNN. Vamos a comparar los resultados de la arquitectura que mejores resultados ha dado y compararemos su rendimiento con los optimizadores Adam y Adadelta. Puesto que en casos anteriores hemos comprobado que dos capas de neuronas recurrentes pueden causar sobreajuste, aplicamos dropout para contrarrestarlo. Las características e hiperparámetros completos de esta red son:

Page 86: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

78

Arquitectura: 60 (RNN) 60 (RNN) 1 (D) Learning rate:

RED 33: 5.00E-4 RED 34: 1.0

Número de épocas: 100 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización:

RED 33: Adam RED 34: Adadelta

Tratamiento de datos: Escalado entre 0 y 1 Regularización: Dropout

Ilustración 98. Evolución del coste por época entre la RED 33 y 34

En la gráfica superior de la imagen anterior vemos cómo el descenso del coste de entrenamiento es prácticamente idéntico en ambos casos, con un descenso fuerte al principio seguido de un estancamiento. Sin embargo, en la gráfica inferior vemos que la RED 33 tiene un resultado ligeramente mejor, logrando reducir en mayor medida el coste.

Ilustración 99. Predicción de la RED 33

En la gráfica de predicción de la RED 33 vemos que la predicción de cada uno de los días parece ser muy similar, a pesar de que los valores reales no sean iguales para

Page 87: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

79

cada día. Así la red realiza una predicción que capta la tendencia diaria general pero no las oscilaciones concretas.

En la tabla de resultado que se muestra a continuación, se demuestra que la RED 33, que usa Adam como optimizador, ha obtenido un mejor resultado prediciendo los valores de radiación. La diferencia entre ambas es de 2 puntos de MAE. El sobreajuste es similar en ambas, siendo ligeramente superior en la RED 34.

RESULTADOS RED 33 (Adam) RED 34 (Adadelta) Precisión (MAE) 109.03 111.13 Sobreajuste (%) 9.77 10.70

Duración de entrenamiento (s) 881 854

Tabla 29. Resultados comparados de las redes 33 y 34

Estos resultados muestran que, en este escenario, las redes recurrentes simples mejoran a las redes FC en términos de precisión. Este es el primer caso en el que ocurre. En los anteriores escenarios de predicción vimos que las redes FC obtenían buenas predicciones y siempre por encima de las RNN, siendo las LSTM las únicas que en ocasiones han superado a las FC. Esto refuerza la idea de que cuanto mayor sea el número de timesteps con los que se alimenta a red, las redes recurrentes tendrán mejor resultado.

RED 35

En el caso anterior hemos visto que las redes recurrentes se ver reforzadas con la ventana de datos amplia que estamos empleando. Ahora vamos a comprobar si las redes LSTM logran mejorar los resultados de las RNN simples. Para ello comenzamos estudiando una red con la misma arquitectura e hiperparámetros que las RED 33 pero sustituyendo sus neuronas RNN simples por neuronas LSTM.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 60 (LSTM) 60 (LSTM) 1 (D) Learning rate: 5.00E-4 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adam Tratamiento de datos: Escalado entre 0 y 1 Regularización: Dropout

Page 88: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

80

Ilustración 100. Evolución del coste por época de la RED 35

Viendo la gráfica de evolución del coste durante el entrenamiento, sigue produciéndose un descenso brusco en las primeras épocas, seguido de un descenso suave que parece acelerar en las últimas épocas. Esto puede indicar que la red mejoraría si se aumentara el número de épocas. Vemos también que hay un sobreajuste bastante significativo que se mantiene constante a lo largo del entrenamiento.

Ilustración 101. Predicción de la RED 35

Analizando la predicción de la RED 35, vemos algunas diferencias con respecto a las redes recurrentes. Vemos que la red ajusta mejor su predicción y aprende de los valores del día anterior. Así la predicción del segundo día intenta adaptarse al valle y a los dos picos de radiación que lo delimitan. Por otro lado, continúa prediciendo

Page 89: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

81

con bastante exactitud los valores los patrones diarios generales de la radiación, aunque sigue teniendo dificultades con los valores más altos.

RESULTADOS RED 35 Precisión (MAE) 108.93 Sobreajuste (%) 19.49 Duración de entrenamiento (s)

3745

Tabla 30. Resultados de la RED 35

La tabla de resultados muestra una ligera mejoría en la precisión de la predicción con respecto a la RED 34, aunque la mejora es de solo una décima. A pesar de haber utilizado dropout el sobreajuste es bastante alto. Como ya hemos comprobado anteriormente las redes LSTM tienen una duración de entrenamiento mucho mayor. En este caso casi quintuplica el tiempo que necesitó la RED 34, que es recurrente simple.

RED 36

Finalmente vamos a estudiar el comportamiento de una red con una sola capa LTM de 60 nodos. Veremos si así podemos reducir el sobreajuste mientras conseguimos un resultado óptimo. También cambiaremos el optimizador Adam por Adadelta. Hay que recordar que la tasa de aprendizaje inicial es irrelevante en Adadelta puesto que este optimizador estima su propia tasa de aprendizaje. La tasa de aprendizaje que se indica aquí es la que emplea Keras por defecto. Para este caso no utilizaremos dropout.

Las características e hiperparámetros completos de esta red son:

Arquitectura: 60 (LSTM) 1 (D) Learning rate: 1.0 Número de épocas: 200 Tamaño de batch: 300 Función de coste: MSE Función de activación: tanh Algoritmo de optimización: Adadelta Tratamiento de datos: Escalado entre 0 y 1

Ilustración 102. Evolución del coste por época de la RED 36

Page 90: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

82

La gráfica de coste tiene una forma similar a la RED 35. Ambas tienen un descenso casi vertical en las primeras 5 épocas seguido de un descenso casi plano. En este casi el sobrecoste sigue estando presente en un grado parecido. La principal diferencia es que en esta red no se percibe la aceleración del descenso del coste que se observaba en la gráfica de coste de la red anterior.

Ilustración 103. Predicción de la RED 36

La gráfica de predicción nos muestra una importante mejoría en la capacidad de la red para predecir fluctuaciones en la radiación dentro de un mismo día. Vemos que la red a aprendido de los datos del día anterior ya ha predicho con una precisión razonable la tendencia general de los valores de radiación en el segundo día. Todavía existe un cierto margen de mejora, pero los resultados son prometedores.

En la tabla de resultados de la RED 35 comprobamos que se ha conseguido mejorar aún más la precisión de predicción reduciendo en 1 punto el MAE calculado en la RED 34. El sobreajuste sigue siendo algo alto, pero teniendo en cuenta quo no hemos utilizado dropout y aun así el sobreajuste es similar al caso anterior podemos concluir que esta arquitectura genera menos sobreajuste que la anterior. Además, la duración del entrenamiento se reduce considerablemente, siendo apenas la mitad comparado con el caso anterior.

RESULTADOS RED 36 Precisión (MAE) 108.17 Sobreajuste (%) 21.83 Duración de entrenamiento (s)

1489

Tabla 31. Resultados de la RED 36

Con estos resultados concluimos que la RED 35 es la que mejor precisión ha logrado en el escenario de predicción de 6 horas con 60 timesteps de 15 min, es decir una ventana de datos de un día completo. Hemos comprobado que para una ventana de datos amplia las redes recurrentes y en concreto las redes LSTM alcanzan niveles de precisión mayores que las redes FC.

Page 91: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 4: Desarrollo de las soluciones adoptadas.

83

4.4. Comparación de resultados En la siguiente tabla se muestran todas las redes analizadas anteriormente. Están clasificadas por el tipo de red, valores de los principales hiperparámetros y rendimiento en términos de precisión en la predicción. Se incluye una tabla por cada horizonte de predicción y ventana de datos empleada. En amarillo se muestra la red que ha obtenido un mejor resultado en términos de precisión (menor MAE) para cada uno de los escenarios mencionados.

Por motivos de economía del espacio y mejora de la presentación de las tablas se han abreviado algunos conceptos:

FA: función de activación FC: función de coste TB: tamaño de batch TA: tasa de aprendizaje NE: número de épocas R: regularización FC: red Fully-Connected RNN: red neuronal recurrente LSTM: red Long Short-Term Memory D: dense layer R: simple RNN layer L: LSTM layer

Page 92: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CA

PITU

LO 4

: Des

arro

llo d

e la

s so

luci

ones

ado

ptad

as.

84

Hor

izon

te d

e pr

edic

ción

: 1 h

ora

Ven

tana

de

dato

s: 5

med

icio

nes

de

1 m

in

RE

D

Tipo

re

d V

enta

na

de d

atos

(m

in)

Neu

rona

s po

r ca

pa

FA

FC

TB

AO

TA

N

E

R

Prec

isió

n pr

edic

ción

(M

AE

) B

asel

ine

- 5

- -

- -

- -

-

183.

00

RE

D 1

FC

5

17 (D

) 1

(D)

sigm

oide

M

SE

30

0 R

MS

prop

1.

00E

-05

200

No

178.

74

RE

D 2

FC

5

17 (D

) 1

(D)

tan

h M

SE

30

0 R

MS

prop

1.

00E

-05

200

No

175.

54

RE

D 3

FC

5

17 (D

) 1

(D)

ReL

U

MS

E

300

RM

Spr

op

1.00

E-0

5 20

0 N

o 17

7.07

R

ED

4.1

FC

5

17 (D

) 1

(D)

tan

h M

SE

30

0 R

MS

prop

1.

00E

-04

200

No

170.

21

RE

D 4

.2

FC

5 17

(D)

1 (D

) ta

nh

MS

E

300

Ada

delt

a 1

200

No

167.

14

RE

D 4

.3

FC

5 17

(D)

1 (D

) ta

nh

MS

E

300

Ada

m

5.00

E-0

4 20

0 N

o 16

3.88

R

ED

5

FC

5 85

(D)

17

(D)

1 (D

) ta

nh

MS

E

300

Ada

m

1.00

E-0

3 20

0 N

o 14

4.91

R

ED

6

FC

5 85

(D)

17

(D)

5 (D

) 1

(D)

tan

h M

SE

30

0 A

dam

5.

00E

-04

200

No

142.

54

RE

D 7

FC

5

85 (D

) 1

7 (D

) 5

(D)

1 (D

) ta

nh

MS

E

300

Ada

m

5.00

E-0

4 30

0 D

ropo

ut

146.

64

RE

D 8

R

NN

5

20 (R

) 1(

D)

tan

h M

SE

30

0 A

dade

lta

1 20

0 N

o 14

6.14

R

ED

9

RN

N

5 20

(R)

20(

R)

1(D)

ta

nh

MS

E

300

Ada

m

1.00

E-0

3 20

0 N

o 14

4.06

R

ED

10

LSTM

5

20 (L

) 2

0(L)

1(

D)

tan

h M

SE

30

0 A

dam

1.

00E

-03

200

No

140.

58

RE

D 1

1 LS

TM

5 60

(L)

1 (D

) ta

nh

MS

E

300

Ada

m

1.00

E-0

3 20

0 N

o 13

9.92

Ta

bla

32. T

abla

de

resu

ltado

s pa

ra p

redi

cció

n de

1h

y ve

ntan

a de

5 d

atos

Page 93: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CA

PITU

LO 4

: Des

arro

llo d

e la

s so

luci

ones

ado

ptad

as.

85

Ven

tana

de

dato

s: 1

5 m

edic

ione

s de

1 m

in

RE

D

Tipo

re

d V

enta

na

de d

atos

(m

in)

Neu

rona

s po

r ca

pa

FA

FC

TB

AO

TA

N

E

R

Prec

isió

n pr

edic

ción

(M

AE

) B

asel

ine

- 15

-

- -

- -

- -

18

5.60

R

ED

12

FC

15

85 (D

) 17

(D)

1 (D

) ta

nh

MS

E

300

Ada

delt

a 1

200

No

145.

05

RE

D 1

3 FC

15

85

(D)

17 (D

) 1

(D)

tan

h M

SE

30

0 A

dam

1.

00E

-03

200

No

140.

91

RE

D 1

4 FC

15

85

(D)

17 (D

) 1

(D)

ReL

U

MS

E

300

Ada

m

5.00

E-0

4 20

0 N

o 13

6.64

R

ED

15

RN

N

15

100

(R)

100

(R)

1 (D

) ta

nh

MS

E

300

Ada

m

5.00

E-0

4 10

0 N

o 14

3.86

R

ED

16

RN

N

15

20 (R

) 20

(R)

1 (D

) ta

nh

MS

E

300

Adam

5.

00E

-04

100

No

142.

57

RE

D 1

7 R

NN

15

10

0 (R

) 1

(D)

tan

h M

SE

30

0 A

da.

5.00

E-0

4 10

0 N

o 14

1.11

R

ED

18

LSTM

15

20

(L)

1 (D

) ta

nh

MS

E

300

Ada

m

5.00

E-0

4 10

0 N

o 13

9.72

R

ED

19

LSTM

15

60

(L)

1 (D

) ta

nh

MS

E

300

Ada

m

5.00

E-0

4 10

0 N

o 14

0.83

Ta

bla

33. T

abla

de

resu

ltado

s pa

ra p

redi

cció

n de

1h

y ve

ntan

a de

15

dato

s

Page 94: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CA

PITU

LO 4

: Des

arro

llo d

e la

s so

luci

ones

ado

ptad

as.

86

Hor

izon

te d

e pr

edic

ción

: 3 h

oras

Ven

tana

de

dato

s: 1

5 m

edic

ione

s de

1 m

in

RE

D

Tipo

re

d

Ven

tana

de

da

tos

(min

) N

euro

nas

por

capa

FA

FC

TB

A

O

TA

NE

R

Pr

ecis

ión

pred

icci

ón

(MA

E)

Bas

elin

e -

15

- -

- -

- -

-

343.

98

RE

D 2

0 FC

15

85

(D)

17

(D)

1 (D

) ta

nh

MS

E

500

Ada

m

1.00

E-0

3 20

0 N

o 19

8.39

R

ED

21

FC

15

85 (D

) 1

7 (D

) 1

(D)

ReL

U

MS

E

500

Ada

m

1.00

E-0

3 20

0 N

o 18

7.79

R

ED

22

RN

N

15

100

(R)

100

(R)

1 (D

) ta

nh

MS

E

500

Ada

m

5.00

E-0

4 10

0 D

ropo

ut

206.

77

RE

D 2

3 R

NN

15

10

0 (R

) 1

(D)

tan

h M

SE

50

0 A

dam

5.

00E

-04

100

No

200.

06

RE

D 2

4 LS

TM

15

20 (L

) 2

0 (L

) 1

(D)

tan

h M

SE

50

0 A

dade

lta

1 10

0 N

o 19

5.72

R

ED

25

LSTM

15

60

(L)

1 (D

) ta

nh

MS

E

500

Ada

delt

a 1

100

No

200.

60

Tabl

a 34

. Tab

la d

e re

sulta

dos

para

pre

dicc

ión

de 3

h y

vent

ana

de 1

5 da

tos

Ven

tana

de

dato

s: 3

0 m

edic

ione

s de

1 m

in

RE

D

Tipo

re

d

Ven

tana

de

da

tos

(min

) N

euro

nas

por

capa

FA

FC

TB

A

O

TA

NE

R

Pr

ecis

ión

pred

icci

ón

(MA

E)

Bas

elin

e -

30

- -

- -

- -

-

350.

80

RE

D 2

6 FC

30

85

(D)

17

(D)

1 (D

) R

eLU

M

SE

50

0 A

dam

1.

00E

-03

200

No

189.

40

RE

D 2

7 FC

30

85

(D)

17

(D)

1 (D

) R

eLU

M

SE

50

0 A

dam

1.

00E

-03

200

Dro

pou

t 19

9.54

R

ED

28

RN

N

30

100

(R)

100

(R)

1 (D

) ta

nh

MS

E

500

Ada

delt

a 1

100

No

199.

51

RE

D 2

9 LS

TM

30

20 (L

) 2

0 (L

) 1

(D)

tan

h M

SE

50

0 A

dade

lta

1 10

0 N

o 18

2.86

R

ED

30

LSTM

30

20

(L)

20

(L)

1 (D

) ta

nh

MS

E

500

Ada

m

5.00

E-0

4 10

0 N

o 19

7.09

Ta

bla

35. T

abla

de

resu

ltado

s pa

ra p

redi

cció

n de

3h

y ve

ntan

a de

30

dato

s

Page 95: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CA

PITU

LO 4

: Des

arro

llo d

e la

s so

luci

ones

ado

ptad

as.

87

Hor

izon

te d

e pr

edic

ción

: 6 h

oras

Ven

tana

de

dato

s: 6

0 m

edic

ione

s de

15

min

RE

D

Tipo

re

d V

enta

na

de d

atos

(m

in)

Neu

rona

s po

r ca

pa

FA

FC

TB

AO

TA

N

E

R

Prec

isió

n pr

edic

ción

(M

AE

) B

asel

ine

- 60

-

- -

- -

- -

27

4.48

R

ED

31

FC

60

17 (D

) 1

(D)

sigm

oide

M

SE

20

0 A

dade

lta

1 20

0 N

o 11

2.67

R

ED

32

FC

60

85 (D

) 1

7 (D

) 1

(D)

tan

h M

SE

20

0 A

dade

lta

1 20

0 N

o 11

2.92

R

ED

33

RN

N

60

60 (R

) 60

(R)

1 (D

) ta

nh

MS

E

200

Ada

m

5.00

E-0

4 10

0 D

ropo

ut

109.

03

RE

D 3

4 R

NN

60

60

(R)

60 (R

) 1

(D)

tan

h M

SE

20

0 A

dade

lta

1 10

0 D

ropo

ut

111.

13

RE

D 3

5 LS

TM

60

60 (L

) 60

(L)

1 (D

) ta

nh

MS

E

200

Ada

m

5.00

E-0

4 10

0 D

ropo

ut

108.

93

RE

D 3

6 LS

TM

60

60 (L

) 1

(D)

tan

h M

SE

20

0 A

dade

lta

1 10

0 N

o 10

8.17

Ta

bla

36. T

abla

de

resu

ltado

s pa

ra p

redi

cció

n de

6h

y ve

ntan

a de

60

dato

s

Page 96: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de
Page 97: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 5: Conclusiones

89

CAPÍTULO 5

5. Conclusiones

En este proyecto se ha abordado el desarrollo y estudio de diversos tipos de redes neuronales (FC y RNN incluyendo redes LSTM) para la realización de predicciones de radiación solar utilizando los datos proporcionados por la “National Renewable Energy Laboratory” de Oahu, Hawái. Se han utilizado medidas de 17 sensores para realizar un análisis multivariante y calcular predicciones sobre el sensor ‘dh06’. Concretamente se han realizado sobre horizontes temporales de 1, 3 y 6 horas, entrenando las redes con ventanas de datos de entre 5 minutos y un día completo. Una vez analizados los resultados hemos sacado las siguientes conclusiones:

Todos los resultados de predicción obtenidos han superado los casos base, siendo los casos base predicciones calculadas como la media de la ventana de datos. Si bien el caso base no se trata de una predicción muy potente, ha servido como cota inferior de la precisión que deben ofrecer las redes estudiadas.

Se ha comprobado que las redes FC son capaces de realizar predicciones con una precisión razonable necesitando una duración de entrenamiento mucho más corta que la que necesitan las redes recurrentes. De hecho, para ventanas de datos pequeñas (entre 5 y 30 min), son capaces de predecir con mayor exactitud que las redes recurrentes simples y con una precisión muy similar a la de las redes LSTM.

Las redes recurrentes simples han tenido en términos generales un rendimiento menor en comparación con las redes FC. Sin embargo, en ventanas amplias de predicción (1 día completo), sus predicciones sí superan a las de las FC. Las redes LSTM han demostrado ser superiores a las RNN simples en todos los escenarios. Especialmente en el último caso de estudio con ventanas de datos amplias, las redes LSTM han captado correlaciones temporales más lejanas que los demás tipos de redes.

Con respecto a los optimizadores empleados destacan Adam y Adadelta. En los casos en los que se ha usado el algoritmo RMSprop se ha comprobado que éste reduce el coste durante el entrenamiento a un ritmo menor que los dos primeros. Este resultado concuerda con nuestra hipótesis inicial y tiene sentido puesto que Adam es un optimizador mejorado basado en RMSprop y GD con momentum como se indica en el apartado 2.1.5.4.

Entre Adadelta y Adam se ha observado que el segundo funciona mejor en redes FC, aunque es necesario un afinado correcto de su tasa de aprendizaje. Por el contrario, las redes LSTM que emplean Adadelta como optimizador han tenido un error menor en sus predicciones que aquellas que usan Adam.

En los relativo a las funciones de activación usadas en las neuronas, concluimos que la función sigmoide ha rendido por debajo de las funciones tanh y ReLU. Así esta función de activación sólo ha destacado en la RED 31. Las redes FC que emplean la función ReLU como activación en sus neuronas han mostrado mejor precisión en términos generales en comparación con aquellas que usaron tanh y con mayor diferencia con respecto a las que utilizaron la sigmoide. Por contrario, en redes

Page 98: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 5: Conclusiones

90

recurrentes la función tanh resulta más adecuada. En estas redes, sin embargo, se ha demostrado que la función ReLU es la mejor para situarse en la neurona de la capa de salida. Esto se debe a que acota inferiormente por 0 los valores predichos, lo cual genera mejores predicciones para los valores nocturnos con radiación nula. También mejora la predicción de los valores máximos, puesto que no limita los valores altos como si hace la tangente hiperbólica.

En relación con las arquitecturas de red, dentro de las redes FC, aquellas con topología de 3 capas [85 17 1] han sido la que mejores resultados ha mostrado en todos los escenarios. Ha superado a otras arquitecturas más complejas como [85 17 5 1] y [510 85 17 1] ya que estas últimas generan un fuerte sobreajuste durante el entrenamiento que limita su precisión en predicciones fuera del conjunto de entrenamiento.

Las redes LSTM con un tamaño de entre 40 y 60 neuronas han generado predicciones más precisas y con menor sobreajuste. Destacan la configuración en dos capas [20 20 1 D] y con una sola capa LSTM [60 1 D] siendo la capa de salida una sola neurona densa. Estas configuraciones han funcionado mejor que otras aparentemente más complejas y potentes como la siguiente [100 100 1] o aquellas que incluyen una capa extra densa de 17 neuronas como por ejemplo [20 20 17 D 1 D].

Page 99: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 6: Líneas futuras

91

CAPÍTULO 6 6. Líneas futuras

En este proyecto hemos abordado el uso de diversos tipos de redes neuronales, especialmente redes recurrentes, para la predicción de valores de radiación. Hemos empleado los datos recopilados durante más de un año por un conjunto de 17 sensores. Sin embargo, todavía estamos lejos de haber estudiado todas las posibilidades que las redes recurrentes nos ofrecen. En este apartado se comentan brevemente algunas de las posibles líneas de investigación futuras en esta área.

6.1. Redes híbridas: LSTM/ConvoNet Durante el desarrollo del proyecto, vimos que los datos de radiación tienen una doble componente espacial y temporal. Por un lado, la radiación solar presenta ciclos periódicos de carácter diario, estacional y anual. Por otro lado, las estaciones de medición están distribuidas sobre el plano formando una malla de sensores. Debido a su cercanía, los datos recopilados por dichos sensores están correlacionados entre sí.

Como vimos en el apartado 2.1.7.1, las redes convolucionales permiten captar las relaciones espaciales en los datos para lograr mejores resultados de predicción. Con este tipo de redes podemos detectar estas relaciones entre las distintas estaciones de medición para reconocer patrones. De esta forma, conjugando las ventajas de las redes convolucionales y de las redes recurrentes en una única arquitectura sería posible obtener predicciones más precisas.

En este tipo de redes, conocidas como redes híbridas, las capas convolucionales de recibirían como entrada de datos una matriz que representa la disposición espacial entre los sensores. Tras aplicar un número determinado de capas convolucionales y de pooling, las capas recurrentes analizarían la serie temporal para realizar predicciones que tengan en cuenta las correlaciones temporales antes mencionadas.

6.2. Escalar a un gran número de sensores Los datos de radiación empleados en este proyecto provienen de 17 estaciones situadas en Oahu, Hawái. Se trata de un dataset de tamaño mediano que cuenta con un histórico de un año de mediciones. Con estos datos hemos podido sacar algunas conclusiones sobre la capacidad de las redes recurrentes para predecir futuras mediciones. Una posible continuación de este trabajo sería emplear un dataset de mediciones tomado por una red mucho mayor de estaciones solares.

Un ejemplo de este tipo de conjuntos de datos masivos es el recopilado en el proyecto PVGIS. La Comisión Europea, a través del JRC (Joint Research Centre) [27], desarrolla el Photovoltaic Geographical Information System (PVGIS) donde se realiza un estudio sobre la capacidad de producción fotovoltaica en distintas zonas de la Unión Europea. Para ello recopilan datos de radiación solar vía satélite para elaborar mapas detallados y generar conjuntos de datos disponibles para los investigadores.

Page 100: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 6: Líneas futuras

92

Así, cuenta con datos recopilados cada hora desde el 2005. Destaca su aplicación web, que permite la visualización de los datos a nivel geográfico, aunque también cuenta con una API web para acceder a los datos y ser utilizados en investigaciones y aplicaciones de terceros.

Ilustración 104. Aplicación web PVGIS

Los datos recopilados por este proyecto serían de gran utilidad en el entrenamiento de redes recurrentes o híbridas ya que el amplio histórico permitiría a las redes capturar correlaciones temporales más lejanas. A su vez la gran amplitud de los datos a nivel geográfico permitiría aprovechar la capacidad de redes convolucionales para detectar correlaciones espaciales dentro de áreas concretas.

6.3. Transfer Learning El transfer learning [28] es el método que permite reutilizar modelos de redes neuronales previamente entrenados en una determinada tarea como punto de partida para ser entrenados en una tarea relacionada. En el contexto de este trabajo, pueden utilizarse los modelos ya entrenados en este proyecto y reutilizarse para la predicción de mediciones de radiación solar en otros lugares.

Para ello primero se toman capas previamente entrenadas del modelo. Posteriormente se “congelan” dichas capas para que la información que contienen no se destruya en futuros entrenamientos. Más tarde se añaden capas nuevas que pueden entrenarse sobre las anteriores. Con ello se consigue que las nuevas capas sean capaces de realizar nuevas predicciones en un nuevo escenario tomando como punto de partida una red ya entrenada. Una vez realizado este entrenamiento de las nuevas capas, pueden descongelarse las capas importadas para realizar un nuevo entrenamiento partiendo de sus valores iniciales de pesos y sesgos. Este proceso se conoce como fine-tuning.

La propia implementación de Keras ofrece diversas funcionalidades para realizar transfer learning, como por ejemplo la opción de guardar los pesos de una red ya entrenada y así poder cargarlos un nuevo modelo o bloquear la capacidad de aprender de una determinada capa para congelarla una vez entrenada.

Page 101: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

CAPITULO 6: Líneas futuras

93

6.4. Paralelización y uso de sistemas HPC Durante el desarrollo de este proyecto, el hardware ha sido un factor limitante. Al fin y al cabo, se ha utilizado un único ordenador portátil con una capacidad de procesamiento limitada. Es por ello por lo que los modelos de redes neuronales empleados y el tamaño de las ventanas de datos empleadas se han tenido que adaptar a este hecho. Disponiendo de una mayor capacidad de cómputo sería posible reducir los tiempos de entrenamiento y, por tanto, experimentar con modelos más complejos y con mayor cantidad de datos.

De esta forma, una posible línea futura de trabajo es aplicar técnicas de paralelización y HPC (High Performance Computing) para reducir los tiempos de entrenamiento. Entre estas técnicas sería interesante explorar el uso de GPUs que permiten una mayor vectorización de los datos de entrenamiento. También aumentar el número de módulos de cómputo mediante el uso de clústeres que permitan un entrenamiento distribuido.

Page 102: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de
Page 103: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

ANEXO: Índice de tablas y figuras

95

ANEXO: Índice de tablas y figuras

Índice de ilustraciones Ilustración 1. Esquema básico de una neurona ...................................................... 4 Ilustración 2. Esquema de una red neuronal Fully-Connected ................................ 5 Ilustración 3. Gráfica de la función de paso ............................................................ 6 Ilustración 4. Grafica de la función sigmoide .......................................................... 6 Ilustración 5. Gráfica de la función tanh ................................................................. 7 Ilustración 6. Gráfica función ReLU ........................................................................ 7 Ilustración 7. Gráfica de la función Leaky ReLU ..................................................... 7 Ilustración 8. Grafica tridimensional de la función de coste.. .................................. 9 Ilustración 9. Convergencia del algoritmo GD con (rojo) y sin (azul) momentum. .... 9 Ilustración 10. Capa de entrada y resultado después de la convolución. ............... 13 Ilustración 11. Ejemplo de max-pooling. ............................................................... 14 Ilustración 12. Arquitectura típica de una red neuronal convolucional ................. 14 Ilustración 13. Esquema de una RNN ................................................................... 15 Ilustración 14. Esquema de un nodo de LSTM ...................................................... 16 Ilustración 15. Puerta de olvido ............................................................................ 16 Ilustración 16. Puerta de entrada ......................................................................... 16 Ilustración 17. Actualización de la celda de estado ............................................... 16 Ilustración 18. Cálculo de la salida ....................................................................... 17 Ilustración 19. Portátil MSI utilizado ..................................................................... 19 Ilustración 20. Logo de Anaconda ......................................................................... 19 Ilustración 21. Logo de Tensorflow ........................................................................ 20 Ilustración 22. Logo de Keras ................................................................................ 20 Ilustración 23. Logo de Numpy ............................................................................. 21 Ilustración 24. Logo de Vitables. ........................................................................... 21 Ilustración 25. Situación de los 17 sensores solares de Oahu. .............................. 23 Ilustración 26. Gráfica del conjunto completo de mediciones de radiación. ........... 24 Ilustración 27. Gráfica de medición de radiación para los primeros cuatro días .... 24 Ilustración 28. Gráfica de radiación del 18/03/2010 ............................................ 25 Ilustración 29. Logo de GitHub con enlace al repositorio ....................................... 28 Ilustración 30. Comparativa entre predicción y los valores reales del caso base .... 29 Ilustración 31. Detalle de la predicción del baseline .............................................. 29 Ilustración 32. Evolución del coste por época de la RED 1 .................................... 30 Ilustración 33. Predicción de la RED 1 .................................................................. 31 Ilustración 34. Detalle de la predicción de la RED 1 .............................................. 31 Ilustración 35. Evolución del coste por época de la RED 2 .................................... 32 Ilustración 36. Predicción de la RED 2 .................................................................. 33 Ilustración 37. Detalle de la predicción de la RED 2 .............................................. 33 Ilustración 38. Evolución del coste por época de la RED 3 .................................... 34 Ilustración 39. Predicción de la RED 3 .................................................................. 34 Ilustración 40. Detalle de la predicción de la RED 3 .............................................. 35 Ilustración 41. Gráficas de evolución del coste para ambos casos ......................... 36 Ilustración 42. Evolución del coste por época para los 3 casos.............................. 37 Ilustración 43. Predicción de la RED 4 .................................................................. 38 Ilustración 44. Evolución del coste por época de la RED 5 .................................... 39

Page 104: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

ANEXO: Índice de tablas y figuras

96

Ilustración 45. Predicción de la RED 5 .................................................................. 39 Ilustración 46. Predicción de la RED 6 .................................................................. 40 Ilustración 47. Ejemplo gráfico de dropout............................................................ 41 Ilustración 48. Evolución del coste por época de la RED 7 .................................... 42 Ilustración 49. Predicción de la RED 7 .................................................................. 42 Ilustración 50. Evolución del coste por época de la RED 8 .................................... 43 Ilustración 51. Predicción de la RED 8 .................................................................. 44 Ilustración 52. Detalle de la predicción de la RED 8 .............................................. 44 Ilustración 53. Evolución del coste por época de la RED 9 .................................... 45 Ilustración 54. Predicción de la RED 9 .................................................................. 46 Ilustración 55. Evolución del coste por época de la RED 10 .................................. 47 Ilustración 56. Predicción de la RED 10 ................................................................ 47 Ilustración 57. Evolución del coste por época de la RED 11 .................................. 48 Ilustración 58. Predicción de la RED 11 ................................................................ 49 Ilustración 59. Detalle de la predicción de la RED 11 ............................................ 49 Ilustración 60. Comparativa entre predicción y los valores del caso base .............. 50 Ilustración 61. Comparación del coste por época de la RED 12 y 13 ..................... 51 Ilustración 62. Predicción de la RED 13 ................................................................ 52 Ilustración 63. Evolución del coste por época de la RED 14 .................................. 53 Ilustración 64. Predicción de la RED 14 ................................................................ 53 Ilustración 65. Evolución del coste por época de la RED 15 y 16 .......................... 54 Ilustración 66. Evolución del coste por época de la RED 17 .................................. 55 Ilustración 67. Predicción de la RED 17 ................................................................ 56 Ilustración 68. Detalle de la predicción de la RED 17 ............................................ 56 Ilustración 69. Comparación del coste por época entre la RED 18 y 19 ................. 57 Ilustración 70. Evolución del coste por época de la RED 18 y 19 .......................... 57 Ilustración 71. Comparativa de predicción de la RED 18 (izq.) y RED 19 (dcha.) ... 58 Ilustración 72. Gráfica de predicción del baseline ................................................. 59 Ilustración 73. Comparación del coste por época entre la RED 20 y 21 ................. 60 Ilustración 74. Predicción de la RED 21 ................................................................ 60 Ilustración 75. Evolución del coste por época de la RED 22 .................................. 61 Ilustración 76. Predicción de la RED 22 ................................................................ 62 Ilustración 77. Detalle de la predicción de la RED 22 ............................................ 62 Ilustración 78. Evolución del coste por época de la RED 23 .................................. 63 Ilustración 79. Predicción de la RED 23 ................................................................ 63 Ilustración 80. Evolución del coste por época de la RED 24 .................................. 64 Ilustración 81. Predicción de la RED 24 ................................................................ 65 Ilustración 82. Evolución del coste por época de la RED 25 .................................. 66 Ilustración 83. Predicción de la RED 25 ................................................................ 66 Ilustración 84. Comparativa entre predicción y los valores del caso base .............. 67 Ilustración 85. Comparativa del coste por época entre la RED 26 y 27 .................. 68 Ilustración 86. Evolución del coste por época de la RED 26 y 27 .......................... 69 Ilustración 87. Predicción de la RED 26 y 27 ........................................................ 69 Ilustración 88. Evolución del coste por época de la RED 28 .................................. 70 Ilustración 89. Predicción de la RED 28 ................................................................ 70 Ilustración 90. Detalle de la predicción de la RED 28 ............................................ 71 Ilustración 91. Evolución del coste por época de la RED 29 y 30 .......................... 72 Ilustración 92. Comparativa de predicción de la RED 29 (izq.) y RED 30 (dcha.) ... 72 Ilustración 93. Comparativa entre predicción y los valores reales del caso base .... 74 Ilustración 94. Evolución del coste por época de la RED 31 .................................. 75

Page 105: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

ANEXO: Índice de tablas y figuras

97

Ilustración 95. Predicción de la RED 31 ................................................................ 75 Ilustración 96. Evolución del coste por época de la RED 32 .................................. 76 Ilustración 97. Predicción de la RED 32 ................................................................ 77 Ilustración 98. Evolución del coste por época entre la RED 33 y 34 ...................... 78 Ilustración 99. Predicción de la RED 33 ................................................................ 78 Ilustración 100. Evolución del coste por época de la RED 35 ................................ 80 Ilustración 101. Predicción de la RED 35 .............................................................. 80 Ilustración 102. Evolución del coste por época de la RED 36 ................................ 81 Ilustración 103. Predicción de la RED 36 .............................................................. 82 Ilustración 104. Aplicación web PVGIS ................................................................. 92

Índice de tablas Tabla 1. Ejemplo de matriz de entrada X .............................................................. 27 Tabla 2. Ejemplo de matriz Y ................................................................................ 27 Tabla 3. Resultados de la RED 1 ........................................................................... 32 Tabla 4. Resultados de la RED 2 ........................................................................... 33 Tabla 5. Resultados de la RED 3 ........................................................................... 35 Tabla 6. Resultados para los 3 casos .................................................................... 37 Tabla 7. Resultados de la RED 5 ........................................................................... 40 Tabla 8. Resultados de la RED 6 ........................................................................... 41 Tabla 9. Resultados de la RED 7 ........................................................................... 42 Tabla 10. Resultados de la RED 8 ......................................................................... 44 Tabla 11. Resultados de la RED 9 ......................................................................... 46 Tabla 12. Resultados de la RED 10 ....................................................................... 47 Tabla 13. Resultados de la RED 11 ....................................................................... 49 Tabla 14. Resultados de la RED 12 y 13 ............................................................... 52 Tabla 15. Resultados de la RED 14 ....................................................................... 54 Tabla 16. Resultados de la RED 15 y 16 ............................................................... 54 Tabla 17. Resultados de la RED 17 ....................................................................... 56 Tabla 18. Resultados comparados de la RED 18 y RED 19 ................................... 58 Tabla 19. Resultados comparados de la RED 20 y 21 ........................................... 61 Tabla 20. Resultados de la RED 22 ....................................................................... 62 Tabla 21. Resultados de la RED 23 ....................................................................... 64 Tabla 22. Resultados de la RED 24 ....................................................................... 65 Tabla 23. Resultados de la RED 25 ....................................................................... 67 Tabla 24. Resultados comparados de las redes 26 y 27 ......................................... 69 Tabla 25. Resultados de la RED 28 ....................................................................... 71 Tabla 26. Resultados comparados de la RED 29 y 30 ........................................... 72 Tabla 27. Resultados de la RED 31 ....................................................................... 76 Tabla 28. Resultados de la RED 32 ....................................................................... 77 Tabla 29. Resultados comparados de las redes 33 y 34 ......................................... 79 Tabla 30. Resultados de la RED 35 ....................................................................... 81 Tabla 31. Resultados de la RED 36 ....................................................................... 82 Tabla 32. Tabla de resultados para predicción de 1h y ventana de 5 datos ........... 84 Tabla 33. Tabla de resultados para predicción de 1h y ventana de 15 datos ......... 85 Tabla 34. Tabla de resultados para predicción de 3h y ventana de 15 datos ......... 86 Tabla 35. Tabla de resultados para predicción de 3h y ventana de 30 datos ......... 86 Tabla 36. Tabla de resultados para predicción de 6h y ventana de 60 datos ......... 87

Page 106: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de
Page 107: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Bibliografía

99

Bibliografía

[1] M. A. Nielsen, Neural Networks and Deep Learning, Determination Press, 2015.

[2] Red Eléctrica Española, «Balance nacional de energía (Agosto),» 2019.

[3] A. B. F., «Renewable Energy Magazine,» 08 7 2019. [En línea]. Available: https://www.energias-renovables.com/.

[4] D. Kriesel, «A Brief Introduction to Neural Networks,» 2007.

[5] W. S. McCulloch y W. H. Pitts, «A logical calculus of the ideas immanent,» Bulletin of Mathematical Biology, p. 115–133, 1943.

[6] M. Minsky y S. A. Papert, Perceptrons, The MIT Press, 1969.

[7] P. r. group, Parallel distributed processing: Explorations in the microstructure of cognition, MIT Press, 1986.

[8] J. H. Yifang Liu, «sciencedirect,» [En línea]. Available: https://www.sciencedirect.com/topics/computer-science/np-completeness. [Último acceso: 27 11 2019].

[9] A. Ng, «coursera.org,» [En línea]. Available: https://www.coursera.org/learn/neural-networks-deep-learning?specialization=deep-learning.

[10] C.-F. Wang, «The Vanishing Gradient Problem,» Towards Data Science, [En línea]. Available: https://towardsdatascience.com/the-vanishing-gradient-problem-69bf08b15484.

[11] K. Jarrett, K. Kavukcuoglu, . M. Ranzato y Y. LeCun, «What is the Best Multi-Stage Architecture for Object Recognition?,» The Courant Institute of Mathematical Sciences, 2009.

[12] A. S. Walia, «Types of Optimization Algorithms used in Neural Networks and Ways to Optimize Gradient Descent,» 2017. [En línea]. Available: https://ruder.io/optimizing-gradient-descent/index.html#adadelta. [Último acceso: 19 03 2020].

[13] A. Ng, «Coursera Deep Learning: Tuning process,» [En línea]. Available: https://www.coursera.org/lecture/deep-neural-network/tuning-process-dknSn.

[14] A. Ng, «Deep Learning: mini-batch Gradient Descent,» Coursera, [En línea]. Available: https://www.coursera.org/lecture/deep-neural-network/understanding-mini-batch-gradient-descent-lBXu8.

Page 108: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Bibliografía

100

[15] «Convolutional Neural Networks for Visual Recognition,» Standford University, [En línea]. Available: https://cs231n.github.io/convolutional-networks/#conv.

[16] C. Olah, «https://colah.github.io/,» 2015 09 2015. [En línea]. Available: https://colah.github.io/posts/2015-08-Understanding-LSTMs/. [Último acceso: 09 11 2019].

[17] T. Lin, T. Guo y K. Aberer, «Hybrid Neural Networks for Learning the Trend in Time Series,» Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, 2017.

[18] «Convolutional LSTM’s for Sea Temperature Forecasting,» Skymind Inc, 2019. [En línea]. Available: https://blog.skymind.ai/convolutional-lstms-for-sea-temperature-forecasting/. [Último acceso: 12 11 2019].

[19] A. M. A. a. F. J. N. a. C. Ruiz, «A Single Scalable LSTM Model for Short-Term Forecasting of Disaggregated Electricity Loads,» Cornell University, pp. 1-17, 2019.

[20] «Microsoft - Windows 10,» [En línea]. Available: https://www.microsoft.com/es-es/p/windows-10-home/d76qx4bznwk4.

[21] A. Inc., «Anaconda,» [En línea]. Available: anaconda.com.

[22] «Tensorflow,» Google Brain, [En línea]. Available: https://www.tensorflow.org/. [Último acceso: 10 11 2019].

[23] Various, «Keras,» [En línea]. Available: https://keras.io/. [Último acceso: 09 11 2019].

[24] «NumPy,» NumPy Developers , 2019. [En línea]. Available: https://numpy.org/license.html. [Último acceso: 11 11 2019].

[25] V. Mas, «Vitables,» PyTables, [En línea]. Available: https://vitables.org/.

[26] M. Sengupta y A. Andreas, «Oahu Solar Measurement Grid (1-Year Archive):,» NREL Report No. DA-5500-56506.

[27] European Comission, «PVGIS: Photovoltaic Geographical Information System,» [En línea]. Available: https://ec.europa.eu/jrc/en/pvgis.

[28] Keras.io, «Transfer Learning,» [En línea]. Available: https://keras.io/guides/transfer_learning/.

[29] H. Akinori y T. Kurita, «Consecutive Dimensionality Reduction by Canonical Correlation Analysis for Visualization of Convolutional Neural Networks,» Proceedings of the ISCIE International Symposium on Stochastic Systems Theory and its Applications, pp. 160-167, 2017.

Page 109: Trabajo Fin de Grado - Archivo Digital UPMoa.upm.es/63345/1/TFG_PABLO_HERAS_ARANZANA.pdf · 2020. 7. 29. · Este Trabajo Fin de Grado se ha depositado en la ETSI Informáticos de

Este documento esta firmado porFirmante CN=tfgm.fi.upm.es, OU=CCFI, O=Facultad de Informatica - UPM,

C=ES

Fecha/Hora Fri Jun 26 20:26:49 CEST 2020

Emisor delCertificado

[email protected], CN=CA Facultad deInformatica, O=Facultad de Informatica - UPM, C=ES

Numero de Serie 630

Metodo urn:adobe.com:Adobe.PPKLite:adbe.pkcs7.sha1 (AdobeSignature)