Hello Wakan.
Hello Raf,
If I understand you correct then your goal is to speed up swarming
process? It is possible to swarm only once and then use parameters
from this swarm in all your models in future assuming that you are
feeding NuPIC with data which have same nature as those on which swarm
was issued.
Roughly, yes.
AFAIK Grok is working this way. Isn't this your goal?
Sorry, are you saying that for the process of choosing the structure of
the model (activation threshold, cells per column, columns, permanence,
initial permanence value, etc...) GROK uses other ANNs and not the
built-in swarming method?
I have no experiences in ANN so maybe I will ask stupid questions:
Which metrics do you plan to incorporate in to mentioned swarming
output comparison, which criteria you will evaluate and how in model
comparison?
Sorry, I don't think I get fully your question. If you're speaking about
which error function will I use, well I could give a couple of test. I
could use RMSE, Cross Entropy. Or I could even write an 'ad-hoc'
function based on the MAPE/MSE scores each possible models give against
an unseen dataset. The training of neural networks has of course a huge
cost (I'd need at least a 30K samples of swarmed datasets), so I'm still
in the process of evaluating it.
Another approach could be trying to use something like hyperopt
(https://github.com/hyperopt/hyperopt) - but still, I suppose the
swarming algo (https://github.com/numenta/nupic/wiki/Swarming-Algorithm)
is better and in this case even faster than hyperopt.
On 25/11/2015 01:35, Wakan Tanka wrote:
On 11/24/2015 10:57 AM, Raf wrote:
Hello guys,
just another newbie question. I'm sorry if it ends up being daft :)
For my project (integrating HTM inference, prediction and anomalies
detection into a OTC high liquidity trading system) swarming (even with
few inputs/sensors) could be very expensive in computational costs.
The first idea that I had in order to speed up this process was to
create a set of ANNs or RNNs in order to <<statically>> "guess" the best
parameters for a good OPF model. Initially this would be really time
consuming but after, if I succeed, I could compute a good enough
swarming model in few seconds.
The way I have in mind now is this: I would compare the swarming real
outputs for different kinds of datasets (lots of baby datasets with
known functions) as real outputs and adjust my predicted ones to these.
In this case:
- Do you think that this could be a feasible approach?
- Which inputs should I consider to eventually build these neural
networks? I've read the pages about the swarming algorithm and I though
that a couple of statistical indicators, but I'd probably also add
principal component analysis, ZCA, standard deviation, Pearson index
against time, etc. What else would you suggest?
The second idea is about using the CUDA libraries.
Do you think that CUDA could be something beneficial for the swarming
process? Do you plan to add its support anytime soon?
Thanks a lot for your time and keep going the great job :)
Hello Raf,
If I understand you correct then your goal is to speed up swarming
process? It is possible to swarm only once and then use parameters
from this swarm in all your models in future assuming that you are
feeding NuPIC with data which have same nature as those on which swarm
was issued. AFAIK Grok is working this way. Isn't this your goal?
I have no experiences in ANN so maybe I will ask stupid questions:
Which metrics do you plan to incorporate in to mentioned swarming
output comparison, which criteria you will evaluate and how in model
comparison?
Regarding CUDA I hope it might work because now you can choose no of
CPUs which will run swarm, I hope this can be handled by CUDA.
PS: sorry for my English
Regards
Wakan
--
Raf
www.madraf.com/algotrading
reply to: [email protected]
skype: algotrading_madraf