If you're looking for a formal and precise description of the current HTM/CLA algorithm, then this blog [1, 2] by Fergal Byrne may be of interest. Our experience is that while pseudocode is a good way of describing an algorithm, equations can often be more succinct and specific.
The CLA whitepaper [3] describes the algorithm via pseudocode, and leaves some crucial details to comments about method implementations. We found it difficult to reproduce the algorithm due to these missing details [6, 7].
To be fair, Numenta does provide an open-source implementation of CLA called NUPIC [4], but it's a little frustrating to have to piece together the details from the whitepaper and the code. I haven't checked it all, but hopefully Fergal's equations will provide a definitive reference.
Fergal is also working on an updated CLA whitepaper, currently hosted here [5].
[1] http://inbits.com/2014/11/mathematics-of-hierarchical-temporal-memory/
[2] http://inbits.com/2014/11/mathematics-of-htm-part-ii-transition-memory/
[3] http://numenta.org/resources/HTM_CorticalLearningAlgorithms.pdf
[4] https://github.com/numenta/nupic
[5] https://github.com/fergalbyrne/nupic.documents/blob/master/HTM_CLA/HTM_Cortical_Learning_Algorithms.pdf
[6] http://lists.numenta.org/pipermail/nupic-theory_lists.numenta.org/2015-January/002072.html
[7] http://lists.numenta.org/pipermail/nupic-theory_lists.numenta.org/2015-January/002114.html
The CLA whitepaper [3] describes the algorithm via pseudocode, and leaves some crucial details to comments about method implementations. We found it difficult to reproduce the algorithm due to these missing details [6, 7].
To be fair, Numenta does provide an open-source implementation of CLA called NUPIC [4], but it's a little frustrating to have to piece together the details from the whitepaper and the code. I haven't checked it all, but hopefully Fergal's equations will provide a definitive reference.
Fergal is also working on an updated CLA whitepaper, currently hosted here [5].
[1] http://inbits.com/2014/11/mathematics-of-hierarchical-temporal-memory/
[2] http://inbits.com/2014/11/mathematics-of-htm-part-ii-transition-memory/
[3] http://numenta.org/resources/HTM_CorticalLearningAlgorithms.pdf
[4] https://github.com/numenta/nupic
[5] https://github.com/fergalbyrne/nupic.documents/blob/master/HTM_CLA/HTM_Cortical_Learning_Algorithms.pdf
[6] http://lists.numenta.org/pipermail/nupic-theory_lists.numenta.org/2015-January/002072.html
[7] http://lists.numenta.org/pipermail/nupic-theory_lists.numenta.org/2015-January/002114.html
No comments :
Post a Comment