Artículo Original

http://opn.to/a/DUHPz

Corrección del pronóstico cuantitativo de la precipitación mediante el uso de redes neuronales

Quantitative precipitation forecast correction using neural network


RESUMEN

En el presente trabajo se propone un modelo de redes neuronales como una técnica eficaz para la corrección del pronóstico cuantitativo de precipitación brindado por el modelo WRF. Para ello se emplea un Perceptrón Multi-Capa, con el objetivo de utilizar la salida (observaciones brindadas por las estaciones en superficie) para establecer una relación con los elementos de entrada (salidas del WRF). Se realiza el entrenamiento del modelo con datos reales de acumulado de precipitación correspondientes al año 2017; y se realiza la evaluación con el período comprendido entre el 4 de noviembre de 2018 y el 28 de febrero de 2019. Se logró la corrección del pronóstico cuantitativo de la precipitación en las estaciones analizadas, siendo más significativa la mejoría para la estación de Montaña y en los casos en los que el WRF sobreestima el acumulado de precipitación.

Palabras clave: 

redes neuronales artificiales; pronóstico cuantitativo de precipitación; WRF; corrección de sesgos.

ABSTRACT

In this paper, a model of neural networks is proposed as an effective technique for the correction of the quantitative precipitation forecast provided by the WRF model. For this, a Multi-Layer Perceptron is used, with the aim of using the output (observations provided by the surface stations) to establish a relationship with the input elements (WRF outputs). Model training is carried out with real rainfall accumulation data corresponding to 2017; and the evaluation is carried out with the period between November 4, 2018 and February 28, 2019. The correction of the quantitative precipitation forecast in the analyzed stations was achieved, the improvement for the mountain station was more significant and, in cases where the WRF overestimates the accumulated rainfall.

Key words: 

artificial neural networks; quantitative forecast precipitation; WRF; bias correction.


Las Redes Neuronales Artificiales (RNA) son un paradigma que ha despertado un gran interés en los últimos años. Son modelos que se inspiran en la Biología, en contraposición a los sistemas inteligentes tradicionales basados en reglas, probabilidad, etc., por lo que su forma de representar el conocimiento es abstracta (en base a la arquitectura de la red y las conexiones que se establecen entre las neuronas). Se construyen por medio de algoritmos automáticos de aprendizaje, que ajustan las conexiones entre neuronas para modelar un conjunto de datos. Las redes neuronales son métodos de tipo “caja negra”, pues el modelo resultante es difícil de interpretar a partir de los datos. Una descripción detallada de este campo se puede consultar en (Bishop, 1995) y (Haykin, 1998). Las redes neuronales han probado su valía para resolver problemas complejos en diversas áreas, incluyendo la predicción meteorológica (Hsieh, et al., 1998), (Schizas, et al., 1994). En los últimos años se han desarrollado diversas extensiones de estos, especializados en problemas concretos; por ejemplo, las redes funcionales permiten incluir conocimiento cualitativo del problema en la estructura de la red (Castillo, et al., 1999); también se han aplicado técnicas modernas de optimización, como los algoritmos genéticos, para buscar una estructura más conveniente de la red para un problema dado (Cofiño, et al., 2004). Actualmente las redes neuronales son un campo muy consolidado en el que continuamente se desarrollan nuevos métodos y aplicaciones.

Los modelos de pronóstico numérico del tiempo, operativos en el Instituto de Meteorología (INSMET), permiten la obtención del pronóstico cuantitativo de la precipitación. Las evaluaciones realizadas han identificado que los modelos tienen muy buena habilidad para pronosticar las áreas de precipitación, pero un gran error al pronosticar el acumulado. Con el objetivo de ajustar o corregir la predicción obtenida a partir del modelo, se han desarrollado numerosos métodos con un enfoque estadístico como son los Modelos Autorregresivos Integrados de Promedio Móvil (ARIMA), las wavelets y las redes neuronales, mostrando estos últimos muy buenos resultados, en particular para la precipitación.

