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

Reply via email to