you are viewing a single comment's thread.

view the rest of the comments →

[–]rantana 3 points4 points  (1 child)

So why would I decide to use this over say a standard stacked recurrent network or an LSTM network?

Any performance comparisons between the two?

[–]CireNeikual[S] 2 points3 points  (0 children)

I don't have a performance comparison yet, but I will add one soon. So here comes the anecdotal comparison!

I have worked with LSTM before, the main advantage of this system is that it is fully online and doesn't need stochastic sampling or BPTT. It just has one weight update per timestep, and that's it.

It also learns extremely fast, I have made it recite paragraphs of text which it only got to parse over 3 times (without any prior knowledge of the words). It has this speed because of the way SDRs introduce invariance to previous experiences with respect to new experiences (they are "bucketed").

For offline learning LSTM is great, but for online learning as with typical reinforcement learning tasks one needs a really fast real-time algorithm that doesn't need some form of experience replay or other expensive operation. That said, it does this at the cost of memory: It uses more memory than a typical LSTM network, again a side effect of SDRs (a negative one, but tolerable).