Btw, I thought the whitepaper was being updated, Does anyone have a idea about an updated whitepaper?
On Thu, Apr 16, 2015 at 10:54 AM, Alexander Kettinen <[email protected] > wrote: > My process was as follows: > > 1. read WP/Pseudocode > 2. read/hack/break actual code > 3. Create a Software Design Document that implements your understanding of > the solution > 4. Implement your SDD > 5. Compare the two > 6. Refactor > 7. Refactor > 8. Experiment with new insights and ideas > 9. Refactor > ... > loop 6,7,8,9 Ad Nauseam > > > 2015-04-16 19:49 GMT+02:00 Dillon Bender <[email protected]>: > >> This was the route I took. >> >> >> >> I’m still in the process of creating my own application of the algorithms >> (not going into detail of that). I wrote my implementation of the >> algorithms from scratch in C++ in a Linux VM and compiled them into one >> shared library object that I am designing as a sort of “libhtm” interface >> for the application. I definitely did more than reimplement the underlying >> learning algorithms of NuPIC; probably more along the lines of >> reimplementing NuPIC itself. But I figured this was the easiest and most >> beneficial way for me to integrate an HTM library into my own application >> and truly learn the algorithms themselves. >> >> >> >> There have been two main problems for me. The first is actually testing >> my implementation along different points of development and determining how >> well it works. I had to develop a UI and all for visualizing the algorithms >> and tests. The second is trying to figure out exactly the right way to go >> about the implementation for optimization and simplicity. I ended up >> refactoring the entire project once or two. But that is bound to happen >> with a development team of one. NuPIC has many, many hacks within it and >> for good reason. I had to rediscover the hacks myself, and probably my own >> unique ones. >> >> >> >> I don’t regret recreating it all from scratch one bit. I feel like I >> would get the sense that there was something I am missing if I just tried >> to improve or enhance someone else’s work. If you would rather not spend a >> considerable amount of time building your own foundation, then maybe >> reconsider doing what I did. >> >> >> >> Suid >> >> >> >> >> >> *From:* nupic [mailto:[email protected]] *On Behalf Of *Jeff >> Fohl >> *Sent:* Thursday, April 16, 2015 12:27 PM >> *To:* Dillon Bender >> *Subject:* How best to learn HTM algorithms by implementing them? >> >> >> >> I am interested in learning the HTM algorithms at a deeper level by >> writing my own implementation. The language I am currently work with most >> frequently is Javascript, so I was planning on doing my implementation in >> that language. >> >> >> >> My question for those who have gone this route already is: if the primary >> goal of the exercise is a deeper understanding of the algorithms, is it >> best to start from scratch, implementing the pseudocode as described in the >> white paper, or is porting an existing implementation - such as htm.java >> more fruitful? >> >> >> >> - Jeff >> > > -- Regards Chandan Maruthi
