Multistep Prediction

I am trying to do 3 step prediction. I am doing the swarming on a dataset using the code "python $NUPIC/scripts/ multi1_search_def.json --overwrite --maxWorkers 5 "and and then i am running “python $NUPIC/scripts/ model_0” . I am getting the output in the file DefaultTask.NontemporalMultiStep.predictionLog.csv. Below is the attached record

multiStepBestPredictions.actual multiStepBestPredictions.3
192839 None
202422 None
207377 None
212129 192839
212319 192839
213976 207377
215678 212129
215897 212319
216162 213976
218333 215678
218404 215897
219004 216162
After looking at the prediction value it seems that it is predicting 1st actual value after three steps. Ideally predicted value should be the future value and not the the value from past. Could you please explain how this prediction could be useful. Ideally 1st predicted value should be close to the 4th actual value,but it doesn’t seem to be the case here. It seems that actual value is getting sifted down in predicted column by 3.

1 Like

How many rows of input data has the model seen in this example?

Hi @rhyolight,
Total number of rows are 206. I believe there will be some minimum number of rows required for model in order to produce stable output. If i am right then can you please tell me that what should be that number?


You should feed the model a few thousand rows of data before it will put up patterns in the data. I’m not surprised that it’s not predicting well yet. Based on the data you pasted above, the plot of actual values looks like this:

What does the plot look like with all 200+ rows? Are there patterns there there you can discern?

Hi @rhyolight ,
thanks a lot for the clarification. Now i am able to take informed decision based on your response. Earlier I wasn’t able to analyse my result.