Delay in predicted values
Hello,
I create CSVNeuralDataSet for NN training phase from CSV file. Diff data (x = (actual - previous) / previous) in CSV file are structured as samples in sequence as is mentioned in "Introduction to neural networks" at page 236.
I do not why, but predicted values come out from neural network are "delayed" of {ideals neuron count}. This problem is noticeable in this piece of my chart - http://img684.imageshack.us/img684/4166/20100307181647.png. Blue line = ideal data, red line = predicted data. You can see that neural network (input size = 10) counts predicted values delayed of 10 points.
Does anybody have same experience? I am afraid I am doing something incorrectly but I am not able to find out what.
Does Encog have some classes to generate "original" data vector from predicted values to check whether predicted values are correct? How do you visualise/check predicted data?
Thanky you.




prediction window?
This is just a guess, but are you plotting/interpreting the results in such a way that the delay is equal to the prediction window? For example, if you are using the last 30 days, you will have to in some way offset that when you predict.
Hello, thanks for reply -
Hello,
thanks for reply - yes I do offset, I am sure that predicted values are "offsetted" correctly. But I am not sure if I do do training phase correctly, please correct me.
There is data vector with numbers 1-20, input window = 5, prediction window = 3. I split data into samples, you can see the results in this image: http://img708.imageshack.us/img708/2272/20100309162916.png (green are input values and yellow are ideal values).
I create CSV file for training phase with data in this structure: http://img709.imageshack.us/img709/4250/20100309164351.png. When I do training, I create CSVNeuralDataSet(); from this CSV file with proper input size and ideal size.
When training phase is done I test neural network with CSV file data in this structure: http://img690.imageshack.us/img690/4121/20100309165911.png
Please correct me (you,Jeff or anybody else) if is there is some mistakes...
Hmmm
That looks correct, as near as I can tell. I may try to create an example like this just to see what I come up with.
But if there were an off set, it seems like the training error would be fairly high, since the error is simply the mean-square of the differences between the ideal and the actual output.
I posted new topic related to
I posted new topic related to this issue, so this post will be probably answered here:
http://www.heatonresearch.com/node/1406
Hello, as I mentioned before,
Hello,
as I mentioned before, there is probably something wrong with my NN implementation. I dare to upload my data at http://www.filedropper.com/nn-data for your testing. In the ZIP there are two files, one with data for training and one with data for testing phase. Data is generated in "TemporalDataDescription.Type.DELTA_CHANGE" type, I assume this is proper format (correct me if it is not right format):
change = (actual - previous) / previous
Please let me know if you find out something.
I use BasicNetwork, ResilientPropagation, input size = 30, hidden size = 20, output size = 30 values, encog 2.3.0. Desired error rate 0.03 is reached in 20-30 training iterations.
Thank you for your time.