Learning NuPIC

Nasser Alshammari edited this page Mar 15, 2016 · 31 revisions
Clone this wiki locally

The NuPIC source code is used by Numenta as a part of a commercial product development. Because of this, it is no longer a “pure” implementation of the HTM algorithms. We have made optimizations, added tweaks, and taken some short cuts to improve performance. For those interested in studying and characterizing a purer form of the HTM, please be aware of these changes. If you are interested in using NuPIC in a product, the code may be suitable as-is, or you may wish to make additional changes.

Prerequisites

  1. Read the HTM White Paper.
  2. Review content about HTM Theory.
  3. Check out the NuPIC Walkthrough (source)

Visualization Tools

It is useful for understanding and debugging to visualize the state of the CLA at any point during a model's lifetime. There are a few tools for this:

Videos

CLA as Implemented in NuPIC

CLA as Implemented in NuPIC

Numenta engineer Chetan Surpur goes into great detail about the implementations of the spatial and temporal poolers in NuPIC.

Random Distributed Scalar Encoder

Random Distributed Scalar Encoder

Chetan Surpur describes the new Random Distributed Scalar Encoder in NuPIC.

Getting Predictions out of HTM (CLA Classifier)

Getting Predictions out of HTM (CLA Classifier)

The NuPIC Network API

The NuPIC Network API

Pages About NuPIC Implementation

Using NuPIC Creating Applications