Pedro, I'll try to answer your question about how the external classifier for multiple step prediction works, because the best way to learn deeply is to try to teach :) If I'm incorrect on any point, anyone, please feel free to correct me!
At each cell are probability distribution tables that contribute to predictions about future timesteps. These tables tell you the probability of a particular output occurring in the future, given that this cell is currently firing. The way we do multiple step prediction is by having multiple tables per cell, each one predicting for a particular step in the future. For example, if you're looking at an activation and trying to predict the chances we'll see the letter "C" in 3 steps, you look at all the 3-step prediction tables for all the currently firing cells, and add up the normalized probabilities for the "C" column. If you're trying to predict a scalar value instead of a categories (like letters), you break up the continuous output range into discrete buckets, and the probability tables will refer to those buckets instead. I'm on a plane, so I'll write up in a separate email the way we update these probability tables during learning. Hopefully it's making sense so far, and I'm not totally misunderstanding everything! - Chetan On Mon, Sep 2, 2013 at 6:38 PM, Pedro Tabacof <[email protected]> wrote: > Ian, > > Your 10 points are all spot on, great job on understanding my mess! > > I'm not sure if feeding the CLA open-loop (no kind of control on) data > would be useful on practice, because in this case you're probably better > off with standard MPC, but this is probably the right way to start to > tackle this problem. It's actually not that hard to simulate a complicated > dynamic system with noise and disturbances and gather "experimental" data. > If I have time I will look into this and share my findings here. > > It'd be cool to see how the CLA would respond to things such as large time > constants (slow dynamic response) and/or considerable deadtime (time-delay) > before trying to actually control a system with it. The main difference > from this to typical CLA applications is that the system inputs are > independent and thus their prediction is meaningless. Would this make the > prediction of the system outputs (which depend on their past values and on > current and past inputs) harder or just the same? > > From your explanation it seems the optimization time is not an issue, > especially considering you could turn it off after a while because the CLA > would probably have already learned the correct control patterns. It could > be turned on only when needed to improve the control and perhaps be done > offline. > > If I recall correctly, Jeff wrote on one email that multiple step > prediction is actually made by an external classifier, so it is not > actually inherent to the CLA. Can someone clarify this point? Multiple step > prediction is essential to MPC so I'd like to understand it better. > > Anyways, I've been pondering about my MPC idea and more and more I tend to > believe that it is just too convoluted to work - I always favor simple > solutions over complex ones. If we had motor control CLA I think this could > be a great target for application, but it seems this is nowhere near our > present. > > Perhaps training NuPIC on data from a classical controller such as PID or > even manual control and then using a simple reinforcement learning > procedure to train NuPIC's predictions in order to improve the control > scheme (squared error and smoothness as you put it) would be a better > solution, but I'm not clear on how this could be done. > > []'s > Pedro. > > > On Mon, Sep 2, 2013 at 3:32 PM, Matthew Taylor <[email protected]> wrote: > >> On Sep 2, 2013, at 11:05 AM, Ian Danforth <[email protected]> >> wrote: >> >> > I'm going to be stupid in public... >> >> If only everyone were so fearless. :) >> >> Matt >> >> _______________________________________________ >> nupic mailing list >> [email protected] >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >> > > > > -- > Pedro Tabacof, > Unicamp - Eng. de Computação 08. > > _______________________________________________ > nupic mailing list > [email protected] > http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org > >
_______________________________________________ nupic mailing list [email protected] http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org
