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

Reply via email to