A dataset contains spatial and temporal features.
It contains the time series data (2 min intervals) of the sections of a map.
It is 320*480 (320 map sections and 480-time intervals). Each row belongs to a section and each column is a time interval. So each cell in the dataset is a value of data in a map section in a time interval.
I would like to make a model to import all map sections in 40 min and predict the following 10 next min of all map sections.
So the input shape equals 320*20 and the output shape will be 320*5.
I split data to 320*20 as X and 320*5 as Y samples.
The input and the output of the model are 2-dimensional matrixes.
I can consider the input as a one channel image (320*20*1) and it is possible to use a CNN model.
The codes of the final architecture of my model:
model = models.Sequential() model.add(Conv2D(256,(3, 3), activation='relu', input_shape=(320,20,1), padding='same')) model.add(MaxPooling2D((2, 2))) model.add(Conv2D(128, (3, 3), activation='relu', padding='same')) model.add(MaxPooling2D((2, 2))) model.add(Conv2D(64, (3, 3), activation='relu', padding='same')) model.add(MaxPooling2D((2,2))) model.add(Flatten()) model.add(Dense(1600)) model.summary()
The Loss value(MSE) is about 70. Is it lower than the random prediction?
I reshaped the output to 1600 (320*5) which the final Dense layer expects , while the output is 2d. Does it make the model more prone to error ?