Some questions about the source

I’ve been just starting on working into the NUPIC, or more specifically nupic.core. I’ve made some headway on how things are structured, and I think I’ve found a good way to start: Types.h and Types.hpp. I understand the algorithms themselves and the theory, just source code questions. But some things I’d like to know before I proceed:

What NTA stand for?
Do you have any advice for reading through the NUPIC source?
Is there further documentation on the code?

Thanks so much in advance,
Sam Gallagher

1 Like

That’s easy… “Numenta”.

Read the python in src/nupic/research to understand the algorithms. The C++ is harder to understand.

There are a decent amount of docs inside the code of they python algorithms. I would start at spatial pooler.

1 Like

If you are interested in the algorithms, I would also recommend looking at these two simple python examples in NuPIC:

nupic/examples/sp/hello_sp.py
nupic/examples/tp/hello_tm.py

They show how to use the spatial pooler and temporal memory in isolation. Even if you really want to understand the C++, the examples are useful.

We don’t have equivalent examples in C++ . In nupic.core, we do have src/examples/algorithms/HelloSP_TP.cpp but it’s not as nice as the above. (hint: Porting the python examples to C++ would be a great community contribution for someone who wants to learn…)

2 Likes