Dodging Performance Anomaly?

Fragment of a discussion from Talk:Pris
Jump to navigation Jump to search

Recurrent NN uses a lot of memory and processing power, both of which are fairly limited in the RoboCode setting. Speed is definitely the main issue, particularly when a lot of the time is already taken doing predictions to give more relevant features for classification. Even with spreading calculations over multiple ticks many popular techniques Just Wouldn't Work.

If you can't get multiple outputs out of the RF, just run a bunch of them, one in each bin, and choose the bin with the highest probability. Ie, each bin is a different class and you choose the most probable class. Quick and dirty regression without inter-dependency. I've actually thought about trying a Naive Bayes like this, just for kicks. I think Pris and a few others do their NN classifications this way.

Skilgannon (talk)22:27, 16 November 2013

Running 50+ random forests with 50 trees each would be a lot of computation. I am first going to try seeing how well one RF predicts a GF or bearing offset.

Straw (talk)23:22, 16 November 2013

Executing one tree classification is pretty fast though, isn't it? I don't think 2500 of them per tick seems unreasonable. Or is it many times more than that? My main 1v1 gun does up to 13k loop iterations for its kernel density calculation, and that's on top of the kd-tree search for 225 nearest neighbors among up to ~25k data points. And the gun is the fast part of the bot. :-)

Voidious (talk)23:56, 16 November 2013

The problem would be training the forests, which is much slower. Training one forest would be much easier, allowing you to do more training and perhaps have a higher tree count. I plan to eventually try both anyway, but I am doing the easier approach first.

Straw (talk)03:24, 17 November 2013