En la investigación que se presenta se utiliza un modelo de red neuronal artificial, para la corrección del pronóstico cuantitativo de la precipitación obtenido a partir de la configuración del modelo Weather Research & Forecast (WRF), que forma parte del Sistema de Pronóstico Inmediato (SisPI), (Sierra, et al., 2014). En particular se utiliza un Perceptrón Multi-Capa. La configuración del modelo de red, se obtiene a partir del diseño de un grupo de experimentos y configuraciones. En estos se prueban parámetros como la cantidad de neuronas de las capas ocultas, la función de activación a utilizar, entre otros. El documento cuenta además de la Introducción, con una sección en la que se describe la configuración del WRF, la estructura del Perceptrón Multi-Capa y los materiales y métodos utilizados en la evaluación. Seguidamente se presentan el análisis de los resultados, en donde se expone la configuración de red que tuvo la mejor habilidad para corregir la precipitación. Luego se presentan los resultados de la evaluación de la misma. Las conclusiones y recomendaciones, seguidas de la bibliografía consultada, cierran el texto.

El modelo de pronóstico numérico del tiempo WRF, ha sido desarrollado por la división de Meteorología de Microescala y Mesoescala de la NCAR (National Center for Atmospheric Research). Del WRF, se utilizó el núcleo dinámico ARW (Advanced Research WRF) que actualmente está en su versión 4, y ha sufrido actualizaciones hasta la versión 4.0.1, que es la más reciente. Según sus desarrolladores, es posible su aplicación en un amplio espectro de escalas espaciales que van desde los metros a miles de kilómetros (Manual del WRF, 2004). Este modelo es la base del SisPI y está configurado como sigue:

  • La inicialización se basa en los datos del GFS de 0.5 grados,

  • Tres dominios anidados con resolución 27 km, 9 km y 3 km (ver Figura 1),

  • Proyección Mercator,

  • Centrados en 22.3° N y −79.1° W cerca del centro del país,

  • Parametrización de cúmulos Grell-Freitas (Grell, et al., 2013),

  • Parametrización de Microfísica WSM5 para los dominios de 27 km y 9km de resolución, mientras que para el dominio de más alta resolución se utiliza Morrison de doble momento.

Se utilizó el Perceptrón Multi-Capa (MLP por sus siglas en inglés), debido a que este describe una red neuronal artificial que utiliza la salida para establecer una relación con los datos de entrada. Fue conveniente utilizarlo al disponer de grandes cantidades de datos (salidas del modelo WRF) que están relacionados y conocer de antemano la salida (valor real reportado en las estaciones meteorológicas). Esta red establece una relación entre los datos de entrada y los datos de salida a partir de ciertos valores esperados. Está formada por neuronas que calculan el producto punto de los pesos por las entradas, más unos pesos extras llamados umbrales (bias). Con el resultado que se obtuvo del producto punto se evaluó la función de activación. Las redes estaban formadas por varias capas de neuronas, así que la salida de las neuronas en una capa formaba la entrada de la capa siguiente. Durante el aprendizaje, la red calculó los pesos usando el algoritmo de propagación hacia atrás. El objetivo fue usar el error que existió entre la salida de la red y el valor esperado para ajustar la matriz de pesos y minimizar el error.

Figura 1. 

Dominios del modelo WRF.

En relación a la cantidad de capas, se demostró que un Perceptrón con dos capas (una oculta y la capa de salida) puede aproximar con un grado de exactitud dado, cualquier función continua; además, cuando las funciones no son continuas solo se requiere una capa adicional (Cybenko, 1989). Este resultado resolvió parcialmente el problema de la estructura de red apropiada para el problema en cuestión. Considerando continua la función de precipitación, el problema se redujo a elegir un número apropiado de neuronas en la capa oculta para ajustar el modelo. Este número también debía tener una cota superior para evitar un sobreajuste de la red, es decir, el número total de parámetros ha de ser mucho menor que el número de datos disponible (Cofiño, et al., 2004; Gutierrez, et al., 2004). Sin embargo, aun así, en la práctica fue necesario probar redes con distintas configuraciones para obtener un modelo apropiado. De lo anterior, se utilizó un Perceptrón de dos capas (una oculta y la capa de salida) y se varió la cantidad de neuronas en la capa de entrada en dependencia de los predictores de precipitación usados (cero, uno o dos plazos anteriores). Además, se probaron distintas cantidades de neuronas en la capa oculta, con el fin de obtener el mejor desempeño de la red; mientras que la capa de salida contaba con sólo una neurona (el valor de precipitación obtenido por el modelo de red). Por otra parte, se analizó el efecto de normalizar o no los datos para el entrenamiento y se utilizaron funciones de activación sigmoideas (salidas en el intervalo [0, 1]). Se realizó cada entrenamiento con 1000 iteraciones, con el objetivo de lograr el menor error posible. Como función de costo se empleó el error cuadrático medio, se utilizó el 80% de los datos para el entrenamiento y el resto para la validación.

