puzzled
puzzled

Reputation: 1

Using narxnet with trainbr: the predicted value at time t seems to depend in part on the target value at time t. But we don't know that yet

Assume have a time series where we know all of the inputs up to day t, and all of the correct target values up to day t-1. In scenario one, we apply narxnet with trainbr to the entire series, and look at the predicted value at day t, call it P(t). In scenario two, we apply narxnet with trainbr to the same series up to day t, and look at the predicted value at day t, call it P*(t). In general, P(t) ~= P*(t). Why? In fact, if we substitute in some fictitious value for the time series at day t before training, P*(t) can be wildy different than P(t). However, also in scenario two, even if we submit the true value of the target at time t , P*(t) is still often not equal to P(t). Is there a way to deal with this behavior? It seems odd indeed that the target value at time t, the very thing we are trying to predict, influences the network.

I tried various values for the target at time t when trying predict the target at that same time point. In theory, the input I give shouldn't matter. But it does. This implies future information affects the performance, no?

A second phenomenon is that if I input the actual target value (silly because it is the very thing I'm actually trying to predict) the prediction still isn't the same as when the network can see the entire time series rather than the truncated one. The inputs have perhaps somehow been differently prepared between the two scenarios, which seems odd since the identical historical information is available to the network in both scenarios. If the algorithm is using future data to normalize inputs or whatever that doesn't seem sound (I am not doing this myself - I turned off normalization for both scenarios.)

Upvotes: 0

Views: 12

Answers (0)

Related Questions