Table 1: Descriptions of meteorological stations, pre-processed variables as well as the model inputs/output data structures
Stations
|
Sampled Rate
|
|
Sampled Period
|
Station Variables
|
3 Input Variables
|
1 Output Variable
|
IDs
|
|
|
|
(degree, oC, %, m/s)
|
Conv2D/ConvLSTM2D
|
Conv2D/ConvLSTM2D/LSTM
|
SM1-Tr
|
5-min data
|
|
01-Jan-2010 - 13-Dec-2010
|
WD_10, Temp, Hum, Gust_10
|
WD_10, Temp, Hum
|
Gust_10
|
SM2-Va
|
5-min data
|
|
01-Jan-2006 - 13-Dec-2006
|
WD_10, Temp, Hum, WS_10
|
WD_10, Temp, Hum
|
WS_10
|
SM3-Te
|
1-hour data
|
|
01-Oct-2006 - 02-Oct-2013
|
WD_10, Temp, Hum, WS_10
|
WD_10, Temp, Hum
|
WS_10
|
SM-ST1
|
10-min data
|
|
01-Jan-2011 - 14-Oct-2011
|
Tgrad, TS_10, TS_60, WS_10
|
Tgrad, TS_10, TS_60
|
WS_10
|
SM-ST2
|
10-min data
|
|
01-Jan-2011 - 14-Oct-2011
|
Tgrad, TS_10, RHum, WS_10
|
Tgrad, TS_10, RHum
|
WS_10
|
SM-ST3
|
10-min data
|
|
01-Jul-2010 - 13-Apr-2011
|
WD_20, Tair, RHum, WS_20
|
WD_20, Tair, RHum
|
WS_20
|
SM-ST4
|
10-min data
|
|
01-Jul-2010 - 13-Apr-2011
|
WD_20, Tair, RHum, WS_10
|
WD_20, Tair, RHum
|
WS_10
|
SM-ST5
|
5-min data
|
|
15-Aug-2010 - 06-Jan-2011
|
WD_10, Temp, Hum, WS_10
|
WD_10, Temp, Hum
|
WS_10
|
Table 1: Descriptions of meteorological stations and parameters as well as the model inputs/output data structures (continuation)
Data points per
|
Model Input Shape
|
Model Input Shape
|
Model Input Shape
|
Model Input Data
|
Model Input Data
|
Model Input Data
|
Model Output
|
Variable
|
LSTM/Conv1D
|
Conv2D
|
ConvLSTM2D
|
LSTM/Conv1D
|
Conv2D
|
ConvLSTM2D
|
Data
|
100000
|
(100000, 3)
|
(1, 100000, 3)
|
(1, 100000, 3, 1)
|
(1, 100000, 3)
|
(1, 1, 100000, 3)
|
(1, 1, 100000, 3, 1)
|
(1, 100000)
|
100000
|
(100000, 3)
|
(1, 100000, 3)
|
(1, 100000, 3, 1)
|
(1, 100000, 3)
|
(1, 1, 100000, 3)
|
(1, 1, 100000, 3, 1)
|
(1, 100000)
|
100000
|
(100000, 3)
|
(1, 100000, 3)
|
(1, 100000, 3, 1)
|
(1, 100000, 3)
|
(1, 1, 100000, 3)
|
(1, 1, 100000, 3, 1)
|
(1, 100000)
|
41200
|
(41200, 3)
|
(1, 41200, 3)
|
(1, 41200, 3, 1)
|
(1, 41200, 3)
|
(1, 1, 41200, 3)
|
(1, 1, 41200, 3, 1)
|
(1, 41200)
|
41200
|
(41200, 3)
|
(1, 41200, 3)
|
(1, 41200, 3, 1)
|
(1, 41200, 3)
|
(1, 1, 41200, 3)
|
(1, 1, 41200, 3, 1)
|
(1, 41200)
|
41200
|
(41200, 3)
|
(1, 41200, 3)
|
(1, 41200, 3, 1)
|
(1, 41200, 3)
|
(1, 1, 41200, 3)
|
(1, 1, 41200, 3, 1)
|
(1, 41200)
|
41200
|
(41200, 3)
|
(1, 41200, 3)
|
(1, 41200, 3, 1)
|
(1, 41200, 3)
|
(1, 1, 41200, 3)
|
(1, 1, 41200, 3, 1)
|
(1, 41200)
|
41200
|
(41200, 3)
|
(1, 41200, 3)
|
(1, 41200, 3, 1)
|
(1, 41200, 3)
|
(1, 1, 41200, 3)
|
(1, 1, 41200, 3, 1)
|
(1, 41200)
|
Table 2: System architecture of a Conv2D network model
MODEL INPUT AND OUTPUT SHAPES
x_train_mod shape: (1, 1, 20000, 3)
x_val_mod shape: (1, 1, 20000, 3)
x_test_mod shape: (1, 1, 20000, 3)
Y_train_mod shape: (1, 20000)
Y_val_mod shape: (1, 20000)
y_test_mod shape: (1, 20000)
input_shape: (1, 20000, 3)
Layer (type) Output Shape Param #
==========================================================
conv2d_1 (Conv2D) (None, 1, 20000, 128) 512
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 1, 20000, 128) 0
dropout_1 (Dropout) (None, 1, 20000, 128) 0
_________________________________________________________________
conv2d_2 (Conv2D) (None, 1, 20000, 64) 8256
max_pooling2d_2 (MaxPooling2 (None, 1, 20000, 64) 0
dropout_2 (Dropout) (None, 1, 20000, 64) 0
_________________________________________________________________
flatten_1 (Flatten) (None, 1280000) 0
_________________________________________________________________
dense_1 (Dense) (None, 72) 92160072
_________________________________________________________________
dense_2 (Dense) (None, 20000) 460000
===========================================================
Total params: 93,628,840
Trainable params: 93,628,840
Non-trainable params: 0
_________________________________________________________________
Out[2]: TensorShape([None, 20000])
Table 3 System architecture of a ConvLSTM2D network model
MODEL INPUT AND OUTPUT SHAPES
x_train_mod shape: (1, 1, 20000, 3, 1)
x_val_mod shape: (1, 1, 20000, 3, 1)
x_test_mod shape: (1, 1, 20000, 3, 1)
y_train_mod shape: (1, 20000)
y_val_mod shape: (1, 20000)
y_test_mod shape: (1, 20000)
input_shape: (1, 20000, 3, 1)
_________________________________________________________________
Layer (type) Output Shape Param #
==========================================================
First_ConvLSTM2D (ConvLSTM2D (None, 1, 20000, 3, 30) 182400
batch_normalization_1 (Batch (None, 1, 20000, 3, 30) 120
_________________________________________________________________
Second_ConvLSTM2D (ConvLSTM2 (None, 1, 20000, 3, 60) 777840
_________________________________________________________________
batch_normalization_2 (Batch (None, 1, 20000, 3, 60) 240
_________________________________________________________________
flatten_1 (Flatten) (None, 3600000) 0
_________________________________________________________________
dense_1 (Dense) (None, 25) 90000025
______________________________________________________________
dense_2 (Dense) (None, 20000) 520000
======================================================
Total params: 91,480,625
Trainable params: 91,480,445
Non-trainable params: 180
_________________________________________________________________
Out[2]: TensorShape([None, 20000])
Table 4: System architecture of a Conv1D model
MODEL INPUT AND OUTPUT SHAPES
x_train_mod shape: (1, 20000, 3)
x_val_mod shape: (1, 20000, 3)
y_train_mod shape: (1, 20000)
y_val_mod shape: (1, 20000)
input_shape: (20000, 3)
_________________________________________________________________
Layer (type) Output Shape Param #
==========================================================
conv1d_1 (Conv1D) None, 20000, 128) 512
_________________________________________________________________
max_pooling1d_1 (MaxPooling1 (None, 20000, 128) 0
_________________________________________________________________
dropout_1 (Dropout) (None, 20000, 128) 0
_________________________________________________________________
conv1d_2 (Conv1D) (None, 20000, 64) 8256
_________________________________________________________________
max_pooling1d_2 (MaxPooling1 (None, 20000, 64) 0
_________________________________________________________________
dropout_2 (Dropout) (None, 20000, 64) 0
_________________________________________________________________
flatten_1 (Flatten) (None, 1280000) 0
_________________________________________________________________
dense_1 (Dense) (None, 72) 92160072
_________________________________________________________________
dense_2 (Dense) (None, 20000) 1460000
=============================================================
Total params: 93,628,840
Trainable params: 93,628,840
Non-trainable params: 0
_________________________________________________
Out[2]: TensorShape([None, 20000])
Table 5: System architecture of a LSTM model
MODEL INPUT AND OUTPUT SHAPES
x_train_mod shape: (1, 20000, 3)
x_val_mod shape: (1, 20000, 3)
x_test_mod shape: (1, 20000, 3)
y_train_mod shape: (1, 20000)
y_val_mod shape: (1, 20000)
y_test_mod shape: (1, 20000)
input_shape: (20000, 3)
_________________________________________________________________
Layer (type) Output Shape Param #
===========================================================
lstm (LSTM) (None, 20000, 128) 67584
_________________________________________________________________
dropout (Dropout) (None, 20000, 128) 0
_________________________________________________________________
lstm_1 (LSTM) (None, 20000, 64) 49408
_________________________________________________________________
dropout_1 (Dropout) (None, 20000, 64) 0
_________________________________________________________________
flatten (Flatten) (None, 1280000) 0
_________________________________________________________________
dense (Dense) (None, 72) 92160072
_________________________________________________________________
dense_1 (Dense) (None, 20000) 1460000
===============================================================
Total params: 93,737,064
Trainable params: 93,737,064
Non-trainable params: 0
_________________________________________________________________
Out[2]: TensorShape([None, 20000])
Table 6: Comparisons of the Conv2D, ConvLSTM2D and LSTM model metrics/loss function in terms of estimated MSE, MAE and RMSE.
**where MSE, MAE and RMSE are the mean square error, mean absolute error and root mean square error, respectively; while SM1-Tr_B1 and SM1-Tr_B2 are station monitor (SM) trained data batches 1 and 2, respectively; SM2-Va_B1 and SM2-Va_B2 are station monitor (SM) validated data batches 1 and 2, respectively; SM3-Te_B1 and SM3-Te_B2 are SM tested (Te) data batches 1 and 2, respectively; SM-ST1, SM-ST2, SM-ST3, SM-ST4 and SM-ST5 are SM evaluated datasets for 5 additional stations (STs), respectively.