Del SisPI se utilizaron las corridas correspondientes al año 2017 en particular, las salidas para el dominio 3, con inicialización a las 0000 UTC. Para el entrenamiento y la evaluación se utilizaron los datos de la Red de Estaciones Meteorológicas de Cuba.

La evaluación del modelo de red, se realizó con salidas de SisPI, comprendidas entre el 4 de noviembre de 2018 y el 28 de febrero de 2019, y los datos de las estaciones en superficie en el mismo período de tiempo.

Se utilizaron los datos de cuatro estaciones meteorológicas representativas del país, para obtener los valores reales de precipitación, con los cuales, a partir de las salidas del modelo WRF, se entrenó el modelo de red. Se realizó un pre-procesamiento de las salidas del modelo WRF, pues las mediciones en las estaciones eran trihorarias, mientras que las salidas del dominio 3 del modelo WRF eran horarias; además, se tenía para cada estación, todos los días, mientras que en la salida del modelo WRF se tenía para cada día, todas las estaciones. Se obtuvieron los valores puntuales mediante la interpolación utilizando el método del “vecino más cercano”.

Las estaciones seleccionadas, representativas del espacio muestral, son las que siguen:

  • Camagüey (355)

  • Topes de Collantes (342)

  • Casablanca (325)

  • Playa Girón (333)

Adicionando variables (Temperatura, Presión, Humedad, …) como predictores a los datos de entrada del MRNA (datos de precipitación obtenidos por el modelo WRF), no se logra mejorar la actuación de la red. La mejor representación es obtenida cuando la precipitación es seleccionada como predictor de sí misma (Sanaz, 2015); esto coincide con el resultado obtenido por Hidalgo (Hidalgo, et al., 2008). Desde que descubrieron que el mejor predictor de la precipitación es ella misma, examinaron el efecto de adicionar períodos de tiempo a la entrada. La actuación de la red mejoró cuando cero, uno, dos, y tres períodos de precipitación (P, Pt−1, Pt−2, Pt−3) fueron usados como entrada. La mejora de la red finalizaba después de períodos de tiempo mayores que tres. Teniendo en cuenta este resultado, se utilizó para el entrenamiento el acumulado de precipitación y como predictores dos plazos anteriores.

Se realizaron 28 experimentos (ver Tabla 1) donde se analizaron los siguientes aspectos:

Datos

  • con ceros: Se analizó todo el set de datos durante el entrenamiento.

  • sin ceros: Se analizaron los datos distintos de cero tanto en las salidas del modelo WRF como en las estaciones meteorológicas. Estos valores se consideraron aciertos del modelo, por lo que no se utilizaron durante el entrenamiento.

Período

  • 3h: Se realizó el entrenamiento con acumulados trihorarios, y se comparó la salida del MRNA con los correspondientes valores del WRF y de las estaciones.

  • 24h antes: Se realizó el entrenamiento con acumulados en 24h, y se comparó la salida del MRNA con los correspondientes valores del WRF y de las estaciones.

  • 24h después: Se realizó el entrenamiento con acumulados en 3h, posteriormente se obtuvo el acumulado en 24h mediante la suma de los valores de un mismo día, y se comparó la salida del MRNA con los correspondientes valores del WRF y de las estaciones.

Normalizados

  • sí: Se normalizaron los datos antes del entrenamiento.

  • no: No se normalizaron los datos antes del entrenamiento.

