Why is the latest prediction of the time series with the neuralnet package so far out of line with the rest of the predictions?

Asked

Viewed 111 times

5

I set up a neural net to forecast seasonal precipitation from the observed series. When I validate with observed data, the results are good. But in the series predicted by the model, the latest forecast is always with values far below normal. It even gives drought to places of continuous precipitation. As this model is being built to be operationalized, the last number of the predicted series is the most important, because it is the forecast that we will make every month.

Does anyone know why he would give negative bias only to the last number? Do you know how to solve?

And I tried to use other packages like rnn, which is of recurrent neural network. However, the results are not so good. I believe it’s because of the little training suit. But it’s a network that takes too long to train. A training of 2000 interactions took 9 hours and gave a bad result. As the model has to predict for all Brazil, the training of more than 250 series would last months.

Another important detail is that the food series model is from quarterly accumulations. For example, operationally when we want to forecast for the accumulated December-January-February, we don’t have the monthly average of November. Then the last two observations feeding the model is a accumulated between the last month observed (October) and the climatology of the next two (November and December). This requires a different approach to model adjustment. This makes certain time series forecast packages not useful. Why do not allow me to control the input variables. Only allow me to put a series and it does everything.

I hope you can help me. I’m desperate. It’s my TCC and it needs to work. Thanks in advance.

  • How many observations do the series used to train the model have? How many steps ahead is the forecast being made? You even made a graph comparing the behavior of the observed values with the behavior of the predicted values, without only looking at the numerical data?

1 answer

7


I’ll give you an answer you won’t like.

Using neural networks to predict time is one treacherous business. Doesn’t mean it’s impossible - it just means it’s laborious.

Neural networks are great for separating patterns. If your weather data in the recent past is linearly separable, the network will converge to a structure in which you will be able to kick in whether it will rain or not. So far so good, right?

The problem is, if neural networks were human beings, they would be the worst students in the classroom at any school. Of all the types of artificial intelligence I know, they are the least-sought paradigm for understanding how things work. They just want to know the answers, no matter how they get to them. To make matters worse, there is still the decoreba factor that many of them present - after they learn wrong, it can be difficult to correct them and make them learn right.

Anecdote: The Pentagon spent millions of dollars developing a neural net that was able to identify battle tanks in pictures, but instead they got a neural net that could only distinguish clear skies from cloudy skies.


In your case, you have informed your network data that should include wind speed, precipitation, temperature, air pressure and humidity, cold fronts, hot fronts, air pollution, time of year etc. for your network, and she can even provide some useful information for most cases. Then you think she’s learned to interpret the input... but has she really learned to interpret the data you feed her? Or did she just memorize the right answer for each input?


Finally... The task you have set yourself is not impossible. But you will have to do much more than you have done so far to get where you want.

If you do a survey, you’ll find some 5,000 articles on weather forecasting with neural networks published just this year. You need to see what these guys did and implement it the same way. It can be - emphasis on can - that you have to discard the packets you are using, and make your own neural network implementation. However, only the creation of a neural network itself, at this level of complexity, could be worth a TCC in itself, so maybe it’s time to rethink its theme.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.