I am blind at programming (and algorithms and math and...) but curious about neural networks. So I found simbrain last night (where have you been?) and watched it videos. Question is; after the network learn the input-output process, how to predict the future output? I mean to insert the input and make it tell you what the output is.
Thanks for answer (a video would be awesome.. ).
I really appreciate your work.
Thanks for posting your videos and I love Simbrain. In the video you talk about how to use test data etc but I am not quite clear if this can forecast into the future like in time series data. I have some financial data that I have trained a network for and it has learnt this pretty well. I now want to input say the last known sequence and want to have it tell me what the next expected outcome is..is there a way to do this or have I missed something in your tutorials?
Time series analysis with neural networks is a whole field unto itself, and I don't have much practical experience with it. I can tell you what I understand the basics to be. The basic idea is to have the inputs be some window of past values. So if we look at BUD
And use a 5 day window in to the past, we might get
(5-days before N, 4-days before N, 3-days before N, 2-days before N, 1-day before N) --> (day N)
104,105,105,104,104 --> 105
103,104,105,105,104 --> 104
and just do that for as far back as you like. Probably use a bigger window too. And of course scale the numbers to -1,1 or 0,1.
Currently there are also SRN's in Simbrain. These can be used in the same way, but they have the advantage that the whole past history is automatically encoded via the context layer. In that case you could still use the windows approach or just have inputs from values at time t-1 to values at time t
1 day before N --> day N
104 --> 105
105 --> 105
But this is the kind of thing where people spend years doing it and learn all these tricks. I don't think either of these methods will kill the stock market if you are using Simbrain. However, if you make a few million bucks, the Simbrain team will accept a half a percent bonus :)
Ok one last thing. The method I describe would then let you forecast at least one day in to the future by taking the current window of time as input and then using the output as the forecast. I guess to go farther in the future you could train the network to predict multiple days, like this
(N-4,N-3,N-2,N-1,N) --> (N+1,N+2,N+3,N+4)
Of course you can only train for data more than 4 days or units old. The window size for the past and future can be different. Then you could predict multiple days.
But I'm just thinking aloud here. Again, input from time series modeling experts (among the millions reading these posts) welcome.