Plazos

  • 0: No se utilizaron plazos anteriores como predictores. Se utilizó en la capa de entrada una neurona (valor de precipitación pronosticado por el modelo WRF).

  • 1: Se utilizó un plazo anterior como predictor. La capa de entrada contaba con dos neuronas (valor de precipitación pronosticado por el modelo WRF y un plazo anterior).

  • 2: Se utilizaron dos plazos anteriores como predictores. La capa de entrada contaba con tres neuronas (valor de precipitación pronosticado por el modelo WRF y dos plazos anteriores).

Tabla 1. 

Diseño de los experimentos

ExperimentoDatosPeríodoNormalizadosPlazos
1,2,3con ceros3h0,1,2
4,5,6con ceros3hno0,1,2
7,8,9sin ceros3h0,1,2
10,11,12sin ceros3hno0,1,2
13con ceros24h antes0
14con ceros24h antesno0
15sin ceros24h antes0
16sin ceros24h antesno0
17,18,19con ceros24h después0,1,2
20,21,22con ceros24h despuésno0,1,2
23,24,25sin ceros24h después0,1,2
26,27,28sin ceros24h despuésno0,1,2

Para cada experimento se probaron 18 configuraciones (ver Tabla 2) del MRNA, para encontrar, por cada estación, el mejor par experimento-configuración. Se combinaron dos funciones de activación (sigmoid y softsign), y se tomaron distintas cantidades de neuronas en la capa oculta, de forma tal que el número de parámetros fuese suficientemente menor que el total de datos utilizados para el entrenamiento. En total se realizaron 504 entrenamientos para cada estación.

Tabla 2. 

Diseño de las configuraciones donde h_act.: función de activación de la capa oculta, o_act.: función de activación de la capa de salida, cant_neuronas: cantidad de neuronas de la capa oculta.

Configuraciónh_acto_actcant_neuronas
1,2sigmoidsigmoid64,128
3,4softsignsigmoid64,128
5,6softmaxsigmoid64,128
7,8sigmoidsoftsign64,128
9,10softsignsoftsign64,128
11,12softmaxsoftsign64,128
13,14sigmoidsoftmax64,128
15,16softsignsoftmax64,128
17,18softmaxsoftmax64,128

Para comprobar la actuación del MRNA, fue posible calcular diferentes estadígrafos. Fueron utilizados el Error Máximo (e_max) (1), el Error Absoluto Medio (mae) (2), el Error Cuadrático Medio (mse) (3), la Desviación Estándar (desv_est) (4 y 5) y el Coeficiente de Correlación de Pearson (p_corr) (6). Las expresiones de cada uno se escriben seguidamente, para ello se adopta la notación: observado (O), pronosticado (P) y cantidad de datos a comparar (N). El error está dado por e = O − P y una barra superior indica valor medio.

Se empleó el lenguaje de programación Python 2.7, el cual es administrado por la Python Software Foundation. Posee una licencia de código abierto, denominada Python Software Foundation License, que es compatible con la Licencia Pública General de GNU a partir de la versión 2.1.1, e incompatible con ciertas versiones anteriores. Además se utiliza la plataforma de aprendizaje automático Tensorflow, que es un desarrollo open-source (código abierto) de Google que va más allá de la Inteligencia Artificial, pero su flexibilidad y gran comunidad de desarrolladores lo han posicionado como la herramienta líder en el sector del Deep Learning (Aprendizaje Profundo), según (Buhigas, 2018). Tensorflow es la plataforma de Aprendizaje Profundo más importante del mundo; y la librería Keras, la cual es una biblioteca creada en 2015 para facilitar la creación de aplicaciones de Redes Neuronales con mecanismos de Aprendizaje Profundo.

El análisis de los distintos experimentos y configuraciones probadas, se presenta a continuación. En las Figuras 2-5, se muestran los diagramas de Taylor por cada estación y los experimentos que mostraron los mejores resultados. Se observa que, en todos los casos, es el experimento 13 el que muestra una mejor correlación. Esto indica que con el uso de un solo plazo de predicción y calculando el acumulado en 24 horas para entrenar la red, se obtiene un mejor ajuste.

Figura 2. 

Diagrama de Taylor (325)

Figura 3. 

Diagrama de Taylor (333)

Figura 4. 

Diagrama de Taylor (342)